C++ 怎么寫RSA算法,服務器給我公鑰C++怎么寫RSA算,有公鑰,有明文。如何寫過程,沒有p,q,n等等。 該怎么轉換成整數然后求次方 me ≡ c (mod n)不能用openssl,因為我要編譯成dll的。沒有分值,不要意思
1 回答
犯罪嫌疑人X
TA貢獻2080條經驗 獲得超4個贊
基礎
RSA算法非常簡單,概述如下:
找兩素數p和q
取n=p*q
取t=(p-1)*(q-1)
取任何一個數e,要求滿足eperl -Mbigint -e "print 465**63%2773"
244
即用e對c解密后獲得m=244 , 該值和原始信息M相等.
字符串加密
把上面的過程集成一下我們就能實現一個對字符串加密解密的示例了.
每次取字符串中的一個字符的ascii值作為M進行計算,其輸出為加密后16進制
的數的字符串形式,按3字節表示,如01F
代碼如下:
#!/usr/bin/perl -w
#RSA 計算過程學習程序編寫的測試程序
#watercloud 2003-8-12
#
use strict;
use Math::BigInt;
my %RSA_CORE = (n=>2773,e=>63,d=>847); #p=47,q=59
my $N=new Math::BigInt($RSA_CORE{n});
- 1 回答
- 0 關注
- 702 瀏覽
添加回答
舉報
0/150
提交
取消
