1 ポイント 投稿者 GN⁺ 2023-10-05 | 1件のコメント | WhatsAppで共有
  • NISTがKyber-512をポスト量子暗号標準として推進する過程で、攻撃コスト計算を誤ってセキュリティ水準を水増ししたという批判が核心である
  • 争点は、反復ごとにかかる計算コストメモリアクセスコストは加算すべきなのに、NISTがこれを乗算したかのように扱い、Matzovの2^137推定に「40ビットの追加セキュリティ」を上乗せした点である
  • Kyber-512はCore-SVP基準で2^118水準と示され、NISTはAES-128基準である約2^143 bit operationsに合わせようとしたが、結合した数値の単位と意味が合っていないと批判されている
  • KyberはKyber-512、Kyber-768、Kyber-1024のように限られたパラメータ選択肢しか提供しない一方、NTRUとNTRU Primeはより細かなサイズ・セキュリティ水準の選択肢を提供すると比較されている
  • Kyber-512の標準化は、攻撃分析の不確実性、メモリコストモデルの未定量化、公開レビュー不足を抱えており、筆者はKyber-512の削除とNISTの計算誤りの公表を求めている

計算誤りの核心

  • 出発点は「2^40 + 2^40は2^80ではなく2^41」という単純な例である
    • 掛けるべき数と足すべき数を混同すると、セキュリティ水準は大幅に水増しされ得る
  • Kyber-512のセキュリティ水準論争で問題となる構造は次のとおりである
    • 攻撃は多数の**反復(iteration)**で構成される
    • 各反復には計算コストとメモリアクセスコストがある
    • 総コストは反復回数 × 反復あたりのコストとして計算すべきである
    • 反復あたりのコストの中では、計算コストとメモリアクセスコストを加算しなければならない
  • 核心的な批判は、NISTが計算コストとメモリアクセスコストを足さず、掛け合わせたのと同じ効果を生んだ点である
    • 例として2^25 bit operations/iterationと2^35 bit operations/iterationは足すべきである
    • これを掛けると単位はbitops^2/iter^2となり、攻撃コストの単位ではなくなる
    • このような乗算は、攻撃コストを数百万倍以上に水増しし得る

NISTPQCとKyber-512の背景

  • NISTは2022年にKyber-512標準化計画を発表し、2023年にKyber-512の標準草案を出した
  • 批判の焦点は、NISTがKyber-512のセキュリティ水準を正当化する過程で深刻な計算ミスをしたことにある
  • 2022年3月、NSA, NIST, and post-quantum cryptographyに関するFOIA請求が提起され、その後の訴訟を通じてNIST内部文書の一部が公開された
    • 公開文書と非公開文書の比較を通じて、NISTPQC過程におけるNSAの関与はNISTの公開説明より大きかったと見られている
    • 2016年のpqc@nist.govチーム一覧では、NIST職員よりNSA職員のほうが多かったと示されている
    • NISTは2020年の公開資料で、NSAのフィードバックは決定に影響せず、NISTのみが公開情報に基づいて決定すると述べていた
  • 2023年1月にはKyber-512のセキュリティ水準主張に関する新たなFOIA請求が出され、NISTが再び応答を遅延させ、新たな訴訟につながったとされる

