米国 NIST IR 8446 (初公開ドラフト) 乱数生成に関する標準間のギャップを埋める: SP 800-90 シリーズと AIS 20/31 の比較 (2024.09.16)
こんにちは、丸山満彦です。
暗号乱数生成標準とガイドラインに関して
- ドイツの連邦情報セキュリティ局(BSI)の作成しているAIS 20/31 と
- 米国のNIST が作成したNIST SP800-90
の
- 用語、
- 前提条件
- 要求事項
の比較(類似点と相違点)に焦点を当てた文書...
最終的な目的は両者の矛盾を削減・解決することにあるようです。。。
● NIST - ITL
NIST IR 8446 (Initial Public Draft) Bridging the Gap between Standards on Random Number Generation: Comparison of SP 800-90 Series and AIS 20/31 | NIST IR 8446 (初公開ドラフト) 乱数生成に関する標準間のギャップを埋める: SP 800-90 シリーズと AIS 20/31 の比較 |
Announcement | お知らせ |
This report studies the cryptographic random number generation standards and guidelines written by Germany’s Federal Office for Information Security (BSI) and NIST, namely AIS 20/31 and the NIST Special Publication (SP) 800-90 series. It compares these publications, focusing on the similarities and differences in their terminology, assumptions, and requirements. The report also aims to improve communications between all involved parties, promote a shared understanding, and reduce and resolve inconsistencies in related standards. | 本報告書は、ドイツの連邦情報セキュリティ局(BSI)と NIST が作成した暗号乱数生成標準とガイドライン、すなわち AIS 20/31 と NIST 特別刊行物(SP)800-90 シリーズについて調査したものである。本報告書は、これらの出版物を比較し、その用語、前提条件、要求事項の類似点と相違点に焦点を当てている。また、関係者間のコミュニケーションを改善し、共通理解を促進し、関連標準の矛盾を削減・解決することも目的としている。 |
The public comment period is open through December 20, 2024. Comments received in response to this request will be posted on this page after the due date. | パブリックコメントの募集期間は2024年12月20日までである。この要求に対して寄せられた意見は、期限後にこのページに掲載される。 |
Abstract | 概要 |
This report studies the cryptographic random number generation standards and guidelines written by BSI and NIST, namely AIS 20/31 and SP 800-90 Series. The aim of this report is to compare these publications, focusing on the similarities and differences of their terminology, assumptions, and requirements. The report also aims to improve the communications between all involved parties, promote a shared understanding, and reduce and resolve inconsistencies in related standards. | 本報告書は、BSIとNISTが作成した暗号乱数生成標準とガイドライン、すなわちAIS 20/31とSP 800-90シリーズについて検討したものである。本報告書の目的は、これらの出版物を比較することであり、用語、仮定、要求事項の類似点と相違点に焦点を当てる。また、関係者間のコミュニケーションを改善し、共通理解を促進し、関連標準の矛盾を低減し解決することも目的としている。 |
・[PDF] NIST.IR.8446.ipd
目次...
1. Introduction | 1. 序文 |
1.1.Random number generation standards developed by the BSI | 1.1.BSI が策定した乱数生成標準 |
1.2.Random number generation standards developed by NIST | 1.2.NIST が策定した乱数生成標準 |
1.3.Aim and Organization | 1.3.Aim and Organization |
2. General Validation/Certification Requirements | 2. 一般的な検証/認証要件 |
2.1.Conditioning and Post-Processing | 2.1.調整および後処理 |
2.2.Computational Security Requirements | 2.2.計算セキュリティ要件 |
2.3.Entropy Estimation | 2.3.エントロピー推定 |
2.4.Health Tests | 2.4.健全性テスト |
2.4.1.SP 800-90B health tests on noise sources | 2.4.1.SP 800-90B 騒音源の健康テスト |
2.4.2.AIS 20/31 health tests on noise sources | 2.4.2.AIS 20/31 騒音源の健康テスト |
3. Functionality Classes vs. RBG Constructions | 3. 機能クラス対RBG構成 |
3.1.Functionality Classes of BSI | 3.1.BSIの機能クラス |
3.2.NIST RBG Constructions | 3.2.NISTのRBG構成 |
3.3.Comparison of Functionality Classes and RBG Constructions | 3.3.機能クラスとRBG構成の比較 |
3.3.1.PTG.2 and an Entropy Source | 3.3.1.PTG.2とエントロピー源 |
3.3.2.DRG.3 and RBG1 | 3.3.2.DRG.3 とRBG1 |
3.3.3.DRT.1 and DRBG chain (RBGC construction) | 3.3.3.DRT.1とDRBGチェーン(RBGC構成) |
3.3.4.DRG.4 and RBG2(P) | 3.3.4.DRG.4とRBG2(P) |
3.3.5.NTG.1 and RBG2(NP) | 3.3.5.NTG.1とRBG2(NP) |
3.3.6.PTG.3 and RBG3(RS) | 3.3.6.PTG.3とRBG3(RS) |
3.3.7.Other Classes (DRG.2) and Constructions (RBG3(XOR)) | 3.3.7.その他のクラス(DRG.2)と構成(RBG3(XOR)) |
3.3.8.Rough Comparison between noise source health tests in SP 800-90B and AIS 20/31 | 3.3.8.Rough SP 800-90B と AIS 20/31 における音源健康試験の比較 |
4. Terminology Comparison | 4. 用語の比較 |
References | 参考文献 |
序文...
1. Introduction | 1. 序文 |
The security of cryptographic mechanisms and protocols relies on the availability of highquality random numbers (e.g., to generate cryptographic keys, initialization vectors, nonces, salts, and masking values). The generation of these random numbers and validating their quality are challenging tasks. There are multiple standards to provide guidelines on generating random numbers to be used in cryptography [1–11]. These standards may have differences in the assumptions, requirements, and even in the definitions that they use. | 暗号メカニズムおよびプロトコルの安全性は、(暗号鍵、初期化ベクトル、ノ ンセス、ソルト、マスキング値の生成など)高品質の乱数が利用可能であることに依存する。これらの乱数の生成とその品質の検証は困難な作業である。暗号で使用する乱数の生成に関するガイドラインを提供する標準は複数存在する[1-11]。これらの標準は、前提条件や要求事項、さらには使用する定義に違いがある可能性がある。 |
In this report, we study the standards developed by Bundesamt für Sicherheit in der Informationstechnik (BSI) and the National Institute of Standards and Technology (NIST) on random number generation. Note that the terms random number generator (RNG) and random bit generator (RBG) are used interchangeably in this document. The relevant standards developed by BSI are | 本稿では、連邦情報セキュリティ局(BSI)と国立標準技術研究所(NIST)が策定した乱数生成に関する標準について検討する。乱数生成器(RNG)と乱数ビット生成器(RBG)という用語は、この文書では互換的に使用されていることに注意されたい。BSI が策定した関連標準は、 |
• AIS 20 Functionality Classes and Evaluation Methodology for Deterministic Random Number Generators [4] (forthcoming version: [12]), | ・ AIS 20 決定論的乱数生成器の機能クラスと評価方法[4](近日公開予定:[12])、 |
• AIS 31 Functionality Classes and Evaluation for Physical Random Number Generators [5] (forthcoming version: [13]), and | ・ AIS 31 物理乱数生成器の機能クラスと評価 [5](近日公開予定:[13])、および |
• Mathematical-technical reference to AIS 20 and AIS 31 A Proposal for Functionality Classes for Random Number Generators [14] (previous version: [15]), and the relevant standards developed by NIST are | ・AIS 20 および AIS 31乱数生成器の機能クラスに関する提案 [14] (旧版:[15])に対する数学的技術的参照、および NIST が策定した関連標準は以下のとおりである。 |
• SP 800-90A Recommendation for Random Number Generation Using Deterministic Random Bit Generators [1], | ・ SP 800-90A 決定論的乱数ビット生成器を使用した乱数生成に関する勧告[1]、 |
• SP 800-90B Recommendation for the Entropy Sources used for Random Bit Generation [2], and | ・ SP 800-90B 乱数ビット生成に使用されるエントロピー源に関する勧告[2]、および |
• SP 800-90C Recommendation for Random Bit Generator Constructions (draft) [3]. | ・ SP 800-90C 乱数ビット生成器の構成 (ドラフト) [3]がある。 |
1.1. Random number generation standards developed by the BSI | 1.1. BSI によって開発された乱数生成標準 |
AIS 20 and AIS 31, developed by BSI, refer to a joint mathematical-technical reference. | BSI によって開発された AIS 20 および AIS 31 は、数学的技術的な共同参照文献を参照する。 |
This document considers version 3.0 of the mathematical-technical reference [14]. AIS 20 specifies how deterministic RNGs will be evaluated in the German Common Criteria (CC) scheme, and it outlines an evaluation methodology for deterministic RNGs. Functionality classes with class-specific requirements are defined for different types of deterministic RNGs. AIS 31 specifies how physical RNGs are to be evaluated in the German CC scheme, and it outlines an evaluation methodology for physical true RNGs (or shorter: physical RNGs). Functionality classes with class-specific requirements are defined for different types of physical RNGs. | 本文書は、数学的技術参照のバージョン 3.0 [14]を参照する。AIS 20 はドイツのコモンクライテリア(CC)スキームにおける決定論的 RNG の評価方法を規定し、決定論的 RNG の評価方法の概要を示している。異なるタイプの決定論的RNGについて、クラス固有の要件を持つ機能クラスが定義されている。AIS 31 はドイツの CC スキームにおいて物理的 RNG がどのように評価されるかを規定し、物理的真性 RNG(または短縮形:物理的 RNG)の評価手法を概説している。異なるタイプの物理的 RNG に対しては、クラス固有の要件を持つ機能クラスが定義されている。 |
The mathematical-technical reference to AIS 20 and AIS 31 [14] is intended for developers, evaluators, and certifiers. It specifies functionality classes for deterministic RNGs, physical true RNGs, and non-physical true RNGs. Furthermore, mathematical background is provided and many examples are discussed in detail, explaining the requirements of the functionality classes and the tasks of the developers and evaluators. Note that the mathematical-technical reference is often loosely referenced as AIS 20, AIS 31, or AIS 20/31, depending on the context. | AIS 20 と AIS 31 [14]の数学技術参照は,開発者,評価者,認証者を対象としている。決定論的 RNG,物理的真性 RNG,非物理的真性 RNG の機能クラスが規定されている.さらに,数学的背景が提供され,多くの例が詳細に議論され,機能クラスの要件と開発者と評価者のタスクが説明されている.なお、この数学的・技術的参照は、文脈に応じて、AIS 20、AIS 31、またはAIS 20/31として緩やかに参照されることが多い。 |
A certification process according to the CC is carried out as follows. | CCによる認証プロセスは、以下のように行われる。 |
• The applicant (usually the developer) delivers the following to the accredited evaluation lab: prototypes of the RNG (the RNG is usually a component of a larger target of evaluation), documentation and a description of the RNG, and evidence that the requirements of the claimed functionality class are fulfilled. | ・すなわち,RNGのプロトタイプ(RNGは通常,より大きな評価対象の構成要素である),RNGの文書と説明,および主張された機能クラスの要求が満たされていることの証拠である。 |
• The accredited lab evaluates the RNG according to AIS 20 or AIS 31 (and with regard to further criteria such as implementation security), examines the documentation, and writes an evaluation report. | ・認定ラボはAIS 20またはAIS 31に従ってRNGを評価し(さらに実装の安全性などの規準に関しても)、文書を審査し、評価報告書を作成する。 |
• The certification authority (in Germany: BSI) checks the evaluation report and may demand additional evidence. If the certification authority is convinced that the (positive) evaluation result (of the RNG and of the other evaluation aspects) is justified, a certificate is issued. | ・認可機関(ドイツではBSI)は評価報告書をチェックし、追加の証拠を要求することができる。認証機関が(RNG およびその他の評価項目に関する)(肯定的な)評価結果が正当であると確信した場合、認証書が発行される。 |
1.2. Random number generation standards developed by NIST | 1.2. NIST が策定した乱数生成標準 |
SP 800-90A, Recommendation for Random Number Generation Using Deterministic Random Bit Generators [1], specifies mechanisms for the generation of random bits using deterministic methods. The methods provided are based on hash functions and block ciphers. | SP 800-90A決定論的乱数ビット生成器を用いた乱数生成の推奨[1]は、決定論的手法による乱数生成の仕組みを規定している。提供されている方法は、ハッシュ関数とブロック暗号に基づいている。 |
SP 800-90B, Recommendation for the Entropy Sources used for Random Bit Generation [2], specifies the design principles and requirements for the entropy sources used by random bit generators and the tests for the validation of entropy sources. | SP 800-90B乱数ビット生成に使用されるエントロピー源の推奨[2] は、乱数ビット生成装置で使用されるエントロピー源の設計原理と要件、およびエントロピー源の検証テストを規定する。 |
SP 800-90C, Recommendation for Random Bit Generator Constructions, specifies constructions for the implementation of random bit generators that include deterministic random bit generator mechanisms as specified in SP 800-90A and that use entropy sources as specified in SP 800-90B. | SP 800-90C「乱数ビット生成器の構造に関する勧告」は、SP 800-90Aに規定される決定論的乱数ビット生成メカニズムを含み、SP 800-90Bに規定されるエントロピー源を使用する乱数ビット生成器の実装のための構造を規定する。 |
The SP 800 90 series provides a basis for validation by the Cryptographic Algorithm Validation Program (CAVP) and Cryptographic Module Validation Program (CMVP) conducted by NIST and the Communications Security Establishment of Canada (CSE). A submitting entity (e.g., a vendor) works with an accredited lab to submit their implementation for testing. | SP 800 90 シリーズは、NIST およびカナダのコミュニケーション・セキュリティ・エスタブリッシュメント(CSE)が実施する暗号アルゴリズム検証プログラム(CAVP)および暗号モジュール検証プログラム(CMVP)による検証の基礎を提供する。提出事業体(ベンダーなど)は、認定ラボと協力して、テストのために実装を提出する。 |
• For all SP 800-90A Deterministic Random Bit Generators (DRBGs), the cryptographic primitives used within them (e.g., HMAC, hash functions, and AES), and the vetted conditioning components: Vector sets are generated by the lab, and the lab downloads them for provision to the submitter. The submitter generates the responses and sends them to the lab. The lab uploads the received responses to the CAVP and, upon successful validation, requests certification. | ・すべての SP 800-90A 決定論的乱数ビット生成器(DRBG)、その中で使用される暗号プリミティブ(HMAC、ハッシュ関数、AES など)、および吟味されたコンディショニング・コンポーネントの機能: ベクターセットはラボが生成し、ラボは提出者に提供するためにダウンロードする。提出者はレスポンスを生成し、ラボに送信する。ラボは受信した応答を CAVP にアップロードし、検証に成功した場合、認証を要求する。 |
• For SP 800-90B entropy sources: Data files are generated by the submitter for each operating environment defined for the entropy source. The data files consist of the minimum one million samples required by SP 800-90B as well as restart data samples. The lab runs an entropy assessment tool and prepares an Entropy Assessment Report and Public-Use Documents that outline the conformances to SP 800-90B and how the entropy source can be used within a cryptographic module. The entropy source documentation is reviewed by the CMVP. After any review concerns are addressed, the entropy source will be certified. | ・ SP 800-90B エントロピー源の場合: データファイルは、エントロピー・ソースに定義された動作環境ごとに提出者が生成する。データファイルは、SP 800-90B で要求される最低 100 万サンプルとリスタートデータサンプルで構成される。ラボはエントロピーアセスメントツールを実行し、SP 800-90B への適合および暗号モジュール内でエ ントロピーソースがどのように使用できるかを概説するエントロピーアセスメントレポートおよびパブリッ クユース文書を作成する。エントロピーソースの文書は CMVP によってレビューされる。レビューの懸念事項が解決された後、エントロピー・ソースは認証される。 |
• For SP 800-90C random bit generator (RBG) constructions: This document is in draft form. Testing is not yet available. | ・SP 800-90C 乱数ビット生成器(RBG)構築用: この文書はドラフト形式である。テストはまだ利用できない。 |
1.3. Aim and Organization | 1.3. 目的および構成 |
The aim of this report is to compare standards and guidelines on cryptographic random number generation, focusing on the similarities and differences of their terminology, assumptions, and requirements. The report also aims to improve communications between all involved parties, promote a shared understanding, and reduce and resolve inconsistencies in related standards. In addition, the report is intended to assist in the validation and certification of a random number generator implementation in both the BSI and NIST validation programs. | 本報告書の目的は、暗号乱数生成に関する標準およびガイドラインを比較することであり、その用語、 前提条件、および要件の類似点と相違点に焦点を当てることである。また、関係者間のコミュニケーションを改善し、共通理解を促進し、関連規格の不整合を低減・解決することを目的とする。さらに、本報告書は、BSIとNISTの両方の検証プログラムにおいて、乱数生成器の実装の検証および認 証の一助となることを目的としている。 |
Section 2 discusses general validation/certification requirements for conditioning and postprocessing, computational security, entropy estimation, and health tests. Section 3 discusses the similarities and differences between the functionality classes from AIS 20/31 and the constructions from SP 800-90C. Section 4 compares the terminology used in the BSI and NIST standards, followed by useful references on random number/random bit generation. | セクション2では、コンディショニングと後処理、計算セキュリティ、エントロピー推定、および健全性テストに関する一般的な検証/認証要件について説明する。セクション 3 では、AIS 20/31 の機能クラスと SP 800-90C の構成との類似点と相違点について論ずる。セクション4では、BSIとNISTの標準に使用されている用語を比較し、乱数/乱数ビット生成に関する有用な参考文献を示す。 |
● まるちゃんの情報セキュリティ気まぐれ日記
・2022.09.10 NIST SP 800-90C(ドラフト)ランダムビット生成器(RBG)の構成に関する推奨事項(第3ドラフト)とNISTIR 8427 (ドラフト) SP 800 90 シリーズの完全エントロピーの仮定に関する考察
« 国際ランサムウェア対策イニシアティブ 2024 共同声明 (2023.10.02) | Main | 米国 NIST CSWP 31 重要AIシステムのための代理妥当性確認と検証;代理設計プロセス (2024.09.26) »
Comments