NIST SP 800-232
NIST Special Publication 800
NIST SP 800-232
制約付きデバイス向けAsconベース軽量暗号標準
Ascon-Based Lightweight Cryptography Standatds for Constrained Devices
認証付き暗号化、ハッシュ、および拡張可能な出力関数
Authenticated Encryption, Hash, and Extendable Output Functions
この出版物(原文)は以下から無料で入手できます:
2025 8月
本稿では、実験手順を適切に規定するために、商用または非商用を問わず、特定の機器、器具、ソフトウェア、または材料が特定されています。このような特定は、NISTによる製品またはサービスの推奨または支持を意味するものではなく、また、特定された材料または機器が必ずしも本目的に最適なものであることを意味するものでもありません。
本出版物には、NISTが法定責任に基づき現在開発中の他の出版物への参照が含まれている場合があります。本出版物の情報(概念および方法論を含む)は、そのような関連出版物が完成する前であっても、連邦政府機関によって使用される場合があります。したがって、各出版物が完成するまでは、既存の要件、ガイドライン、および手順は引き続き有効です。計画および移行の目的で、連邦政府機関はNISTによるこれらの新しい出版物の策定を注意深く追跡することをお勧めします。
権限 Authority
本出版物は、2014年連邦情報セキュリティ近代化法(FISMA)(44 U.S.C. § 3551 et seq.、公法(P.L.)113-283)に基づくNISTの法定責任に従って作成されました。NISTは、連邦情報システムの最低要件を含む情報セキュリティ標準およびガイドラインの策定に責任を負っていますが、これらの標準およびガイドラインは、当該システムに対する政策権限を行使する適切な連邦職員の明示的な承認がない限り、国家安全保障システムには適用されません。本ガイドラインは、行政管理予算局(OMB)通達A-130の要件に準拠しています。
本出版物の内容は、商務長官が法定権限に基づき連邦機関に義務付け、拘束力のある標準およびガイドラインと矛盾するものと解釈されるべきではありません。また、本ガイドラインは、商務長官、ORCID長官、またはその他の連邦職員の既存の権限を変更または置き換えるものと解釈されるべきではありません。この出版物は、非政府組織(NGO)による自主的な利用が認められており、米国では著作権の対象ではありません。ただし、NISTへの帰属表示をお願いいたします。
NISTテクニカルシリーズ ポリシー
出版履歴
NIST編集審査委員会による承認(2025年7月9日)
このNIST技術シリーズ出版物の引用方法:
Meltem Sönmez Turan、Kerry A. McKay、Donghoon Chang、Jinkeon Kang、John Kelsey (2025) Asconベースの制約付きデバイス向け軽量暗号化標準。(米国国立標準技術研究所、メリーランド州ゲイサーズバーグ)、NIST特別出版(SP)NIST SP 800-232。https://doi.org/10.6028/NIST.SP.800-232 著者 ORCID iDs
連絡先
SP800-232-comments@list.nist.gov
追加情報
関連コンテンツ、今後の更新情報、ドキュメント履歴などが含まれます。
すべてのコメントは、情報公開法(FOIA)に基づいて公開されます。
要約
2023年、米国国立標準技術研究所(NIST)は、リソースが限られたデバイス向けに効率的な暗号化ソリューションを提供するために、Dobraunig、Eichlseder、Mendel、Schläfferによって設計されたAsconアルゴリズムファミリーを選定したことを発表しました。この決定は、厳格な複数ラウンドの軽量暗号標準化プロセスから生まれました。
Asconファミリーには、関連データ付き認証暗号化(AEAD)、ハッシュ関数、拡張可能出力関数(XOF)機能を提供する一連の暗号プリミティブが含まれています。Asconファミリーは、軽量で順列ベースのプリミティブを特徴とし、堅牢なセキュリティ、効率性、柔軟性を提供するため、IoT(モノのインターネット)デバイス、組み込みシステム、低電力センサーなど、リソースが限られた環境に最適です。このファミリーは、高度暗号化標準(AES)が最適なパフォーマンスを発揮できない場合に、実用的な代替手段を提供するために開発されました。この規格では、Ascon-AEAD128、Ascon-Hash256、Ascon-XOF128、および Ascon-CXOF128 の技術仕様とセキュリティ プロパティについて概説しています。
キーワード
Ascon; authenticated encryption (認証付き暗号化); constrained devices (制約付きデバイス); eXtendable Output Function (拡張可能出力関数 XOF); hash function (ハッシュ関数); lightweight cryptography (軽量暗号); permutation-based cryptography (順列ベース暗号); standardization (標準化)。
コンピュータシステム技術に関する報告書
米国国立標準技術研究所(NIST)の情報技術研究所(ITL)は、米国の計測・標準化基盤における技術的リーダーシップを提供することで、米国経済と公共福祉の促進に貢献しています。ITLは、情報技術の開発と生産的利用を促進するため、試験、試験方法、参照データ、概念実証の実装、技術分析を開発しています。ITLの責務には、連邦政府の情報システムにおける国家安全保障関連情報以外の情報の費用対効果の高いセキュリティとプライバシーを確保するための、管理、運営、技術、物理的な標準およびガイドラインの開発が含まれます。特別出版物800シリーズは、ITLによる情報システムセキュリティに関する研究、ガイドライン、アウトリーチ活動、および産業界、政府機関、学術機関との共同活動について報告しています。
特許開示通知
お知らせ:ITLは、本出版物のガイダンスまたは要件の遵守に使用が必要となる可能性のある特許請求の範囲を有する特許権者に対し、当該特許請求の範囲をITLに開示するよう求めています。ただし、特許権者はITLの特許請求に応じる義務を負わず、ITLは本出版物に適用される可能性のある特許を特定するための特許調査を行っていません。
本出版物の発行日およびその後、本出版物のガイダンスまたは要件の遵守に使用が必要となる可能性のある特許請求の範囲の特定を求める要請があった時点で、ITLはそのような特許請求の範囲を特定していません。
ITLは、本出版物の使用において特許侵害を回避するためにライセンスが不要であると表明または暗示するものではありません。
目次 (略)
謝辞
本規格の著者は、標準化プロセスにおいて貴重なコメントと提案をいただいたAscon設計者であるChristoph Dobraunig氏、Maria Eichlseder氏、Florian Mendel氏、Martin Schläffer氏に感謝の意を表します。
また、選定プロセスにおいて貢献いただいたNISTのLawrence Bassham氏、Çağdaş Çalık氏、Deukjo Hong氏、Noah Waller氏をはじめとする同僚の方々にも感謝の意を表します。さらに、技術的および事務的なサポートをいただいたElaine Barker氏、Luís T. A. N. Brandão氏、Lily Chen氏、Andrew Regenscheid氏、Noah Ross氏、Sara Kerman氏、Yu Long Chen氏、Yu Sasaki氏にも感謝の意を表します。
1. はじめに
本規格は、関連データ付き認証暗号化(AEAD)、ハッシュ関数、および2つの拡張可能出力関数(XOF)を提供するAsconアルゴリズムファミリを規定します。
Asconファミリは、制約のある環境において効率性を発揮するように設計されています。本規格に含まれるアルゴリズムは以下のとおりです。
1. Ascon-AEAD128は、ノンスベースのAEAD方式であり、単一鍵設定で128ビットのセキュリティ強度を提供します。
2. Ascon-Hash256は、入力メッセージから256ビットのハッシュを生成する暗号ハッシュ関数であり、128ビットのセキュリティ強度を提供します。
3. Ascon-XOF128は、メッセージのハッシュの出力サイズをユーザーが選択できるXOFであり、サポートされるセキュリティ強度は最大128ビットです。
4. Ascon-CXOF128は、ユーザーがカスタマイズ文字列を指定し、メッセージハッシュの出力サイズを選択できるカスタマイズされたXOFです。最大128ビットのセキュリティ強度をサポートします。
Ascon ファミリーの開発。Ascon (バージョン v1) 1 は、2014 年に CAESAR (Competition for Authenticated Encryption: Security, Applicability, and Robustness) に初めて提出されました。 提出されたAEADアルゴリズムには、128ビット鍵の一次推奨Ascon-128と、96ビット鍵の二次推奨Ascon-96の2つが含まれていました。ラウンド2用の更新バージョンv1.1 2とラウンド3用のv1.2 3には、ラウンド定数の順序変更などの小さな調整が含まれており、二次推奨はAscon-128aに更新されました。 2019年、Ascon-128とAscon-128aは、CAESARコンペティションの最終ポートフォリオにおいて、軽量認証暗号化ユースケースの第一候補として選定されました。
NIST軽量暗号標準化プロセス。2015年、米国国立標準技術研究所 (NIST) は、従来の暗号標準 (AES-GCM 4, 5、SHA-2 6、SHA-3 7 ハッシュ関数ファミリなど) ではリソースを大量に消費する可能性がある制約のある環境に適した暗号標準を策定するために、軽量暗号標準化プロセスを開始しました。2023年2月、NIST は軽量暗号アプリケーション向けに Ascon ファミリ 8 を標準化することを決定したことを発表しました。詳細については、NIST 内部レポート (IR) 8268 9、IR 8369 10、および IR 8454 11 を参照してください。 Ascon 提案 v1.2 との相違点。本標準と Ascon 提案 8 の技術的な相違点を以下に示します。 1. 順列。Ascon提出では、6、8、12ラウンドの3つのAscon順列が定義されていました。本標準では、将来の機能拡張の可能性に対応するため、最大16ラウンドまでのラウンド定数を提供することで、追加のAscon順列を規定しています。
2. AEADの派生。Ascon提出パッケージでは、AEADの派生としてASCON-128、ASCON-128a、ASCON-80pqが定義されていました。本標準では、ASCON-128aに基づくAscon-AEAD128アルゴリズムを規定しています。
3. ハッシュ関数の派生。Ascon提出では、ASCON-HASHとASCON-HASHAが定義されていました。本標準では、ASCON-HASHに基づくAscon-Hash256を規定しています。
4. XOFの派生。Ascon提出では、ASCON-XOFとASCON-XOFAという2つのXOFが定義されています。この規格は、ASCON-XOFをベースにしたAscon-XOF128と、新たにカスタマイズされたXOFであるAscon-CXOF128を規定しています。
5. 初期値。アルゴリズムの初期値が更新され、将来の機能拡張に対応する新しいフォーマットがサポートされました。
6. エンディアン。リトルエンディアンマイクロコントローラでのパフォーマンスを向上させるため、エンディアンはビッグエンディアンからリトルエンディアンに変更されました。
7. 切り捨てとノンスマスキング。切り捨てとノンスマスキングを備えたAscon-AEAD128の実装オプションが追加されました。
Ascon の主な特徴。Ascon ファミリーの主な特徴は以下のとおりです。
複数の機能。同じ順列を用いて複数の機能を構築できるため、AEAD、ハッシュ、XOF の各機能の実装でロジックを共有でき、個別に開発された機能よりもコンパクトな実装が可能になります。
オンラインかつシングルパス。Ascon-AEAD128 はオンラインです。つまり、n 番目の暗号文ブロックは、鍵、ノンス、関連データ、および最初の n 個の平文ブロックによって決定されます。Ascon ファミリーのメンバーは、データに対してシングルパスのみを必要とします。
逆順列なし。Ascon ファミリーのメンバーはすべて、基礎となる順列を順方向にのみ使用するため、逆順列の実装は不要です。
構成。第2章では、略語、用語、定義、表記法、基本演算、補助関数など、準備事項を説明します。第3章では、最大16ラウンドまでのAscon順列を規定します。第4章では、Ascon-AEAD128AEAD方式を規定し、切り捨てとノンスマスキングの実装オプションをいくつか示し、検証要件を列挙し、セキュリティ特性を示します。第5章では、Ascon-Hash256ハッシュ関数、Ascon-XOF128 XOF、およびAscon-CXOF128カスタマイズXOFを規定し、それらのセキュリティ特性について説明します。第6章では、適合性に関する情報を提供します。付録Aでは、実装に関する追加の注意事項と変換関数を示します。付録Bでは、初期値の構築に関する追加情報を提供します。
2. 準備
表1に、この規格で使用される頭字語の一覧を示します。
table:表1 頭文字
頭文字 定義 和
AD Associated Data 関連データ
AE Authenticated Encryption 認証付き暗号化
AEAD Authenticated Encryption with Associated Data 関連データと認証付き暗号化
AES Advanced Encryption Standard 高度暗号化規格
CAESAR Competition for Authenticated Encryption: Security, Applicability, and Robustness 認証付き暗号化をめぐる競争:セキュリティ、適用性、そして堅牢性
CXOF Customized eXtendable-Output Function カスタマイズされた拡張可能な出力機能
GCM Galois/Counter Mode ガロア/カウンタモード
NIST National Institute of Standards and Technology 米国国立標準技術研究所
SHA Secure Hash Algorithm セキュアハッシュアルゴリズム
SPN Substitution–Permutation Network 置換順列ネットワーク
SP Special Publication 特別出版
XOF eXtendable-Output Function 拡張可能な出力関数
XOR eXclusive OR 排他的論理和
表 2 では、この規格で使用される用語を定義します。
table:表2 用語と定義
語 和 定義
approved 承認済み FIPS 発行物またはコンピュータセキュリティ SP 800 シリーズの NIST
Special Publication (SP) で規定または採用されているアルゴリズムまたは
手法(つまり、FIPS 承認または NIST 推奨)。
associated data 関連データ 認証されているが暗号化されていない入力データ。
bit ビット 0または1の2進数。この規格(原文)では、ビットはCourier Newフォントで示されます。
bitstring ビット列 有限で順序付けられたビットのシーケンス。
capacity 容量 基礎となる順列の幅からレートを引いた値。
digest ダイジェスト ハッシュ関数または XOF の出力。
eXtendable-Output Function (XOF) 拡張可能出力関数 (XOF) ビット列に対する関数で、出力を任意の長さに拡張できます。
forgery 偽造 秘密鍵を知らない攻撃者によって生成された(暗号文とタグの)ペアが、
検証済みの復号手順によって有効であると認められたもの。
hash function ハッシュ関数 任意の長さの文字列を固定長の文字列に変換する数学関数。
message メッセージ ハッシュ関数への入力。
nonce ノンス 認証された暗号化アルゴリズムへの入力値。特定のキーで実行される
暗号化に1回だけ使用されます。
nonce-misuse nonceの誤用 特定の鍵における暗号化アルゴリズムにおいて、nonce が複数回使用される設定。
nonce-respecting nonceを尊重する 特定のキーにおける暗号化アルゴリズムで、nonceが重複されない設定。
rate レート 基になる順列の呼び出しごとに処理される入力ビット数、または生成される出力ビット数。
secret key 共通鍵(シークレット鍵) 共通鍵 (共有鍵、つまり対称) 暗号化アルゴリズムによって使用され、公開されない暗号化鍵。
shall するものとする この規格への適合を主張するために満たす必要がある要件を表すために使用される用語。
should すべきである この規格の必須要件ではないものの、強い推奨を示す用語です。この
推奨事項を無視すると、望ましくない結果が生じる可能性があります。
tag タグ 計算と検証に秘密鍵の知識が必要となるデータの偶発的なエラーと意図的な
変更の両方を明らかにするように設計された、データの暗号化チェックサム。
truncation 切り捨て 指定された長さの部分文字列のみを保持しながら、入力ビット文字列を短縮するプロセス。
表 3 に、この規格で使用される表記を示します。
table:表3 表記
表記 定義
K 128ビット 共通鍵
N 128ビット nonce
A 関連データ
A_i 関連データAのi番目のブロック
P 平文
P_i 平文Pのi番目のブロック
C 暗号文
C_i 暗号文Cのi番目のブロック
Z カスタマイズ文字列
Z_i カスタマイズ文字列Zのi番目のブロック
T 128ビット認証タグ
IV 64ビット定数初期値
fail 認証された暗号文の検証に失敗したことを示すエラーメッセージ
M メッセージ
M_i メッセージMのi番目のブロック
H ハッシュ値H
H_i ハッシュ値Hのi番目のブロック
S 基礎となる順列の320ビット内部状態
S_0,...,S_4 内部状態Sの5つの64ビットワード, S = S_0 || S_1 || ... || S_4
s_(i, j) S_iのj番目のビット, 0 <= i <= 4, 0 <= j <= 7
S_i[j] 状態ワードSのj番目のバイト, 0 <= i <= 4, 0 <= j <= 7
S_[i:j] 状態 S の、インデックスi からインデックスj までの部分集合(インデックス を含む)。
𝑖 > 𝑗 の場合、𝑆[𝑖∶𝑗] は空文字列です。𝑖 = 𝑗 の場合、𝑆[𝑖∶𝑗] は1ビットです。
λ 切り捨てられたタグのビット長
c_i Ascon順列の𝑖の丸めの定数値
P_C, P_S, P_L ラウンド関数 𝑝 の定数加算、置換、線形層
表 4 に、この規格で使用される基本的な操作と機能を示します。