RSA暗号は、桁数の大きい素因数分解の困難さを安全性の根拠とした、代表的な公開鍵暗号方式です。データの暗号化とデジタル署名(電子署名)の両方に利用され、インターネット通信の安全性(SSL/TLSなど)を支える基盤技術です。情報の機密性確保だけでなく、AIシステムにおけるデータの安全な送受信やプライバシー保護にも貢献します。
RSA暗号とは
RSA暗号(Rivest-Shamir-Adleman)とは、データの暗号化に用いる「公開鍵」と、復号に用いる「秘密鍵」という異なるペアの鍵を使用する、世界で最も広く普及している公開鍵暗号方式のアルゴリズムです。
詳しく解説
RSA暗号は1977年に開発され、巨大な2つの素数を掛け合わせた数の「素因数分解問題」が極めて困難であるという数学的性質を安全性の根拠にしています。掛け算は一瞬で行えますが、その逆(大きな数から元の素数を割り出すこと)には膨大な計算時間が必要です。送信者は受信者が公開している公開鍵でデータを暗号化し、受信者は自分だけが持つ秘密鍵を使って復号します。これにより、鍵の受け渡しを安全に行うことができ、インターネット上での安全なデータ通信を実現しています。AIの分野では、機密性の高い機械学習用データや学習済みモデルをセキュアに転送・保管するための基礎技術として不可欠な存在です。
具体例・使われ方
代表的な例として、Webサイトの通信を暗号化するHTTPS(SSL/TLS)プロトコルが挙げられます。また、データ送信者が本人であることを証明するデジタル署名(電子署名)にも利用され、AIモデルの改ざん防止や、APIを通じて提供されるAIサービスへのアクセス認証にも活用されています。
似た用語との違い
共通の鍵で暗号化と復号を行う「対称鍵暗号」(共通鍵暗号方式)とは異なり、RSA暗号は暗号化と復号に異なる鍵を用いる「公開鍵暗号方式」であるため、鍵の事前共有が不要というメリットがあります。また、同じ公開鍵暗号方式である「楕円曲線暗号」と比較すると、RSA暗号は歴史が古く互換性に優れていますが、同じ安全性を確保するために必要な鍵の長さ(鍵長)が長く、計算処理が重いという違いがあります。
注意点
RSA暗号は適切な鍵長(現代では2048ビット以上が推奨)を使用しなければ、近年の計算能力の向上によって解読されるリスクがあります。また、将来的に十分な性能を持つ「量子コンピュータ」が実用化された場合、素因数分解が高速に解かれてしまうため、安全性が脅かされることが指摘されています。このため、耐量子計算機暗号(PQC)への移行準備が世界中で進められています。