cryptographic nonce

nonce (Web)

[18] HTTPダイジェスト認証nonce は、 次の場所で使われます。

[19] HTMLnonce は、次の場所で使われます。

仕様書

nonce (CSP、HTML)

意味

[25] nonce 属性は、 CSPスクリプトを実行するかどうか決定するために使う暗号学的 (cryptographic) nonce (number used once) を指定するものです >>24

属性値

[26] 属性値は、テキストです >>24

文脈

[36] nonce 属性は、 script 要素link 要素で指定できます。

[23] script 要素の種別がデータブロックの時は、 nonce 属性を使ってはなりません >>22

[31] スクリプトfetchオプション群は、暗号学的nonce (cryptographic nonce) を持ちます >>32。 これはスクリプトのfetchで使われます。

処理

[27] script 参照。

[28] なお、初回処理時の値が使われるので、動的に変更しても、意味を持ちません >>24

HTMLScriptElement インターフェイス, HTMLLinkElement インターフェイス nonce 属性

[29] HTMLScriptElement インターフェイス, HTMLLinkElement インターフェイスnonce IDL属性は、 nonce 内容属性反映しなければなりません >>22。これは文字列として反映するものです。

歴史

[5] Bug 26081 – Consider defining or mentioning the nonce attribute ( ( 版)) https://www.w3.org/Bugs/Public/show_bug.cgi?id=26081

[2] Merge pull request #171 from fmarier/csp2-remove-base64url · b4ab556 · w3c/webappsec ( 版) https://github.com/w3c/webappsec/commit/b4ab55679f2261b05db896bd9399f25bc1314787

[7] Call out to CSP's inline element hooks · whatwg/html@ee3486e ( 版) https://github.com/whatwg/html/commit/ee3486eb129bc350b5ca684d0c91dff23453ac1a

[8] Define script@nonce and style@nonce attributes · whatwg/html@882803c ( 版) https://github.com/whatwg/html/commit/882803c4cc8fba2fa5472b76f628d95cc82c421d

[9] Accept base64url characters in nonces and hashes. · w3c/webappsec-csp@b4c5543 ( 版) https://github.com/w3c/webappsec-csp/commit/b4c5543c350417eb24f1f33247defe20e3430643

nonce 引数 (auth-param)

意味

[10] nonce は、 401 応答の作成の度に毎回固有に生成するべき、 サーバーが指定する文字列です。 >>3

[14] nonceクライアントにとっては不透明です >>3

構文

[17] auth-param引用文字列構文を使わなければなりません >>3

[11] nonce は、 Base64十六進数で表記した文字列とするといいです (advise) >>3

[12] 具体的な内容は、実装依存です >>3

文脈

[15] nonce 引数は、ダイジェスト認証challenge に指定できます >>3

[20] nonce 引数は必須です。

[21] RFC 2617 時代は、 ABNF >>4 で必須であることを主張しようとした形跡があります。 RFC 7616 には必須であるような規定はありません。しかしクライアントcredentialsresponse 引数の計算に nonce を使いますから、サーバーchallengenonce を指定しないといけません。

処理

[13] 実装は、replay攻撃を防ぐため、前に使われた nonce の再利用を認めないこととできます。 >>3

[16] response 引数の値の計算に使われます。

歴史

メモ

[6] ナンス ‐ 通信用語の基礎知識 ( 版) http://www.wdic.org/w/WDIC/%E3%83%8A%E3%83%B3%E3%82%B9

[30] Add 'cryptographic nonce metadata' to requests · whatwg/fetch@667ca32 ( 版) https://github.com/whatwg/fetch/commit/667ca3264e94ee4e5c7a1e1b85feb3344d107a1f

[33] Pass cryptographic nonce metadata to Fetch · whatwg/html@5479e07 ( 版) https://github.com/whatwg/html/commit/5479e07a6f6e01062b85b5fe6799752b0370336c

[34] Wire nonces up to Fetch's cryptographic nonce metadata. · w3c/webappsec-csp@86ae8b1 ( 版) https://github.com/w3c/webappsec-csp/commit/86ae8b1bcbd95c95dcac029f6b27c668e59164dd

[35] Add <link nonce> (mikewest著, ) https://github.com/whatwg/html/commit/1d4fc66465169312deaa8945fcb359813abc3fe0

[37] Value-agnostic nonce matching (#222) (andypaicu著, ) https://github.com/w3c/webappsec-csp/commit/af76f746928d6db9372d1ce5bc02f74c7ec88607

[38] Make integrity="" work on module scripts (domenic著, ) https://github.com/whatwg/html/commit/9275d955dcd604e959cfcc672e0c234b1b8c00db

[39] NoncedElement link. (mikewest著, ) https://github.com/w3c/webappsec-csp/commit/7024fc63655667d380056848966204c350669c8e

[40] Hide nonce content attribute values (mikewest著, ) https://github.com/whatwg/html/commit/19f5cce801550d278b9459f8c4797f9f86aae864

[41] Consider hiding `nonce` content attributes. · Issue #2369 · whatwg/html () https://github.com/whatwg/html/issues/2369

[42] Consider not exposing nonce="" to the page · Issue #65 · w3c/webappsec-csp () https://github.com/w3c/webappsec-csp/issues/65

[43] Hide `nonce` content attribute values. (#2369) by mikewest · Pull Request #2373 · whatwg/html () https://github.com/whatwg/html/pull/2373

[44] Hide `nonce` content attribute values from non-script sources. by mikewest · Pull Request #436 · whatwg/dom () https://github.com/whatwg/dom/pull/436

[45] Add HTMLOrSVGElement interface mixin (annevk著, ) https://github.com/whatwg/html/commit/81e82437a7ef1ee37d4ce2b5a982bc297d5b58b1

[46] Fix and clarify some [CEReactions] annotations (domenic著, ) https://github.com/whatwg/html/commit/023c11216ca2ee1c653df09a594b98fca1323975

[47] nonce IDL attribute should have the semantics of CEReactions · Issue #3887 · whatwg/html () https://github.com/whatwg/html/issues/3887

[48] Fix and clarify some [CEReactions] annotations by domenic · Pull Request #3901 · whatwg/html () https://github.com/whatwg/html/pull/3901

[49] Convert string to UTF-8 before applying hash algorithms (#342) (andypaicu著, ) https://github.com/w3c/webappsec-csp/commit/84cc0d929ed90b21575e2ec1973438a5745d5562

[50] Convert string to UTF-8 before applying hash algorithms by andypaicu · Pull Request #342 · w3c/webappsec-csp () https://github.com/w3c/webappsec-csp/pull/342

[51] Hash encodings should be converted to UTF-8 · Issue #109 · w3c/webappsec-csp () https://github.com/w3c/webappsec-csp/issues/109

[52] Only Chrome implements HTMLElement.nonce IDL attribute · Issue #4208 · whatwg/html · GitHub () https://github.com/whatwg/html/issues/4208

[53] Added more notes about nonce attacks (#356) (andypaicu著, ) https://github.com/w3c/webappsec-csp/commit/48b736b9049ec5d8c82375c5a972bd57ad43759a

[54] Added more notes about nonce attacks by andypaicu · Pull Request #356 · w3c/webappsec-csp () https://github.com/w3c/webappsec-csp/pull/356

[55] Add note about the importance of preventing nonce exfiltration/reuse · Issue #258 · w3c/webappsec-csp () https://github.com/w3c/webappsec-csp/issues/258