P=61、Q=53
N=61 x 53=3233
φ(3233)=(61-1)(53-1)3120
E需符合1<E<3120且與3120互質
選擇E=17
計算模反元素得D=2753
這時候就可以開始進行加、解密動作,假設明文M=65
加密C=MEmodN=6517mod3233=2790
解密M=CDmodN=27902753mod3233=65
雜湊函數將任何長度的訊息輸入後加以壓縮,轉換而成為一個長度較短且固定的輸出
確保資料傳送的完整性
數位簽署
密碼儲存
訊息確認
原理:MD5 會將 512 位元區塊分成 16 個 32 位元的區塊,來處理輸入文字。
特性:輸入為一個 512 位元的區塊,輸出為一個 128 位元的訊息摘要。
應用:UNIX/Linux 的 shadow 密碼就是此種技術、驗證檔案完整性。
MD5("The quick brown fox jumps over the lazy dog")
= 9e107d9d372bb6826bd81d3542a419d6
MD5("The quick brown fox jumps over the lazy cog")
= 1055d3e698d289f2af8663725127bd4b
特性:輸入的訊息不能超過 2的64次方個位元,SHA 產生160位元的雜湊值
原理:輸入的訊息會被分成多個 512位元的區段來處理
優點:比MD5能夠預防暴力攻擊 (因為多了32位元)
應用:知名的電子郵件安全性協定PGP就是使用此種演算法。
明文 (Plaintext)
密文 (Ciphertext)
加密演演算法 (Encryption Algorithm)
解密演算法 (Decryption Algorithm)
金鑰是用來和加密演算法產生特定密文的字串。
金鑰是一組有一定長度的數字或符號字串,其大小通常以位元(bit)為單位。
金鑰常是演算法則內的一個變數,所以不同的金鑰會產生不一樣的密文。
就密碼學而言,金鑰長度越長,密文就越保密。
演算法強度
金鑰保護機制
金鑰的長度
明文:Legbone is black hat hacker
轉換成:
密文:lnlakeeategichrbskaobhc