Kyberの限られたパラメータ選択

  • KyberはRSA、ECC、McEliece、NTRUのように、望むサイズへ少しずつセキュリティ水準を上げることが難しいと指摘されている
    • Kyber-576は存在せず、Kyber-512より強い選択肢はKyber-768で、50%の次元増加が必要になる
    • Kyber-768より強い選択肢はKyber-1024である
    • Kyber-1024より強い選択肢は提供されていない
  • Kyber公式文書は、すべてのパラメータセットを「dimension-256 NTT」で処理できる点を利点として掲げたが、この構造では256の倍数でない次元は中核設計の変更を要する
  • 1KB制限のアプリケーションではKyber-768を使いにくく、Kyber-512がKyberで利用可能な最高セキュリティ選択肢になる
    • Kyber-768は1184-byte public keyと1088-byte ciphertextを用いる
    • Kyber-512は800-byte keyと768-byte ciphertextを用いる
  • 同じ1KB制限下で、NTRU系はより高いCore-SVP推定値を提供すると比較されている
    • sntrup653: 994-byte key、897-byte ciphertext、Core-SVP 2^129
    • NTRU-677 (ntruhps2048677): 931-byte key、931-byte ciphertext、Core-SVP 2^145
    • Kyber-512 round-3版はCore-SVP 2^118と示されている
  • Core-SVPはKyberチームがround-1およびround-2提出でセキュリティ水準推定に用いたメカニズムであり、NISTの2020年round-2報告書も比較にCore-SVPを使っている

NIST評価基準とNTRU比較

  • NISTの2016年公式提出要請は**柔軟性(flexibility)**を評価基準に含めている
    • 「良好な全体的セキュリティと性能」を前提に、より大きな柔軟性を持つ方式のほうが多くの利用者要件を満たすと見なしている
    • 同じカテゴリ内でも複数のパラメータセットを提示して、性能またはセキュリティ余裕を調整できると明記している
  • NISTは2020年にNewHopeを落選させた際、Kyberがcategory 3パラメータセットを自然にサポートする点を理由の1つに挙げた
  • Kyber-512が最低セキュリティ水準を満たさなければ、KyberにはKyber-768とKyber-1024しか残らず、NTRUより柔軟性が低い問題が大きくなる
  • NISTの2022年selection reportは、KyberとNTRUの双方のセキュリティに確信があるとし、KEM全般の性能も一般用途アプリケーションには受容可能だと評価している
  • この条件では、Kyber-512が外れた場合、NTRUのほうがより小さい選択肢、より高いセキュリティ選択肢、より細かなサイズ・セキュリティのトレードオフを提供し、Kyberより有利だという論理になる

NISTが競争を傾けたという4つの批判

  • 1. NTRUの追加柔軟性を無視

    • NTRU文献は、複数のセキュリティ水準とサイズ選択肢を提供できることを以前から示していたとされる
    • NISTは2020年に「多すぎるparameter setsは評価と分析を難しくする」と発表した
    • 公式基準では柔軟性が肯定的に提示されていたのに、途中で「too many」という批判が現れ、NISTはその基準を明確に答えなかったと指摘されている
  • 2. 鍵生成コストの誇張

    • Golden Cove基準のベンチマークで、Kyber-512はencapsulation 25829 cycles、decapsulation 20847 cyclesである
    • NTRU-509はencapsulation 15759 cycles、decapsulation 25134 cyclesで、ciphertext処理合計がKyber-512より13%小さいと示される
    • 一方でNTRU-509のkey generationは112866 cyclesで、Kyber-512の17777 cyclesより大きい
    • しかしKEMは鍵を複数のciphertextに再利用でき、バイト送受信コストはcycleよりはるかに重要であり、Montgomery trickでNTRU key generationを高速化できると主張されている
  • 3. NTRUのより高いセキュリティ水準を隠蔽

    • NISTは2020年round-2報告書でcategory 5パラメータセットを強く推奨し始めた
    • NTRUはNTRU-1229とNTRU-HRSS-1373を提示し、それぞれCore-SVP 2^301、2^310でKyber-1024の2^254より高いとされる
    • NTRU Primeもsntrup1277ntrulpr1277などCore-SVP 2^270、2^271の選択肢を提示している
    • NISTのグラフは、こうした高セキュリティのNTRU選択肢を十分に示していなかったと批判されている
  • 4. 最高性能選択肢NTRU-509の除外

    • NISTがNTRU-509を大きなグラフおよびその後のselection reportの図表から除外したと指摘されている
    • NTRU-509はKyber-512より小さいkeyとciphertextを提供するのに、NISTの「NTRUはKyberよりpublic keyとciphertextがsomewhat larger」という記述と合わないとされる
    • NTRU-509を除外するにはAES-128の最低セキュリティ水準に満たないとする必要があるが、同じ基準でKyber-512を残すのは非常に脆弱な区別だと批判されている

