ECDSAの曲線シードの由来をClaudeが解明 Anthropicが発表

ECDSAの曲線シードの由来をClaudeが解明 Anthropicが発表 ITニュース

Anthropic は2026年10月16日、証明書や署名で広く使われる ECDSA の標準曲線について、長年の疑問だった「シード」の出どころが分かったと発表しました。社内の研究用モデルの Claude が、30分足らずで突き止めたといいます。

結論から言うと、ECDSA の標準曲線のシードは、ハッシュの結果ではなく、乱数生成器 lrand48 に Unix 時刻を与えて得た出力でした。Anthropic は、暗号の突破でも新しい攻撃でもなく、ECDSA を使う側が何かをしたり変えたりする必要はないとしています。 発表の原文は、Claude reveals ECDSA curve origins(Anthropic 公式)で読めます。まず表で全体像をどうぞ。

項目 発表の内容
発表したところ Anthropic(Frontier Red Team)、2026年10月16日
分かったこと NIST の P-192・P-224・P-256・P-384・P-521 のシードは、lrand48 に Unix 時刻を与えた出力
これまでの有力な説 冗談めいた合言葉のハッシュからシードを作った(今回、誤りだったと記載)
利用者への影響 何かをする、変える必要はない

ECDSA の標準曲線の「シード」とは

ECDSA は、2000年に NIST が FIPS 186-2 の一部として採用した署名方式です。標準として決められた楕円曲線の一覧には、曲線の係数 b を決めるハッシュ値の元となる「シード」が付いていました。

このシードは、NSA から説明も根拠もなく提供されたもので、なぜその値なのかは長年の疑問でした。有力だったのは、NSA の Jerry Solinas 氏が、冗談めいた合言葉のハッシュからシードを作ったという説です。Solinas 氏は2023年に亡くなっています。今回の発表では、この説は誤りだったと書かれています。

ごはんにたとえるなら、老舗のレシピに書かれた謎の数字の由来が、実は作った日の時計の数字だったと分かったような話です。

Claude が ECDSA のシードの由来を見つけた経緯

2026年10月、Anthropic の社員が、社内の研究用モデルに、手がかりを与えずにシードの作り方を調べさせました。Claude は30分足らずで、P-192・P-224・P-256・P-384・P-521 のシードの由来を見つけています。

方法は、C ライブラリの乱数生成器 lrand48 に Unix 時刻を与え、1回につき20バイトを候補のシードとして取り出し、これを繰り返すというものです。たとえば P-256 は、1842回目の候補が公開されたシードになりました。

調べ方の流れ

発表によると、Claude は次のように進めました。

  • 1990年代の C ライブラリの疑似乱数生成器は、出力が見分けられると推測した
  • 公開されたシードを1ビットずつずらしながら、隣り合う部分が当時の生成器の連続した出力かを調べるスキャナーを書いた
  • 上位ビットが0になる偏りから、lrand48 と特定した
  • 素数曲線のシードは、LLL 基底簡約(格子問題)で内部状態を復元した
  • 復元した状態をさかのぼると、素数曲線の10個のシード(NIST の5曲線と ANSI X9.62 の例示用5曲線)は、いずれも1997年5月から1998年4月の時刻で初期化されていた

ANSI X9.62 規格の例示用の素数曲線5つ(prime192v2・v3、prime239v1〜v3)も、同じ方式のシードでした。一方、NIST のバイナリ曲線のうち B-233・B-283・B-409・B-571 の4つは、時刻を半分にした値で初期化したと読むと、1998年4月17日に対応すると書かれています。

ECDSA の曲線に弱点はないのか

Anthropic は、今回の結果は暗号の突破でも、新しい攻撃でも、ECDSA の曲線の弱点でもないと述べています。シードが単純な方法(クロックで初期化した一般的な疑似乱数生成器)で作られていて、誰でも再現できるため、細工の余地が小さいというのが理由です。曲線に意図的な裏口や弱点がなかったという確信が、以前より強まったとしています。

あわせて発表は、読者は楽しい最終章として受け取ってほしく、何かをする、あるいは変える必要はないと書いています。多くの研究者は、もともとこの曲線を信頼していたとも述べています。

ECDSA を使う側のおすすめ

証明書や署名で ECDSA を使っている情シス担当者にとっては、設定の見直しや鍵の入れ替えを急ぐ話ではありません。おすすめは、「NIST 曲線に裏があるのでは」という疑問が出たときに、この発表を説明の材料として使えるようにしておくことです。なお、これは Anthropic 自身の発表です。再現用の Python コードが公開されており、シードは誰でも再現できるとしています。

ECDSA の曲線に残された疑問

基準点の一部の選び方、飛ばされた曲線の基準、B-163 のシードは、まだ説明されていません。内容は次のとおりです。

  • 基準点(すべての ECDSA 公開鍵がその倍数になる点 G)は、P-192 と ANSI X9.62 の5曲線(prime192v2・v3、prime239v1〜v3)が、Arjen Lenstra 氏の長整数演算ライブラリ FreeLIP の乱数生成器に由来するとされた。P-224・P-256・P-384・P-521 の基準点は、この手順に合わない
  • 条件を満たす曲線が飛ばされた例がある(P-256 では候補876番も同様の曲線になる)
  • バイナリ曲線 B-163 のシードと、NIST のバイナリ曲線の基準点の選び方も、その対象

Anthropic は、飛ばされた数が少ないので、弱い曲線が選ばれたとは考えにくいとしています。

シード発見に対して出ていた懸賞金36,864ドルは、Internet Security Research Group に寄付されるとのことです。作業は John Wood 氏ら Anthropic の10人によるもので、再現用の Python コードも公開されています。

まとめ

  • Anthropic は2026年10月16日、ECDSA の標準曲線のシードの由来を発表した
  • NIST の P-192・P-224・P-256・P-384・P-521 のシードは、lrand48 に Unix 時刻を与えた出力だった。Claude が30分足らずで見つけた
  • Anthropic は、弱点や新しい攻撃ではなく、何かをする必要はないとしている
  • 基準点の選び方の一部や B-163 のシードには、残された疑問がある
  • この結果は Anthropic 自身の発表で、再現用のコードが公開されている

ほかの IT の話題は、当ブログの技術ネタカテゴリーからどうぞ。

2026年10月17日時点の情報です。

ITもごはんも、腹八分目が長続きのコツ!

コメント