Skip to content

A small file encryption project based on RSA algorithm.

Notifications You must be signed in to change notification settings

tl66365561/File_Encryption

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

File_Encryption/文件加密

A small file encryption project based on RSA algorithm./基与RSA算法实现的一个关于文件加密的小项目。

RSA密钥产生过程:

  1. 随机选择两个不相等的质数p和q(实际应用中,这两个质数越大,就越难破解)。
  2. 计算p和q的乘积n,n = pq。
  3. 计算n的欧拉函数φ(n)。
  4. 随机选择一个整数e,条件是1< e < φ(n),且e与φ(n) 互质。
  5. 计算e对于φ(n)的模反元素d,使得de≡1 mod φ(n)。
  6. 产生公钥(e,n),私钥(d,n)。

实例描述:

  1. 选择p = 3, q = 11。
  2. n = pq = 33。
  3. φ(n) = (p - 1)(q - 1) = 20。
  4. 选择e = 3, 此时e与φ(n) 互质
  5. (de)modφ(n) =(d*3)mod20=1,求出d=7。
  6. 公钥(3,33),私钥(7,33)。
  7. 例如对明文数字“5”加密,根据加密公式,密文=(5^3)mod(33) = 125 % 33 = 26
  8. 把上述密文解密,明文=26^7 % 33 = 8031810176 % 33 = 5。

About

A small file encryption project based on RSA algorithm.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages