[要約] RFC 6112は、Kerberosにおける匿名性のサポートに関する要約と目的を提供しています。

Internet Engineering Task Force (IETF)                            L. Zhu
Request for Comments: 6112                                      P. Leach
Updates: 4120, 4121, 4556                          Microsoft Corporation
Category: Standards Track                                     S. Hartman
ISSN: 2070-1721                                        Painless Security
                                                              April 2011
        

Anonymity Support for Kerberos

Kerberosの匿名サポート

Abstract

概要

This document defines extensions to the Kerberos protocol to allow a Kerberos client to securely communicate with a Kerberos application service without revealing its identity, or without revealing more than its Kerberos realm. It also defines extensions that allow a Kerberos client to obtain anonymous credentials without revealing its identity to the Kerberos Key Distribution Center (KDC). This document updates RFCs 4120, 4121, and 4556.

このドキュメントでは、Kerberosプロトコルの拡張機能を定義して、KerberosのクライアントがKerberosの領域以上を明らかにすることなく、Kerberosアプリケーションサービスと安全に通信できるようにします。また、KerberosのクライアントがKerberos Key Distribution Center(KDC)にそのアイデンティティを明らかにすることなく、匿名の資格情報を取得できるようにする拡張機能を定義します。このドキュメントは、RFCS 4120、4121、および4556を更新します。

Status of This Memo

本文書の位置付け

This is an Internet Standards Track document.

これは、インターネット標準トラックドキュメントです。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.

このドキュメントは、インターネットエンジニアリングタスクフォース(IETF)の製品です。IETFコミュニティのコンセンサスを表しています。公開レビューを受けており、インターネットエンジニアリングステアリンググループ(IESG)からの出版が承認されています。インターネット標準の詳細については、RFC 5741のセクション2で入手できます。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc6112.

このドキュメントの現在のステータス、任意のERRATA、およびそのフィードバックを提供する方法に関する情報は、http://www.rfc-editor.org/info/rfc6112で取得できます。

Copyright Notice

著作権表示

Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved.

Copyright(c)2011 IETF Trustおよび文書著者として特定された人。全著作権所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

このドキュメントは、BCP 78およびIETFドキュメント(http://trustee.ietf.org/license-info)に関連するIETF Trustの法的規定の対象となります。この文書に関するあなたの権利と制限を説明するので、これらの文書を注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、セクション4.Eで説明されている法的規定のセクション4.Eで説明されており、単純化されたBSDライセンスで説明されているように保証なしで提供される簡略化されたBSDライセンステキストを含める必要があります。

This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English.

このドキュメントには、2008年11月10日までに公開または公開されたIETFドキュメントまたはIETFの寄付からの資料が含まれている場合があります。IETF標準プロセスの外。そのような資料の著作権を制御する人から適切なライセンスを取得せずに、このドキュメントはIETF標準プロセスの外側に変更されない場合があり、その派生作業は、ITF標準プロセスの外側で作成されない場合があります。RFCとしての出版またはそれを英語以外の言語に翻訳するため。

Table of Contents

目次

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Conventions Used in This Document  . . . . . . . . . . . . . .  3
   3.  Definitions  . . . . . . . . . . . . . . . . . . . . . . . . .  3
   4.  Protocol Description . . . . . . . . . . . . . . . . . . . . .  5
     4.1.  Anonymity Support in AS Exchange . . . . . . . . . . . . .  5
       4.1.1.  Anonymous PKINIT . . . . . . . . . . . . . . . . . . .  6
     4.2.  Anonymity Support in TGS Exchange  . . . . . . . . . . . .  7
     4.3.  Subsequent Exchanges and Protocol Actions Common to AS
           and TGS for Anonymity Support  . . . . . . . . . . . . . .  9
   5.  Interoperability Requirements  . . . . . . . . . . . . . . . . 10
   6.  GSS-API Implementation Notes . . . . . . . . . . . . . . . . . 10
   7.  PKINIT Client Contribution to the Ticket Session Key . . . . . 11
     7.1.  Combining Two Protocol Keys  . . . . . . . . . . . . . . . 12
   8.  Security Considerations  . . . . . . . . . . . . . . . . . . . 13
   9.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 14
   10. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 15
   11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15
     11.1. Normative References . . . . . . . . . . . . . . . . . . . 15
     11.2. Informative References . . . . . . . . . . . . . . . . . . 16
        
1. Introduction
1. はじめに

In certain situations, the Kerberos [RFC4120] client may wish to authenticate a server and/or protect communications without revealing the client's own identity. For example, consider an application that provides read access to a research database and that permits queries by arbitrary requesters. A client of such a service might wish to authenticate the service, to establish trust in the information received from it, but might not wish to disclose the client's identity to the service for privacy reasons.

特定の状況では、Kerberos [RFC4120]クライアントは、クライアント自身の身元を明らかにすることなく、サーバーを認証したり、通信を保護したりすることを希望する場合があります。たとえば、研究データベースへの読み取りアクセスを提供し、任意の要求者によるクエリを許可するアプリケーションを検討してください。このようなサービスのクライアントは、サービスを認証し、そこから受け取った情報への信頼を確立することを希望するかもしれませんが、プライバシー上の理由でクライアントの身元をサービスに開示したくないかもしれません。

Extensions to Kerberos are specified in this document by which a client can authenticate the Key Distribution Center (KDC) and request an anonymous ticket. The client can use the anonymous ticket to authenticate the server and protect subsequent client-server communications.

Kerberosへの拡張機能は、クライアントがキー配布センター(KDC)を認証し、匿名チケットを要求できるこのドキュメントで指定されています。クライアントは、匿名チケットを使用してサーバーを認証し、その後のクライアントサーバー通信を保護できます。

By using the extensions defined in this specification, the client can request an anonymous ticket where the client may reveal the client's identity to the client's own KDC, or the client can hide the client's identity completely by using anonymous Public Key Cryptography for Initial Authentication in Kerberos (PKINIT) as defined in Section 4.1. Using the returned anonymous ticket, the client remains anonymous in subsequent Kerberos exchanges thereafter to KDCs on the cross-realm authentication path and to the server with which it communicates.

この仕様で定義されている拡張機能を使用することにより、クライアントはクライアントがクライアント自身のKDCにクライアントの身元を明らかにすることができる匿名チケットを要求することができます。(pkinit)セクション4.1で定義されている。返された匿名チケットを使用して、クライアントはその後のKerberosの交換で匿名のままであり、その後、Cross-RealM認証パスとそれが通信するサーバーでKDCSを交換します。

In this specification, the client realm in the anonymous ticket is the anonymous realm name when anonymous PKINIT is used to obtain the ticket. The client realm is the client's real realm name if the client is authenticated using the client's long-term keys. Note that the membership of a realm can imply a member of the community represented by the realm.

この仕様では、匿名チケットのクライアントレルムは、匿名のPkinitを使用してチケットを取得する場合の匿名のレルム名です。クライアントの長期キーを使用してクライアントが認証されている場合、クライアントの領域はクライアントの実際のレルム名です。領域のメンバーシップは、領域に代表されるコミュニティのメンバーを意味することに注意してください。

The interaction with Generic Security Service Application Program Interface (GSS-API) is described after the protocol description.

ジェネリックセキュリティサービスアプリケーションプログラムインターフェイス(GSS-API)との相互作用は、プロトコルの説明の後に説明されています。

2. Conventions Used in This Document
2. このドキュメントで使用されている規則

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].

