NTTは2007年5月21日,公開鍵暗号の安全性の根拠となる素因数分解の難しさに関する検証実験として,特殊合成数の従来の世界記録である911ビットを上回る1017ビットの合成数に対する素因数分解を達成したことを明らかにした。NTT,ドイツのボン大学,スイスのスイス連邦工科大学ローザンヌ校(EPFL)の3者による共同実験。ボン大のPCクラスタを数時間動かすことで素因数分解を完了した。

 素因数分解の対象は「aのb乗プラスマイナス1」という特殊な形の合成数であり,この型に有効に働く素因数分解アルゴリズムである特殊数体ふるい法を用いた。実際に用いた合成数は「(2^1039-1)/5080711」であり,因数分解の対象は1017ビットになる。このビット数は,一般的な合成値に一般数体ふるい法を適用した場合で言うと,約700ビットの難しさに相当する。

 一般に,公開鍵暗号の鍵長を長くすればするほど安全になるが,どの程度の長さがあれば事実上安全になるかを推測する手段として,今回のような素因数分解の実験が実施されている。コンピュータの計算処理能力と素因数分解技術の進化によって,安全性を確保するための鍵長が伸びることになる。なお,SSLなどで用いられているRSA暗号の鍵長の主流は,現在1024ビット。

 「(2^1039-1)/5080711」を,以下に示す80桁と227桁のペアに素因数分解した。

80桁の数値:


227桁の数値: