対称鍵暗号は数学的手法を用いた暗号化技術で、一般にECCと略されます。これはRSA(Rivest Shamir Adleman)の暗号アルゴリズムと関連して語られることが多いです。RSAは、データ、メール、アプリの暗号化を一度の処理で行う素因数分解に基づく手法ですが、ECCは数学的に異なる方法です。
RSAに比べ、楕円曲線暗号はかなり強固な暗号手法です。楕円曲線の数学を利用して、公開鍵暗号の安全性が各鍵ペアで高まります。
RSAは同じ目的に素数を用いますが、鍵が短く安定しているため、楕円曲線暗号の人気が高まっています。鍵サイズの増大がデバイスの安全確保を厳しくしており、今後もその傾向が続くと考えられるため、楕円曲線暗号の基本を理解しておくことが欠かせません。
RSAが素因数分解を利用するのに対し、楕円曲線暗号は有限体上の代数構造に基づいています。そのため、ECCで生成される鍵は数値的に解析しにくく、RSAは攻撃のリスクがあることから、より安全な選択肢とされています。
今後の高い性能と安全性を実現するため、ECCの利用は自然な流れです。貴社が顧客のプライベートデータをオンラインで守ると同時に、モバイル端末での使いやすさを向上させるために採用が進んでいます。敏感なデータの保護にECCを用いるサイトが増加する中、基本的な理解が求められています。
現在の楕円曲線暗号で定義される楕円曲線とは、有限体上の平面曲線で、点が y2=x3 + axe + b の式を満たすものです。
この楕円曲線は、任意の点をx軸周りに180度回転させても形状が変わらず、垂直でない全ての直線は曲線と交わる点が3点を超えません。
なぜ暗号技術に楕円曲線を使い始めたのか?
楕円曲線暗号の利用は1980年代半ばにさかのぼります。1985年にNeal KoblitzとVictor S. Millerが別々に提案し、2004年に広く採用され始めました。
Rivest、Shamir、Adlemanによって設計されたRSA暗号は、現在でも最も利用されている公開鍵アルゴリズムです。情報セキュリティの分野では、インターネット通信の安全確保やソフトウェアなどのデジタル資産の検証に広く使われています。
1977年、Ron Rivest、Adi Shamir、Leonard Adlemanは、非常に大きな2つの素数を掛け合わせる素因数分解法を利用したRSAを考案しました。
RSAアルゴリズムは長年にわたりセキュリティ界に大きく貢献してきました。しかし、大きな数を素因数分解してRSA鍵を解読するための数学的・計算資源が、攻撃者にも手が届くようになってきたため、現代の計算技術と数学に対応するために必要なRSA鍵の増大は運用上の課題となるでしょう。
近年、複数の研究者がRSA公開鍵の脆弱性を発見しています。例として、2020年にKey factorの研究者が7500万以上のRSA鍵を調査し、RSA鍵を使用する証明書のうち172件に1件が「素因数分解攻撃」に対して脆弱であると判明しました。
コンピュータが大きな数の因数分解を行えるため、RSAは脆弱と考えられる一方、楕円曲線暗号は、はるかに困難な離散対数問題に基づいているため、安全性が高いとされています。現代の技術でも、ECCで生成された鍵を逆算するには宇宙の年齢を超える時間がかかることが証明されています。
短い鍵長のため、ECC鍵はRSA鍵よりも保管・管理が容易です。また、短い鍵のおかげで暗号化・復号に必要な計算資源が少なく、効率的です。
楕円曲線の形は、次の式で確認できます: y2 = x3 + axe + b
aとbに値を代入すると曲線の形状が決まります。楕円曲線暗号では、有限体上でこの曲線を用い、秘密鍵の持ち主のみが解読できる暗号文を生成します。鍵が大きいほど曲線も大きくなり、問題の解決はより困難になります。
以下は、この暗号技術が実際にどのように活用されるかの簡単な例です。
aとbの値から楕円曲線が生成され、曲線上で点Aから点Bへ線を引き、第三の点(cと呼ぶ)に到達します。線が第三の交点に達すると、その線をx軸で反転します。
点cから進むと、点Aから点cに引いた線が、別の部分で点dと交わります。この点を再びx軸で反転し、最終的な端点が決まるまで繰り返します。
各交点は「点」で示されます。以下は交点の表記例です:
秘密鍵を持たない者は、交点の数を把握することで、連続する「点」の回数を容易に特定できます。
一方向では計算が容易で、逆方向では複雑なアルゴリズムにより、公開鍵暗号が実現可能となっています。例えば、RSAは2つの素数を掛けるのは簡単ですが、その大きな数を元の素数に分解するのは非常に困難です。
しかし、RSAは安全性を保つために2048ビット以上の鍵が必要であり、その結果、処理に時間がかかり、鍵サイズの重要性が浮き彫りとなっています。
楕円曲線暗号は鍵が短いため、携帯端末でも十分な処理能力が発揮できます。同じサイズの鍵であれば、RSAは因数分解が容易でエネルギー効率も低いため、暗号の強度が劣ります。
ECCを利用すれば、小さな鍵でも同等の防御力を持たせることが可能です。RSAに比べ、短く高速な鍵で高い安全性が得られるため、計算資源の限られた携帯端末での利用に適しています。
暗号技術では、デジタル署名を実現する主要な手法の一つです。取引の署名には、BitcoinやEthereumがEC Digital Signature Algorithm(ECDSA)を使用しています。しかし、ECCはデジタル通貨に限らず、鍵が短く効率的なため、今後のオンラインサービスで事実上の標準暗号となるでしょう.
楕円曲線暗号は実際に多くの場面で利用されています。オンラインバンキングや決済システムでは、オンライン小売業者が顧客のクレジットカードやデビットカード情報を送信前にECCで暗号化し、データの安全とプライバシーを守っています。
さらに、ECCはメールの暗号化にも利用できます。人気のメール暗号ソフトウェアPretty Good Privacy (PGP)は、受信者以外に内容が漏れないよう、ECCを活用してメッセージのプライバシーを守ります。
PGPの各利用者は固有の公開鍵と秘密鍵を持ち、秘密鍵は常に安全に管理し、公開鍵は共有可能です。メールの暗号化には受信者の公開鍵のみで十分ですが、メールを復号するには自分の秘密鍵が必要です。
最新情報を購読