rsa算法题目
发布网友
发布时间:2022-05-24 07:53
我来回答
共2个回答
热心网友
时间:2023-10-09 01:09
若P=13而q=31,而e=7,d是多少?公钥是多少?私钥是多少?
N=p*q=13*31=403,
∮(N)=(p-1)(q-1)=12*30=360
因为e=7,ed=1mod∮(N),设一个系数K,ed=∮(N)*k +1,代入 得 7d = 360 k +1
因为K和d必须是整数,因此这里要自己代数进去计,当取k=2时,d=13刚好符合整数这个条件,因此d就等于13了。
公钥的公式是 PK={e,N} , 私钥SK={d,N}, 因此 PK={7,403},SK={13,403}
热心网友
时间:2023-10-09 01:09
注意:≡是同余的问题,不是简单的mod,意思是说这符号前面的数和mod后面的数有相同的余数1。
RSA算法很简单,看个具体的题目你就全会了,百度知道看看吧,我答过不少具体的题目。
根据数论,若x与y互为素数,则x^-1 mod y存在唯一整数解。由此,告诉你一种简洁的求d的方法,该法是根据模的逆运算的原始定义求解,即:ed=k(p-1)(q-1)+1 式中d和k都是整数。因为e与(p-1)(q-1)互为素数,所以存在唯一整数解。这样可以通过搜索法找到d。
例如:e=5, (p-1)(q-1)=96
带入公式试值得:5d=96*k+1 k=4,d=77 (k与d同时为整数)
希望对你有帮助。
RSA算法我还真没见过负数密钥。算我说的不严谨,k与d同为正整数。