Core-SVP以後の不確実性

  • Kyber-512のCore-SVPは2^118で、AES-128攻撃コストは2^140 bit operationsよりやや高いと見積もられている
  • 2017年および2019年のKyber提出文書は、Core-SVPより少なくとも30ビット安全だと主張したが、その根拠の一部は誤っているか不十分だと批判されている
    • rounding noiseはkey攻撃には適用されず、セキュリティ増加の根拠にはならないとされる
    • sievingのsubexponentialコスト増加という主張には根拠がなく、実際のasymptoticsはCore-SVPより速い可能性があると見られている
    • SVP oracle呼び出し回数とgate countはある程度妥当かもしれないが、Kyber-512を救うには不十分に見えるとされる
    • メモリアクセスコストは実際の攻撃コストとして重要かもしれないが、NIST公式基準は2^143「classical gates」を要求していたため、Kyber-512救済ロジックとして直接使いにくいと指摘されている
  • round-3のKyber提出はKyber-512を変更し、Core-SVP定義も変更して2^112ではなく2^118を得たとされる
  • この提出はKyber-512のセキュリティを151 bits ±16と示し、135まで下がってもメモリ要求量のため「catastrophic」ではないと主張していた
  • その後、Matzovなど複数のlattice attack分析が現れ、Kyber-512のセキュリティ推定はさらに複雑で不安定になった

NISTのKyber-512救済ロジック

  • NISTの公式callは、各セキュリティcategoryがAES-128など基準primitiveを「potentially relevant」な各種metricで下限とすると明記している
  • つまり、どの攻撃もNISTが実用セキュリティに潜在的に関連すると見るすべてのmetricで、基準以上の資源を要求しなければならない
  • NISTは「classical gates」を明確に定義してほしいという要請を長く避け、2022年selection reportでone-bit memory read/writeをcost-1 gateとして許容したと説明した
  • NISTはNTRU-509を除外する際、「non-local cost model」、すなわちメモリアクセスコストを事実上無料とみなす基準を使ったと批判されている
  • 逆にKyber-512をcategory 1に維持する際は、「realistic memory access costs」を考慮すればcategory 1を満たすと見ていた
    • 結果として、NTRU-509にはfree-memory metricを適用し、Kyber-512にはmemory-expensive metricを適用した格好だという指摘である

NISTBS: 2022年12月7日の説明への反論

  • 2022年12月7日、NISTはKyber-512がNIST category Iを満たすとみる理由を説明し、本稿はこれを「NISTBS」と呼ぶ
  • NISTBSは、Matzov報告書がKyber-512攻撃コストを2^137 bit operationsと推定したことを出発点としている
    • AES-128の古典攻撃コストは約2^143 bit operationsと見積もられる
    • したがって6ビット不足している
  • NISTBSは、lattice sieving攻撃が大規模メモリへの非構造的アクセスを必要とし、RAM modelはこのコストを無視していると説明する
  • 続いてNTRUおよびNTRU Prime提出文書の評価を引用し、category 1のsieving攻撃ではメモリアクセスコストを考慮するとRAM modelより「20〜40 bits」高くなり得ると計算した
  • 問題は、NISTがMatzovの2^137にNTRU Primeの40ビットを足して2^177水準と解釈したように見える点である
    • NTRU Primeの40ビットは、sntrup653における「real」2^169と「free」2^129の差から推定されたように見える
    • 2^129はCore-SVP、すなわちおおまかな反復回数であり、NISTの言うRAM modelのgate countではないと指摘されている
    • メモリアクセスコストは反復あたりのコストに加えるべきであり、すでにbit operationとして集計された総計算コストに掛けたり、指数として足したりはできない