「必須」、「そうしない」、「必須」、「必要」、「しない」、「そうしない」、「そうではない」、「そうでない」、「推奨」、「5月」、および「オプション」は、[RFC2119]に記載されているように解釈される。

3. Definitions
3. 定義

The anonymous Kerberos realm name is defined as a well-known realm name based on [RFC6111], and the value of this well-known realm name is the literal "WELLKNOWN:ANONYMOUS".

匿名のKerberos Realmの名前は、[RFC6111]に基づいたよく知られたレルム名として定義されており、この有名なレルム名の値は文字通りの「よく知られている:匿名」です。

The anonymous Kerberos principal name is defined as a well-known Kerberos principal name based on [RFC6111]. The value of the name-type field is KRB_NT_WELLKNOWN [RFC6111], and the value of the name-string field is a sequence of two KerberosString components: "WELLKNOWN", "ANONYMOUS".

匿名のKerberosの主名は、[RFC6111]に基づいた有名なKerberosの主名として定義されています。名前タイプのフィールドの値はKRB_NT_WELLKNOUNT [RFC6111]であり、名前ストリングフィールドの値は、「よく知られている」、「匿名」という2つのKerberosstringコンポーネントのシーケンスです。

The anonymous ticket flag is defined as bit 16 (with the first bit being bit 0) in the TicketFlags:

匿名のチケットフラグは、チケットフラグのビット16(最初のビットはビット0)として定義されます。

           TicketFlags     ::= KerberosFlags
             -- anonymous(16)
             -- TicketFlags and KerberosFlags are defined in [RFC4120]
        

This is a new ticket flag that is used to indicate that a ticket is an anonymous one.

これは、チケットが匿名のものであることを示すために使用される新しいチケットフラグです。

An anonymous ticket is a ticket that has all of the following properties:

匿名のチケットは、次のすべてのプロパティを備えたチケットです。

o The cname field contains the anonymous Kerberos principal name.

o CNAMEフィールドには、匿名のKerberosの主名が含まれています。

o The crealm field contains the client's realm name or the anonymous realm name.

o CREALMフィールドには、クライアントのレルム名または匿名のレルム名が含まれています。

o The anonymous ticket contains no information that can reveal the client's identity. However, the ticket may contain the client realm, intermediate realms on the client's authentication path, and authorization data that may provide information related to the client's identity. For example, an anonymous principal that is identifiable only within a particular group of users can be implemented using authorization data and such authorization data, if included in the anonymous ticket, would disclose the client's membership of that group.

o 匿名のチケットには、クライアントの身元を明らかにする情報が含まれていません。ただし、チケットには、クライアントの領域、クライアントの認証パス上の中間レルム、およびクライアントのIDに関連する情報を提供できる承認データが含まれる場合があります。たとえば、特定のユーザーグループ内でのみ識別できる匿名のプリンシパルは、承認データを使用して実装できます。そのような承認データは、匿名チケットに含まれる場合、そのグループのクライアントのメンバーシップを開示します。

o The anonymous ticket flag is set.

o 匿名のチケットフラグが設定されています。

The anonymous KDC option is defined as bit 16 (with the first bit being bit 0) in the KDCOptions:

匿名のKDCオプションは、KDCoptionsでビット16(最初のビットはビット0)として定義されます。

           KDCOptions      ::= KerberosFlags
             -- anonymous(16)
             -- KDCOptions and KerberosFlags are defined in [RFC4120]
        

As described in Section 4, the anonymous KDC option is set to request an anonymous ticket in an Authentication Service (AS) request or a Ticket Granting Service (TGS) request.

セクション4で説明されているように、匿名のKDCオプションは、認証サービス(AS)リクエストまたはチケット付与サービス(TGS)リクエストで匿名チケットをリクエストするように設定されています。

4. Protocol Description
4. プロトコルの説明

In order to request an anonymous ticket, the client sets the anonymous KDC option in an AS request or a TGS request.

匿名チケットをリクエストするために、クライアントはASリクエストまたはTGSリクエストで匿名のKDCオプションを設定します。

The rest of this section is organized as follows: it first describes protocol actions specific to AS exchanges, then it describes those of TGS exchanges. These are then followed by the description of protocol actions common to both AS and TGS and those in subsequent exchanges.

このセクションの残りの部分は、次のように構成されています。最初に交換として固有のプロトコルアクションを説明し、次にTGS取引所のアクションを説明します。次に、ASとTGSとその後の交換の両方に共通するプロトコルアクションの説明が続きます。

4.1. Anonymity Support in AS Exchange
4.1. AS Exchangeの匿名サポート

The client requests an anonymous ticket by setting the anonymous KDC option in an AS exchange.

クライアントは、AS AS Exchangeで匿名のKDCオプションを設定することにより、匿名チケットを要求します。

The Kerberos client can use the client's long-term keys, the client's X.509 certificates [RFC4556], or any other pre-authentication data, to authenticate to the KDC and requests an anonymous ticket in an AS exchange where the client's identity is known to the KDC.

Kerberosのクライアントは、クライアントの長期キー、クライアントのX.509証明書[RFC4556]、またはその他の認証データを使用して、KDCに認証し、クライアントの身元が既知のExchangeのAS AS AS AS AS AS AS AS AS AS ASの要求を要求できます。KDCへ。

If the client in the AS request is anonymous, the anonymous KDC option MUST be set in the request. Otherwise, the KDC MUST return a KRB-ERROR message with the code KDC_ERR_BADOPTION.

ASリクエストのクライアントが匿名の場合、匿名のKDCオプションをリクエストに設定する必要があります。それ以外の場合、KDCはコードKDC_ERR_BADOPTIONを使用してKRB-Errorメッセージを返す必要があります。

If the client is anonymous and the KDC does not have a key to encrypt the reply (this can happen when, for example, the KDC does not support PKINIT [RFC4556]), the KDC MUST return an error message with the code KDC_ERR_NULL_KEY [RFC4120].

クライアントが匿名であり、KDCに返信を暗号化する鍵がない場合(たとえば、KDCがPkinit [RFC4556]をサポートしていない場合に発生する可能性があります)、KDCはコードKDC_ERR_NULL_KEY [RFC4120でエラーメッセージを返す必要があります。]。

When policy allows, the KDC issues an anonymous ticket. If the client name in the request is the anonymous principal, the client realm (crealm) in the reply is the anonymous realm, otherwise, the client realm is the realm of the AS. According to [RFC4120], the client name and the client realm in the EncTicketPart of the reply MUST match with the corresponding client name and the client realm of the KDC reply; the client MUST use the client name and the client realm returned in the KDC-REP in subsequent message exchanges when using the obtained anonymous ticket.

ポリシーが許可されている場合、KDCは匿名チケットを発行します。リクエストのクライアント名が匿名のプリンシパルである場合、返信のクライアントレルム(CREALM)は匿名の領域です。そうでなければ、クライアントの領域はASの領域です。[RFC4120]によると、返信のencticketpartのクライアント名とクライアントの領域は、KDC返信の対応するクライアント名とクライアントの領域と一致する必要があります。クライアントは、取得した匿名チケットを使用する際に、後続のメッセージ交換でKDC-REPで返されたクライアント名とクライアントレルムを使用する必要があります。

