[158] [[基本認証]]や[[ダイジェスト認証]]の [CODE(ABNF)@en[[[auth-param]]]] である
[DFN[[CODE(HTTP)@en[[[charset]]]]]] は、
[[credentials]] で使うべき[[文字コード]]を表します。

* 仕様書

[REFS[
- [5] [CITE@en[RFC 7617 - The 'Basic' HTTP Authentication Scheme]] ([TIME[2015-10-01 09:47:40 +09:00]] 版) <https://tools.ietf.org/html/rfc7617#section-2.1>
-- [157] '''[CITE@en[RFC 7617 - The 'Basic' HTTP Authentication Scheme]] ([TIME[2015-10-01 09:47:40 +09:00]] 版) <https://tools.ietf.org/html/rfc7617#section-2.1>'''
- [8] [CITE@en[RFC 7616 - HTTP Digest Access Authentication]] ([TIME[2015-11-10 07:05:08 +09:00]] 版) <https://tools.ietf.org/html/rfc7616#section-3.3>
- [13] [CITE@en[RFC 7616 - HTTP Digest Access Authentication]] ([TIME[2015-11-10 07:05:08 +09:00]] 版) <https://tools.ietf.org/html/rfc7616#section-4>
]REFS]

* 意味

[11] [[基本認証]]では、[[利用者エージェント]]が [[credentials]]
送信時に使うべき[[文字コード]]の[[ヒント]]を表します [SRC[>>157]]。

[12] [[ダイジェスト認証]]では、[[サーバー]]が対応する[[文字コード]]を示します
[SRC[>>8]]。

* 値

[159] 値は、 [CODE[[[UTF-8]]]] のみ定義されています [SRC[>>157, >>8]]。
他の値は予約されています [SRC[>>157]]。
[[大文字・小文字不区別]]です [SRC[>>157, >>13]]。

;; [3] その意味は純粋な [[UTF-8]] とは異なります。 [[UTF-8]] 参照。

* 文脈

[4] [[基本認証]]の [[challenge]] で指定できます [SRC[>>157]]。
[[ダイジェスト認証]]の [[challenge]] には指定する[['''べきです''']] [SRC[>>8, >>13]]。
[[credentials]] には指定できません。

[6] 必須ではありません [SRC[>>157, >>8]]。

* 処理

[14] [[ダイジェスト認証]]の [VAR[[[A1]]]] や [CODE[[[username]]]]
で、ここで指定された[[文字コード]]を使います [SRC[>>13]]。

[15] [[ダイジェスト認証]]では、
指定された値を理解できなければ、
[[要求]]を失敗とすることができます [SRC[>>13]]。

* 歴史

[10] [[SASL]] [[ダイジェスト認証]] ([[RFC 2831]]) で追加されました。

[1] [[基本認証]]には [[RFC 7617]] で新たに追加されました。

[REFS[
- [7] [CITE@en[RFC 7617 - The 'Basic' HTTP Authentication Scheme]] ([TIME[2015-10-01 09:47:40 +09:00]] 版) <https://tools.ietf.org/html/rfc7617#appendix-A>
]REFS]

[2] 今後実装が広まるかどうかは未知数です。

[160] 意味的には [CODE[[[accept-charset]]]] とするべきところですが、
[[SASL]] ([[RFC 2831]]) との整合性のため [CODE[[[charset]]]] とされました [SRC[>>157]]。

[9] [[HTTP]] [[ダイジェスト認証]]には [[RFC 7616]] で追加されました。