①bob有乙個數m(m需要被加密)
②計算機me,(e為乙個隨機公開的數)
③me mod n = c (n為隨機數)(c是密文)
如果提供c、n、e求m:(解密)
cd mod n = m
me*d mod n =m**
**①alice隨機乙個超150位的質數p1
②隨機生成乙個p1的位數,相當於第二個質數p2
p1、p2均要為質數
③合數n=p1*p2(超過300位)
④將p1、p2隱藏起來,將n告訴所有人
因此要解密n的話,關鍵就要分解n,獲得p1和p2
①引入乙個尤拉函式f(n)=f(p1)*f(p2)(因為p1和p2都是質數)
****
引入尤拉定理:mf(n) = 1 mod n
∵1k = 1
∴mk*f(n) = 1 mod n
∵1 * m = m
∴(m * m)k*f(n) = m mod n
綜上,mk*f(n)+1 = m mod n
所以me
d mod n =m中的 ed = k f(n)+1
d = (k*f(n)+1)/e
調整d為整數,即【(f(n)*k) + 1】 % e == 0
密碼學學習筆記(2)
是不是分組密碼?des的分組長度?des的金鑰長度 3des triple des 演算法描述 是不是分組密碼?3des分組長度?3des金鑰長度?3des加密過程?3des解密過程?aes advanced encryption standard 是不是分組密碼?aes分組長度?aes金鑰長度?位...
現代密碼學之電子貨幣的加密
rsa盲簽名 盲簽名的使用 應該由受信任的當局 即銀行 生成。銀行可以為現金簽署數字字串,使其成為電子貨幣,數字字串包含 錢的值,序列號,銀行id 每個電子貨幣對應著唯一的序列號和銀行id,這樣可以有效的防止偽造。每乙個 e coin 都必須是銀行認證過的。然而這個系統有兩個個致命的問題 1。使用者...
我的密碼學學習筆記(持續更新ing)
非對稱金鑰演算法 密碼體制分類 雙鑰體制 公鑰體制 密碼攻擊概述 攻擊型別 攻擊者掌握的內容 唯密文攻擊 加密演算法 截獲的部分密文 已知明文攻擊 加密演算法 截獲的部分密文 乙個或多個明文密文對 選擇明文攻擊 加密演算法 截獲的部分密文 自己選擇的明文訊息,及由金鑰產生的相應密文 選擇密文攻擊 加...