Care MUST be taken by the KDC not to reveal the client's identity in the authorization data of the returned ticket when populating the authorization data in a returned anonymous ticket.

返品された匿名チケットに承認データを入力する際に、返されたチケットの承認データにクライアントの身元を明らかにしないように、KDCが注意する必要があります。

The AD-INITIAL-VERIFIED-CAS authorization data, as defined in [RFC4556], contains the issuer name of the client certificate. This authorization is not applicable and MUST NOT be present in the returned anonymous ticket when anonymous PKINIT is used. When the client is authenticated (i.e., anonymous PKINIT is not used), if it is undesirable to disclose such information about the client's identity, the AD-INITIAL-VERIFIED-CAS authorization data SHOULD be removed from the returned anonymous ticket.

[RFC4556]で定義されているAD-Initial-Verified-CAS認証データには、クライアント証明書の発行者名が含まれています。この承認は適用されず、匿名のpkinitを使用した場合、返品された匿名チケットに存在してはなりません。クライアントが認証されている場合(つまり、匿名のpkinitは使用されません)、クライアントの身元に関するそのような情報を開示することが望ましくない場合、Ad-Initial-Verified-CAS認証データを返された匿名チケットから削除する必要があります。

The client can use the client keys to mutually authenticate with the KDC and request an anonymous Ticket Granting Ticket (TGT) in the AS request. In that case, the reply key is selected as normal, according to Section 3.1.3 of [RFC4120].

クライアントは、クライアントキーを使用してKDCで相互に認証し、ASリクエストで匿名のチケット付与チケット(TGT)を要求できます。その場合、[RFC4120]のセクション3.1.3に従って、応答キーが通常どおり選択されます。

4.1.1. Anonymous PKINIT
4.1.1. 匿名のpkinit

This sub-section defines anonymous PKINIT.

このサブセクションは、匿名のpkinitを定義します。

As described earlier in this section, the client can request an anonymous ticket by authenticating to the KDC using the client's identity; alternatively, without revealing the client's identity to the KDC, the Kerberos client can request an anonymous ticket as follows: the client sets the client name as the anonymous principal in the AS exchange and provides PA_PK_AS_REQ pre-authentication data [RFC4556] where the signerInfos field of the SignedData [RFC5652] of the PA_PK_AS_REQ is empty, and the certificates field is absent. Because the anonymous client does not have an associated asymmetric key pair, the client MUST choose the Diffie-Hellman key agreement method by filling in the Diffie-Hellman domain parameters in the clientPublicValue [RFC4556]. This use of the anonymous client name in conjunction with PKINIT is referred to as anonymous PKINIT. If anonymous PKINIT is used, the realm name in the returned anonymous ticket MUST be the anonymous realm.

このセクションで前述したように、クライアントは、クライアントのIDを使用してKDCに認証することにより、匿名チケットを要求できます。あるいは、KDCに対するクライアントの身元を明らかにすることなく、Kerberosのクライアントは次のように匿名チケットを要求できます。クライアントはクライアント名をAS Exchangeの匿名のプリンシパルとして設定し、PA_PK_AS_REQ Pre-Authenticationデータ[RFC4556]を提供する場所PA_PK_AS_REQのSignedData [RFC5652]のSignedData [RFC5652]は空で、証明書フィールドはありません。匿名のクライアントには関連する非対称キーペアがないため、クライアントパブリックバリュー[RFC4556]のdiffie-hellmanドメインパラメーターを記入することにより、クライアントはdiffie-hellmanキー契約法を選択する必要があります。匿名のクライアント名をPkinitと組み合わせて使用することは、匿名のPkinitと呼ばれます。匿名のpkinitを使用する場合、返された匿名チケットのレルム名は匿名のレルムでなければなりません。

