论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
①计算n用户秘密地选择两个大素数F和9,计算出n=p*q, n称为RSA算法的模数明文必须能够用小于n的数来表示实际上n是几百比特长的数
②计算 (n)用户再计算出n的欧拉函数(n)二(P-1)*(q-1),(n)定义为不超过n并与n互素的数的个数③选择。。用户从[(0, (n)一1〕中选择一个与}(n)互素的数B做为公开的加密指数
4计算d。用户计算出满足下式的d : ed = 1 mal (n)(a与h模n同余.记为a二h mnd n)做为解密指数。
⑤得出所需要的公开密钥和秘密密钥:公开密钥(加密密钥):PK={e,n} ;
秘密密钥(解密密钥);SK=(d,n}
加密和解密过程如下:
设消息为数M(M<n)
设C=(Md)mod n,就得到了加密后的消息C;
设M=(Ce)mod n,就得到了解密后的消息M。其中,上面的d和e可以互换
由于RSA算法具有以下特点:加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥))SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然秘密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。它们满足条件:①加密密钥PK对明文M加密后,再用解密密钥SK解密,即可恢复出明文,或写为:Dsk(Esk(M))= M②加密密钥不能用来解密,即((D娜e,c}M)) } M③在计算机上可以容易地产生成对的PK和SK}④从已知的PK实际上不可能推导出SK⑤加密和解密的运算可以对调,即:E}(M)(Es}(M)(M))=M所以能够防止身份的伪造、冒充,以及对信息的篡改。
3. RSA用于数字签名系统的实现
RSA竿名讨程如下图2所示:
4.结论
数字签名技术是网络系统虚拟环境中确认身份的重要技术,在技术和法律上有保证。在数字签名应用中,公开密钥可以保存在系统目录内、未加密的电子邮件信息中、电话黄页上或公告牌里等,网上的任何用户都可获得公开密钥。而私有密钥是用户专用的,由用户本身持有.它可以对由公开密钥加密信息进行解密。本文对数字签名进行了初步研究探讨,下一步主要研究该方案与其他算法结合的运行速度。