実際の数値の意味

  • NTRU Prime文書はsntrup653についてCore-SVP 2^129を報告している
    • これはおおまかな反復回数の推定である
    • 同じ文書は、メモリアクセスの総コストを2^169 bit operations相当と見積もっている
  • Kyber-512はCore-SVP 2^118と示されている
    • 同じ方法でメモリアクセスコストを大まかに推定すると、2^154 bit operations相当になるという
  • Kyber文書の2^151「gates」推定は、メモリアクセスコストの推定ではない
    • これは攻撃計算内部のbit operations数を推定した値である
    • 「known unknowns」を考慮すると2^135〜2^167の範囲とされる
  • したがって、2^151の計算コスト推定とメモリアクセスコスト推定は、互いに掛ける項ではなく、反復あたりのコストという次元で意味をそろえて足すべき項である

なぜ誤りを見つけやすかったとみなすのか

  • 単純なsanity checkは次のとおりである
    • Kyber文書はKyber-512攻撃の計算コストを2^135〜2^167 bit operationsと見積もっている
    • NTRU Primeは、Kyber-512より難しそうなsntrup653のメモリアクセスコストを2^169 bit operations相当と見積もっている
    • 攻撃が2^14だけ改善されたのに、NISTがKyber-512攻撃コストを2^177と計算するのは不自然だと指摘されている
  • NISTBSはNTRU Prime文書が「RAM modelより40 bits追加セキュリティ」を推定したと書いたが、当該文書のSection 6.11には「40」も「RAM model」も直接の表現はないとされる
  • 明確なレビューのためには、NISTが40という数値が正確にどこから来たのか、どのmetricのどの値なのかを説明すべきだったという批判である
  • 2022年12月以降、具体的なscenario Xについて「137+40=177と計算したのは正しいのか」という確認質問が提起されたが、NISTは答えなかったという
  • その後、NISTは当該メールは「speaks for itself」だと答え、計算の特定解釈を確認したり、代替解釈を示したりしなかったと批判されている

正しい計算に必要な研究

  • 正しい計算には2つの効果を区別する必要がある
    • Core-SVPよりセキュリティ推定が上がる部分の一部は、反復内部計算のbit operationsコストから来る
    • 一部は、Core-SVPより反復回数そのものが増える外側ループから来る
  • 反復回数が増える効果はメモリアクセスコストと掛け合わせることができる
  • 一方で、反復内部の計算コストと反復内部のメモリアクセスコストは足さなければならず、これらを掛けることが核心的な誤りである
  • 正確な計算には、state-of-the-art lattice attacksに関する数百ページの論文を追い、メモリアクセスコストを含めたときに攻撃スタック全体を再最適化する必要がある
  • 例えばBKZの中でlow-memory enumerationとhigh-memory sievingのどちらが有利かも、メモリアクセスコストを入れると再計算が必要になる

標準草案と責任の問題

  • 2023年8月、NISTはKyber標準草案であるML-KEM草案を公開した
    • ML-KEM-512はsecurity category 1
    • ML-KEM-768はcategory 3
    • ML-KEM-1024はcategory 5と「claimed」されると書かれている
  • 問題は、「claimed」の主体が不明確な点である
    • NISTが主張しているのか、設計者が主張しているのか、他の誰かの主張なのか明確ではないと指摘されている
  • 草案Appendix Aは、categoryがAES-128、AES-192、AES-256をすべてのpotentially relevant metricで上回るという基準を再提示している
  • Kyber文書の最新分析は、Kyber-512攻撃コストが2^135「classical gates」まで下がり得ると示しており、これはNISTのAES-128 2^143 gates推定より低い
  • したがって、NISTがKyber-512はすべての関連metricでAES-128以上だという主張をどう正当化するのか、公開分析が必要である

