adigitalcomputerisamachinethatcansolveproblemsforpeoplebycarryingoutinstructions
giventoitx
以上这一段是RSA换位密码中的解密过程,是加密过程的逆过程,如果你还没有看懂加密,那么当然更加看不懂解密。在加密的时候注意一个细节哦,当明文按密钥长度分解后,最后一行没有满的话,需要用abcdef字符填充哦。这一点往往被我们忽略了。书本虽然没有明确的提出来,但事实上是如此填充的。
RSA
在RSA算法中,为什么7e=1(mod360) e=103
书中没有给出m( mod n)的具体定义,我是这么认为的:
对于式子1(mod360)应该是对360取模后余数为1的数,如:361,721……
而由等式7e=1(mod360)得出的e是取满足e为整数且为最小的值,于是7e=721,e=103
34.(1)RSA算法的原理是什么?
(2)RSA算法的优缺点是什么?
(1)在公共密钥密码体制中,最有名的一种是RSA算法。RSA算法的砂理是:
用户选择两个足够大的秘密电码素数p和q;
计算 n = p * q和 z = (p-1) * (q-1);
选择一个与z互质的数,令其为d;
找到一个e使满足 e * d = 1 (mod z);
若将明文划分成一个长度为P的数据块,且有 0≤P n .用P,C分别表示明文,密文,则以下两式可用于加密和解密:
对于这种体制,只有(e,n)是出现在公开手册上的公开密钥(即PK)。(d,n)则是需要用户保密的私人密钥(即SK)。RSA算法的保密性在于难以对大数提取因子,因此当n足够大时,目前情况下对n进行因数分解是无法实现的。
(2)虽然RSA算法具有安全方便的特点,但它的运行速度太慢,因而通常只有来进行用户认证,数字签名或发送一次性的密钥,数据的加密仍使用秘密密钥算法。
33.已知RSA公开密钥密码体制公共密钥为(3,33)
(1)若明文为M=10,求密文C;
(2)若截获的密文C=9,求明文M.
8、试破译下面的换位密码。明文可能选自一本计算机科学普作,因为文中出现了computer一词。明文中无空白、无标点符号,全部由字母组成。密文是连续的字符串,为了阅读方便,我们将它写成五个字母一组。
密文:aauan cvlre rurnn dltme aeepb ytust iceat npmey iicgo gorch srsoc nntii imiha oofpa gsivt tpsit lbolr otoex
明文为:a digital computer is a machine that can solve problems for people by carrying out instructions given to it x
密匙长度为:6
11、已知RSA公开密匙体制的公开密匙e=7,n=55,明文M=10.试求其密文C.通过求解p、q和d可破译这种密码体制。若截获的密文C=35,试求经破译得到的明文M.
C=Me(mod n)=107(mod 55)=10
n=p*q,且p和q是素数,则p=5,q=11,z=(p-1)*(q-1)=40
e*d=1(mod z) 即7d=1(mod 40),且d与z互质,则d=23
若C=35,则M=Cd(mod n)=3523(mod 55)=30
12、在公开密匙密码体制中,利用RSA算法作下列运算:
1)如果p=7,q=11.试列出可选用的5个d值;
2)如果p=13,q=31,d=7,试求e值;
3)已知p=5,q=11,d=27,试求e值;并对明文abcdefghijk加密。设a=01,b=02,c=03,……,z=26.
1) z=(p-1)*(q-1)=60,且d与z互质,则d可以是7,11,13,17,19.
2)z=(p-1)*(q-1)=360,且e*d=1(mod z),即 e*7=1(mod 360),则e=103.
3)z=(p-1)*(q-1)=40,且e*d=1(mod z),即 e*27=1(mod 40),则e=3.
n=p*q=55,则公开密匙为(3,55)。
明文a,即a=01,密文C=P^e (mod n) =1^3 (mod 55)=1;
明文b,即b=02,密文C=P^e (mod n) =2^3 (mod 55)=8;
明文c,即c=03,密文C=P^e (mod n) =3^3 (mod 55)=27;
明文d,即d=04,密文C=P^e (mod n) =4^3 (mod 55)=9;
明文e,即e=05,密文C=P^e (mod n)=5^3 (mod 55)=15;
明文f,即f=06,密文C=P^e (mod n)=6^3 (mod 55)=51;
明文g,即g=07,密文C=P^e (mod n)=7^3 (mod 55)=13;
明文h,即h=08,密文C=P^e (mod n)=8^3 (mod 55)=17;
明文i,即i=09,密文C=P^e (mod n)=9^3 (mod 55)=14;
明文j,即j=10,密文C=P^e (mod n)=10^3 (mod 55)=10;
明文k,即k=11,密文C=P^e (mod n)=11^3 (mod 55)=11;
所以明文abcdefghijk加密后的密文是1827915511317141011
更多计算题,请看课后题及试卷专栏里面的计算。