加密和解密
基本运算说明:
^:乘方运算。例如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
这样的算式,并计算出结果
网友评论