Upon receiving the anonymous PKINIT request from the client, the KDC processes the request, according to Section 3.1.2 of [RFC4120]. The KDC skips the checks for the client's signature and the client's public key (such as the verification of the binding between the client's public key and the client name), but performs otherwise applicable checks, and proceeds as normal, according to [RFC4556]. For example, the AS MUST check if the client's Diffie-Hellman domain parameters are acceptable. The Diffie-Hellman key agreement method MUST be used and the reply key is derived according to Section 3.2.3.1 of [RFC4556]. If the clientPublicValue is not present in the request, the KDC MUST return a KRB-ERROR with the code KDC_ERR_PUBLIC_KEY_ENCRYPTION_NOT_SUPPORTED [RFC4556]. If all goes well, an anonymous ticket is generated, according to Section 3.1.3 of [RFC4120], and PA_PK_AS_REP [RFC4556] pre-authentication data is included in the KDC reply, according to [RFC4556]. If the KDC does not have an asymmetric key pair, it MAY reply anonymously or reject the authentication attempt. If the KDC replies anonymously, the signerInfos field of the SignedData [RFC5652] of PA_PK_AS_REP in the reply is empty, and the certificates field is absent. The server name in the anonymous KDC reply contains the name of the TGS.

[RFC4120]のセクション3.1.2に従って、クライアントから匿名のpkinitリクエストを受信すると、KDCはリクエストを処理します。KDCは、クライアントの署名とクライアントの公開キー(クライアントの公開キーとクライアント名の間のバインディングの検証など)のチェックをスキップしますが、[RFC4556]に従って、それ以外の場合は適用されるチェックを実行し、通常どおりに進行します。たとえば、ASは、クライアントのdiffie-hellmanドメインパラメーターが許容できるかどうかを確認する必要があります。diffie-hellmanキー契約法を使用する必要があり、返信キーは[RFC4556]のセクション3.2.3.1に従って導き出されます。クライアントPublicValueがリクエストに存在しない場合、KDCはコードkdc_err_public_key_encryption_not_supported [rfc4556]を使用してkrb-errorを返す必要があります。[RFC4120]のセクション3.1.3によると、すべてがうまくいけば、匿名チケットが生成され、PA_PK_AS_REP [RFC4556]は、[RFC4556]に従ってKDC応答に含まれています。KDCに非対称キーペアがない場合、匿名で返信するか、認証試行を拒否することがあります。KDCが匿名で返信すると、返信のPA_PK_AS_REPのSignedData [RFC5652]のSignerInFosフィールドが空で、証明書フィールドはありません。匿名KDC返信のサーバー名には、TGSの名前が含まれています。

Upon receipt of the KDC reply that contains an anonymous ticket and PA_PK_AS_REP [RFC4556] pre-authentication data, the client can then authenticate the KDC based on the KDC's signature in the PA_PK_AS_REP. If the KDC's signature is missing in the KDC reply (the reply is anonymous), the client MUST reject the returned ticket if it cannot authenticate the KDC otherwise.

匿名のチケットとPA_PK_AS_REP [RFC4556]前免除データを含むKDCの返信を受け取ると、クライアントはPA_PK_AS_REPのKDCの署名に基づいてKDCを認証できます。KDCの署名がKDCの返信に欠落している場合(返信は匿名です)、KDCを認証できない場合、クライアントは返されたチケットを拒否する必要があります。

A KDC that supports anonymous PKINIT MUST indicate the support of PKINIT, according to Section 3.4 of [RFC4556]. In addition, such a KDC MUST indicate support for anonymous PKINIT by including a padata element of padata-type PA_PKINIT_KX and empty padata-value when including PA-PK-AS-REQ in an error reply.

匿名のpkinitをサポートするKDCは、[RFC4556]のセクション3.4に従って、Pkinitのサポートを示す必要があります。さらに、このようなKDCは、エラー応答にPA-PK-AS-REQを含めると、Padata-Type PA_Pkinit_KXのパダタ要素と空のPadata-Valueを含めることにより、匿名のPkinitのサポートを示す必要があります。

When included in a KDC error, PA_PKINIT_KX indicates support for anonymous PKINIT. As discussed in Section 7, when included in an AS-REP, PA_PKINIT_KX proves that the KDC and client both contributed to the session key for any use of Diffie-Hellman key agreement with PKINIT.

KDCエラーに含まれる場合、pa_pkinit_kxは匿名のpkinitのサポートを示します。セクション7で説明したように、AS-REPに含まれている場合、PA_Pkinit_KXは、KDCとクライアントがPkinitとのDiffie-Hellmanキー契約を使用するためにセッションキーに貢献したことを証明しています。

Note that in order to obtain an anonymous ticket with the anonymous realm name, the client MUST set the client name as the anonymous principal in the request when requesting an anonymous ticket in an AS exchange. Anonymity PKINIT is the only way via which an anonymous ticket with the anonymous realm as the client realm can be generated in this specification.

匿名のレルム名で匿名のチケットを取得するには、クライアントがAS AS Exchangeで匿名チケットを要求するときに、クライアント名をリクエストの匿名のプリンシパルとして設定する必要があることに注意してください。匿名のpkinitは、クライアントの領域をこの仕様で生成できる匿名の領域を持つ匿名チケットを介して唯一の方法です。

4.2. Anonymity Support in TGS Exchange
4.2. TGS Exchangeの匿名サポート

The client requests an anonymous ticket by setting the anonymous KDC option in a TGS exchange, and in that request the client can use a normal Ticket Granting Ticket (TGT) with the client's identity, or an anonymous TGT, or an anonymous cross-realm TGT. If the client uses a normal TGT, the client's identity is known to the TGS.

クライアントは、TGS Exchangeで匿名KDCオプションを設定することにより匿名チケットを要求し、そのリクエストでクライアントはクライアントの身元、匿名のTGT、または匿名のCross-Realm TGTを使用して通常のチケット付与チケット(TGT)を使用できます。。クライアントが通常のTGTを使用する場合、クライアントのIDはTGSに対して知られています。

Note that the client can completely hide the client's identity in an AS exchange using anonymous PKINIT, as described in the previous section.

前のセクションで説明されているように、クライアントは匿名のPkinitを使用してAS AS ExchangeでクライアントのIDを完全に非表示にできることに注意してください。

If the ticket in the PA-TGS-REQ of the TGS request is an anonymous one, the anonymous KDC option MUST be set in the request. Otherwise, the KDC MUST return a KRB-ERROR message with the code KDC_ERR_BADOPTION.

TGSリクエストのPA-TGS-Reqのチケットが匿名のチケットである場合、匿名のKDCオプションをリクエストに設定する必要があります。それ以外の場合、KDCはコードKDC_ERR_BADOPTIONを使用してKRB-Errorメッセージを返す必要があります。

When policy allows, the KDC issues an anonymous ticket. If the ticket in the TGS request is an anonymous one, the client name and the client realm are copied from that ticket; otherwise, the ticket in the TGS request is a normal ticket, the returned anonymous ticket contains the client name as the anonymous principal and the client realm as the true realm of the client. In all cases, according to [RFC4120] the client name and the client realm in the EncTicketPart of the reply MUST match with the corresponding client name and the client realm of the anonymous ticket in the reply; the client MUST use the client name and the client realm returned in the KDC-REP in subsequent message exchanges when using the obtained anonymous ticket.

ポリシーが許可されている場合、KDCは匿名チケットを発行します。TGSリクエストのチケットが匿名のチケットである場合、クライアント名とクライアントの領域がそのチケットからコピーされます。それ以外の場合、TGSリクエストのチケットは通常のチケットです。返された匿名チケットには、クライアント名が匿名の校長として、クライアントの真の領域としてクライアント名が含まれています。すべての場合において、[RFC4120]によると、返信のencticketpartのクライアント名とクライアントの領域は、応答の匿名チケットの対応するクライアント名とクライアントの領域と一致する必要があります。クライアントは、取得した匿名チケットを使用する際に、後続のメッセージ交換でKDC-REPで返されたクライアント名とクライアントレルムを使用する必要があります。

Care MUST be taken by the TGS not to reveal the client's identity in the authorization data of the returned ticket. When propagating authorization data in the ticket or in the enc-authorization-data field of the request, the TGS MUST ensure that the client confidentiality is not violated in the returned anonymous ticket. The TGS MUST process the authorization data recursively, according to Section 5.2.6 of [RFC4120], beyond the container levels such that all embedded authorization elements are interpreted. The TGS SHOULD NOT populate identity-based authorization data into an anonymous ticket in that such authorization data typically reveals the client's identity. The specification of a new authorization data type MUST specify the processing rules of the authorization data when an anonymous ticket is returned. If there is no processing rule defined for an authorization data element or the authorization data element is unknown, the TGS MUST process it when an anonymous ticket is returned as follows:

TGSは、返されたチケットの承認データにクライアントの身元を明らかにしないように注意する必要があります。チケットまたはリクエストのenc-authorization-dataフィールドに承認データを伝播する場合、TGSは、返された匿名チケットでクライアントの機密性が違反されないようにする必要があります。TGSは、[RFC4120]のセクション5.2.6に従って、すべての埋め込み認証要素が解釈されるようにコンテナレベルを超えて、認証データを再帰的に処理する必要があります。TGSは、そのような承認データが通常クライアントの身元を明らかにするという点で、IDベースの認証データを匿名チケットに入力するべきではありません。新しい承認データ型の仕様は、匿名チケットが返されたときに認証データの処理ルールを指定する必要があります。承認データ要素に対して定義された処理ルールがない場合、または承認データ要素が不明である場合、TGSは匿名チケットが次のように返される場合に処理する必要があります。

o If the authorization data element may reveal the client's identity, it MUST be removed unless otherwise specified.

o 認証データ要素がクライアントの身元を明らかにする場合は、特に指定されていない限り削除する必要があります。

o If the authorization data element, that could reveal the client's identity, is intended to restrict the use of the ticket or limit the rights otherwise conveyed in the ticket, it cannot be removed in order to hide the client's identity. In this case, the authentication attempt MUST be rejected, and the TGS MUST return an error message with the code KDC_ERR_POLICY. Note this is applicable to both critical and optional authorization data.

o クライアントの身元を明らかにする可能性のある承認データ要素が、チケットの使用を制限したり、チケットに伝えられる権利を制限することを目的としている場合、クライアントの身元を隠すために削除することはできません。この場合、認証試行を拒否する必要があり、TGSはコードkdc_err_policyでエラーメッセージを返す必要があります。注これは、重要な認証データとオプションの両方の認証データの両方に適用できます。

o If the authorization data element is unknown, the TGS MAY remove it, or transfer it into the returned anonymous ticket, or reject the authentication attempt, based on local policy for that authorization data type unless otherwise specified. If there is no policy defined for a given unknown authorization data type, the authentication MUST be rejected. The error code is KDC_ERR_POLICY when the authentication is rejected.

o 承認データ要素が不明な場合、TGSはそれを削除するか、返された匿名チケットに転送するか、特に指定されていない限り、その承認データ型のローカルポリシーに基づいて認証試行を拒否することができます。特定の不明な承認データ型に対して定義されたポリシーがない場合、認証を拒否する必要があります。エラーコードは、認証が拒否されたときのKDC_ERR_POLICYです。

The AD-INITIAL-VERIFIED-CAS authorization data, as defined in [RFC4556], contains the issuer name of the client certificate. If it is undesirable to disclose such information about the client's identity, the AD-INITIAL-VERIFIED-CAS authorization data SHOULD be removed from an anonymous ticket.

[RFC4556]で定義されているAD-Initial-Verified-CAS認証データには、クライアント証明書の発行者名が含まれています。クライアントの身元に関するそのような情報を開示することが望ましくない場合、ADITIAL-Verified-CAS認証データを匿名チケットから削除する必要があります。

The TGS encodes the name of the previous realm into the transited field, according to Section 3.3.3.2 of [RFC4120]. Based on local policy, the TGS MAY omit the previous realm, if the cross realm TGT is an anonymous one, in order to hide the authentication path of the client. The unordered set of realms in the transited field, if present, can reveal which realm may potentially be the realm of the client or the realm that issued the anonymous TGT. The anonymous Kerberos realm name MUST NOT be present in the transited field of a ticket. The true name of the realm that issued the anonymous ticket MAY be present in the transited field of a ticket.

TGSは、[RFC4120]のセクション3.3.3.2に従って、以前の領域の名前を通過フィールドにコードします。地域のポリシーに基づいて、TGSは、クライアントの認証パスを隠すために、クロスレルムTGTが匿名のものである場合、以前の領域を省略する場合があります。存在する場合、通過フィールドの未秩序の領域のセットは、匿名のTGTを発行したクライアントまたは領域の潜在的な領域である可能性がある領域を明らかにすることができます。匿名のKerberos Realmの名前は、チケットの通過フィールドに存在してはなりません。匿名のチケットを発行した領域の真の名前は、チケットの通過フィールドに存在する場合があります。

4.3. Subsequent Exchanges and Protocol Actions Common to AS and TGS for Anonymity Support
4.3. 匿名サポートのためにASとTGSに共通のその後の交換とプロトコルアクション

In both AS and TGS exchanges, the realm field in the KDC request is always the realm of the target KDC, not the anonymous realm when the client requests an anonymous ticket.

ASとTGS交換の両方で、KDC要求のレルムフィールドは、クライアントが匿名チケットを要求する場合の匿名のレルムではなく、常にターゲットKDCの領域です。

Absent other information, the KDC MUST NOT include any identifier in the returned anonymous ticket that could reveal the client's identity to the server.

他の情報がなければ、KDCは、クライアントのIDをサーバーに明らかにする可能性のある匿名チケットに識別子を含めるべきではありません。

Unless anonymous PKINIT is used, if a client requires anonymous communication, then the client MUST check to make sure that the ticket in the reply is actually anonymous by checking the presence of the anonymous ticket flag in the flags field of the EncKDCRepPart. This is because KDCs ignore unknown KDC options. A KDC that does not understand the anonymous KDC option will not return an error, but will instead return a normal ticket.

匿名のpkinitが使用されない限り、クライアントが匿名の通信を必要とする場合、クライアントは、ckdcreppartのフラグフィールドに匿名のチケットフラグの存在をチェックすることにより、返信のチケットが実際に匿名であることを確認する必要があります。これは、KDCが不明なKDCオプションを無視しているためです。匿名のKDCオプションを理解していないKDCは、エラーを返さず、代わりに通常のチケットを返します。

The subsequent client and server communications then proceed as described in [RFC4120].

その後のクライアントとサーバーの通信は、[RFC4120]に記載されているように進みます。

Note that the anonymous principal name and realm are only applicable to the client in Kerberos messages, the server cannot be anonymous in any Kerberos message per this specification.

匿名の主名とレルムは、Kerberosメッセージのクライアントにのみ適用されることに注意してください。この仕様に従って、サーバーはKerberosメッセージで匿名ではないことに注意してください。

A server accepting an anonymous service ticket may assume that subsequent requests using the same ticket originate from the same client. Requests with different tickets are likely to originate from different clients.

匿名のサービスチケットを受け入れるサーバーは、同じチケットを使用した後続のリクエストが同じクライアントから発生すると想定する場合があります。異なるチケットのリクエストは、異なるクライアントから発生する可能性があります。

Upon receipt of an anonymous ticket, the transited policy check is performed in the same way as that of a normal ticket if the client's realm is not the anonymous realm; if the client realm is the anonymous realm, absent other information any realm in the authentication path is allowed by the cross-realm policy check.

匿名のチケットを受け取ると、クライアントの領域が匿名の領域ではない場合、通常のチケットと同じ方法で輸送されたポリシーチェックが実行されます。クライアントの領域が匿名の領域である場合、他の情報がない場合、クロスリアムポリシーチェックによって認証パスの領域が許可されます。

5. Interoperability Requirements
5. 相互運用性要件

Conforming implementations MUST support the anonymous principal with a non-anonymous realm, and they MAY support the anonymous principal with the anonymous realm using anonymous PKINIT.

適合の実装は、非匿名の領域で匿名の校長をサポートする必要があり、匿名のPkinitを使用して匿名の領域で匿名の校長をサポートする場合があります。

6. GSS-API Implementation Notes
6. GSS-API実装ノート

GSS-API defines the name_type GSS_C_NT_ANONYMOUS [RFC2743] to represent the anonymous identity. In addition, Section 2.1.1 of [RFC1964] defines the single string representation of a Kerberos principal name with the name_type GSS_KRB5_NT_PRINCIPAL_NAME. The anonymous principal with the anonymous realm corresponds to the GSS-API anonymous principal. A principal with the anonymous principal name and a non-anonymous realm is an authenticated principal; hence, such a principal does not correspond to the anonymous principal in GSS-API with the GSS_C_NT_ANONYMOUS name type. The [RFC1964] name syntax for GSS_KRB5_NT_PRINCIPAL_NAME MUST be used for importing the anonymous principal name with a non-anonymous realm name and for displaying and exporting these names. In addition, this syntax must be used along with the name type GSS_C_NT_ANONYMOUS for displaying and exporting the anonymous principal with the anonymous realm.

GSS-APIは、name_type gss_c_nt_anonymous [rfc2743]を定義して、匿名のアイデンティティを表します。さらに、[RFC1964]のセクション2.1.1は、Kerberosの主名の単一文字列表現を、name_type GSS_KRB5_NT_PRINCIPAL_NAMEで定義します。匿名の領域を持つ匿名の校長は、GSS-API匿名の校長に対応しています。匿名の校長と非匿名の領域を持つ校長は、認証された校長です。したがって、そのようなプリンシパルは、GSS_C_NT_ANONYMAUS NAME TYPEを使用してGSS-APIの匿名プリンシパルに対応していません。[rfc1964] gss_krb5_nt_principal_nameの[rfc1964]名前の名前は、匿名の主名を非匿名のレルム名でインポートし、これらの名前を表示およびエクスポートするために使用する必要があります。さらに、この構文は、匿名の領域で匿名のプリンシパルを表示およびエクスポートするために、名前タイプGSS_C_NT_ANNYMOUSとともに使用する必要があります。

At the GSS-API [RFC2743] level, an initiator/client requests the use of an anonymous principal with the anonymous realm by asserting the "anonymous" flag when calling GSS_Init_Sec_Context(). The GSS-API implementation MAY provide implementation-specific means for requesting the use of an anonymous principal with a non-anonymous realm.

GSS-API [RFC2743]レベルでは、イニシエーター/クライアントは、GSS_INIT_SEC_CONTEXT()を呼び出すときに「匿名」フラグを主張することにより、匿名の領域で匿名のプリンシパルの使用を要求します。GSS-API実装は、非匿名の領域で匿名の校長の使用を要求するための実装固有の手段を提供する場合があります。

GSS-API does not know or define "anonymous credentials", so the (printable) name of the anonymous principal will rarely be used by or relevant for the initiator/client. The printable name is relevant for the acceptor/server when performing an authorization decision based on the initiator name that is returned from the acceptor side upon the successful security context establishment.

GSS-APIは「匿名資格情報」を知らないか定義していないため、匿名の校長の(印刷可能な)名前は、イニシエーター/クライアントによって使用されることはめったにありません。印刷可能な名前は、セキュリティコンテキストの確立を成功させたときにアクセプター側から返されるイニシエーター名に基づいて許可決定を実行する際に、アクセプター/サーバーに関連します。

A GSS-API initiator MUST carefully check the resulting context attributes from the initial call to GSS_Init_Sec_Context() when requesting anonymity, because (as in the GSS-API tradition and for backwards compatibility) anonymity is just another optional context attribute. It could be that the mechanism doesn't recognize the attribute at all or that anonymity is not available for some other reasons -- and in that case the initiator MUST NOT send the initial security context token to the acceptor, because it will likely reveal the initiators identity to the acceptor, something that can rarely be "un-done".

GSS-APIイニシエーターは、匿名を要求するときに、GSS_INIT_SEC_CONTEXT()の最初の呼び出しから結果のコンテキスト属性を慎重に確認する必要があります(GSS-APIの伝統と後方互換性のように)匿名性は別のオプションのコンテキスト属性です。メカニズムは属性をまったく認識していないか、匿名性が他の理由で利用できない可能性があります。その場合、イニシエーターは初期のセキュリティコンテキストトークンをアクセプターに送信してはなりません。アクセプターへのイニシエーターのアイデンティティ、「解除」されることはめったにありません。

Portable initiators are RECOMMENDED to use default credentials whenever possible, and request anonymity only through the input anon_req_flag [RFC2743] to GSS_Init_Sec_Context().

ポータブルイニシエーターは、可能な限りデフォルトの資格情報を使用することをお勧めし、入力ANON_REQ_FLAG [RFC2743]からGSS_INIT_SEC_CONTEXT()からのみ匿名性を要求します。

7. PKINIT Client Contribution to the Ticket Session Key
7. チケットセッションキーへのPkinitクライアントの貢献

The definition in this section was motivated by protocol analysis of anonymous PKINIT (defined in this document) in building tunneling channels [RFC6113] and subsequent channel bindings. In order to enable applications of anonymous PKINIT to form channels, all implementations of anonymous PKINIT need to meet the requirements of this section. There is otherwise no connection to the rest of this document.

このセクションの定義は、トンネルチャネル[RFC6113]およびその後のチャネルバインディングの構築における匿名のPkinit(このドキュメントで定義)のプロトコル分析によって動機付けられました。匿名のPkinitのアプリケーションを有効にするためにチャネルを形成するには、匿名のPkinitのすべての実装がこのセクションの要件を満たす必要があります。それ以外の場合、このドキュメントの残りの部分との接続はありません。

PKINIT is useful for constructing tunneling channels. To ensure that an attacker cannot create a channel with a given name, it is desirable that neither the KDC nor the client unilaterally determine the ticket session key. To achieve that end, a KDC conforming to this definition MUST encrypt a randomly generated key, called the KDC contribution key, in the PA_PKINIT_KX padata (defined next in this section). The KDC contribution key is then combined with the reply key to form the ticket session key of the returned ticket. These two keys are then combined using the KRB-FX-CF2 operation defined in Section 7.1, where K1 is the KDC contribution key, K2 is the reply key, the input pepper1 is American Standard Code for Information Interchange (ASCII) [ASAX34] string "PKINIT", and the input pepper2 is ASCII string "KeyExchange".

Pkinitは、トンネルチャネルの構築に役立ちます。攻撃者が特定の名前でチャネルを作成できないことを確認するには、KDCもクライアントもチケットセッションキーを一方的に決定しないことが望ましいです。その目的を達成するために、この定義に準拠するKDCは、PA_PKINIT_KX PADATA(このセクションで次に定義されている)で、KDC寄与キーと呼ばれるランダムに生成されたキーを暗号化する必要があります。次に、KDCの貢献キーを返信キーと組み合わせて、返されたチケットのチケットセッションキーを形成します。これらの2つのキーは、セクション7.1で定義されたKRB-FX-CF2操作を使用して組み合わされます。ここで、K1はKDC寄与キーです。K2は応答キーです。「pkinit」、および入力pepper2はascii string "keyexchange"です。

   PA_PKINIT_KX      147
     -- padata for PKINIT that contains an encrypted
     -- KDC contribution key.
        
   PA-PKINIT-KX  ::= EncryptedData -- EncryptionKey
     -- Contains an encrypted key randomly
     -- generated by the KDC (known as the KDC contribution key).
     -- Both EncryptedData and EncryptionKey are defined in [RFC4120]
        

The PA_PKINIT_KX padata MUST be included in the KDC reply when anonymous PKINIT is used; it SHOULD be included if PKINIT is used with the Diffie-Hellman key exchange but the client is not anonymous; it MUST NOT be included otherwise (e.g., when PKINIT is used with the public key encryption as the key exchange).

匿名のpkinitを使用する場合、PA_PKINIT_KX PADATAをKDC返信に含める必要があります。pkinitがdiffie-hellmanキーエクスチェンジで使用されているが、クライアントは匿名ではない場合は含める必要があります。そうでないことを含めてはなりません(たとえば、Pkinitが公開キーの暗号化とともにキーエクスチェンジとして使用される場合)。

The padata-value field of the PA-PKINIT-KX type padata contains the DER [X.680] [X.690] encoding of the Abstract Syntax Notation One (ASN.1) type PA-PKINIT-KX. The PA-PKINIT-KX structure is an EncryptedData. The cleartext data being encrypted is the DER-encoded KDC contribution key randomly generated by the KDC. The encryption key is the reply key and the key usage number is KEY_USAGE_PA_PKINIT_KX (44).

Pa-pkinit-kx型PadataのPadata-valueフィールドには、抽象的構文表記1(asn.1)タイプPa-pkinit-kxのder [x.680] [x.690]エンコードが含まれています。Pa-pkinit-kx構造は暗号化されています。暗号化されているクリアテキストデータは、KDCによってランダムに生成されたDer-Encoded KDC貢献キーです。暗号化キーは返信キーであり、キー使用番号はkey_usage_pa_pkinit_kx(44)です。

The client then decrypts the KDC contribution key and verifies the ticket session key in the returned ticket is the combined key of the KDC contribution key and the reply key as described above. A conforming client MUST reject anonymous PKINIT authentication if the PA_PKINIT_KX padata is not present in the KDC reply or if the ticket session key of the returned ticket is not the combined key of the KDC contribution key and the reply key when PA-PKINIT-KX is present in the KDC reply.

次に、クライアントはKDCの貢献キーを復号化し、返されたチケットのチケットセッションキーを検証します。適合クライアントは、PA_PKINIT_KX PADATAがKDC返信に存在しない場合、または返されたチケットのチケットセッションキーがKDC貢献キーの組み合わせキーとPA-Pkinit-KXの場合の応答キーの結合キーではない場合、匿名のpkinit認証を拒否する必要があります。KDC返信に存在します。

7.1. Combining Two Protocol Keys
7.1. 2つのプロトコルキーを組み合わせます

KRB-FX-CF2() combines two protocol keys based on the pseudo-random() function defined in [RFC3961].

KRB-FX-CF2()は、[RFC3961]で定義された擬似ランダム()関数に基づいて2つのプロトコルキーを組み合わせます。

Given two input keys, K1 and K2, where K1 and K2 can be of two different enctypes, the output key of KRB-FX-CF2(), K3, is derived as follows:

K1とK2の2つの入力キー、K1とK2が2つの異なるエンティプである場合がある場合、KRB-FX-CF2()、K3の出力キーは次のように導き出されます。

KRB-FX-CF2(protocol key, protocol key, octet string, octet string) -> (protocol key)

KRB-FX-CF2(プロトコルキー、プロトコルキー、オクテット文字列、オクテット文字列) - >(プロトコルキー)

    PRF+(K1, pepper1) -> octet-string-1
    PRF+(K2, pepper2) -> octet-string-2
    KRB-FX-CF2(K1, K2, pepper1, pepper2) ->
           random-to-key(octet-string-1 ^ octet-string-2)
        

Where ^ denotes the exclusive-OR operation. PRF+() is defined as follows:

ここで、 ^は排他的または操作を示します。prf()は次のように定義されています。

   PRF+(protocol key, octet string) -> (octet string)
        
   PRF+(key, shared-info) -> pseudo-random( key,  1 || shared-info ) ||
                pseudo-random( key, 2 || shared-info ) ||
                pseudo-random( key, 3 || shared-info ) || ...
        

Here the counter value 1, 2, 3, and so on are encoded as a one-octet integer. The pseudo-random() operation is specified by the enctype of the protocol key. PRF+() uses the counter to generate enough bits as needed by the random-to-key() [RFC3961] function for the encryption type specified for the resulting key; unneeded bits are removed from the tail.

ここでは、カウンター値1、2、3などが1オクテットの整数としてエンコードされます。擬似ランダム()操作は、プロトコルキーのenctypeによって指定されます。PRF()は、カウンターを使用して、結果キーに指定された暗号化タイプのランダム()[RFC3961]関数によって必要に応じて十分なビットを生成します。不必要なビットは尾から取り外されます。

8. Security Considerations
8. セキュリティに関する考慮事項

Since KDCs ignore unknown options, a client requiring anonymous communication needs to make sure that the returned ticket is actually anonymous. This is because a KDC that does not understand the anonymous option would not return an anonymous ticket.

KDCは不明なオプションを無視するため、匿名の通信を必要とするクライアントは、返されたチケットが実際に匿名であることを確認する必要があります。これは、匿名のオプションを理解していないKDCが匿名のチケットを返さないためです。

By using the mechanism defined in this specification, the client does not reveal the client's identity to the server but the client identity may be revealed to the KDC of the server principal (when the server principal is in a different realm than that of the client), and any KDC on the cross-realm authentication path. The Kerberos client MUST verify the ticket being used is indeed anonymous before communicating with the server, otherwise, the client's identity may be revealed unintentionally.

この仕様で定義されているメカニズムを使用することにより、クライアントはクライアントのアイデンティティをサーバーに明らかにしませんが、クライアントのアイデンティティがサーバープリンシパルのKDCに明らかになる場合があります(サーバープリンシパルがクライアントの領域とは異なる領域にある場合)、およびCrossRealM認証パス上のKDC。Kerberosのクライアントは、使用されているチケットが実際に匿名であることを確認する必要があります。サーバーと通信する前に、クライアントの身元が意図せずに明らかにされる可能性があります。

In cases where specific server principals must not have access to the client's identity (for example, an anonymous poll service), the KDC can define server-principal-specific policy that ensures any normal service ticket can NEVER be issued to any of these server principals.

特定のサーバープリンシパルがクライアントの身元(たとえば、匿名の投票サービス)にアクセスしてはならない場合、KDCは、通常のサービスチケットをこれらのサーバープリンシパルのいずれにも発行できないことを保証するサーバー特有のポリシーを定義できます。。

If the KDC that issued an anonymous ticket were to maintain records of the association of identities to an anonymous ticket, then someone obtaining such records could breach the anonymity. Additionally, the implementations of most (for now all) KDC's respond to requests at the time that they are received. Traffic analysis on the connection to the KDC will allow an attacker to match client identities to anonymous tickets issued. Because there are plaintext parts of the tickets that are exposed on the wire, such matching by a third-party observer is relatively straightforward. A service that is authenticated by the anonymous principals may be able to infer the identity of the client by examining and linking quasi-static protocol information such as the IP address from which a request is received, or by linking multiple uses of the same anonymous ticket.

匿名のチケットを発行したKDCが、アイデンティティの関連付けの記録を匿名のチケットに維持することであった場合、そのような記録を取得している人は匿名性に違反する可能性があります。さらに、ほとんどの(現時点では)KDCの実装は、受け取った時点でのリクエストに応答します。KDCへの接続に関するトラフィック分析により、攻撃者はクライアントのアイデンティティを発行された匿名のチケットに一致させることができます。ワイヤーに露出しているチケットにはプレーンテキスト部分があるため、サードパーティのオブザーバーとのマッチングは比較的簡単です。匿名のプリンシパルによって認証されたサービスは、リクエストを受信したIPアドレスなどの準静的プロトコル情報を調べてリンクするか、同じ匿名チケットの複数の使用をリンクすることにより、クライアントの身元を推測できる場合があります。

Two mechanisms, the FAST facility with the hide-client-names option in [RFC6113] and the Kerberos5 starttls option [STARTTLS], protect the client identity so that an attacker would never be able to observe the client identity sent to the KDC. Transport or network layer security between the client and the server will help prevent tracking of a particular ticket to link a ticket to a user. In addition, clients can limit how often a ticket is reused to minimize ticket linking.

[RFC6113]のHide-Client-Namesオプションを備えた高速施設とKerberos5 StartTLSオプション[StartTLS] 2つのメカニズムは、攻撃者がKDCに送信されたクライアントIDを遵守できないようにクライアントIDを保護します。クライアントとサーバー間のトランスポートまたはネットワークレイヤーセキュリティは、特定のチケットの追跡を防ぐために、チケットをユーザーにリンクするのに役立ちます。さらに、クライアントはチケットのリンクを最小限に抑えるためにチケットの再利用頻度を制限できます。

The client's real identity is not revealed when the client is authenticated as the anonymous principal. Application servers MAY reject the authentication in order to, for example, prevent information disclosure or as part of Denial of Service (DoS) prevention. Application servers MUST avoid accepting anonymous credentials in situations where they must record the client's identity; for example, when there must be an audit trail.

クライアントの実際のアイデンティティは、クライアントが匿名のプリンシパルとして認証されている場合、明らかにされていません。アプリケーションサーバーは、たとえば、情報の開示を防止したり、サービス拒否(DOS)予防の一環として認証を拒否する場合があります。アプリケーションサーバーは、クライアントの身元を記録する必要がある状況で匿名の資格情報を受け入れることを避ける必要があります。たとえば、監査証跡が必要な場合。

9. Acknowledgements
9. 謝辞

JK Jaganathan helped editing early revisions of this document.

JK Jaganathanは、このドキュメントの早期改訂の編集を支援しました。

Clifford Neuman contributed the core notions of this document.

Clifford Neumanは、この文書の核となる概念に貢献しました。

Ken Raeburn reviewed the document and provided suggestions for improvements.

Ken Raeburnはドキュメントをレビューし、改善のための提案を提供しました。

Martin Rex wrote the text for GSS-API considerations.

Martin Rexは、GSS-APIの考慮事項のテキストを書きました。

Nicolas Williams reviewed the GSS-API considerations section and suggested ideas for improvements.

ニコラス・ウィリアムズは、GSS-APIの考慮事項セクションをレビューし、改善のためのアイデアを提案しました。

Sam Hartman and Nicolas Williams were great champions of this work.

サム・ハートマンとニコラス・ウィリアムズは、この作品の素晴らしいチャンピオンでした。

Miguel Garcia and Phillip Hallam-Baker reviewed the document and provided helpful suggestions.

ミゲル・ガルシアとフィリップ・ハラム・ベーカーはこの文書をレビューし、有益な提案を提供しました。

In addition, the following individuals made significant contributions: Jeffrey Altman, Tom Yu, Chaskiel M Grundman, Love Hornquist Astrand, Jeffrey Hutzelman, and Olga Kornievskaia.

さらに、次の個人が重要な貢献をしました:ジェフリー・アルトマン、トム・ユ、チャスキエル・M・グルンドマン、ラブ・ホーンキスト・アストランド、ジェフリー・フッツェルマン、オルガ・コルニエフスカイア。

10. IANA Considerations
10. IANAの考慮事項

This document defines a new 'anonymous' Kerberos well-known name and a new 'anonymous' Kerberos well-known realm based on [RFC6111]. IANA has added these two values to the Kerberos naming registries that are created in [RFC6111].

このドキュメントは、[RFC6111]に基づいた新しい「匿名」Kerberosの有名な名前と新しい「匿名」Kerberosの有名な領域を定義しています。IANAは、[RFC6111]で作成されたKerberosネーミングレジストリにこれら2つの値を追加しました。

11. References
11. 参考文献
11.1. Normative References
11.1. 引用文献

[ASAX34] American Standards Institute, "American Standard Code for Information Interchange", ASA X3.4-1963, June 1963.

[Asax34] American Standards Institute、「American Standard Code for Information Interchange」、ASA X3.4-1963、1963年6月。

[RFC1964] Linn, J., "The Kerberos Version 5 GSS-API Mechanism", RFC 1964, June 1996.

[RFC1964] Linn、J。、「Kerberosバージョン5 GSS-APIメカニズム」、RFC 1964、1996年6月。

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するためのキーワード」、BCP 14、RFC 2119、1997年3月。

[RFC2743] Linn, J., "Generic Security Service Application Program Interface Version 2, Update 1", RFC 2743, January 2000.

[RFC2743] Linn、J。、「Generic Security Service Application Program Interfaceバージョン2、Update 1」、RFC 2743、2000年1月。

[RFC3961] Raeburn, K., "Encryption and Checksum Specifications for Kerberos 5", RFC 3961, February 2005.

[RFC3961] Raeburn、K。、「Kerberos 5の暗号化とチェックサム仕様」、RFC 3961、2005年2月。

[RFC4120] Neuman, C., Yu, T., Hartman, S., and K. Raeburn, "The Kerberos Network Authentication Service (V5)", RFC 4120, July 2005.

[RFC4120] Neuman、C.、Yu、T.、Hartman、S。、およびK. Raeburn、「The Kerberos Network Authentication Service(V5)」、RFC 4120、2005年7月。

[RFC4556] Zhu, L. and B. Tung, "Public Key Cryptography for Initial Authentication in Kerberos (PKINIT)", RFC 4556, June 2006.

[RFC4556] Zhu、L。およびB. Tung、「Kerberos(Pkinit)の初期認証のための公開キー暗号」、RFC 4556、2006年6月。

[RFC5652] Housley, R., "Cryptographic Message Syntax (CMS)", STD 70, RFC 5652, September 2009.

[RFC5652] Housley、R。、「暗号化メッセージ構文(CMS)」、STD 70、RFC 5652、2009年9月。

[RFC6111] Zhu, L., "Additional Kerberos Naming Constraints", RFC 6111, April 2011.

[RFC6111] Zhu、L。、「追加のKerberosの命名制約」、RFC 6111、2011年4月。

[X.680] "Abstract Syntax Notation One (ASN.1): Specification of Basic Notation", ITU-T Recommendation X.680: ISO/IEC International Standard 8824-1:1998, 1997.

[X.680]「要約構文表記1(ASN.1):基本表記の仕様」、ITU-T推奨X.680:ISO/IEC International Standard 8824-1:1998、1997。

[X.690] "ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)", ITU-T Recommendation X.690 ISO/IEC International Standard 8825-1:1998, 1997.

[X.690] "ASN.1エンコーディングルール:基本エンコードルール(BER)、標準エンコードルール(CER)および識別エンコードルール(der)の仕様"、ITU-T推奨X.690 ISO/IEC International Standard 8825-1:1998、1997。

11.2. Informative References
11.2. 参考引用

[RFC6113] Hartman, S. and L. Zhu, "A Generalized Framework for Kerberos Pre-Authentication", RFC 6113, April 2011.

[RFC6113] Hartman、S。およびL. Zhu、「Kerberos Pre-Authenticationの一般化されたフレームワーク」、RFC 6113、2011年4月。

[STARTTLS] Josefsson, S., "Using Kerberos V5 over the Transport Layer Security (TLS) protocol", Work in Progress, August 2010.

[StartTls] Josefsson、S。、「輸送層セキュリティ(TLS)プロトコルでKerberos V5を使用」、2010年8月の作業。

Authors' Addresses

著者のアドレス

Larry Zhu Microsoft Corporation One Microsoft Way Redmond, WA 98052 US

Larry Zhu Microsoft Corporation One Microsoft Way Redmond、WA 98052 US

   EMail: larry.zhu@microsoft.com
        

Paul Leach Microsoft Corporation One Microsoft Way Redmond, WA 98052 US

Paul Leach Microsoft Corporation One Microsoft Way Redmond、WA 98052 US

   EMail: paulle@microsoft.com
        

Sam Hartman Painless Security

サム・ハートマンの痛みのないセキュリティ

   EMail: hartmans-ietf@mit.edu