C++ 怎么寫RSA算法,服務(wù)器給我公鑰C++怎么寫RSA算,有公鑰,有明文。如何寫過程,沒有p,q,n等等。 該怎么轉(zhuǎn)換成整數(shù)然后求次方 me ≡ c (mod n)不能用openssl,因為我要編譯成dll的。沒有分值,不要意思
1 回答

犯罪嫌疑人X
TA貢獻(xiàn)2080條經(jīng)驗 獲得超4個贊
基礎(chǔ)
RSA算法非常簡單,概述如下:
找兩素數(shù)p和q
取n=p*q
取t=(p-1)*(q-1)
取任何一個數(shù)e,要求滿足eperl -Mbigint -e "print 465**63%2773"
244
即用e對c解密后獲得m=244 , 該值和原始信息M相等.
字符串加密
把上面的過程集成一下我們就能實現(xiàn)一個對字符串加密解密的示例了.
每次取字符串中的一個字符的ascii值作為M進(jìn)行計算,其輸出為加密后16進(jìn)制
的數(shù)的字符串形式,按3字節(jié)表示,如01F
代碼如下:
#!/usr/bin/perl -w
#RSA 計算過程學(xué)習(xí)程序編寫的測試程序
#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 關(guān)注
- 694 瀏覽
添加回答
舉報
0/150
提交
取消