結論と提案

  • lattice attackの表面は不安定で十分理解されていないため、Kyber-512の標準化は無謀だという結論である
  • Kyber-512は、すでに公開された攻撃とメモリアクセスコストまで考慮してもAES-128よりはるかに容易である可能性があり、逆の可能性もあるため、実際の状況を明らかにするには難しい研究が必要だとされる
  • AES-128自体も多重ターゲット攻撃では、1兆個の鍵のうち1つを破るのに2^88 computations水準になり得るため、10〜30ビットの損失は無視しにくいと指摘されている
  • Kyber-512が標準オプションとして残れば、Kyber-1024やNTRU-1229を扱えるアプリケーションであっても高速な選択肢を選ぶ可能性が高いと見られている
  • 最終勧告は、Kyber-512を削除し、NISTがKyber-512セキュリティ水準計算の誤りとNTRU比較過程における不透明なデータ選択を公に認めることである

1件のコメント

 
GN⁺ 2023-10-05
Hacker News のコメント
  • この記事を読む前に必ず知っておくべきなのは、NIST と NSA がこのアルゴリズムを作ったわけではなく、コンペを審査したという点です
    分析の大部分は競合チームや学術界が行っており、Kyber チームには Roberto Avanzi、Joppe Bos、Léo Ducas、Eike Kiltz、Tancrède Lepoint、Vadim Lyubashevsky、John M. Schanck、Gregor Seiler、Damien Stehlé、そして Bernstein の共同研究者である Peter Schwabe も含まれています

    • その通りですが、結局勝者を選んだのは NISTなので、表面上は分かりにくい弱いアルゴリズムを選ぶ余地はありました
      歴史的には勝者だけが採用されることが多いです。AES コンペを見ても、Rijndael より安全性マージンが大きいと評価されている Serpent がどれほど頻繁に言及されるかを考えれば分かります
    • 間違っていたら訂正してください。全プロセスは公開で進められていて、誰でも見られるのではないかと思います
      NIST が何らかの秘密の分析に基づいて勧告を出しているわけではないように見えます
  • 残念な現実として、Bernstein が正しい可能性はあるものの、NIST 側の回答または沈黙を欺瞞と見るべきなのか、それとも非常に攻撃的な態度で入ってくる相手と関わりたくなかっただけなのかを見分けるのは難しい、ということだ。
    NIST にも普通の人たちが働いていて、私たちの多くが攻撃的なバグ報告を受け止めるのと同じように、とげのある説明要求を受け止めた可能性が高い。
    「2024年に特許ライセンスが有効になる時点から Kyber を使えと言って、3年分のユーザーデータを攻撃者にさらしたし、2021年から NTRU を使えと言わなかった」といった誇張された非難は役に立たない。独立した耐量子暗号をすぐにデプロイするところも当面はないだろうし、2021年に NIST が提案できた代替案も複数あった。SIKE は昨年破られるまではかなり良さそうに見えていた。
    NIST がこの分野で傷のない評判を持っているわけではないが、アルゴリズムや手続きを批判するなら、なぜそうなのかについての簡潔な整理と、決定的な証拠が一つか二つあるとよい。大量のメール分析、ある一つの提出案との比較だけ、皆がデータを吸い上げようとして時間稼ぎをしているという類の非難は、真剣に受け止めにくくしてしまう。Kyber-512 が実際にこれほど危険なら、もっと明確に伝えられるべきだ。

    • この投稿を読んだ感想と100%一致する。
      ページが17,000語もあるという点も大きい。Harry Potter 基準でも平均的な読者なら70分は読む必要がある分量だが、この記事は小説ではなく、数字、考慮事項、NIST の引用のように言葉選びを吟味すべき文で埋まっている。そもそも耐量子暗号を理解できる程度の背景があっても、普通の本のように速く読むのは難しい。
      冒頭で “That lawsuit has been gradually secret NIST documents, shedding some light on what was actually going on behind the scenes” をクリックしたら別の記事に引き込まれたのだが、そのリンク先ページはさらに54,000語だった。モバイルではスクロールバーがなく分量が分からないまま直線的に流し読みしていたら、ある瞬間、博士課程の研究プロジェクトに登録したような気分になり、タブを閉じて元の記事に戻った。
      HN の読者には賢く技術的な人が多いが、分野は多様なので、「NIST=悪」を裏付けるとされる専門用語まみれの証拠を合理的に評価するのは難しい。隣接分野にいるので平均的な読者よりは理解していると思うが、きちんと読まずに判断する資格があるとは感じない。記事は文脈や略語を説明してはいるが量が多すぎて、すでに知っている人でなければわざわざ読みたいと思うかは分からない。すべての投稿が全員に理解される必要はないが、これは非難を含んでいるので、HN に適した記事なのか疑問に思う。
    • 筆者が djb、Daniel Bernstein だと今知ってみると、最近 HN で彼の古い IPv6 記事を称賛していた立場からすると、半ば皮肉な話だ。
      なので下で言ったことを少し取り消すかもしれないし、少なくとも djb が NIST の勧告とたどってきた歴史を考えると、攻撃的なトーンはより理解できると思う。関連情報は https://en.wikipedia.org/wiki/Daniel_J._Bernstein#Cryptograp... にある。
      形式より内容を過度に重視するのは好きではないが、この場合はブログ記事の形式があまりに悪く、内容に価値があるか評価しづらかった。暗号学分野の人間ではないので本案の評価はできないが、不要な皮肉やこき下ろしがメッセージを非常に疑わしく見せていた。良い点を突いているように見えても、全体のトーンは「WhaT ThE ElITe DoN'T WanT YoU TO KnoW!!」系の YouTube 動画に似ていて、正しいことを言っているとしても筆者はかなり不快に聞こえる。
      これを実際に最後まで読んだ人がいるのかも気になる。インターネットが集中力を殺したという話も正しいかもしれないが、逆に今は情報が多すぎて、時間をどこに使うかを非常に厳しく選ぶようになっている。ブログ記事なら、関連する詳細と要約は冒頭の数段落に入れ、長く迷走する日誌は後ろに置くべきだ。重要な断片が冗長な日誌の中に Where's Waldo のように隠れているなら、完読を期待するのは難しい。
    • 問題をかなり選択的に引用しているように思う。Bernstein 本人も特許待ちは些細な問題の一つだと言っている。
      彼が繰り返し問うている核心は、なぜ評価基準を事後的に変え続けたのか、結果を誤解させる形で提示したのか、基本的な計算ミスをしたのか、ということだ。この人たちは専門家なのに、こうしたことがすべて一つのアルゴリズムに有利に働いた。
      私の目には、そのアルゴリズムを標準にしたがっていたというシグナルに見える。これに NSA の関与が知られていたよりはるかに大きく、それを隠そうとしていた点まで加えると、この標準を極めて疑わしく感じる。
    • djb が言っているのは、「NIST が提示した定義に従えば、Kyber-512 が AES-128 と同じくらい暗号学的に強いかどうかは分かっていない」ということに近いように見える。
      これらのアルゴリズムが近くハードウェアに組み込まれる予定なので問題になる。
      標準化される実装が決まった以上、ハードウェアベンダーは FIPS 203 標準をより効率的に計算するブロックの設計を始める可能性が高い。すでにいくつか設計しているかもしれない。
      標準公開が2024年と予想され、FIPS モジュールの NIST CMVP 審査に1〜2年かかることを考えると、2026年半ばごろに ML-KEM(Kyber など)を搭載した FIPS 140-3 ハードウェアモジュールが出てきても驚かない。
      核心は [1] の「しかし NIST は、Kyber-512 が明確に指定された (N,X) について、シナリオ X において N ビットのセキュリティマージンを持つという明確なエンドツーエンドの記述をしていない」という文にあるように見える。
      djb は [2] で、自分の言う「シナリオ X」を簡潔に整理し、はい/いいえの答えだけが必要だとしている。彼は実際にこの問題を知る必要があり、議論する技術的背景を持つ人たちに尋ねている。回答を得られなかったため、[1] を投稿したのだ。

