概述
RSA是一种非对称加密,是由公钥(n,e),私钥(n,d)明文m和密文c共同组成。
选取两个大素数p和q,n=p*q,随机选取加密密钥e(一般情况下e=65537)保证e和phi互素(phi=((p-1)*(q-1))
计算解密私钥,ed=1mod(p-1)*(q-1)
加密解密:
c = m^e mod n
m = c^d mod n
其中e,n是公开的,d是在自己手里的。但是n一般是两个很大素数的乘积,n不好分解所以很难求出来d,所以RSA就是
利用现在无法实现快速大素数的分解,所存在的一种安全的非对称加密。
RSA套路(基础篇)
给出n,e求d (这里的n一般会比较小,用到的工具yafu或者在线网站)
给出p,q,e求d
给出n,e,c求m
给出n,e,c,dp求m
给出n,c,dp,dq求m
给出c1,c2,n1,n2,n求m(共模攻击)
(后期会刷题写解题思路以及比赛的wp)