RSA演算法初步總結
RSA簡介
1977年,三位數學家Rivest、Shamir 和 Adleman 設計了一種演算法,可以實作非對稱加密,這種演算法用他們三個人的名字命名,叫做RSA演算法,從那時直到現在,RSA演算法一直是最廣為使用的"非對稱加密演算法",毫不夸張地說,只要有計算機網路的地方,就有RSA演算法,
這里我盡量簡短的解釋一下RSA的演算法原理,以避免冗雜,不好理解:
演算法原理:
RSA 加密
1:找出質數:p ,q
這個相信,做過rsa題目的人都知道,
2:n = p * q
3:φ(n) = (p-1)* (q-1) #(歐拉函式)一個根據歐拉函式推出來的式子
4:公鑰e 要求:1<e<φ(n) #加密需要用到e
e,φ(n) 互質,私鑰d #e與φ(n)滿足的條件
e*d 除以φ(n) 余數為1 #這個是一個乘法逆元的式子 :de = 1 mod φ(n)
5:加密:m^e 除以 n 求余數為 c # c = (m^e) mod n : m的公鑰加密
6:解密: c^d 除以n求余數為m # m = (c^d) mod n : 解出密文m
安全性:
傳播:n ,e ,c # 只傳播出:n,e,c
解密:n ,d ,c # 解密所需
公鑰:(n,e)
私鑰:(n,d)
例如:
如果想要從以知e得到d 需要 知道φ(n),否則不能得到d,
如果想知道φ(n),就得知道q,p的值,
這樣初步解釋RSA,希望有幫助,
新手寫給新手看的,如有錯誤,或建議歡迎指出
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/282674.html
標籤:區塊鏈
下一篇:zkSync 基本原理
