Encryption
正在選擇111作為在 RSA 中有效的公共指數?
我知道它不會加密任何東西。但是 $ 1 $ 作為 RSA 公鑰中的公共指數有效嗎?
TL;DR:這是一個約定和上下文的問題 $ e=1 $ 是否允許。
RSA 的定義各不相同:
- 原始RSA 文章要求首先選擇私有指數 $ d $ 作為 « 一個大的隨機整數,它與 $ (p−1)\cdot(q−1) $ »,然後計算 $ e $ 作為 « 的“乘法逆元” $ d $ , 模組 $ (p−1)\cdot(q−1) $ »。這使得極不可能 $ e=1 $ ,但允許。RSA後面的描述傾向於選擇 $ e $ 第一的。
- PKCS#1 v1.5 / RFC 2313要求 « 選擇一個正整數 $ e $ 作為它的公共指數»。這允許 $ e=1 $ .
- PKCS#1 v2.0 / RFC 2437狀態 « 公共指數 $ e $ 是一個整數 $ 3 $ 和 $ n-1 $ 令人滿意的 $ \gcd(e,\lambda(n))=1 $ , 在哪裡 $ \lambda(n)=\operatorname{lcm}(p-1,q-1) $ »。那不允許 $ e=1 $ , 但仍然允許 $ e=\lambda(n)+1 $ 和 $ e=(p−1)\cdot(q−1)+1 $ ,也許還有一些其他的值 $ e $ 是這樣的 $ x\mapsto x^e\bmod n $ 是恆等函式 $ [0,n) $ 就像它一樣 $ e=1 $ . PKCS#1 v2.2 具有相同的處方 $ e $ .
- FIPS 186-4狀態 « 指數 $ e $ 應為奇數正整數,使得 $ 2^{16}<e<2^{256} $ »,這禁止 $ e=1 $ . 結合 $ d=e^{-1}\bmod\operatorname{lcm}(p-1,q-1) $ 和最低限度 $ d $ , 這使得它不可能 $ x\mapsto x^e\bmod n $ 是恆等函式。
對於電腦實現,這取決於是否針對 $ e=1 $ 存在與否。兩者都存在。
有時,公鑰與 $ e=1 $ 或者 $ e=\lambda(n)+1 $ (軟體很少不允許)用於測試鍵或逆向工程中,以便輕鬆分析填充。當然,此類密鑰不得用於有價值數據的加密或簽名。