密钥d=5
明文m=c的d次方mod n
m=100000mod35
=5
或
解密密钥:{d,n}={d,35},
密文:C=10,
选择两个素数:p=5,q=7,则n=35=5*7。
计算φ(p-1)(q-1)=(5-)(7-1)=24,在[0,23]中选择一个和24互素的数,本题选e=5,得5*d=l mod 24,解出d。不难得出,d=5,因为e×d = 5×5 = 25 = 1*24+1=1 mod 24。
因为:m=Cd(mod n)
所以,m=Cd(mod n)=5。
扩展资料:
当公钥e取较小的值,虽然会使加密变得易于实现,速度有所提高,但这样做也是不安全的。最简单的办法就是e和d都取较大的值。
因为密钥的产生受素数产生技术的限制,所以也有它的局限性。
(1)密钥的产生受素数产生技术的限制,因而难以做到一次一密。
(2)分组长度太大,为保证安全性,n至少也要600比特以上,使运算代价很高,尤其是速度较慢,比对称密码算法慢几个数量级;随着大整数素因数分解算法的改进和计算机计算能力的提高,对n的长度在不断增加,不利于实现数据格式的标准化。
参考资料来源:百度百科-RSA算法
n=p*q=33
phi=(p-1)(q-1)=20
e=7
e
*
d
=
1
(
mod
phi)
d=17
公私密钥对:
(n,d)
(n,e)
编码过程是,
若资料为
a,
将其看成是一个大整数,
假设
a
n....
如果
a
=
n
的话,
就将
a
表成
s
进位
(s
=
n,
通常取
s
=
2^t),
则每一位数均小於
n,
然後分段编码……
接下来,
计算
b
==
a^d
mod
n,
(0
=
b
n),
b
就是编码後的资料……
解码的过程是,
计算
c
==
b^e
mod
pq
(0
=
c
pq),
於是乎,
解码完毕……
等会会证明
c
和
a
其实是相等的
若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}
RSA算法很简单,就是基于欧拉定理的简单算法
M=5是明文,计算过程如下:
n=p*q=33;
(p-1)*(q-1)=20;
加密:y=密文,x=明文=5;
y=x^e mod n = 5^7 mod 33 = 14;
解密:
x=y^d mod n;
d*e= 1 [mod(p-1)*(q-1)];
7d=1(mod 20)所以d=3;
所以x=y^d mod n= 14^3 mod 33 = 5;解完
加密由5~14,解密由14~5,实现了RSA算法的加密解密过程,证明了计算的正确性。
其他2题同理,自己做吧。
RSA算法非常简单,概述如下:
找两素数p和q
取n=p*q
取t=(p-1)*(q-1)
取任何一个数e,要求满足et并且e与t互素(就是最大公因数为1)
取d*e%t==1
这样最终得到三个数:
n
d
e
设消息为数M
(M
n)
设c=(M**d)%n就得到了加密后的消息c
设m=(c**e)%n则
m
==
M,从而完成对c的解密。
注:**表示次方,上面两式中的d和e可以互换。
在对称加密中:
n
d两个数构成公钥,可以告诉别人;
n
e两个数构成私钥,e自己保留,不让任何人知道。
给别人发送的信息使用e加密,只要别人能用d解开就证明信息是由你发送的,构成了签名机制。
别人给你发送信息时使用d加密,这样只有拥有e的你能够对其解密。
rsa的安全性在于对于一个大数n,没有有效的方法能够将其分解
从而在已知n
d的情况下无法获得e;同样在已知n
e的情况下无法
求得d。
rsa简洁幽雅,但计算速度比较慢,通常加密中并不是直接使用rsa
来对所有的信息进行加密,
最常见的情况是随机产生一个对称加密的密钥,然后使用对称加密算法对信息加密,之后用
RSA对刚才的加密密钥进行加密。
最后需要说明的是,当前小于1024位的N已经被证明是不安全的
自己使用中不要使用小于1024位的RSA,最好使用2048位的。
从一道计算题开始了解 RSA 非对称加密算法的主要公式。
下面是一道关于 RSA 计算的问题,比较简单,从这道题来学习和了解关于 RSA 非对称加密算法的相关知识,当然,具体关于 RSA 加密算法的知识不能仅限于以下问题,应该更全面的了解相关的知识。但是下面的问题已经把其中的重点算法的表现出来了。
下面是关于 RSA 的主要数学公式:
n = p * q
ø(n) = (p - 1) * (q - 1)
ed ≡ 1 mod ø(n)
c = m e mod n
m = c d mod n
其中两个 ** 是次方的意思
ed ≡ 1 mod ø(n)
3 * 7 ≡ 1 mod ø(n)
21 ≡ 1 mod ø(n)
ø(n) = 20
ø(n) = 2 * 10 = (p - 1) * (q - 1)
p, q = 3, 11
n = p * q = 3 * 11 = 3
c = m**e mod n = 6 ** 3 mod 33
6 ** 3
3 = 1 * (2 ** 0) + 1 * (2 ** 1)
t0 = 6 mod 33 = 6
t1 = 6 ** 2 mod 33 = 3
t0 * t1 mod n = 6 * 3 mod 33 = 18
因此 明文 6 的密文是 18
m = c ** d mod n = 18 ** 7 mod 33
t0 = 18 mod 33 = 18
t1 = 18 ** 2 mod 33 = 27
t2 = 27 ** 2 mod 33 = 3
t0 * t1 * t2 mod n = 18 * 27 * 3 mod 33 = 6
因此,密文 18 解密后是 6
产品的开发快则一个月,慢则一年,那么如何杜绝市面上各种山寨也成为了我们必须要关注的问题,加密芯片可以做到这点,在保障开发者权益的同时也保护了消费者权益,KEROS加密芯片作为该领域的领头者,一直在尽力贡献一份力。特点如下:接口:标准I2C协议接口;算法: 标准aes256 / KAS算法;特殊接口:Random Stream Cipher for Interface;工作温度:工业级 -40℃ ~+85℃;频率:400Khz;存储:2K字节EEPROM(可选);电压:1.8V~3.6V;封装:SOT23-6,SOP8,TDFN-6。rsa加密算法计算例题的介绍就聊到这里吧,感谢你花时间阅读本站内容,谢谢。
本文标签:rsa加密算法计算例题