產生兩組金鑰,私鑰(private key)與公鑰(public key)
Notice : 雖說是step 1 但也滿複雜的......
亂數挑選兩相異質數,此處選定兩質數 A & B;
相異,就是不能一樣的意思
.把 A 與 B 相乘得到 C
→C = A * B
.把 A 與 B 帶入尤拉函數得到 D
→D = (A-1) * (B-1)
.找一質數E,比 D 小且和 D 互質
.找一數 F 使 (E*F) (mod C) = 1
此處mod為取餘數
私鑰 = ( C , F )
公鑰 = ( C , E )
Step 2 - 加解密 (en-decryption)
寄件人拿到公鑰(C,E)
使用以下方法加密檔案
→原檔案^E ≡ 加密檔 (mod C)
此時可將加密後檔案傳給收件人
→原檔案^E ≡ 加密檔 (mod C)
此時可將加密後檔案傳給收件人
收件人使用私鑰(C,F)
收件人使用以下方法解密檔案
→加密檔^F ≡ 原檔案 (mod C)
即可取得原檔案
Step Extra - 實際操作
看了這些,事實上也是頭腦打結,不如自己動手玩玩看吧
稍微找了資料,對於程式白癡較多人推薦使用 Openssl 以及 Gpg4Win 進行RSA加密
.Openssl (Official)
.Gpg4Win (Official)
兩者的差異便不細說,
但有GUI的Gpg4Win理所當然使用起來較為友善,