[3] の NIST の回答は、セキュリティそのものについて議論せずに [1] を一蹴している。特に第2段落にはもどかしさを感じた。「引用されたメール(https://groups.google.com/a/list.nist.gov/g/pqc-forum/c/4MBu...)は、それ自体で物語っている。NIST は、Kyber512 を標準化しようとする現在の計画がよいものかどうかについて、人々の意見に引き続き関心を持っている。査読者が、NIST がセキュリティマージンについて主張しているように見える内容に対して、面白半分で反論を試みる自由はあるが、その結果は標準化プロセスにとって特に有用ではないだろう。NIST の以前の主張とその解釈は、人々が Kyber512 を標準化するのがよい考えだと信じるかどうかとは関係がない」
NIST が査読者たちのセキュリティに関する主張を「標準化プロセスにとって特に有用ではない」と見なすなら、その査読者たちが暗号学者であることを考えると、一般の人々はなぜその標準を信頼すべきなのか。
決定的な証拠はあり得ない。現在の争点そのものが、明確な説明の欠如だからだ。Kyber-512 のセキュリティ強度をどのように計算したのか説明できるなら、話は別だっただろう。
現在の第三者による推定では、Kyber-512 のセキュリティ強度というやや曖昧な値が当初の要件より低く出ているため、説明や正当化が必要に見える。
[1]: https://groups.google.com/a/list.nist.gov/g/pqc-forum/c/4MBu...
[2]: https://groups.google.com/a/list.nist.gov/g/pqc-forum/c/4MBu...
[3]: https://groups.google.com/a/list.nist.gov/g/pqc-forum/c/4MBu...

  • この記事が無名の人によるものだったなら同意したかもしれないが、書き手は DJB または Tanja Lange で、どちらも無名ではない。
    こうしたことは、ある程度は敵対的にならざるを得ない。暗号解読にはそういう姿勢が必要でもあり、過去にいくつも疑わしい出来事があったからでもある。この分野と政治の一部なので、避けるのは難しい。

  • これは記事というより日記に近い。専門用語が多く、整理されておらず、同じところをぐるぐる回っていて、追うのが非常に難しい
    それでも情報そのものは重要かもしれない。NIST が NSA の助けを借りて、意図的に弱いアルゴリズムを標準化したという強い示唆がある
    そういうことが可能だというのは誰もが知っている
    ただ、この分野をもっと近くで追っている人がいるなら、ここでの数値が何を意味するのか説明してほしい。公開鍵暗号をこのように弱体化するのは、攻撃者が同じ事実を独自に発見しないと保証できないので、危険な賭けだと常に思っていた。秘密のバックドア鍵なら隠せる。Dual_EC_DRBG が出たときの疑惑がそうだった。しかし数学的な結果は本当に隠しにくい
    なぜここでそのリスクを取ろうとしたのだろうか

    • 期待を何度も裏切ってきた組織に、なぜこれほど圧倒的な善意の解釈をしているのかわからない
      もはやこうした議論がなぜ必要なのかもわからない。私たちはもう彼らを必要としていない。輸出規制もなくなった
      必要なのは、ハードウェア企業の注目を集め、NIST と NSA を単なる参加者の立場に限定するコンソーシアムだ。そうすれば政府がバックドア付き標準を採用しても、自分たちだけで使うことになる
    • NSA が他人の暗号が正しく機能するかを気にしている、と仮定している
      彼らがなぜそれを気にするのか
    • 特定の種類の攻撃は、事実上特定の秘密鍵があって初めてバックドアのように機能する
      NIST 楕円曲線で何が起きていたのかについての現在の推測はこの方向だ
      だとすれば、非常に長い間、事実上米国専用のバックドアになり得る
    • NSA は DES の鍵を 64 ビットから56 ビットへ弱体化させた
      彼らは攻撃で先行でき、56 ビット鍵が一般的に弱すぎるようになる頃には DES は別のものに置き換えられるだろう、という考えだった。危険だったか? そうだ。しかしある意味では「成功」した。だから似たことが二度と起きないとは仮定しない
    • 一般的な構想は、他国や他勢力が発見する前に数年を稼ごうというものだ
      その背景理論は**盗用暗号学(kleptography)**と呼ばれる。NSA は情報を「安全に」盗めると勘違いするほど妄想的だ、という意味でもある
  • 昨年、443 件のコメントが付いた関連スレッドがあった
    https://news.ycombinator.com/item?id=32360533 ("NSA, NIST, and post-quantum crypto: my second lawsuit against the US government (cr.yp.to)")

  • 「NISTPQC の秘密の動作方式を解明する。2022 年 3 月に『NSA, NIST, and post-quantum cryptography』という FOIA 請求を出した。NIST は法律に違反して時間稼ぎをした。公民権系法律事務所 Loevy & Loevy が私の代わりに訴訟を起こした」
    個人的には djb は概して好きではないが、職業的には連邦政府を法廷で粘り強く追及してきたので、常に支持している。今も続けていると知ってとても嬉しい

    • 個人的にどうして嫌いなのか気になる
  • DJB が暗号学で重要な人物であること、そして私がここでの詳細の多くを知らないこととは別に、信頼性が大きく落ちた箇所があった
    特にグラフの部分で「NIST は帯域幅グラフにより細い赤い棒を使って目立たなくすることにした」と言っているが、その証拠からはまったく立証されていない。はるかにもっともらしい説明がある。棒が細いグラフは、他のグラフよりデータポイントが多い棒グラフだ。適当なチャートツールを開いてデータポイントが 12 個のグラフと 9 個のグラフを比較してみれば、12 個のほうの線が細くなるのは当然だ。この点で、彼はすべての行動を可能な限り悪意あるものとして解釈しようとしているように強く感じた
    次の項目では、同じ桁数の範囲にある値なのに対数軸を使っていないと不満を述べている。対数軸を使うのに適した例には聞こえず、この場合になぜ正当化できるのかよくわからない
    DJB が NTRU に関与していたことを知ると、このかなりの部分が競争に負けたことへの苦い反応だという印象を拭いにくい

    • 複数の政府や政府機関が、一般大衆が強力な暗号にアクセスできないよう意図的に制限しようとしてきた長く詳細な歴史を見れば、ここではデフォルトで悪意を仮定するアプローチに同意するほうだ
      それ以外を仮定するのは、少なくとも私にはかなりナイーブに見える
    • 読み続けると、手計算でざっくり流した計算についての説明要求に答えていないことがわかる
      疑う理由は十分にある
    • 暗号学に必要な技術的知識を持つ人は世界に多くない
      この分野の競争相手が互いの仕事をレビューすることになるのは当然だ
    • 参考までに、NTRU は 2 種類ある。元の NTRU には djb は関与しておらず、NTRU Prime には関与していた
  • 暗号学者たちの火花散る争いを仕事として見守って学んだこと:Bernstein に逆張りするなNIST を信用するな

  • NIST が回答した: https://groups.google.com/a/list.nist.gov/g/pqc-forum/c/W2VO...

  • N(IST)SA に残っている信頼があるのか、よくわからない
    curve25519 が彼らの P 曲線より広く使われているのは心強く、コミュニティがこの方向を続け、今後は彼らを概ね無視してくれるとよい
    政府が主導したり決定したりすべきではない。FIPS や規制などでは、現在の合意を取りまとめ、それに従う役割を中心に構成するほうがよりよい