花奶牛学算法 RSA加密算法 1A

2018-12-30  本文已影响0人  derekxue

加密和解密

基本运算说明:

^:乘方运算。例如2^3=2*2*2=8

mod:求余运算。例如 5 mod 3=2(5除以3,余数为2)

加密:

加密需要两个整数作为密钥,比如说7 ,55。

被加密的数假如说是16

加密运算

16^7 mod 55=36

上面的算式结果36就是16被加密后得到的密文。

解密:

解密需要另一组数字,且解密的数必须和加密的数对应上才能正确解密。在我使用的加密例子中,对应的解密数是 3,55

解密运算

36^3 mod 55=16

可以看到,上面运算的结果,得到了加密前的数16

小结:

RSA加密,解密需要两组数

一组数用来加密,另一组数用来解密。

定义一个函数

f(x,e,n)=x^e mod n

加密时,得到2个数,小的为e,大的为n,被加密的数为x。代入上述函数进行计算,得到的结果就是加密后的数。

解密时,也会得到2个数,小的为e,大的为n,被解密的数为x。代入上述函数进行计算,得到的结果就是解密后的数。

这两组数,在RSA加密算法中被叫做私钥和公钥。

工具介绍

wolframalpha.com 网站可以直接输入

16^7 mod 55

这样的算式,并计算出结果

上一篇 下一篇

猜你喜欢

热点阅读