暗号
RSA アルゴリズム
別称: RSA, Rivest–Shamir–Adleman
定義
Rivest・Shamir・Adleman が 1977 年に発表した公開鍵アルゴリズム。2 つの大きな素数の積を素因数分解する難しさを安全性の根拠とする。
RSA は 2 つの大きな素数 p、q を選び、モジュラス n = p·q とオイラー関数 φ(n) を計算し、公開指数 e(通常は 65537)を選んだうえで秘密指数 d を e の φ(n) における逆元として求めて鍵対を生成します。暗号化は m^e mod n、復号は c^d mod n です。RSA は OAEP などのパディング方式を用いた暗号化と、RSA-PSS による電子署名の両方に対応します。安全性は整数の素因数分解が計算困難であるという仮定に依拠し、NIST は 128 ビット相当の安全性のために最低でも 3072 ビットの RSA 鍵を要求します。RSA は楕円曲線方式より低速で、大規模な量子計算機が登場すれば破られるため、新規導入向けに ML-KEM や ML-DSA といった耐量子方式の標準化が進められています。
例
- 2020 年以前に発行された多くの TLS サーバー証明書は RSA-2048 または RSA-3072 鍵を使用している。
- GPG のメール署名では 4096 ビット RSA 鍵ペアがよく利用される。
関連用語
非対称鍵暗号
数学的に対応した鍵ペア(暗号化用の公開鍵と復号用の秘密鍵)を用い、事前の秘密共有なしに安全な通信を可能にする暗号方式。
公開鍵暗号方式
公開鍵と秘密鍵のペアを用い、事前共有の秘密なしに暗号化・鍵交換・電子署名・認証を実現する暗号学の分野。
楕円曲線暗号(ECC)
有限体上の楕円曲線の代数構造に基づく公開鍵暗号の総称で、RSA と同等の安全性をはるかに小さな鍵長で実現する。
デジタル署名
メッセージや文書の真正性・完全性・否認防止を証明する公開鍵暗号方式のメカニズム。
耐量子暗号
古典計算機と大規模量子計算機の両方からの攻撃に耐えるよう設計された古典的な暗号アルゴリズム群。
公開鍵
非対称鍵ペアのうち自由に配布できる側で、所有者宛ての暗号化や対応する秘密鍵による署名の検証に用いられる鍵。