概要

RSAとは、最も広く使われている公開鍵暗号方式のアルゴリズムです。開発者3名(Rivest・Shamir・Adleman)の頭文字から名づけられました。巨大な数の素因数分解が現実的な時間では計算困難であるという性質を安全性の根拠にしています。

公開鍵で暗号化し秘密鍵で復号する「暗号化」だけでなく、秘密鍵で署名し公開鍵で検証するディジタル署名にも使える点が特徴で、インターネットの安全を支える代表的な技術です。

詳細(仕組み・AESとの違い)

RSAは、桁数の大きい2つの素数を掛け合わせるのは簡単でも、その積から元の素数を求める(素因数分解する)のは極めて困難、という計算の非対称性を利用しています。

項目RSAAES
分類公開鍵暗号(非対称)共通鍵暗号(対称)
公開鍵・秘密鍵のペア共通の鍵1つ
速度遅い速い
主な用途鍵交換・ディジタル署名本文の暗号化
RSAのキーワードは「公開鍵暗号の代表」「素因数分解の困難性」。AES(共通鍵)との分類の違いが頻出。RSAは署名にも使える点も押さえましょう。

安全性と対策

RSAの安全性は「素因数分解が難しい」ことに依存します。計算能力の向上に応じて鍵長を伸ばす必要があり、長期的には耐量子計算機暗号への移行が検討されています。

活用・関連例

RSAは、SSL/TLSでの鍵交換やサーバ証明書、ディジタル署名、電子メールの暗号化など、幅広く使われてきました。PKIの証明書でも利用される、公開鍵暗号の代表的アルゴリズムです。

試験での問われ方