目前位置: VCer资源中心 >>> VCer代码 >>> 其它技术

[本帖已阅读4732次 分值90 回复2次] 张贴资源 发回信箱 控制面板

RSA加密演示程序

提供者:ISeekYou 张贴时间:2004-05-19 19:10:46.0 出处:vcer.net 作者:不祥

RSA加密演示程序(2004-05-19 19:10:46.0)


那时


 
级别: VCer排长
头衔: VCer会员

经验: 751
作品: 15
分会: 华中分会
注册: 2004-02-09 19:39:54.0
登录: 2008-05-14 10:14:29.0

只是一个简单的演示程序,没有用很大的质数,就用了7和17. 呵呵

bool Encipher表明改函数是用了加密还是解密.

 

CString RSA(CString ASource, bool Encipher)

{

    CString SourceText;

 int   P,Q,E,D,N,Code;

 int   iLength ,i,j,iTemp;

    P=7;

    Q=17;

    N=P * Q;  //  119   (P-1)*(Q-1)=96

    E=11;     //  D*E=1 mod (P-1)*(Q-1) 即 D*E=1 mod 96

    D=35;     //  11 * 35 =385 ;  385 mod 96 =1

 // 公开密钥 < E,N > = < 11,119 >

 // 秘密密钥 < D,N > = < 35,119 >

 SourceText=ASource;

    iLength=SourceText.GetLength();

 if(Encipher) Code=E;

 else Code=D;

 for(i=0;i<iLength;i++ )

 {

  iTemp=SourceText[i];

  for(j=0;j<Code-1;j++)

  {

   iTemp = iTemp * SourceText[i];

   iTemp = iTemp % N;

  }

  SourceText.SetAt(i,iTemp);

 }

 return SourceText;

 

}

注:转载文章需注明来源:VCer.net 文章地址:http://vcer.net/2242.html

  如果你觉得VCer.net不错,而且你愿意为VCer.net捐赠一元钱,那么点击后面的捐赠按钮吧:) vcer.net捐赠

[回复该贴] [加入个人书签]
[投票结果]

A: 评分 10 100% (1 票)
B: 评分 5 0% (0 票)
C: 评分 0 0% (0 票)
D: 评分 -5 0% (0 票)
E: 评分 -10 0% (0 票)

 


re:RSA加密演示程序
信息:991 加密后:331 解密后却是:94 原因为何,能否给予解答? EMAIL:sn_59185@sina.com ********** 加密时各项参数:P=3 Q=11 N=33 E=3 D=7

SAI 于 2004-09-15 12:51:31.0 编辑 [回复该贴]

re:RSA加密演示程序
对于RSA加密算法,小的数根本没用,基本都设计到大整数的运算,有些现成的大整数运算库不错,比如看雪论坛里头afanty写的RSAKit。不错,可以拿来研究研究

jiyu 于 2004-06-12 21:42:06.0 编辑 [回复该贴]