RFC4556 日本語訳

4556 Public Key Cryptography for Initial Authentication in Kerberos(PKINIT). L. Zhu, B. Tung. June 2006. (Format: TXT=100339 bytes) (Status: PROPOSED STANDARD)
プログラムでの自動翻訳です。
英語原文

Network Working Group                                             L. Zhu
Request for Comments: 4556                         Microsoft Corporation
Category: Standards Track                                        B. Tung
                                                   Aerospace Corporation
                                                               June 2006

Network Working Group L. Zhu Request for Comments: 4556 Microsoft Corporation Category: Standards Track B. Tung Aerospace Corporation June 2006

                      Public Key Cryptography for
              Initial Authentication in Kerberos (PKINIT)

Public Key Cryptography for Initial Authentication in Kerberos (PKINIT)

Status of This Memo

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

Copyright Notice

Copyright Notice

   Copyright (C) The Internet Society (2006).

Copyright (C) The Internet Society (2006).

Abstract

Abstract

   This document describes protocol extensions (hereafter called PKINIT)
   to the Kerberos protocol specification.  These extensions provide a
   method for integrating public key cryptography into the initial
   authentication exchange, by using asymmetric-key signature and/or
   encryption algorithms in pre-authentication data fields.

This document describes protocol extensions (hereafter called PKINIT) to the Kerberos protocol specification. These extensions provide a method for integrating public key cryptography into the initial authentication exchange, by using asymmetric-key signature and/or encryption algorithms in pre-authentication data fields.

Table of Contents

Table of Contents

   1. Introduction ....................................................2
   2. Conventions Used in This Document ...............................4
   3. Extensions ......................................................5
      3.1. Definitions, Requirements, and Constants ...................6
           3.1.1. Required Algorithms .................................6
           3.1.2. Recommended Algorithms ..............................6
           3.1.3. Defined Message and Encryption Types ................7
           3.1.4. Kerberos Encryption Types Defined for CMS
                  Algorithm Identifiers ...............................8
      3.2. PKINIT Pre-authentication Syntax and Use ...................9
           3.2.1. Generation of Client Request ........................9
           3.2.2. Receipt of Client Request ..........................14
           3.2.3. Generation of KDC Reply ............................18
                  3.2.3.1. Using Diffie-Hellman Key Exchange .........21
                  3.2.3.2. Using Public Key Encryption ...............23

1. Introduction ....................................................2 2. Conventions Used in This Document ...............................4 3. Extensions ......................................................5 3.1. Definitions, Requirements, and Constants ...................6 3.1.1. Required Algorithms .................................6 3.1.2. Recommended Algorithms ..............................6 3.1.3. Defined Message and Encryption Types ................7 3.1.4. Kerberos Encryption Types Defined for CMS Algorithm Identifiers ...............................8 3.2. PKINIT Pre-authentication Syntax and Use ...................9 3.2.1. Generation of Client Request ........................9 3.2.2. Receipt of Client Request ..........................14 3.2.3. Generation of KDC Reply ............................18 3.2.3.1. Using Diffie-Hellman Key Exchange .........21 3.2.3.2. Using Public Key Encryption ...............23

Zhu & Tung                  Standards Track                     [Page 1]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 1] RFC 4556 PKINIT June 2006

           3.2.4. Receipt of KDC Reply ...............................25
      3.3. Interoperability Requirements .............................26
      3.4. KDC Indication of PKINIT Support ..........................27
   4. Security Considerations ........................................27
   5. Acknowledgements ...............................................30
   6. References .....................................................30
      6.1. Normative References ......................................30
      6.2. Informative References ....................................32
   Appendix A.  PKINIT ASN.1 Module ..................................33
   Appendix B.  Test Vectors .........................................38
   Appendix C.  Miscellaneous Information about Microsoft Windows
                PKINIT Implementations ...............................40

3.2.4. Receipt of KDC Reply ...............................25 3.3. Interoperability Requirements .............................26 3.4. KDC Indication of PKINIT Support ..........................27 4. Security Considerations ........................................27 5. Acknowledgements ...............................................30 6. References .....................................................30 6.1. Normative References ......................................30 6.2. Informative References ....................................32 Appendix A. PKINIT ASN.1 Module ..................................33 Appendix B. Test Vectors .........................................38 Appendix C. Miscellaneous Information about Microsoft Windows PKINIT Implementations ...............................40

1.  Introduction

1. Introduction

   The Kerberos V5 protocol [RFC4120] involves use of a trusted third
   party known as the Key Distribution Center (KDC) to negotiate shared
   session keys between clients and services and provide mutual
   authentication between them.

The Kerberos V5 protocol [RFC4120] involves use of a trusted third party known as the Key Distribution Center (KDC) to negotiate shared session keys between clients and services and provide mutual authentication between them.

   The corner-stones of Kerberos V5 are the Ticket and the
   Authenticator.  A Ticket encapsulates a symmetric key (the ticket
   session key) in an envelope (a public message) intended for a
   specific service.  The contents of the Ticket are encrypted with a
   symmetric key shared between the service principal and the issuing
   KDC.  The encrypted part of the Ticket contains the client principal
   name, among other items.  An Authenticator is a record that can be
   shown to have been recently generated using the ticket session key in
   the associated Ticket.  The ticket session key is known by the client
   who requested the ticket.  The contents of the Authenticator are
   encrypted with the associated ticket session key.  The encrypted part
   of an Authenticator contains a timestamp and the client principal
   name, among other items.

The corner-stones of Kerberos V5 are the Ticket and the Authenticator. A Ticket encapsulates a symmetric key (the ticket session key) in an envelope (a public message) intended for a specific service. The contents of the Ticket are encrypted with a symmetric key shared between the service principal and the issuing KDC. The encrypted part of the Ticket contains the client principal name, among other items. An Authenticator is a record that can be shown to have been recently generated using the ticket session key in the associated Ticket. The ticket session key is known by the client who requested the ticket. The contents of the Authenticator are encrypted with the associated ticket session key. The encrypted part of an Authenticator contains a timestamp and the client principal name, among other items.

   As shown in Figure 1, below, the Kerberos V5 protocol consists of the
   following message exchanges between the client and the KDC, and the
   client and the application service:

As shown in Figure 1, below, the Kerberos V5 protocol consists of the following message exchanges between the client and the KDC, and the client and the application service:

    - The Authentication Service (AS) Exchange

- The Authentication Service (AS) Exchange

      The client obtains an "initial" ticket from the Kerberos
      authentication server (AS), typically a Ticket Granting Ticket
      (TGT).  The AS-REQ message and the AS-REP message are the request
      and the reply message, respectively, between the client and the
      AS.

The client obtains an "initial" ticket from the Kerberos authentication server (AS), typically a Ticket Granting Ticket (TGT). The AS-REQ message and the AS-REP message are the request and the reply message, respectively, between the client and the AS.

Zhu & Tung                  Standards Track                     [Page 2]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 2] RFC 4556 PKINIT June 2006

    - The Ticket Granting Service (TGS) Exchange

- The Ticket Granting Service (TGS) Exchange

      The client subsequently uses the TGT to authenticate and request a
      service ticket for a particular service, from the Kerberos
      ticket-granting server (TGS).  The TGS-REQ message and the TGS-REP
      message are the request and the reply message respectively between
      the client and the TGS.

The client subsequently uses the TGT to authenticate and request a service ticket for a particular service, from the Kerberos ticket-granting server (TGS). The TGS-REQ message and the TGS-REP message are the request and the reply message respectively between the client and the TGS.

    - The Client/Server Authentication Protocol (AP) Exchange

- The Client/Server Authentication Protocol (AP) Exchange

      The client then makes a request with an AP-REQ message, consisting
      of a service ticket and an authenticator that certifies the
      client's possession of the ticket session key.  The server may
      optionally reply with an AP-REP message.  AP exchanges typically
      negotiate session-specific symmetric keys.

The client then makes a request with an AP-REQ message, consisting of a service ticket and an authenticator that certifies the client's possession of the ticket session key. The server may optionally reply with an AP-REP message. AP exchanges typically negotiate session-specific symmetric keys.

   Usually, the AS and TGS are integrated in a single device also known
   as the KDC.

Usually, the AS and TGS are integrated in a single device also known as the KDC.

                          +--------------+
               +--------->|  KDC         |
       AS-REQ /   +-------|              |
             /   /        +--------------+
            /   /          ^           |
           /    |AS-REP   /            |
          |     |        / TGS-REQ     + TGS-REP
          |     |       /             /
          |     |      /             /
          |     |     /   +---------+
          |     |    /   /
          |     |   /   /
          |     |  /   /
          |     v /   v
         ++-------+------+             +-----------------+
         |  Client       +------------>|  Application    |
         |               |    AP-REQ   |  Server         |
         |               |<------------|                 |
         +---------------+    AP-REP   +-----------------+

+--------------+ +--------->| KDC | AS-REQ / +-------| | / / +--------------+ / / ^ | / |AS-REP / | | | / TGS-REQ + TGS-REP | | / / | | / / | | / +---------+ | | / / | | / / | | / / | v / v ++-------+------+ +-----------------+ | Client +------------>| Application | | | AP-REQ | Server | | |<------------| | +---------------+ AP-REP +-----------------+

       Figure 1:  The Message Exchanges in the Kerberos V5 Protocol

Figure 1: The Message Exchanges in the Kerberos V5 Protocol

   In the AS exchange, the KDC reply contains the ticket session key,
   among other items, that is encrypted using a key (the AS reply key)
   shared between the client and the KDC.  The AS reply key is typically
   derived from the client's password for human users.  Therefore, for
   human users, the attack resistance strength of the Kerberos protocol
   is no stronger than the strength of their passwords.

In the AS exchange, the KDC reply contains the ticket session key, among other items, that is encrypted using a key (the AS reply key) shared between the client and the KDC. The AS reply key is typically derived from the client's password for human users. Therefore, for human users, the attack resistance strength of the Kerberos protocol is no stronger than the strength of their passwords.

Zhu & Tung                  Standards Track                     [Page 3]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 3] RFC 4556 PKINIT June 2006

   The use of asymmetric cryptography in the form of X.509 certificates
   [RFC3280] is popular for facilitating data origin authentication and
   perfect secrecy.  An established Public Key Infrastructure (PKI)
   provides key management and key distribution mechanisms that can be
   used to establish authentication and secure communication.  Adding
   public-key cryptography to Kerberos provides a nice congruence to
   public-key protocols, obviates the human users' burden to manage
   strong passwords, and allows Kerberized applications to take
   advantage of existing key services and identity management.

The use of asymmetric cryptography in the form of X.509 certificates [RFC3280] is popular for facilitating data origin authentication and perfect secrecy. An established Public Key Infrastructure (PKI) provides key management and key distribution mechanisms that can be used to establish authentication and secure communication. Adding public-key cryptography to Kerberos provides a nice congruence to public-key protocols, obviates the human users' burden to manage strong passwords, and allows Kerberized applications to take advantage of existing key services and identity management.

   The advantage afforded by the Kerberos TGT is that the client exposes
   his long-term secrets only once.  The TGT and its associated session
   key can then be used for any subsequent service ticket requests.  One
   result of this is that all further authentication is independent of
   the method by which the initial authentication was performed.
   Consequently, initial authentication provides a convenient place to
   integrate public-key cryptography into Kerberos authentication.  In
   addition, the use of symmetric cryptography after the initial
   exchange is preferred for performance.

The advantage afforded by the Kerberos TGT is that the client exposes his long-term secrets only once. The TGT and its associated session key can then be used for any subsequent service ticket requests. One result of this is that all further authentication is independent of the method by which the initial authentication was performed. Consequently, initial authentication provides a convenient place to integrate public-key cryptography into Kerberos authentication. In addition, the use of symmetric cryptography after the initial exchange is preferred for performance.

   This document describes the methods and data formats using which the
   client and the KDC can use public and private key pairs to mutually
   authenticate in the AS exchange and negotiate the AS reply key, known
   only by the client and the KDC, to encrypt the AS-REP sent by the
   KDC.

This document describes the methods and data formats using which the client and the KDC can use public and private key pairs to mutually authenticate in the AS exchange and negotiate the AS reply key, known only by the client and the KDC, to encrypt the AS-REP sent by the KDC.

2.  Conventions Used in This Document

2. Conventions Used in This Document

   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].

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].

   In this protocol, both the client and the KDC have a public-private
   key pair in order to prove their identities to each other over the
   open network.  The term "signature key" is used to refer to the
   private key of the key pair being used.

In this protocol, both the client and the KDC have a public-private key pair in order to prove their identities to each other over the open network. The term "signature key" is used to refer to the private key of the key pair being used.

   The encryption key used to encrypt the enc-part field of the KDC-REP
   in the AS-REP [RFC4120] is referred to as the AS reply key.

The encryption key used to encrypt the enc-part field of the KDC-REP in the AS-REP [RFC4120] is referred to as the AS reply key.

   An empty sequence in an optional field can be either included or
   omitted: both encodings are permitted and considered equivalent.

An empty sequence in an optional field can be either included or omitted: both encodings are permitted and considered equivalent.

   The term "Modular Exponential Diffie-Hellman" is used to refer to the
   Diffie-Hellman key exchange, as described in [RFC2631], in order to
   differentiate it from other equivalent representations of the same
   key agreement algorithm.

The term "Modular Exponential Diffie-Hellman" is used to refer to the Diffie-Hellman key exchange, as described in [RFC2631], in order to differentiate it from other equivalent representations of the same key agreement algorithm.

Zhu & Tung                  Standards Track                     [Page 4]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 4] RFC 4556 PKINIT June 2006

3.  Extensions

3. Extensions

   This section describes extensions to [RFC4120] for supporting the use
   of public-key cryptography in the initial request for a ticket.

This section describes extensions to [RFC4120] for supporting the use of public-key cryptography in the initial request for a ticket.

   Briefly, this document defines the following extensions to [RFC4120]:

Briefly, this document defines the following extensions to [RFC4120]:

   1. The client indicates the use of public-key authentication by
      including a special preauthenticator in the initial request.  This
      preauthenticator contains the client's public-key data and a
      signature.

1. The client indicates the use of public-key authentication by including a special preauthenticator in the initial request. This preauthenticator contains the client's public-key data and a signature.

   2. The KDC tests the client's request against its authentication
      policy and trusted Certification Authorities (CAs).

2. The KDC tests the client's request against its authentication policy and trusted Certification Authorities (CAs).

   3. If the request passes the verification tests, the KDC replies as
      usual, but the reply is encrypted using either:

3. If the request passes the verification tests, the KDC replies as usual, but the reply is encrypted using either:

      a. a key generated through a Diffie-Hellman (DH) key exchange
         [RFC2631] [IEEE1363] with the client, signed using the KDC's
         signature key; or

a. a key generated through a Diffie-Hellman (DH) key exchange [RFC2631] [IEEE1363] with the client, signed using the KDC's signature key; or

      b. a symmetric encryption key, signed using the KDC's signature
         key and encrypted using the client's public key.

b. a symmetric encryption key, signed using the KDC's signature key and encrypted using the client's public key.

      Any keying material required by the client to obtain the
      encryption key for decrypting the KDC reply is returned in a pre-
      authentication field accompanying the usual reply.

Any keying material required by the client to obtain the encryption key for decrypting the KDC reply is returned in a pre- authentication field accompanying the usual reply.

   4. The client validates the KDC's signature, obtains the encryption
      key, decrypts the reply, and then proceeds as usual.

4. The client validates the KDC's signature, obtains the encryption key, decrypts the reply, and then proceeds as usual.

   Section 3.1 of this document enumerates the required algorithms and
   necessary extension message types.  Section 3.2 describes the
   extension messages in greater detail.

Section 3.1 of this document enumerates the required algorithms and necessary extension message types. Section 3.2 describes the extension messages in greater detail.

Zhu & Tung                  Standards Track                     [Page 5]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 5] RFC 4556 PKINIT June 2006

3.1.  Definitions, Requirements, and Constants

3.1. Definitions, Requirements, and Constants

3.1.1.  Required Algorithms

3.1.1. Required Algorithms

   All PKINIT implementations MUST support the following algorithms:

All PKINIT implementations MUST support the following algorithms:

   o  AS reply key enctypes: aes128-cts-hmac-sha1-96 and aes256-cts-
      hmac-sha1-96 [RFC3962].

o AS reply key enctypes: aes128-cts-hmac-sha1-96 and aes256-cts- hmac-sha1-96 [RFC3962].

   o  Signature algorithm: sha-1WithRSAEncryption [RFC3370].

o Signature algorithm: sha-1WithRSAEncryption [RFC3370].

   o  AS reply key delivery method: the Diffie-Hellman key delivery
      method, as described in Section 3.2.3.1.

o AS reply key delivery method: the Diffie-Hellman key delivery method, as described in Section 3.2.3.1.

   In addition, implementations of this specification MUST be capable of
   processing the Extended Key Usage (EKU) extension and the id-pkinit-
   san (as defined in Section 3.2.2) otherName of the Subject
   Alternative Name (SAN) extension in X.509 certificates [RFC3280].

In addition, implementations of this specification MUST be capable of processing the Extended Key Usage (EKU) extension and the id-pkinit- san (as defined in Section 3.2.2) otherName of the Subject Alternative Name (SAN) extension in X.509 certificates [RFC3280].

3.1.2.  Recommended Algorithms

3.1.2. Recommended Algorithms

   All PKINIT implementations SHOULD support the following algorithm:

All PKINIT implementations SHOULD support the following algorithm:

   o  AS reply key delivery method: the public key encryption key
      delivery method, as described in Section 3.2.3.2.

o AS reply key delivery method: the public key encryption key delivery method, as described in Section 3.2.3.2.

   For implementations that support the public key encryption key
   delivery method, the following algorithms MUST be supported:

For implementations that support the public key encryption key delivery method, the following algorithms MUST be supported:

   a) Key transport algorithms identified in the keyEncryptionAlgorithm
      field of the type KeyTransRecipientInfo [RFC3852] for encrypting
      the temporary key in the encryptedKey field [RFC3852] with a
      public key, as described in Section 3.2.3.2: rsaEncryption (this
      is the RSAES-PKCS1-v1_5 encryption scheme) [RFC3370] [RFC3447].

a) Key transport algorithms identified in the keyEncryptionAlgorithm field of the type KeyTransRecipientInfo [RFC3852] for encrypting the temporary key in the encryptedKey field [RFC3852] with a public key, as described in Section 3.2.3.2: rsaEncryption (this is the RSAES-PKCS1-v1_5 encryption scheme) [RFC3370] [RFC3447].

   b) Content encryption algorithms identified in the
      contentEncryptionAlgorithm field of the type EncryptedContentInfo
      [RFC3852] for encrypting the AS reply key with the temporary key
      contained in the encryptedKey field of the type
      KeyTransRecipientInfo [RFC3852], as described in Section 3.2.3.2:
      des-ede3-cbc (three-key 3DES, CBC mode) [RFC3370].

b) Content encryption algorithms identified in the contentEncryptionAlgorithm field of the type EncryptedContentInfo [RFC3852] for encrypting the AS reply key with the temporary key contained in the encryptedKey field of the type KeyTransRecipientInfo [RFC3852], as described in Section 3.2.3.2: des-ede3-cbc (three-key 3DES, CBC mode) [RFC3370].

Zhu & Tung                  Standards Track                     [Page 6]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 6] RFC 4556 PKINIT June 2006

3.1.3.  Defined Message and Encryption Types

3.1.3. Defined Message and Encryption Types

   PKINIT makes use of the following new pre-authentication types:

PKINIT makes use of the following new pre-authentication types:

       PA_PK_AS_REQ                                 16
       PA_PK_AS_REP                                 17

PA_PK_AS_REQ 16 PA_PK_AS_REP 17

   PKINIT also makes use of the following new authorization data type:

PKINIT also makes use of the following new authorization data type:

       AD_INITIAL_VERIFIED_CAS                       9

AD_INITIAL_VERIFIED_CAS 9

   PKINIT introduces the following new error codes:

PKINIT introduces the following new error codes:

       KDC_ERR_CLIENT_NOT_TRUSTED                   62
       KDC_ERR_INVALID_SIG                          64
       KDC_ERR_DH_KEY_PARAMETERS_NOT_ACCEPTED       65
       KDC_ERR_CANT_VERIFY_CERTIFICATE              70
       KDC_ERR_INVALID_CERTIFICATE                  71
       KDC_ERR_REVOKED_CERTIFICATE                  72
       KDC_ERR_REVOCATION_STATUS_UNKNOWN            73
       KDC_ERR_CLIENT_NAME_MISMATCH                 75
       KDC_ERR_INCONSISTENT_KEY_PURPOSE             77
       KDC_ERR_DIGEST_IN_CERT_NOT_ACCEPTED          78
       KDC_ERR_PA_CHECKSUM_MUST_BE_INCLUDED         79
       KDC_ERR_DIGEST_IN_SIGNED_DATA_NOT_ACCEPTED   80
       KDC_ERR_PUBLIC_KEY_ENCRYPTION_NOT_SUPPORTED  81

KDC_ERR_CLIENT_NOT_TRUSTED 62 KDC_ERR_INVALID_SIG 64 KDC_ERR_DH_KEY_PARAMETERS_NOT_ACCEPTED 65 KDC_ERR_CANT_VERIFY_CERTIFICATE 70 KDC_ERR_INVALID_CERTIFICATE 71 KDC_ERR_REVOKED_CERTIFICATE 72 KDC_ERR_REVOCATION_STATUS_UNKNOWN 73 KDC_ERR_CLIENT_NAME_MISMATCH 75 KDC_ERR_INCONSISTENT_KEY_PURPOSE 77 KDC_ERR_DIGEST_IN_CERT_NOT_ACCEPTED 78 KDC_ERR_PA_CHECKSUM_MUST_BE_INCLUDED 79 KDC_ERR_DIGEST_IN_SIGNED_DATA_NOT_ACCEPTED 80 KDC_ERR_PUBLIC_KEY_ENCRYPTION_NOT_SUPPORTED 81

   PKINIT uses the following typed data types for errors:

PKINIT uses the following typed data types for errors:

       TD_TRUSTED_CERTIFIERS                       104
       TD_INVALID_CERTIFICATES                     105
       TD_DH_PARAMETERS                            109

TD_TRUSTED_CERTIFIERS 104 TD_INVALID_CERTIFICATES 105 TD_DH_PARAMETERS 109

   The ASN.1 module for all structures defined in this document (plus
   IMPORT statements for all imported structures) is given in Appendix
   A.

The ASN.1 module for all structures defined in this document (plus IMPORT statements for all imported structures) is given in Appendix A.

   All structures defined in or imported into this document MUST be
   encoded using Distinguished Encoding Rules (DER) [X680] [X690]
   (unless otherwise noted).  All data structures carried in OCTET
   STRINGs MUST be encoded according to the rules specified in the
   specifications defining each data structure; a reference to the
   appropriate specification is provided for each data structure.

All structures defined in or imported into this document MUST be encoded using Distinguished Encoding Rules (DER) [X680] [X690] (unless otherwise noted). All data structures carried in OCTET STRINGs MUST be encoded according to the rules specified in the specifications defining each data structure; a reference to the appropriate specification is provided for each data structure.

Zhu & Tung                  Standards Track                     [Page 7]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 7] RFC 4556 PKINIT June 2006

   Interoperability note: Some implementations may not be able to decode
   wrapped Cryptographic Message Syntax (CMS) [RFC3852] objects encoded
   with BER; specifically, they may not be able to decode indefinite-
   length encodings.  To maximize interoperability, implementers SHOULD
   encode CMS objects used in PKINIT with DER.

Interoperability note: Some implementations may not be able to decode wrapped Cryptographic Message Syntax (CMS) [RFC3852] objects encoded with BER; specifically, they may not be able to decode indefinite- length encodings. To maximize interoperability, implementers SHOULD encode CMS objects used in PKINIT with DER.

3.1.4.  Kerberos Encryption Types Defined for CMS Algorithm Identifiers

3.1.4. Kerberos Encryption Types Defined for CMS Algorithm Identifiers

   PKINIT defines the following Kerberos encryption type numbers
   [RFC3961], which can be used in the etype field of the AS-REQ
   [RFC4120] message to indicate to the KDC the client's acceptance of
   the corresponding algorithms (including key transport algorithms
   [RFC3370], content encryption algorithms [RFC3370], and signature
   algorithms) for use with Cryptographic Message Syntax (CMS) [RFC3852]
   [RFC3370].

PKINIT defines the following Kerberos encryption type numbers [RFC3961], which can be used in the etype field of the AS-REQ [RFC4120] message to indicate to the KDC the client's acceptance of the corresponding algorithms (including key transport algorithms [RFC3370], content encryption algorithms [RFC3370], and signature algorithms) for use with Cryptographic Message Syntax (CMS) [RFC3852] [RFC3370].

   Per [RFC4120], the encryption types in the etype field are in the
   decreasing preference order of the client.  Note that there is no
   significance in the relative order between any two of different types
   of algorithms: key transport algorithms, content encryption
   algorithms, and signature algorithms.

Per [RFC4120], the encryption types in the etype field are in the decreasing preference order of the client. Note that there is no significance in the relative order between any two of different types of algorithms: key transport algorithms, content encryption algorithms, and signature algorithms.

   The presence of each of these encryption types in the etype field is
   equivalent to the presence of the corresponding algorithm Object
   Identifier (OID) in the supportedCMSTypes field as described in
   Section 3.2.1.  And the preference order expressed in the
   supportedCMSTypes field would override the preference order listed in
   the etype field.

The presence of each of these encryption types in the etype field is equivalent to the presence of the corresponding algorithm Object Identifier (OID) in the supportedCMSTypes field as described in Section 3.2.1. And the preference order expressed in the supportedCMSTypes field would override the preference order listed in the etype field.

    Kerberos Encryption Type Name  Num  Corresponding Algorithm OID
    ============================== === ===============================
    id-dsa-with-sha1-CmsOID         9  id-dsa-with-sha1 [RFC3370]
    md5WithRSAEncryption-CmsOID    10  md5WithRSAEncryption [RFC3370]
    sha-1WithRSAEncryption-CmsOID  11  sha-1WithRSAEncryption [RFC3370]
    rc2-cbc-EnvOID                 12  rc2-cbc [RFC3370]
    rsaEncryption-EnvOID           13  rsaEncryption [RFC3447][RFC3370]
    id-RSAES-OAEP-EnvOID           14  id-RSAES-OAEP [RFC3447][RFC3560]
    des-ede3-cbc-EnvOID            15  des-ede3-cbc [RFC3370]

Kerberos Encryption Type Name Num Corresponding Algorithm OID ============================== === =============================== id-dsa-with-sha1-CmsOID 9 id-dsa-with-sha1 [RFC3370] md5WithRSAEncryption-CmsOID 10 md5WithRSAEncryption [RFC3370] sha-1WithRSAEncryption-CmsOID 11 sha-1WithRSAEncryption [RFC3370] rc2-cbc-EnvOID 12 rc2-cbc [RFC3370] rsaEncryption-EnvOID 13 rsaEncryption [RFC3447][RFC3370] id-RSAES-OAEP-EnvOID 14 id-RSAES-OAEP [RFC3447][RFC3560] des-ede3-cbc-EnvOID 15 des-ede3-cbc [RFC3370]

Zhu & Tung                  Standards Track                     [Page 8]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 8] RFC 4556 PKINIT June 2006

   The above encryption type numbers are used only to indicate support
   for the use of the corresponding algorithms in PKINIT; they do not
   correspond to actual Kerberos encryption types [RFC3961] and MUST NOT
   be used in the etype field of the Kerberos EncryptedData type
   [RFC4120].  The practice of assigning Kerberos encryption type
   numbers to indicate support for CMS algorithms is considered
   deprecated, and new numbers should not be assigned for this purpose.
   Instead, the supportedCMSTypes field should be used to identify the
   algorithms supported by the client and the preference order of the
   client.

The above encryption type numbers are used only to indicate support for the use of the corresponding algorithms in PKINIT; they do not correspond to actual Kerberos encryption types [RFC3961] and MUST NOT be used in the etype field of the Kerberos EncryptedData type [RFC4120]. The practice of assigning Kerberos encryption type numbers to indicate support for CMS algorithms is considered deprecated, and new numbers should not be assigned for this purpose. Instead, the supportedCMSTypes field should be used to identify the algorithms supported by the client and the preference order of the client.

   For maximum interoperability, however, PKINIT clients wishing to
   indicate to the KDC the support for one or more of the algorithms
   listed above SHOULD include the corresponding encryption type
   number(s) in the etype field of the AS-REQ.

For maximum interoperability, however, PKINIT clients wishing to indicate to the KDC the support for one or more of the algorithms listed above SHOULD include the corresponding encryption type number(s) in the etype field of the AS-REQ.

3.2.  PKINIT Pre-authentication Syntax and Use

3.2. PKINIT Pre-authentication Syntax and Use

   This section defines the syntax and use of the various pre-
   authentication fields employed by PKINIT.

This section defines the syntax and use of the various pre- authentication fields employed by PKINIT.

3.2.1.  Generation of Client Request

3.2.1. Generation of Client Request

   The initial authentication request (AS-REQ) is sent as per [RFC4120];
   in addition, a pre-authentication data element, whose padata-type is
   PA_PK_AS_REQ and whose padata-value contains the DER encoding of the
   type PA-PK-AS-REQ, is included.

The initial authentication request (AS-REQ) is sent as per [RFC4120]; in addition, a pre-authentication data element, whose padata-type is PA_PK_AS_REQ and whose padata-value contains the DER encoding of the type PA-PK-AS-REQ, is included.

       PA-PK-AS-REQ ::= SEQUENCE {
          signedAuthPack          [0] IMPLICIT OCTET STRING,
                   -- Contains a CMS type ContentInfo encoded
                   -- according to [RFC3852].
                   -- The contentType field of the type ContentInfo
                   -- is id-signedData (1.2.840.113549.1.7.2),
                   -- and the content field is a SignedData.
                   -- The eContentType field for the type SignedData is
                   -- id-pkinit-authData (1.3.6.1.5.2.3.1), and the
                   -- eContent field contains the DER encoding of the
                   -- type AuthPack.
                   -- AuthPack is defined below.
          trustedCertifiers       [1] SEQUENCE OF
                      ExternalPrincipalIdentifier OPTIONAL,
                   -- Contains a list of CAs, trusted by the client,
                   -- that can be used to certify the KDC.
                   -- Each ExternalPrincipalIdentifier identifies a CA
                   -- or a CA certificate (thereby its public key).
                   -- The information contained in the
                   -- trustedCertifiers SHOULD be used by the KDC as

PA-PK-AS-REQ ::= SEQUENCE { signedAuthPack [0] IMPLICIT OCTET STRING, -- Contains a CMS type ContentInfo encoded -- according to [RFC3852]. -- The contentType field of the type ContentInfo -- is id-signedData (1.2.840.113549.1.7.2), -- and the content field is a SignedData. -- The eContentType field for the type SignedData is -- id-pkinit-authData (1.3.6.1.5.2.3.1), and the -- eContent field contains the DER encoding of the -- type AuthPack. -- AuthPack is defined below. trustedCertifiers [1] SEQUENCE OF ExternalPrincipalIdentifier OPTIONAL, -- Contains a list of CAs, trusted by the client, -- that can be used to certify the KDC. -- Each ExternalPrincipalIdentifier identifies a CA -- or a CA certificate (thereby its public key). -- The information contained in the -- trustedCertifiers SHOULD be used by the KDC as

Zhu & Tung                  Standards Track                     [Page 9]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 9] RFC 4556 PKINIT June 2006

                   -- hints to guide its selection of an appropriate
                   -- certificate chain to return to the client.
          kdcPkId                 [2] IMPLICIT OCTET STRING
                                      OPTIONAL,
                   -- Contains a CMS type SignerIdentifier encoded
                   -- according to [RFC3852].
                   -- Identifies, if present, a particular KDC
                   -- public key that the client already has.
          ...
       }

-- hints to guide its selection of an appropriate -- certificate chain to return to the client. kdcPkId [2] IMPLICIT OCTET STRING OPTIONAL, -- Contains a CMS type SignerIdentifier encoded -- according to [RFC3852]. -- Identifies, if present, a particular KDC -- public key that the client already has. ... }

       DHNonce ::= OCTET STRING

DHNonce ::= OCTET STRING

       ExternalPrincipalIdentifier ::= SEQUENCE {
          subjectName            [0] IMPLICIT OCTET STRING OPTIONAL,
                   -- Contains a PKIX type Name encoded according to
                   -- [RFC3280].
                   -- Identifies the certificate subject by the
                   -- distinguished subject name.
                   -- REQUIRED when there is a distinguished subject
                   -- name present in the certificate.
         issuerAndSerialNumber   [1] IMPLICIT OCTET STRING OPTIONAL,
                   -- Contains a CMS type IssuerAndSerialNumber encoded
                   -- according to [RFC3852].
                   -- Identifies a certificate of the subject.
                   -- REQUIRED for TD-INVALID-CERTIFICATES and
                   -- TD-TRUSTED-CERTIFIERS.
         subjectKeyIdentifier    [2] IMPLICIT OCTET STRING OPTIONAL,
                   -- Identifies the subject's public key by a key
                   -- identifier.  When an X.509 certificate is
                   -- referenced, this key identifier matches the X.509
                   -- subjectKeyIdentifier extension value.  When other
                   -- certificate formats are referenced, the documents
                   -- that specify the certificate format and their use
                   -- with the CMS must include details on matching the
                   -- key identifier to the appropriate certificate
                   -- field.
                   -- RECOMMENDED for TD-TRUSTED-CERTIFIERS.
          ...
       }

ExternalPrincipalIdentifier ::= SEQUENCE { subjectName [0] IMPLICIT OCTET STRING OPTIONAL, -- Contains a PKIX type Name encoded according to -- [RFC3280]. -- Identifies the certificate subject by the -- distinguished subject name. -- REQUIRED when there is a distinguished subject -- name present in the certificate. issuerAndSerialNumber [1] IMPLICIT OCTET STRING OPTIONAL, -- Contains a CMS type IssuerAndSerialNumber encoded -- according to [RFC3852]. -- Identifies a certificate of the subject. -- REQUIRED for TD-INVALID-CERTIFICATES and -- TD-TRUSTED-CERTIFIERS. subjectKeyIdentifier [2] IMPLICIT OCTET STRING OPTIONAL, -- Identifies the subject's public key by a key -- identifier. When an X.509 certificate is -- referenced, this key identifier matches the X.509 -- subjectKeyIdentifier extension value. When other -- certificate formats are referenced, the documents -- that specify the certificate format and their use -- with the CMS must include details on matching the -- key identifier to the appropriate certificate -- field. -- RECOMMENDED for TD-TRUSTED-CERTIFIERS. ... }

       AuthPack ::= SEQUENCE {
          pkAuthenticator         [0] PKAuthenticator,
          clientPublicValue       [1] SubjectPublicKeyInfo OPTIONAL,
                   -- Type SubjectPublicKeyInfo is defined in
                   -- [RFC3280].
                   -- Specifies Diffie-Hellman domain parameters
                   -- and the client's public key value [IEEE1363].

AuthPack ::= SEQUENCE { pkAuthenticator [0] PKAuthenticator, clientPublicValue [1] SubjectPublicKeyInfo OPTIONAL, -- Type SubjectPublicKeyInfo is defined in -- [RFC3280]. -- Specifies Diffie-Hellman domain parameters -- and the client's public key value [IEEE1363].

Zhu & Tung                  Standards Track                    [Page 10]

RFC 4556                         PKINIT                        June 2006

Zhu & Tung Standards Track [Page 10] RFC 4556 PKINIT June 2006

                   -- The DH public key value is encoded as a BIT
                   -- STRING according to [RFC3279].
                   -- This field is present only if the client wishes
                   -- to use the Diffie-Hellman key agreement method.
          supportedCMSTypes       [2] SEQUENCE OF AlgorithmIdentifier
                                      OPTIONAL,
                   -- Type AlgorithmIdentifier is defined in
                   -- [RFC3280].
                   -- List of CMS algorithm [RFC3370] identifiers
                   -- that identify key transport algorithms, or
                   -- content encryption algorithms, or signature
                   -- algorithms supported by the client in order of
                   -- (decreasing) preference.
          clientDHNonce           [3] DHNonce OPTIONAL,
                   -- Present only if the client indicates that it
                   -- wishes to reuse DH keys or to allow the KDC to
                   -- do so (see Section 3.2.3.1).
          ...
       }

-- The DH public key value is encoded as a BIT -- STRING according to [RFC3279]. -- This field is present only if the client wishes -- to use the Diffie-Hellman key agreement method. supportedCMSTypes [2] SEQUENCE OF AlgorithmIdentifier OPTIONAL, -- Type AlgorithmIdentifier is defined in -- [RFC3280]. -- List of CMS algorithm [RFC3370] identifiers -- that identify key transport algorithms, or -- content encryption algorithms, or signature -- algorithms supported by the client in order of -- (decreasing) preference. clientDHNonce [3] DHNonce OPTIONAL, -- Present only if the client indicates that it -- wishes to reuse DH keys or to allow the KDC to -- do so (see Section 3.2.3.1). ... }

       PKAuthenticator ::= SEQUENCE {
          cusec                   [0] INTEGER (0..999999),
          ctime                   [1] KerberosTime,
                   -- cusec and ctime are used as in [RFC4120], for
                   -- replay prevention.
          nonce                   [2] INTEGER (0..4294967295),
                   -- Chosen randomly;  this nonce does not need to
                   -- match with the nonce in the KDC-REQ-BODY.
          paChecksum              [3] OCTET STRING OPTIONAL,
                   -- MUST be present.
                   -- Contains the SHA1 checksum, performed over
                   -- KDC-REQ-BODY.
          ...
       }

PKAuthenticator:、:= 系列キューセック[0]INTEGER(0 .999999)(キューセック、ctimeは[RFC4120]のように使用されています、この--再生防止一回だけ[2]INTEGER(0 .4294967295)--手当たりしだいに選ばれています;一回だけがそうする必要はないので--KDC-REQ-BODY. paChecksum[3]OCTET STRING OPTIONALの一回だけとのマッチ--存在していなければならないというctime[1]KerberosTime)はSHA1チェックサムを含んでいます、実行されて--KDC-REQ-BODY

   The ContentInfo [RFC3852] structure contained in the signedAuthPack
   field of the type PA-PK-AS-REQ is encoded according to [RFC3852] and
   is filled out as follows:

タイプPA-PK-AS-REQのsignedAuthPack分野に保管されていたContentInfo[RFC3852]構造は、[RFC3852]に従ってコード化されて、以下の通り書き込まれます:

   1.  The contentType field of the type ContentInfo is id-signedData
       (as defined in [RFC3852]), and the content field is a SignedData
       (as defined in [RFC3852]).

1. タイプContentInfoのcontentType分野はイド-signedData([RFC3852]で定義されるように)です、そして、満足している分野はSignedData([RFC3852]で定義されるように)です。

Zhu & Tung                  Standards Track                    [Page 11]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[11ページ]。

   2.  The eContentType field for the type SignedData is id-pkinit-
       authData: { iso(1) org(3) dod(6) internet(1) security(5)
       kerberosv5(2) pkinit(3) authData(1) }.  Notes to CMS
       implementers: the signed attribute content-type MUST be present
       in this SignedData instance, and its value is id-pkinit-authData
       according to [RFC3852].

2. タイプSignedDataのためのeContentType分野はイド-pkinit- authDataです: iso(1) org(3) dod(6)インターネット(1)セキュリティ(5)kerberosv5(2) pkinit(3) authData(1)。 CMS implementersへの注意: 署名している属性content typeはこのSignedDataインスタンスで存在していなければなりません、そして、[RFC3852]に従って、値はイド-pkinit-authDataです。

   3.  The eContent field for the type SignedData contains the DER
       encoding of the type AuthPack.

3. タイプSignedDataのためのeContent分野はAuthPackをタイプにコード化するDERを含んでいます。

   4.  The signerInfos field of the type SignedData contains a single
       signerInfo, which contains the signature over the type AuthPack.

4. タイプSignedDataのsignerInfos分野は独身のsignerInfoを含んでいます。(signerInfoはタイプAuthPackでの署名を含みます)。

   5.  The AuthPack structure contains a PKAuthenticator, the client
       public key information, the CMS encryption types supported by the
       client, and a DHNonce.  The pkAuthenticator field certifies to
       the KDC that the client has recent knowledge of the signing key
       that authenticates the client.  The clientPublicValue field
       specifies Diffie-Hellman domain parameters and the client's
       public key value.  The DH public key value is encoded as a BIT
       STRING according to [RFC3279].  The clientPublicValue field is
       present only if the client wishes to use the Diffie-Hellman key
       agreement method.  The supportedCMSTypes field specifies the list
       of CMS algorithm identifiers that are supported by the client in
       order of (decreasing) preference, and can be used to identify a
       signature algorithm or a key transport algorithm [RFC3370] in the
       keyEncryptionAlgorithm field of the type KeyTransRecipientInfo,
       or a content encryption algorithm [RFC3370] in the
       contentEncryptionAlgorithm field of the type EncryptedContentInfo
       [RFC3852] when encrypting the AS reply key as described in
       Section 3.2.3.2.  However, there is no significance in the
       relative order between any two of different types of algorithms:
       key transport algorithms, content encryption algorithms, and
       signature algorithms.  The clientDHNonce field is described later
       in this section.

5. AuthPack構造はPKAuthenticatorを含んでいます、クライアント公開鍵情報、タイプがクライアント、およびDHNonceでサポートしたCMS暗号化。 pkAuthenticator分野は、クライアントにはクライアントを認証する署名キーに関する最近の知識があるのをKDCに公認します。 clientPublicValue分野はディフィー-ヘルマンドメインパラメタとクライアントの公開鍵値を指定します。 [RFC3279]に従って、DH公開鍵価値はBIT STRINGとしてコード化されます。 クライアントがディフィー-ヘルマンの主要な協定メソッドを使用したいと思う場合にだけ、clientPublicValue分野は存在しています。 ASを暗号化するとき、supportedCMSTypes分野は、(減少すること)の好みの順にクライアントによってサポートされるCMSアルゴリズム識別子のリストを指定して、タイプKeyTransRecipientInfoのkeyEncryptionAlgorithm分野で署名アルゴリズムか主要な輸送アルゴリズム[RFC3370]を特定するのに使用できますか、またはセクション3.2.3で.2について説明するとき、タイプEncryptedContentInfo[RFC3852]のcontentEncryptionAlgorithm分野の満足している暗号化アルゴリズム[RFC3370]は主要な状態で返答します。 しかしながら、異なったタイプのどんな2つのアルゴリズムの間にはも、相対オーダに意味が全くありません: 主要な輸送アルゴリズム、満足している暗号化アルゴリズム、および署名アルゴリズムclientDHNonce分野は後でこのセクションで説明されます。

   6.  The ctime field in the PKAuthenticator structure contains the
       current time on the client's host, and the cusec field contains
       the microsecond part of the client's timestamp.  The ctime and
       cusec fields are used together to specify a reasonably accurate
       timestamp [RFC4120].  The nonce field is chosen randomly.  The
       paChecksum field MUST be present and it contains a SHA1 checksum
       that is performed over the KDC-REQ-BODY [RFC4120].  In order to
       ease future migration from the use of SHA1, the paChecksum field
       is made optional syntactically: when the request is extended to
       negotiate hash algorithms, the new client wishing not to use SHA1
       will send the request in the extended message syntax without the
       paChecksum field.  The KDC conforming to this specification MUST

6. PKAuthenticator構造のctime分野はクライアントのホストの上に現在の時間を含んでいます、そして、キューセック分野はクライアントのタイムスタンプのマイクロセカンド部分を含んでいます。 ctimeとキューセック分野は、合理的に正確なタイムスタンプ[RFC4120]を指定するのに一緒に使用されます。 一回だけの分野は手当たりしだいに選ばれています。 paChecksum分野は存在していなければなりません、そして、それはKDC-REQ-BODY[RFC4120]の上で実行されるSHA1チェックサムを含んでいます。 SHA1の使用から将来の移行を緩和するために、シンタクス上paChecksum分野を任意にします: 要求がハッシュアルゴリズムを交渉するために広げられるとき、SHA1を使用したがっていない新しいクライアントはpaChecksum分野なしで拡張メッセージ構文による要求を送るでしょう。 この仕様に従うKDCはそうしなければなりません。

Zhu & Tung                  Standards Track                    [Page 12]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[12ページ]。

       return a KRB-ERROR [RFC4120] message with the code
       KDC_ERR_PA_CHECKSUM_MUST_BE_INCLUDED (see Section 3.2.3).  That
       will allow a new client to retry with SHA1 if allowed by the
       local policy.

PA_CHECKSUM_が__がINCLUDEDであったならそうしなければならないコードKDC_ERR_があるKRB-ERROR[RFC4120]メッセージを返してください(セクション3.2.3を見てください)。 それで、ローカルの方針で許容されていると、新しいクライアントはSHA1と共に再試行できるでしょう。

   7.  The certificates field of the type SignedData contains
       certificates intended to facilitate certification path
       construction, so that the KDC can verify the signature over the
       type AuthPack.  For path validation, these certificates SHOULD be
       sufficient to construct at least one certification path from the
       client certificate to one trust anchor acceptable by the KDC
       [RFC4158].  The client MUST be capable of including such a set of
       certificates if configured to do so.  The certificates field MUST
       NOT contain "root" CA certificates.

7. タイプSignedDataの証明書分野は証明経路工事を容易にすることを意図する証明書を含んでいます、KDCがタイプAuthPackでの署名について確かめることができるように。 経路合法化のために、これらはSHOULDを証明します。クライアント証明書からKDC[RFC4158]が許容できる1人の信頼アンカーまで少なくとも1つの証明経路を構成するには、十分であってください。 そうするために構成されるなら、クライアントは1セットのそのような証明書を含むことができなければなりません。 証明書分野は「根」カリフォルニア証明書を含んではいけません。

   8.  The client's Diffie-Hellman public value (clientPublicValue) is
       included if and only if the client wishes to use the Diffie-
       Hellman key agreement method.  The Diffie-Hellman domain
       parameters [IEEE1363] for the client's public key are specified
       in the algorithm field of the type SubjectPublicKeyInfo
       [RFC3279], and the client's Diffie-Hellman public key value is
       mapped to a subjectPublicKey (a BIT STRING) according to
       [RFC3279].  When using the Diffie-Hellman key agreement method,
       implementations MUST support Oakley 1024-bit Modular Exponential
       (MODP) well-known group 2 [RFC2412] and Oakley 2048-bit MODP
       well-known group 14 [RFC3526] and SHOULD support Oakley 4096-bit
       MODP well-known group 16 [RFC3526].

8. そして、クライアントのディフィー-ヘルマンの公共の値(clientPublicValue)が含まれている、クライアントがディフィーヘルマンキー協定メソッドを使用したいと思う場合にだけ。 クライアントの公開鍵のためのディフィー-ヘルマンドメインパラメタ[IEEE1363]はタイプSubjectPublicKeyInfo[RFC3279]のアルゴリズム分野で指定されます、そして、[RFC3279]に従って、クライアントのディフィー-ヘルマン公開鍵価値はsubjectPublicKey(BIT STRING)に写像されます。 ディフィー-ヘルマンの主要な協定メソッドを使用するとき、実装は、オークリーが1024年のビットのModular Exponential(MODP)よく知られるグループ2[RFC2412]とオークリーの2048年のビットのMODPよく知られるグループ14である[RFC3526]とサポートしなければなりません、そして、SHOULDはオークリーの4096年のビットのMODPがよく知られるグループ16である[RFC3526]とサポートします。

       The Diffie-Hellman field size should be chosen so as to provide
       sufficient cryptographic security [RFC3766].

ディフィー-ヘルマン分野サイズは、十分な暗号のセキュリティ[RFC3766]を提供するために選ばれるべきです。

       When MODP Diffie-Hellman is used, the exponents should have at
       least twice as many bits as the symmetric keys that will be
       derived from them [ODL99].

MODPディフィー-ヘルマンが使用されているとき、解説者には、少なくともそれら[ODL99]から得られる対称鍵の2倍のビットがあるはずです。

   9.  The client may wish to reuse DH keys or to allow the KDC to do so
       (see Section 3.2.3.1).  If so, then the client includes the
       clientDHNonce field.  This nonce string MUST be as long as the
       longest key length of the symmetric key types that the client
       supports.  This nonce MUST be chosen randomly.

9. セクション3.2を見てください。クライアントが、DHキーを再利用したいか、またはKDCがそうするのを許したがっているかもしれない、(.3 .1)。 そうだとすれば、そして、クライアントはclientDHNonce分野を入れます。 この一回だけのストリングはクライアントがサポートする対称鍵タイプの最も長いキー長と同じくらい長いに違いありません。 手当たりしだいにこの一回だけを選ばなければなりません。

   The ExternalPrincipalIdentifier structure is used in this document to
   identify the subject's public key thereby the subject principal.
   This structure is filled out as follows:

ExternalPrincipalIdentifier構造は対象の公開鍵を特定するのが本書では使用されます。その結果、対象主体。 この構造は以下の通り書き込まれます:

   1.  The subjectName field contains a PKIX type Name encoded according
       to [RFC3280].  This field identifies the certificate subject by
       the distinguished subject name.  This field is REQUIRED when

1. subjectName分野は[RFC3280]に従ってコード化されたPKIXタイプNameを含んでいます。 この分野は顕著な対象の名前の証明書対象を特定します。 この分野がREQUIREDである、いつ

Zhu & Tung                  Standards Track                    [Page 13]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[13ページ]。

       there is a distinguished subject name present in the certificate
       being used.

使用される証明書の現在の顕著な対象の名前があります。

   2.  The issuerAndSerialNumber field contains a CMS type
       IssuerAndSerialNumber encoded according to [RFC3852].  This field
       identifies a certificate of the subject.  This field is REQUIRED
       for TD-INVALID-CERTIFICATES and TD-TRUSTED-CERTIFIERS (both
       structures are defined in Section 3.2.2).

2. issuerAndSerialNumber分野は[RFC3852]に従ってタイプIssuerAndSerialNumberがコード化したCMSを含んでいます。 この分野は対象の証明書を特定します。 この分野はTD-INVALID-CERTIFICATESとTD-TRUSTED-CERTIFIERSのためのREQUIRED(両方の構造はセクション3.2.2で定義される)です。

   3.  The subjectKeyIdentifier [RFC3852] field identifies the subject's
       public key by a key identifier.  When an X.509 certificate is
       referenced, this key identifier matches the X.509
       subjectKeyIdentifier extension value.  When other certificate
       formats are referenced, the documents that specify the
       certificate format and their use with the CMS must include
       details on matching the key identifier to the appropriate
       certificate field.  This field is RECOMMENDED for TD-TRUSTED-
       CERTIFIERS (as defined in Section 3.2.2).

3. subjectKeyIdentifier[RFC3852]分野は主要な識別子で対象の公開鍵を特定します。 X.509証明書が参照をつけられるとき、この主要な識別子はX.509 subjectKeyIdentifier拡大価値に合っています。 他の証明書形式が参照をつけられるとき、証明書形式とCMSとの彼らの使用を指定するドキュメントは適切な証明書分野に主要な識別子を合わせることに関する詳細を含まなければなりません。 この分野はTD-TRUSTED- CERTIFIERSのためのRECOMMENDED(セクション3.2.2で定義されるように)です。

   The trustedCertifiers field of the type PA-PK-AS-REQ contains a list
   of CAs, trusted by the client, that can be used to certify the KDC.
   Each ExternalPrincipalIdentifier identifies a CA or a CA certificate
   (thereby its public key).

タイプPA-PK-AS-REQのtrustedCertifiers分野はKDCを公認するのに使用できるクライアントによって信じられたCAsのリストを含んでいます。 各ExternalPrincipalIdentifierはカリフォルニアかカリフォルニア証明書(その結果、公開鍵)を特定します。

   The kdcPkId field of the type PA-PK-AS-REQ contains a CMS type
   SignerIdentifier encoded according to [RFC3852].  This field
   identifies, if present, a particular KDC public key that the client
   already has.

タイプPA-PK-AS-REQのkdcPkId分野は[RFC3852]に従ってタイプSignerIdentifierがコード化したCMSを含んでいます。 この分野はクライアントが既に持っている特定のKDC公開鍵を存在しているなら特定します。

3.2.2.  Receipt of Client Request

3.2.2. クライアント要求の領収書

   Upon receiving the client's request, the KDC validates it.  This
   section describes the steps that the KDC MUST (unless otherwise
   noted) take in validating the request.

クライアントの要求を受け取ると、KDCはそれを有効にします。 このセクションは要求を有効にするKDC MUST(別の方法で注意されない場合)が見て取るステップについて説明します。

   The KDC verifies the client's signature in the signedAuthPack field
   according to [RFC3852].

[RFC3852]に従って、KDCはsignedAuthPack分野でクライアントの署名について確かめます。

   If, while validating the client's X.509 certificate [RFC3280], the
   KDC cannot build a certification path to validate the client's
   certificate, it sends back a KRB-ERROR [RFC4120] message with the
   code KDC_ERR_CANT_VERIFY_CERTIFICATE.  The accompanying e-data for
   this error message is a TYPED-DATA (as defined in [RFC4120]) that
   contains an element whose data-type is TD_TRUSTED_CERTIFIERS, and
   whose data-value contains the DER encoding of the type TD-TRUSTED-
   CERTIFIERS:

KDCがクライアントの証明書を有効にするためにクライアントのX.509証明書[RFC3280]を有効にしている間、証明経路を造ることができないなら、それはコードKDC_ERR_CANT_VERIFY_CERTIFICATEと共にKRB-ERROR[RFC4120]メッセージを返送します。 このエラーメッセージのための付随の電子データはデータ型がTD_TRUSTED_CERTIFIERSであり、データ値がTD-TRUSTED- CERTIFIERSをタイプにコード化するDERを含む要素を含むTYPED-DATA([RFC4120]で定義されるように)です:

Zhu & Tung                  Standards Track                    [Page 14]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[14ページ]。

       TD-TRUSTED-CERTIFIERS ::= SEQUENCE OF
                      ExternalPrincipalIdentifier
                   -- Identifies a list of CAs trusted by the KDC.
                   -- Each ExternalPrincipalIdentifier identifies a CA
                   -- or a CA certificate (thereby its public key).

TDは証明することを信じました:、:= SEQUENCE OF ExternalPrincipalIdentifier--KDCによって信じられたCAsのリストを特定します。 -- 各ExternalPrincipalIdentifierはカリフォルニア、またはカリフォルニア証明書(その結果、公開鍵)を特定します。

   Each ExternalPrincipalIdentifier (as defined in Section 3.2.1) in the
   TD-TRUSTED-CERTIFIERS structure identifies a CA or a CA certificate
   (thereby its public key) trusted by the KDC.

TD-TRUSTED-CERTIFIERS構造の各ExternalPrincipalIdentifier(セクション3.2.1で定義されるように)はKDCによって信じられたカリフォルニアかカリフォルニア証明書(その結果、公開鍵)を特定します。

   Upon receiving this error message, the client SHOULD retry only if it
   has a different set of certificates (from those of the previous
   requests) that form a certification path (or a partial path) from one
   of the trust anchors acceptable by the KDC to its own certificate.

このエラーメッセージを受け取ると、それにKDCが許容できる信頼アンカーのひとりからそれ自身の証明書まで証明経路(または、部分的な経路)を形成する異なったセットの証明書(前の要求のものからの)がある場合にだけ、クライアントSHOULDは再試行します。

   If, while processing the certification path, the KDC determines that
   the signature on one of the certificates in the signedAuthPack field
   is invalid, it returns a KRB-ERROR [RFC4120] message with the code
   KDC_ERR_INVALID_CERTIFICATE.  The accompanying e-data for this error
   message is a TYPED-DATA that contains an element whose data-type is
   TD_INVALID_CERTIFICATES, and whose data-value contains the DER
   encoding of the type TD-INVALID-CERTIFICATES:

KDCが、証明経路を処理している間、signedAuthPack分野の証明書の1つにおける署名が無効であることを決定するなら、それはコードKDC_ERR_INVALID_CERTIFICATEがあるKRB-ERROR[RFC4120]メッセージを返します。 このエラーメッセージのための付随の電子データはデータ型がTD_INVALID_CERTIFICATESであり、データ値がTD-INVALID-CERTIFICATESをタイプにコード化するDERを含む要素を含むTYPED-DATAです:

       TD-INVALID-CERTIFICATES ::= SEQUENCE OF
                      ExternalPrincipalIdentifier
                   -- Each ExternalPrincipalIdentifier identifies a
                   -- certificate (sent by the client) with an invalid
                   -- signature.

TDの無効の証明書:、:= SEQUENCE OF ExternalPrincipalIdentifier--各ExternalPrincipalIdentifierは--病人がいる証明書(クライアントで、発信する)--署名を特定します。

   Each ExternalPrincipalIdentifier (as defined in Section 3.2.1) in the
   TD-INVALID-CERTIFICATES structure identifies a certificate (that was
   sent by the client) with an invalid signature.

TD-INVALID-CERTIFICATES構造の各ExternalPrincipalIdentifier(セクション3.2.1で定義されるように)は無効の署名で証明書(それはクライアントによって送られた)を特定します。

   If more than one X.509 certificate signature is invalid, the KDC MAY
   include one IssuerAndSerialNumber per invalid signature within the
   TD-INVALID-CERTIFICATES.

1つ以上のX.509証明書署名が無効であるなら、KDC MAYはTD-INVALID-CERTIFICATESの中に無効の署名あたり1IssuerAndSerialNumberを含んでいます。

   The client's X.509 certificate is validated according to [RFC3280].

[RFC3280]に従って、クライアントのX.509証明書は有効にされます。

   Depending on local policy, the KDC may also check whether any X.509
   certificates in the certification path validating the client's
   certificate have been revoked.  If any of them have been revoked, the
   KDC MUST return an error message with the code
   KDC_ERR_REVOKED_CERTIFICATE; if the KDC attempts to determine the
   revocation status but is unable to do so, it SHOULD return an error
   message with the code KDC_ERR_REVOCATION_STATUS_UNKNOWN.  The
   certificate or certificates affected are identified exactly as for
   the error code KDC_ERR_INVALID_CERTIFICATE (see above).

ローカルの方針によって、また、KDCは、何かクライアントの証明書を有効にする証明経路のX.509証明書が取り消されたかどうかチェックするかもしれません。 それらのどれかが取り消されたなら、KDC MUSTはコードKDC_ERR_REVOKED_CERTIFICATEがあるエラーメッセージを返します。 KDCが取消し状態を決定するのを試みますが、そのように、それができないなら、SHOULDはコードKDC_ERR_REVOCATION_STATUS_UNKNOWNがあるエラーメッセージを返します。 影響を受ける証明書か証明書がちょうどエラーコードKDC_ERR_INVALID_CERTIFICATEのように特定されます(上を見てください)。

Zhu & Tung                  Standards Track                    [Page 15]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[15ページ]。

   Note that the TD_INVALID_CERTIFICATES error data is only used to
   identify invalid certificates sent by the client in the request.

TD_INVALID_CERTIFICATESエラー・データが要求でクライアントによって送られた無効の証明書を特定するのに使用されるだけであることに注意してください。

   The client's public key is then used to verify the signature.  If the
   signature fails to verify, the KDC MUST return an error message with
   the code KDC_ERR_INVALID_SIG.  There is no accompanying e-data for
   this error message.

そして、クライアントの公開鍵は、署名について確かめるのに使用されます。 署名であるなら、確かめるやり損ないであり、KDC MUSTはコードKDC_ERR_INVALID_SIGと共にエラーメッセージを返します。 このエラーメッセージのためのどんな付随の電子データもありません。

   In addition to validating the client's signature, the KDC MUST also
   check that the client's public key used to verify the client's
   signature is bound to the client principal name specified in the AS-
   REQ as follows:

また、クライアントの署名を有効にすることに加えて、KDC MUSTは、クライアントの署名について確かめるのに使用されるクライアントの公開鍵が以下のAS- REQで指定されたクライアント主体名に縛られるのをチェックします:

   1. If the KDC has its own binding between either the client's
      signature-verification public key or the client's certificate and
      the client's Kerberos principal name, it uses that binding.

1. KDCがクライアントの証明書とクライアントの署名照合公開鍵かクライアントのケルベロス主体名のどちらかの間でそれ自身のものを縛らせるなら、それはその結合を使用します。

   2. Otherwise, if the client's X.509 certificate contains a Subject
      Alternative Name (SAN) extension carrying a KRB5PrincipalName
      (defined below) in the otherName field of the type GeneralName
      [RFC3280], it binds the client's X.509 certificate to that name.

2. さもなければ、クライアントのX.509証明書がタイプGeneralName[RFC3280]のotherName分野でKRB5PrincipalName(以下では、定義される)を運ぶSubject Alternative Name(SAN)拡張子を含んでいるなら、それはクライアントのX.509証明書をその名前に縛ります。

      The type of the otherName field is AnotherName.  The type-id field
      of the type AnotherName is id-pkinit-san:

otherName分野のタイプはAnotherNameです。 タイプAnotherNameのタイプイド分野によるイドpkinitさんです:

       id-pkinit-san OBJECT IDENTIFIER ::=
         { iso(1) org(3) dod(6) internet(1) security(5) kerberosv5(2)
           x509SanAN (2) }

イドpkinit OBJECT IDENTIFIERさん:、:= iso(1) org(3) dod(6)インターネット(1)セキュリティ(5)kerberosv5(2) x509SanAN(2)

      And the value field of the type AnotherName is a
      KRB5PrincipalName.

そして、タイプAnotherNameの値の分野はKRB5PrincipalNameです。

       KRB5PrincipalName ::= SEQUENCE {
           realm                   [0] Realm,
           principalName           [1] PrincipalName
       }

KRB5PrincipalName:、:= 系列分野[0]分野、principalName[1]PrincipalName

   If the Kerberos client name in the AS-REQ does not match a name bound
   by the KDC (the binding can be in the certificate, for example, as
   described above), or if there is no binding found by the KDC, the KDC
   MUST return an error message with the code
   KDC_ERR_CLIENT_NAME_MISMATCH.  There is no accompanying e-data for
   this error message.

AS-REQのケルベロスクライアント名がKDCによって縛られた名前に合っていないか(例えば、結合が上で説明されるように証明書にあることができます)、またはKDCによって見つけられた縛るのがなければ、KDC MUSTはコードKDC_ERR_CLIENT_NAME_MISMATCHがあるエラーメッセージを返します。 このエラーメッセージのためのどんな付随の電子データもありません。

   Even if the certification path is validated and the certificate is
   mapped to the client's principal name, the KDC may decide not to
   accept the client's certificate, depending on local policy.

証明経路が有効にされ、証明書がクライアントの主要な名前に写像されても、KDCは、クライアントの証明書を受け入れないと決めるかもしれません、ローカルの方針によって。

Zhu & Tung                  Standards Track                    [Page 16]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[16ページ]。

   The KDC MAY require the presence of an Extended Key Usage (EKU)
   KeyPurposeId [RFC3280] id-pkinit-KPClientAuth in the extensions field
   of the client's X.509 certificate:

KDC MAYはクライアントのX.509証明書の拡大分野でExtended Key Usage(EKU)KeyPurposeId[RFC3280]イド-pkinit-KPClientAuthを存在に要求します:

       id-pkinit-KPClientAuth OBJECT IDENTIFIER ::=
         { iso(1) org(3) dod(6) internet(1) security(5) kerberosv5(2)
           pkinit(3) keyPurposeClientAuth(4) }
              -- PKINIT client authentication.
              -- Key usage bits that MUST be consistent:
              -- digitalSignature.

イド-pkinit-KPClientAuthオブジェクト識別子:、:= iso(1) org(3) dod(6)インターネット(1)セキュリティ(5)kerberosv5(2) pkinit(3) keyPurposeClientAuth(4)--PKINITクライアント認証。 -- 一貫するに違いない主要な用法ビット: -- digitalSignature。

   The digitalSignature key usage bit [RFC3280] MUST be asserted when
   the intended purpose of the client's X.509 certificate is restricted
   with the id-pkinit-KPClientAuth EKU.

クライアントのX.509証明書の本来の目的がイド-pkinit-KPClientAuth EKUと共に制限されるとき、digitalSignature主要な用法ビット[RFC3280]について断言しなければなりません。

   If this EKU KeyPurposeId is required but it is not present, or if the
   client certificate is restricted not to be used for PKINIT client
   authentication per Section 4.2.1.13 of [RFC3280], the KDC MUST return
   an error message of the code KDC_ERR_INCONSISTENT_KEY_PURPOSE.  There
   is no accompanying e-data for this error message.  KDCs implementing
   this requirement SHOULD also accept the EKU KeyPurposeId
   id-ms-kp-sc-logon (1.3.6.1.4.1.311.20.2.2) as meeting the
   requirement, as there are a large number of X.509 client certificates
   deployed for use with PKINIT that have this EKU.

このEKU KeyPurposeIdが必要であるか、しかし、プレゼントかクライアント証明書が.13[RFC3280]、KDC MUSTがセクション4.2.1あたりのPKINITクライアント認証にエラーメッセージを返すので、コードKDC_ERR_INCONSISTENT_KEY_PURPOSEで使用されていないように制限されるかどうかということではありません。 このエラーメッセージのためのどんな付随の電子データもありません。 また、この要件がSHOULDであると実装するKDCsがEKU KeyPurposeIdイドms-kp Scログオンを受け入れる、(1.3 .6 .1 .4 .1 .311 .20 .2 .2) 多くのX.509があるので条件を満たすとして、クライアント証明書はこのEKUを持っているPKINITとの使用のために展開しました。

   As a matter of local policy, the KDC MAY decide to reject requests on
   the basis of the absence or presence of other specific EKU OIDs.

ローカルの方針の問題として、KDC MAYは、他の特定のEKU OIDsの不在か存在に基づいて要求を拒絶すると決めます。

   If the digest algorithm used in generating the CA signature for the
   public key in any certificate of the request is not acceptable by the
   KDC, the KDC MUST return a KRB-ERROR [RFC4120] message with the code
   KDC_ERR_DIGEST_IN_CERT_NOT_ACCEPTED.  The accompanying e-data MUST be
   encoded in TYPED-DATA, although none is defined at this point.

要求のどんな証明書の公開鍵にもカリフォルニアの署名を生成する際に使用されるダイジェストアルゴリズムがKDCが許容できないなら、KDC MUSTは__ACCEPTEDではなく、コードKDC_ERR_DIGEST_IN CERT_があるKRB-ERROR[RFC4120]メッセージを返します。 なにもここに定義されませんが、TYPED-DATAで付随の電子データをコード化しなければなりません。

   If the client's public key is not accepted with reasons other than
   those specified above, the KDC returns a KRB-ERROR [RFC4120] message
   with the code KDC_ERR_CLIENT_NOT_TRUSTED.  There is no accompanying
   e-data currently defined for this error message.

クライアントの公開鍵が上で指定されたもの以外の理由で受け入れられないなら、KDCは_TRUSTEDではなく、コードKDC_ERR_CLIENT_があるKRB-ERROR[RFC4120]メッセージを返します。 現在このエラーメッセージのために定義されているどんな付随の電子データもありません。

   The KDC MUST check the timestamp to ensure that the request is not a
   replay, and that the time skew falls within acceptable limits.  The
   recommendations for clock skew times in [RFC4120] apply here.  If the
   check fails, the KDC MUST return error code KRB_AP_ERR_REPEAT or
   KRB_AP_ERR_SKEW, respectively.

KDC MUSTは、要求が再生でなく、時間斜行が合格限界の中に下がるのを保証するためにタイムスタンプをチェックします。 [RFC4120]の時計斜行回数のための推薦はここに適用されます。 チェックが失敗するなら、KDC MUSTはそれぞれエラーコードKRB_AP_ERR_REPEATかKRB_AP_ERR_SKEWを返します。

   If the clientPublicValue is filled in, indicating that the client
   wishes to use the Diffie-Hellman key agreement method, the KDC SHOULD
   check to see if the key parameters satisfy its policy.  If they do

クライアントがディフィー-ヘルマンの主要な協定メソッドを使用したがっているのを示して、clientPublicValueが記入されるなら、KDC SHOULDは、主要なパラメタが方針を満たすかどうか確認するためにチェックします。 それらがそうするなら

Zhu & Tung                  Standards Track                    [Page 17]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[17ページ]。

   not, it MUST return an error message with the code
   KDC_ERR_DH_KEY_PARAMETERS_NOT_ACCEPTED.  The accompanying e-data is a
   TYPED-DATA that contains an element whose data-type is
   TD_DH_PARAMETERS, and whose data-value contains the DER encoding of
   the type TD-DH-PARAMETERS:

それは_ACCEPTEDではなく、コードKDC_ERR_DH_KEY_PARAMETERS_があるエラーメッセージを返さなければなりません。 付随の電子データはデータ型がTD_DH_PARAMETERSであり、データ値がTD-DH-PARAMETERSをタイプにコード化するDERを含む要素を含むTYPED-DATAです:

       TD-DH-PARAMETERS ::= SEQUENCE OF AlgorithmIdentifier
                   -- Each AlgorithmIdentifier specifies a set of
                   -- Diffie-Hellman domain parameters [IEEE1363].
                   -- This list is in decreasing preference order.

TD-DH-パラメタ:、:= SEQUENCE OF AlgorithmIdentifier--AlgorithmIdentifierがセットを指定するそれぞれ--ディフィー-ヘルマンドメインパラメタ[IEEE1363]。 -- このリストは減少している好みの命令にあります。

   TD-DH-PARAMETERS contains a list of Diffie-Hellman domain parameters
   that the KDC supports in decreasing preference order, from which the
   client SHOULD pick one to retry the request.

TD-DH-PARAMETERSはKDCがクライアントSHOULDが要求を再試行するために1つを選ぶ減少している好みの命令でサポートするディフィー-ヘルマンドメインパラメタのリストを含んでいます。

   The AlgorithmIdentifier structure is defined in [RFC3280] and is
   filled in according to [RFC3279].  More specifically, Section 2.3.3
   of [RFC3279] describes how to fill in the AlgorithmIdentifier
   structure in the case where MODP Diffie-Hellman key exchange is used.

AlgorithmIdentifier構造は、[RFC3280]で定義されて、[RFC3279]に従って、記入されます。 より明確に、.3セクション2.3[RFC3279]がMODPのディフィー-ヘルマンの主要な交換が使用されている場合でAlgorithmIdentifier構造に記入する方法を説明します。

   If the client included a kdcPkId field in the PA-PK-AS-REQ and the
   KDC does not possess the corresponding key, the KDC MUST ignore the
   kdcPkId field as if the client did not include one.

クライアントがPA-PK-AS-REQのkdcPkId分野を入れて、KDCが対応するキーを所有していないなら、まるでクライアントが1つを入れないかのようにKDC MUSTはkdcPkId分野を無視します。

   If the digest algorithm used by the id-pkinit-authData is not
   acceptable by the KDC, the KDC MUST return a KRB-ERROR [RFC4120]
   message with the code KDC_ERR_DIGEST_IN_SIGNED_DATA_NOT_ACCEPTED.
   The accompanying e-data MUST be encoded in TYPED-DATA, although none
   is defined at this point.

イド-pkinit-authDataによって使用されたダイジェストアルゴリズムがKDCが許容できないなら、KDC MUSTは__ACCEPTEDではなく、コードKDC_ERR_DIGEST_IN SIGNED_DATA_があるKRB-ERROR[RFC4120]メッセージを返します。 なにもここに定義されませんが、TYPED-DATAで付随の電子データをコード化しなければなりません。

3.2.3.  Generation of KDC Reply

3.2.3. KDC回答の世代

   If the paChecksum filed in the request is not present, the KDC
   conforming to this specification MUST return a KRB-ERROR [RFC4120]
   message with the code KDC_ERR_PA_CHECKSUM_MUST_BE_INCLUDED.  The
   accompanying e-data MUST be encoded in TYPED-DATA (no error data is
   defined by this specification).

要求にファイルされたpaChecksumが存在していないなら、この仕様に従うKDCはPA_CHECKSUM_が__がINCLUDEDであったならそうしなければならないコードKDC_ERR_があるKRB-ERROR[RFC4120]メッセージを返さなければなりません。 TYPED-DATAで付随の電子データをコード化しなければなりません(エラー・データは全くこの仕様で定義されません)。

   Assuming that the client's request has been properly validated, the
   KDC proceeds as per [RFC4120], except as follows.

クライアントの要求が適切に有効にされたと仮定して、以下の通りを除いて、KDCは[RFC4120]に従って続きます。

   The KDC MUST set the initial flag and include an authorization data
   element of ad-type [RFC4120] AD_INITIAL_VERIFIED_CAS in the issued
   ticket.  The ad-data [RFC4120] field contains the DER encoding of the
   type AD-INITIAL-VERIFIED-CAS:

KDC MUSTは初期の旗を設定して、発行されたチケットに広告タイプ[RFC4120]西暦_INITIALの承認データ要素に_VERIFIED_CASを含んでいます。 広告データ[RFC4120]分野は西暦-INITIAL-VERIFIED-CASをタイプにコード化するDERを含んでいます:

Zhu & Tung                  Standards Track                    [Page 18]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[18ページ]。

       AD-INITIAL-VERIFIED-CAS ::= SEQUENCE OF
                      ExternalPrincipalIdentifier
                   -- Identifies the certification path with which
                   -- the client certificate was validated.
                   -- Each ExternalPrincipalIdentifier identifies a CA
                   -- or a CA certificate (thereby its public key).

AD初期の確かめられたCAS:、:= SEQUENCE OF ExternalPrincipalIdentifier--、証明経路を同一視する、どれ、--クライアント証明書は有効にされたか。 -- 各ExternalPrincipalIdentifierはカリフォルニア、またはカリフォルニア証明書(その結果、公開鍵)を特定します。

   The AD-INITIAL-VERIFIED-CAS structure identifies the certification
   path with which the client certificate was validated.  Each
   ExternalPrincipalIdentifier (as defined in Section 3.2.1) in the AD-
   INITIAL-VERIFIED-CAS structure identifies a CA or a CA certificate
   (thereby its public key).

西暦-INITIAL-VERIFIED-CAS構造はクライアント証明書が有効にされた証明経路を特定します。 AD INITIAL-VERIFIED-CAS構造の各ExternalPrincipalIdentifier(セクション3.2.1で定義されるように)はカリフォルニアかカリフォルニア証明書(その結果、公開鍵)を特定します。

   Note that the syntax for the AD-INITIAL-VERIFIED-CAS authorization
   data does permit empty SEQUENCEs to be encoded.  Such empty sequences
   may only be used if the KDC itself vouches for the user's
   certificate.

西暦-INITIAL-VERIFIED-CAS承認データのための構文が、空のSEQUENCEsがコード化されることを許可することに注意してください。 KDC自身がユーザの証明書を保証する場合にだけ、そのような空の系列は使用されるかもしれません。

   The AS wraps any AD-INITIAL-VERIFIED-CAS data in AD-IF-RELEVANT
   containers if the list of CAs satisfies the AS' realm's local policy
   (this corresponds to the TRANSITED-POLICY-CHECKED ticket flag
   [RFC4120]).  Furthermore, any TGS MUST copy such authorization data
   from tickets used within a PA-TGS-REQ of the TGS-REQ into the
   resulting ticket.  If the list of CAs satisfies the local KDC's
   realm's policy, the TGS MAY wrap the data into the AD-IF-RELEVANT
   container; otherwise, it MAY unwrap the authorization data out of the
   AD-IF-RELEVANT container.

ASがどんな西暦-INITIAL-VERIFIED-CASデータも包む、AD、RELEVANTである、コンテナ、CAsのリストがASの分野のローカルの方針を満たすなら(これはTRANSITED-POLICY-CHECKEDチケット旗[RFC4120]に対応しています)。 その上、どんなTGS MUSTもTGS-REQのPA-TGS-REQの中で結果として起こるチケットの中に使用されたチケットからのそのような承認データをコピーします。 CAsのリストが地方のKDCの分野の方針を満たすなら、TGS MAYがデータを包装する、AD、RELEVANTである、コンテナ。 さもなければ、承認データを開けるかもしれない、AD、RELEVANTである、コンテナ。

   Application servers that understand this authorization data type
   SHOULD apply local policy to determine whether a given ticket bearing
   such a type *not* contained within an AD-IF-RELEVANT container is
   acceptable.  (This corresponds to the AP server's checking the
   transited field when the TRANSITED-POLICY-CHECKED flag has not been
   set [RFC4120].)  If such a data type is contained within an AD-IF-
   RELEVANT container, AP servers MAY apply local policy to determine
   whether the authorization data is acceptable.

この承認データ型SHOULDを理解しているアプリケーション・サーバーがそのようなaに堪える当然のことのチケットが中に含まれた状態で*ではなく、*をタイプするかどうか決定するためにローカルの方針を当てはまる、AD、RELEVANTである、コンテナは許容できます。 (これはTRANSITED-POLICY-CHECKED旗が設定されていないときAPサーバが通過している分野をチェックすると[RFC4120]対応しています。) --RELEVANTコンテナ、APサーバがそうするかもしれないならそのようなデータ型がAD以内に含まれているならローカルの方針を適用して、承認データが許容できるかどうか決定してください。

   A pre-authentication data element, whose padata-type is PA_PK_AS_REP
   and whose padata-value contains the DER encoding of the type PA-PK-
   AS-REP (defined below), is included in the AS-REP [RFC4120].

プレ認証データ要素(padata-タイプがPA_PK_AS_REPであり、padata-値はPA-PK- AS-REP(以下では、定義される)をタイプにコード化するDERを含む)はAS-REP[RFC4120]に含まれています。

       PA-PK-AS-REP ::= CHOICE {
          dhInfo                  [0] DHRepInfo,
                   -- Selected when Diffie-Hellman key exchange is
                   -- used.
          encKeyPack              [1] IMPLICIT OCTET STRING,
                   -- Selected when public key encryption is used.
                   -- Contains a CMS type ContentInfo encoded

レップとしてのPA PK:、:= CHOICE、dhInfo[0]DHRepInfo(ディフィー-ヘルマンの主要な交換が選択されるとき、選択される)は. encKeyPack[1]IMPLICIT OCTET STRINGを使用しました--公開鍵暗号化が使用されていると、選択されています--タイプContentInfoがコード化したCMSを含んでいます。

Zhu & Tung                  Standards Track                    [Page 19]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[19ページ]。

                   -- according to [RFC3852].
                   -- The contentType field of the type ContentInfo is
                   -- id-envelopedData (1.2.840.113549.1.7.3).
                   -- The content field is an EnvelopedData.
                   -- The contentType field for the type EnvelopedData
                   -- is id-signedData (1.2.840.113549.1.7.2).
                   -- The eContentType field for the inner type
                   -- SignedData (when unencrypted) is
                   -- id-pkinit-rkeyData (1.3.6.1.5.2.3.3) and the
                   -- eContent field contains the DER encoding of the
                   -- type ReplyKeyPack.
                   -- ReplyKeyPack is defined in Section 3.2.3.2.
          ...
       }

-- [RFC3852]に従って。 -- タイプContentInfoのcontentType分野はそうです--、イド-envelopedData、(1.2 .840 .113549 .1 .7 .3)。 -- 満足している分野はEnvelopedDataです。 -- contentTypeはタイプのためにEnvelopedDataをさばきます--イド-signedDataである、(1.2 .840 .113549 .1 .7 .2)。 -- eContentTypeがSignedData(非暗号化されると)がそうであるという内側のタイプのためにイド-pkinit-rkeyDataをさばく、(1.3、.6、.1、.5、.2、.3、.3、)、--、eContent分野がDERコード化を含んでいる、--ReplyKeyPackをタイプしてください。 -- ReplyKeyPackはセクション3.2.3で.2に定義されます。 ... }

       DHRepInfo ::= SEQUENCE {
          dhSignedData            [0] IMPLICIT OCTET STRING,
                   -- Contains a CMS type ContentInfo encoded according
                   -- to [RFC3852].
                   -- The contentType field of the type ContentInfo is
                   -- id-signedData (1.2.840.113549.1.7.2), and the
                   -- content field is a SignedData.
                   -- The eContentType field for the type SignedData is
                   -- id-pkinit-DHKeyData (1.3.6.1.5.2.3.2), and the
                   -- eContent field contains the DER encoding of the
                   -- type KDCDHKeyInfo.
                   -- KDCDHKeyInfo is defined below.
          serverDHNonce           [1] DHNonce OPTIONAL,
                   -- Present if and only if dhKeyExpiration is
                   -- present in the KDCDHKeyInfo.
          ...
       }

DHRepInfo:、:= 系列{ 内容分野はSignedDataです。そして、dhSignedData0IMPLICIT OCTET STRING--、含有、CMSタイプContentInfoは一致をコード化しました--RFC3852へのこと(タイプContentInfoのcontentType分野はそうである)、イド-signedData、(1.2 .840 .113549 .1 .7 .2、)--. --タイプSignedDataのためのeContentType分野はそうです; そして、イド-pkinit-DHKeyData、(1.3 .6 .1 .5 .2 .3 .2、)--、eContent分野がDERコード化を含んでいる、--タイプKDCDHKeyInfo--KDCDHKeyInfoが以下で定義される、serverDHNonce、1DHNonce OPTIONAL--、現在、dhKeyExpirationがあります--KDCDHKeyInfoに単に存在しています; }

       KDCDHKeyInfo ::= SEQUENCE {
          subjectPublicKey        [0] BIT STRING,
                   -- The KDC's DH public key.
                   -- The DH public key value is encoded as a BIT
                   -- STRING according to [RFC3279].
          nonce                   [1] INTEGER (0..4294967295),
                   -- Contains the nonce in the pkAuthenticator field
                   -- in the request if the DH keys are NOT reused,
                   -- 0 otherwise.
          dhKeyExpiration         [2] KerberosTime OPTIONAL,
                   -- Expiration time for KDC's key pair,
                   -- present if and only if the DH keys are reused.
                   -- If present, the KDC's DH public key MUST not be
                   -- used past the point of this expiration time.
                   -- If this field is omitted then the serverDHNonce

KDCDHKeyInfo:、:= SEQUENCE、subjectPublicKey0BIT STRING--、KDCのDH公開鍵. --DH公開鍵価値はaとしてコード化されて、DHキーが再利用されないならBIT(RFC3279一回だけの1INTEGER(0 .4294967295)に従ったSTRING)がpkAuthenticator分野、要求における一回だけを含んでいるということです; DHキーは再利用されます。0. そうでなければ、現在のdhKeyExpiration2KerberosTime OPTIONAL(KDCの主要な組満了時間)、唯一、この満了のポイントの先で使用されて、プレゼント、KDCのDH公開鍵がそうであるはずがないならこの分野がその時省略されるなら調節してください、serverDHNonce

Zhu & Tung                  Standards Track                    [Page 20]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[20ページ]。

                   -- field MUST also be omitted.
          ...
       }

-- また、分野を省略しなければなりません。 ... }

   The content of the AS-REP is otherwise unchanged from [RFC4120].  The
   KDC encrypts the reply as usual, but not with the client's long-term
   key.  Instead, it encrypts it with either a shared key derived from a
   Diffie-Hellman exchange or a generated encryption key.  The contents
   of the PA-PK-AS-REP indicate which key delivery method is used.

そうでなければ、AS-REPの内容は[RFC4120]から変わりがありません。 KDCは通常通りの回答を暗号化しますが、クライアントの長期のキーで暗号化するというわけではありません。 代わりに、それはディフィー-ヘルマンの交換から得られた共有されたキーか発生している暗号化キーのどちらかでそれを暗号化します。 PA-PK-AS-REPのコンテンツは、どの主要な発送方法が使用されているかを示します。

   If the client does not wish to use the Diffie-Hellman key delivery
   method (the clientPublicValue field is not present in the request)
   and the KDC does not support the public key encryption key delivery
   method, the KDC MUST return an error message with the code
   KDC_ERR_PUBLIC_KEY_ENCRYPTION_NOT_SUPPORTED.  There is no
   accompanying e-data for this error message.

クライアントがディフィー-ヘルマンの主要な発送方法を使用したがっていなくて(clientPublicValue分野は要求に存在していません)、KDCが公開鍵の暗号化の主要な発送方法をサポートしないなら、KDC MUSTは_SUPPORTEDではなく、コードKDC_ERR_PUBLIC_KEY_ENCRYPTION_があるエラーメッセージを返します。 このエラーメッセージのためのどんな付随の電子データもありません。

   In addition, the lifetime of the ticket returned by the KDC MUST NOT
   exceed that of the client's public-private key pair.  The ticket
   lifetime, however, can be shorter than that of the client's public-
   private key pair.  For the implementations of this specification, the
   lifetime of the client's public-private key pair is the validity
   period in X.509 certificates [RFC3280], unless configured otherwise.

追加、KDC MUST NOTによって返されたチケットの生涯、クライアントの公共の秘密鍵組のものを超えてください。 しかしながら、チケット寿命はクライアントの公立の秘密鍵組のものより短い場合があります。 この仕様の実装のために、クライアントの公共の秘密鍵組の寿命はX.509証明書[RFC3280]の有効期間です、別の方法で構成されない場合。

3.2.3.1.  Using Diffie-Hellman Key Exchange

3.2.3.1. ディフィー-ヘルマンの主要なExchangeを使用します。

   In this case, the PA-PK-AS-REP contains a DHRepInfo structure.

この場合、PA-PK-AS-REPはDHRepInfo構造を含みます。

   The ContentInfo [RFC3852] structure for the dhSignedData field is
   filled in as follows:

dhSignedData分野へのContentInfo[RFC3852]構造は以下の通り記入されます:

   1.  The contentType field of the type ContentInfo is id-signedData
       (as defined in [RFC3852]), and the content field is a SignedData
       (as defined in [RFC3852]).

1. タイプContentInfoのcontentType分野はイド-signedData([RFC3852]で定義されるように)です、そして、満足している分野はSignedData([RFC3852]で定義されるように)です。

   2.  The eContentType field for the type SignedData is the OID value
       for id-pkinit-DHKeyData: { iso(1) org(3) dod(6) internet(1)
       security(5) kerberosv5(2) pkinit(3) DHKeyData(2) }.  Notes to CMS
       implementers: the signed attribute content-type MUST be present
       in this SignedData instance, and its value is id-pkinit-DHKeyData
       according to [RFC3852].

2. タイプSignedDataのためのeContentType分野はイド-pkinit-DHKeyDataのためのOID値です: iso(1) org(3) dod(6)インターネット(1)セキュリティ(5)kerberosv5(2) pkinit(3) DHKeyData(2)。 CMS implementersへの注意: 署名している属性content typeはこのSignedDataインスタンスで存在していなければなりません、そして、[RFC3852]に従って、値はイド-pkinit-DHKeyDataです。

   3.  The eContent field for the type SignedData contains the DER
       encoding of the type KDCDHKeyInfo.

3. タイプSignedDataのためのeContent分野はKDCDHKeyInfoをタイプにコード化するDERを含んでいます。

   4.  The KDCDHKeyInfo structure contains the KDC's public key, a
       nonce, and, optionally, the expiration time of the KDC's DH key
       being reused.  The subjectPublicKey field of the type

4. KDCDHKeyInfo構造は再利用されるKDCのDHキーのKDCの公開鍵、一回だけ、および任意に満了時間を含んでいます。 タイプのsubjectPublicKey分野

Zhu & Tung                  Standards Track                    [Page 21]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[21ページ]。

       KDCDHKeyInfo field identifies KDC's DH public key.  This DH
       public key value is encoded as a BIT STRING according to
       [RFC3279].  The nonce field contains the nonce in the
       pkAuthenticator field in the request if the DH keys are NOT
       reused.  The value of this nonce field is 0 if the DH keys are
       reused.  The dhKeyExpiration field is present if and only if the
       DH keys are reused.  If the dhKeyExpiration field is present, the
       KDC's public key in this KDCDHKeyInfo structure MUST NOT be used
       past the point of this expiration time.  If this field is
       omitted, then the serverDHNonce field MUST also be omitted.

KDCDHKeyInfo分野はKDCのDH公開鍵を特定します。 [RFC3279]に従って、このDH公開鍵価値はBIT STRINGとしてコード化されます。 DHキーが再利用されないなら、一回だけの分野は要求におけるpkAuthenticator分野に一回だけを保管しています。 DHキーが再利用されるなら、この一回だけの分野の値は0です。 そして、dhKeyExpiration分野が存在している、DHキーが再利用される場合にだけ。 dhKeyExpiration分野が存在しているなら、この満了時間のポイントの先でこのKDCDHKeyInfo構造のKDCの公開鍵を使用してはいけません。 また、この分野が省略されるなら、serverDHNonce分野を省略しなければなりません。

   5.  The signerInfos field of the type SignedData contains a single
       signerInfo, which contains the signature over the type
       KDCDHKeyInfo.

5. タイプSignedDataのsignerInfos分野は独身のsignerInfoを含んでいます。(signerInfoはタイプKDCDHKeyInfoでの署名を含みます)。

   6.  The certificates field of the type SignedData contains
       certificates intended to facilitate certification path
       construction, so that the client can verify the KDC's signature
       over the type KDCDHKeyInfo.  The information contained in the
       trustedCertifiers in the request SHOULD be used by the KDC as
       hints to guide its selection of an appropriate certificate chain
       to return to the client.  This field may be left empty if the KDC
       public key specified by the kdcPkId field in the PA-PK-AS-REQ was
       used for signing.  Otherwise, for path validation, these
       certificates SHOULD be sufficient to construct at least one
       certification path from the KDC certificate to one trust anchor
       acceptable by the client [RFC4158].  The KDC MUST be capable of
       including such a set of certificates if configured to do so.  The
       certificates field MUST NOT contain "root" CA certificates.

6. タイプSignedDataの証明書分野は証明経路工事を容易にすることを意図する証明書を含んでいます、クライアントがKDCのタイプKDCDHKeyInfoでの署名について確かめることができるように。 情報は要求にtrustedCertifiersにSHOULDを含みました。ヒントとしてKDCによって使用されて、クライアントに戻るために適切な証明書チェーンの選択を誘導してください。 PA-PK-AS-REQのkdcPkId分野によって指定されたKDC公開鍵が署名に使用されたなら、この野原は空のままにされるかもしれません。 さもなければ、経路合法化のために、これらはSHOULDを証明します。KDC証明書からクライアント[RFC4158]が許容できる1人の信頼アンカーまで少なくとも1つの証明経路を構成するには、十分であってください。 KDC MUST、そうするために構成されるなら、1セットのそのような証明書を含むことができてください。 証明書分野は「根」カリフォルニア証明書を含んではいけません。

   7.  If the client included the clientDHNonce field, then the KDC may
       choose to reuse its DH keys.  If the server reuses DH keys, then
       it MUST include an expiration time in the dhKeyExpiration field.
       Past the point of the expiration time, the signature over the
       type DHRepInfo is considered expired/invalid.  When the server
       reuses DH keys then, it MUST include a serverDHNonce at least as
       long as the length of keys for the symmetric encryption system
       used to encrypt the AS reply.  Note that including the
       serverDHNonce changes how the client and server calculate the key
       to use to encrypt the reply; see below for details.  The KDC
       SHOULD NOT reuse DH keys unless the clientDHNonce field is
       present in the request.

7. クライアントがclientDHNonce分野を入れたなら、KDCは、DHキーを再利用するのを選ぶかもしれません。 サーバがDHキーを再利用するなら、それはdhKeyExpiration分野に満了時間を含まなければなりません。 満了時間のポイントの先では、タイプDHRepInfoでの署名は満期である、または無効であると考えられます。 サーバがその時DHキーを再利用するとき、左右対称の暗号化システムのためのキーの長さが以前はよくAS回答を暗号化していた限り、それは少なくともserverDHNonceを含まなければなりません。 serverDHNonceを含んでいて、クライアントとサーバがどう回答を暗号化するのに使用するキーについて計算するかを変える注意。 詳細に関して以下を見てください。 clientDHNonce分野が要求に存在していない場合、KDC SHOULD NOTはDHキーを再利用します。

   The AS reply key is derived as follows:

AS回答キーは以下の通り引き出されます:

   1. Both the KDC and the client calculate the shared secret value as
      follows:

1. KDCとクライアントの両方が以下の共有秘密キー値について計算します:

Zhu & Tung                  Standards Track                    [Page 22]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[22ページ]。

          a) When MODP Diffie-Hellman is used, let DHSharedSecret be the
          shared secret value.  DHSharedSecret is the value ZZ, as
          described in Section 2.1.1 of [RFC2631].

a) MODPディフィー-ヘルマンが使用されているときには、DHSharedSecretが共有秘密キー値であることをさせてください。 DHSharedSecretは.1セクション2.1[RFC2631]で説明されるように値のZZです。

      DHSharedSecret is first padded with leading zeros such that the
      size of DHSharedSecret in octets is the same as that of the
      modulus, then represented as a string of octets in big-endian
      order.

DHSharedSecretが最初に先行ゼロで水増しされるので、八重奏における、DHSharedSecretのサイズは係数(ビッグエンディアンオーダーにおける一連の八重奏として表されたその時)のものと同じです。

      Implementation note: Both the client and the KDC can cache the
      triple (ya, yb, DHSharedSecret), where ya is the client's public
      key and yb is the KDC's public key.  If both ya and yb are the
      same in a later exchange, the cached DHSharedSecret can be used.

実装注意: クライアントとKDCの両方が三重をキャッシュできる、(あなた、Yb、DHSharedSecret)、あなたがクライアントの公開鍵とYbであるところでは、KDCの公開鍵はそうです。 あなたとYbの両方が後の交換で同じであるなら、キャッシュされたDHSharedSecretを使用できます。

   2. Let K be the key-generation seed length [RFC3961] of the AS reply
      key whose enctype is selected according to [RFC4120].

2. Kが[RFC4120]に従ってenctypeが選択されるAS回答キーのキー生成種子の長さ[RFC3961]であることをさせてください。

   3. Define the function octetstring2key() as follows:

3. 以下の機能octetstring2key()を定義してください:

           octetstring2key(x) == random-to-key(K-truncate(
                                    SHA1(0x00 | x) |
                                    SHA1(0x01 | x) |
                                    SHA1(0x02 | x) |
                                    ...
                                    ))

キーに無作為のoctetstring2key(x)=(K先端を切ります(SHA1(0×00| x)| SHA1(0×01| x)| SHA1(0×02| x)| …))

      where x is an octet string; | is the concatenation operator; 0x00,
      0x01, 0x02, etc. are each represented as a single octet; random-
      to-key() is an operation that generates a protocol key from a
      bitstring of length K; and K-truncate truncates its input to the
      first K bits.  Both K and random-to-key() are as defined in the
      kcrypto profile [RFC3961] for the enctype of the AS reply key.

xが八重奏ストリングであるところ。 | 連結オペレータです。 0×00、0×01、0×02などはただ一つの八重奏としてそれぞれ表されます。 キーに無作為の()は長さKのbitstringによって主要なプロトコルを生成する操作です。 先端を切る、K最初Kのビットに入力に先端を切らせます。 両方、Kで無作為である、-キー()には、AS回答キーのenctypeのための[RFC3961]がkcryptoプロフィールで定義されるようにあります。

   4. When DH keys are reused, let n_c be the clientDHNonce and n_k be
      the serverDHNonce; otherwise, let both n_c and n_k be empty octet
      strings.

4. DHキーが再利用されたらn_cがclientDHNonceとn_kであることをさせてください。serverDHNonceになってください。 さもなければ、n_cとn_kの両方が空の八重奏ストリングであることをさせてください。

   5. The AS reply key k is:
              k = octetstring2key(DHSharedSecret | n_c | n_k)

5. AS回答キーkは以下の通りです。 kはoctetstring2keyと等しいです。(DHSharedSecret| n_c| n_k)

3.2.3.2.  Using Public Key Encryption

3.2.3.2. 公開鍵暗号化を使用します。

   In this case, the PA-PK-AS-REP contains the encKeyPack field where
   the AS reply key is encrypted.

この場合、PA-PK-AS-REPはAS回答キーが暗号化されているencKeyPack分野を含みます。

   The ContentInfo [RFC3852] structure for the encKeyPack field is
   filled in as follows:

encKeyPack分野へのContentInfo[RFC3852]構造は以下の通り記入されます:

Zhu & Tung                  Standards Track                    [Page 23]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[23ページ]。

   1.  The contentType field of the type ContentInfo is id-envelopedData
       (as defined in [RFC3852]), and the content field is an
       EnvelopedData (as defined in [RFC3852]).

1. タイプContentInfoのcontentType分野はイド-envelopedData([RFC3852]で定義されるように)です、そして、満足している分野はEnvelopedData([RFC3852]で定義されるように)です。

   2.  The contentType field for the type EnvelopedData is id-
       signedData: { iso (1) member-body (2) us (840) rsadsi (113549)
       pkcs (1) pkcs7 (7) signedData (2) }.

2. タイプEnvelopedDataのためのcontentType分野はイドsignedDataです: 私たちiso(1)メンバーボディー(2)(840)rsadsi(113549)pkcs(1)、pkcs7(7)signedData(2)

   3.  The eContentType field for the inner type SignedData (when
       decrypted from the encryptedContent field for the type
       EnvelopedData) is id-pkinit-rkeyData: { iso(1) org(3) dod(6)
       internet(1) security(5) kerberosv5(2) pkinit(3) rkeyData(3) }.
       Notes to CMS implementers: the signed attribute content-type MUST
       be present in this SignedData instance, and its value is id-
       pkinit-rkeyData according to [RFC3852].

3. 内側のタイプSignedData(タイプEnvelopedDataのためにencryptedContent分野から解読されると)のためのeContentType分野はイド-pkinit-rkeyDataです: iso(1) org(3) dod(6)インターネット(1)セキュリティ(5)kerberosv5(2) pkinit(3) rkeyData(3)。 CMS implementersへの注意: 署名している属性content typeはこのSignedDataインスタンスで存在していなければなりません、そして、[RFC3852]に従って、値はイドpkinit-rkeyDataです。

   4.  The eContent field for the inner type SignedData contains the DER
       encoding of the type ReplyKeyPack (as described below).

4. 内側のタイプSignedDataのためのeContent分野はReplyKeyPackをタイプにコード化するDERを含んでいます(以下で説明されるように)。

   5.  The signerInfos field of the inner type SignedData contains a
       single signerInfo, which contains the signature for the type
       ReplyKeyPack.

5. 内側のタイプSignedDataのsignerInfos分野は独身のsignerInfoを含んでいます。(signerInfoはタイプReplyKeyPackのための署名を含みます)。

   6.  The certificates field of the inner type SignedData contains
       certificates intended to facilitate certification path
       construction, so that the client can verify the KDC's signature
       for the type ReplyKeyPack.  The information contained in the
       trustedCertifiers in the request SHOULD be used by the KDC as
       hints to guide its selection of an appropriate certificate chain
       to return to the client.  This field may be left empty if the KDC
       public key specified by the kdcPkId field in the PA-PK-AS-REQ was
       used for signing.  Otherwise, for path validation, these
       certificates SHOULD be sufficient to construct at least one
       certification path from the KDC certificate to one trust anchor
       acceptable by the client [RFC4158].  The KDC MUST be capable of
       including such a set of certificates if configured to do so.  The
       certificates field MUST NOT contain "root" CA certificates.

6. 内側のタイプSignedDataの証明書分野は証明経路工事を容易にすることを意図する証明書を含んでいます、クライアントがタイプReplyKeyPackのためにKDCの署名について確かめることができるように。 情報は要求にtrustedCertifiersにSHOULDを含みました。ヒントとしてKDCによって使用されて、クライアントに戻るために適切な証明書チェーンの選択を誘導してください。 PA-PK-AS-REQのkdcPkId分野によって指定されたKDC公開鍵が署名に使用されたなら、この野原は空のままにされるかもしれません。 さもなければ、経路合法化のために、これらはSHOULDを証明します。KDC証明書からクライアント[RFC4158]が許容できる1人の信頼アンカーまで少なくとも1つの証明経路を構成するには、十分であってください。 KDC MUST、そうするために構成されるなら、1セットのそのような証明書を含むことができてください。 証明書分野は「根」カリフォルニア証明書を含んではいけません。

   7.  The recipientInfos field of the type EnvelopedData is a SET that
       MUST contain exactly one member of type KeyTransRecipientInfo.
       The encryptedKey of this member contains the temporary key that
       is encrypted using the client's public key.

7. タイプEnvelopedDataのrecipientInfos分野はちょうどタイプKeyTransRecipientInfoの1人のメンバーを含まなければならないSETです。 このメンバーのencryptedKeyはクライアントの公開鍵を使用することで暗号化された一時的なキーを含んでいます。

   8.  The unprotectedAttrs or originatorInfo fields of the type
       EnvelopedData MAY be present.

8. タイプEnvelopedDataのunprotectedAttrsかoriginatorInfo分野が存在しているかもしれません。

Zhu & Tung                  Standards Track                    [Page 24]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[24ページ]。

   If there is a supportedCMSTypes field in the AuthPack, the KDC must
   check to see if it supports any of the listed types.  If it supports
   more than one of the types, the KDC SHOULD use the one listed first.
   If it does not support any of them, it MUST return an error message
   with the code KDC_ERR_ETYPE_NOSUPP [RFC4120].

supportedCMSTypes分野がAuthPackにあれば、KDCは、それが記載されたタイプのどれかをサポートするかどうか確認するためにチェックしなければなりません。 タイプのより多くのひとりをサポートするなら、KDC SHOULDは最初に記載されたものを使用します。 それらのいずれもサポートしないなら、それはコードKDC_ERR_ETYPE_NOSUPP[RFC4120]があるエラーメッセージを返さなければなりません。

   Furthermore, the KDC computes the checksum of the AS-REQ in the
   client request.  This checksum is performed over the type AS-REQ, and
   the protocol key [RFC3961] of the checksum operation is the replyKey,
   and the key usage number is 6.  If the replyKey's enctype is "newer"
   [RFC4120] [RFC4121], the checksum operation is the required checksum
   operation [RFC3961] of that enctype.

その上、KDCはクライアント要求でAS-REQのチェックサムを計算します。 このチェックサムはタイプAS-REQで実行されます、そして、チェックサム操作のプロトコルキー[RFC3961]はreplyKeyです、そして、主要な用法番号は6です。 replyKeyのenctypeが「より新しい」[RFC4120][RFC4121]であるなら、チェックサム操作はそのenctypeの必要なチェックサム操作[RFC3961]です。

       ReplyKeyPack ::= SEQUENCE {
          replyKey                [0] EncryptionKey,
                   -- Contains the session key used to encrypt the
                   -- enc-part field in the AS-REP, i.e., the
                   -- AS reply key.
          asChecksum              [1] Checksum,
                  -- Contains the checksum of the AS-REQ
                  -- corresponding to the containing AS-REP.
                  -- The checksum is performed over the type AS-REQ.
                  -- The protocol key [RFC3961] of the checksum is the
                  -- replyKey and the key usage number is 6.
                  -- If the replyKey's enctype is "newer" [RFC4120]
                  -- [RFC4121], the checksum is the required
                  -- checksum operation [RFC3961] for that enctype.
                  -- The client MUST verify this checksum upon receipt
                  -- of the AS-REP.
          ...
       }

ReplyKeyPack:、:= 系列{ AS回答は. asChecksumを合わせます。replyKey0EncryptionKey--、暗号化するのにおいて中古のセッションキーを含んでいる、--、すなわち、AS-REPの分野をenc分けてください--、1Checksum--含んでいるAS-REPに対応するAS-REQのチェックサムを含んでいる、--チェックサムはタイプAS-REQで実行されます; チェックサムが必要です--そのenctypeのためのチェックサム操作RFC3961--チェックサムのプロトコルの主要なRFC3961が--replyKeyと主要な用法番号は6です--replyKeyのenctypeがそうであるなら「より新しい」というRFC4120--RFC4121である、クライアントはAS-REPの領収書でこのチェックサムについて確かめなければなりません; }

   Implementations of this RSA encryption key delivery method are
   RECOMMENDED to support RSA keys at least 2048 bits in size.

このRSAの暗号化の主要な発送方法の実装はRSAキーがサイズが少なくとも2048ビットであるとサポートするRECOMMENDEDです。

3.2.4.  Receipt of KDC Reply

3.2.4. KDC回答の領収書

   Upon receipt of the KDC's reply, the client proceeds as follows.  If
   the PA-PK-AS-REP contains the dhSignedData field, the client derives
   the AS reply key using the same procedure used by the KDC, as defined
   in Section 3.2.3.1.  Otherwise, the message contains the encKeyPack
   field, and the client decrypts and extracts the temporary key in the
   encryptedKey field of the member KeyTransRecipientInfo and then uses
   that as the AS reply key.

KDCの回答を受け取り次第、クライアントは以下の通り続きます。 PA-PK-AS-REPがdhSignedData分野を含んでいるなら、クライアントはKDCで同じ実行した手順を使用することでAS回答キーを引き出します、セクション3.2.3で.1を定義するので。 さもなければ、メッセージがencKeyPack分野を含んでいて、クライアントは、メンバーKeyTransRecipientInfoと次にASとして主要な状態で返答する用途のencryptedKey分野で一時的なキーを解読して、抽出します。

   If the public key encryption method is used, the client MUST verify
   the asChecksum contained in the ReplyKeyPack.

公開鍵暗号化メソッドが使用されているなら、クライアントはReplyKeyPackに含まれたasChecksumについて確かめなければなりません。

Zhu & Tung                  Standards Track                    [Page 25]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[25ページ]。

   In either case, the client MUST verify the signature in the
   SignedData according to [RFC3852].  The KDC's X.509 certificate MUST
   be validated according to [RFC3280].  In addition, unless the client
   can otherwise verify that the public key used to verify the KDC's
   signature is bound to the KDC of the target realm, the KDC's X.509
   certificate MUST contain a Subject Alternative Name extension
   [RFC3280] carrying an AnotherName whose type-id is id-pkinit-san (as
   defined in Section 3.2.2) and whose value is a KRB5PrincipalName that
   matches the name of the TGS of the target realm (as defined in
   Section 7.3 of [RFC4120]).

どちらの場合ではも、[RFC3852]に従って、クライアントはSignedDataで署名について確かめなければなりません。 [RFC3280]に従って、KDCのX.509証明書を有効にしなければなりません。 さらに、クライアントが、KDCの署名について確かめるのに使用される公開鍵が目標分野のKDCに縛られることを別の方法で確かめることができないなら、タイプイドがイドpkinitさん(セクション3.2.2で定義されるように)であり、値が目標分野のTGSという名前に合っているKRB5PrincipalNameであるAnotherNameを運んで([RFC4120]のセクション7.3で定義されるように)、KDCのX.509証明書はSubject Alternative Name拡張子[RFC3280]を含まなければなりません。

   Unless the client knows by some other means that the KDC certificate
   is intended for a Kerberos KDC, the client MUST require that the KDC
   certificate contains the EKU KeyPurposeId [RFC3280] id-pkinit-KPKdc:

クライアントが、KDC証明書がケルベロスKDCのために意図するのをある他の手段で知らない場合、クライアントは、KDC証明書がEKU KeyPurposeId[RFC3280]イド-pkinit-KPKdcを含むのを必要としなければなりません:

       id-pkinit-KPKdc OBJECT IDENTIFIER ::=
         { iso(1) org(3) dod(6) internet(1) security(5) kerberosv5(2)
           pkinit(3) keyPurposeKdc(5) }
              -- Signing KDC responses.
              -- Key usage bits that MUST be consistent:
              -- digitalSignature.

イド-pkinit-KPKdcオブジェクト識別子:、:= iso(1) org(3) dod(6)インターネット(1)セキュリティ(5)kerberosv5(2) pkinit(3) keyPurposeKdc(5)--KDCに応答に署名します。 -- 一貫するに違いない主要な用法ビット: -- digitalSignature。

   The digitalSignature key usage bit [RFC3280] MUST be asserted when
   the intended purpose of the KDC's X.509 certificate is restricted
   with the id-pkinit-KPKdc EKU.

KDCのX.509証明書の本来の目的がイド-pkinit-KPKdc EKUと共に制限されるとき、digitalSignature主要な用法ビット[RFC3280]について断言しなければなりません。

   If the KDC certificate contains the Kerberos TGS name encoded as an
   id-pkinit-san SAN, this certificate is certified by the issuing CA as
   a KDC certificate, therefore the id-pkinit-KPKdc EKU is not required.

KDC証明書がイドpkinit SANさんとしてコード化というケルベロスTGS名を含んでいるなら、この証明書はKDC証明書を発行カリフォルニアによって公認されます、したがって、イド-pkinit-KPKdc EKUが必要ではありません。

   If all applicable checks are satisfied, the client then decrypts the
   enc-part field of the KDC-REP in the AS-REP, using the AS reply key,
   and then proceeds as described in [RFC4120].

すべての適切なチェックが満たされているなら、クライアントは、次に、AS回答キーを使用して、AS-REPでKDC-REPのenc-部分分野を解読して、[RFC4120]で説明されるように続きます。

3.3.  Interoperability Requirements

3.3. 相互運用性要件

   The client MUST be capable of sending a set of certificates
   sufficient to allow the KDC to construct a certification path for the
   client's certificate, if the correct set of certificates is provided
   through configuration or policy.

クライアントは1セットの証明書をKDCがクライアントの証明書のために証明経路を構成するのを許容できるくらい送ることができなければなりません、構成か方針で正しいセットの証明書を提供するなら。

   If the client sends all the X.509 certificates on a certification
   path to a trust anchor acceptable by the KDC, and if the KDC cannot
   verify the client's public key otherwise, the KDC MUST be able to
   process path validation for the client's certificate based on the
   certificates in the request.

クライアントが証明経路のすべてのX.509証明書を送るなら、KDCとKDCがそうすることができないかどうかによって許容できる信頼アンカーに、別の方法でクライアントの公開鍵について確かめてください、KDC MUST。要求における証明書に基づくクライアントの証明書のために経路合法化を処理できてください。

Zhu & Tung                  Standards Track                    [Page 26]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[26ページ]。

   The KDC MUST be capable of sending a set of certificates sufficient
   to allow the client to construct a certification path for the KDC's
   certificate, if the correct set of certificates is provided through
   configuration or policy.

KDC MUST、1セットの証明書をクライアントがKDCの証明書のために証明経路を構成するのを許容できるくらい送ることができてください、構成か方針で正しいセットの証明書を提供するなら。

   If the KDC sends all the X.509 certificates on a certification path
   to a trust anchor acceptable by the client, and the client can not
   verify the KDC's public key otherwise, the client MUST be able to
   process path validation for the KDC's certificate based on the
   certificates in the reply.

KDCがクライアントが許容できる信頼アンカーへの証明経路のすべてのX.509証明書を送って、クライアントが別の方法でKDCの公開鍵について確かめることができないなら、クライアントは回答で証明書に基づくKDCの証明書のために経路合法化を処理できなければなりません。

3.4.  KDC Indication of PKINIT Support

3.4. PKINITサポートのKDCしるし

   If pre-authentication is required but was not present in the request,
   per [RFC4120] an error message with the code KDC_ERR_PREAUTH_FAILED
   is returned, and a METHOD-DATA object will be stored in the e-data
   field of the KRB-ERROR message to specify which pre-authentication
   mechanisms are acceptable.  The KDC can then indicate the support of
   PKINIT by including an empty element whose padata-type is
   PA_PK_AS_REQ in that METHOD-DATA object.

プレ認証が必要ですが、要求に存在していなかったなら、コードKDC_ERR_がある[RFC4120]エラーメッセージに従ってPREAUTH_FAILEDを返します、そして、どのプレ認証機構が許容できるかを指定するKRB-ERRORメッセージの電子データ・フィールドにMETHOD-DATAオブジェクトを保存するでしょう。 そして、だれのpadata-タイプがそのMETHOD-DATAオブジェクトのPA_PK_AS_REQであるかを空の要素に含んでいることによって、KDCはPKINITのサポートを示すことができます。

   Otherwise if it is required by the KDC's local policy that the client
   must be pre-authenticated using the pre-authentication mechanism
   specified in this document, but no PKINIT pre-authentication was
   present in the request, an error message with the code
   KDC_ERR_PREAUTH_FAILED SHOULD be returned.

さもなければ、本書では指定されたプレ認証機構を使用しますが、どんなPKINITも使用しないことでクライアントをあらかじめ認証しなければならないのがKDCのローカルの方針によって必要とされるなら、プレ認証が要求(コードKDC_ERR_PREAUTH_FAILED SHOULDを返しているエラーメッセージ)に存在していました。

   KDCs MUST leave the padata-value field of the PA_PK_AS_REQ element in
   the KRB-ERROR's METHOD-DATA empty (i.e., send a zero-length OCTET
   STRING), and clients MUST ignore this and any other value.  Future
   extensions to this protocol may specify other data to send instead of
   an empty OCTET STRING.

KDCsは空の状態でKRB-ERRORのMETHOD-DATAのPA_PK_AS_REQ要素のpadata-値の野原を出なければなりません、そして、(すなわち、無の長さのOCTET STRINGを送ってください)クライアントはこれといかなる他の値も無視しなければなりません。 このプロトコルへの今後の拡大は、空のOCTET STRINGの代わりに発信するために他のデータを指定するかもしれません。

4.  Security Considerations

4. セキュリティ問題

   The security of cryptographic algorithms is dependent on generating
   secret quantities [RFC4086].  The number of truly random bits is
   extremely important in determining the attack resistance strength of
   the cryptosystem; for example, the secret Diffie-Hellman exponents
   must be chosen based on n truly random bits (where n is the system
   security requirement).  The security of the overall system is
   significantly weakened by using insufficient random inputs: a
   sophisticated attacker may find it easier to reproduce the
   environment that produced the secret quantities and to search the
   resulting small set of possibilities than to locate the quantities in
   the whole of the potential number space.

秘密の量が[RFC4086]であると生成するのに暗号アルゴリズムのセキュリティは依存しています。 本当に無作為のビットの数は暗号系の攻撃抵抗勢力を決定するのにおいて非常に重要です。 例えば、本当に無作為のnビット(nがシステムセキュリティ要件であるところ)に基づいて秘密のディフィー-ヘルマン解説者を選ばなければなりません。 総合体系のセキュリティは不十分な無作為の入力を使用することによって、かなり弱められます: 洗練された攻撃者は秘密の量を生産した環境を再生させやすくて、それは潜在的数のスペースの全体における量の場所を見つけるより結果として起こる小さい可能性を捜しやすいのがわかるかもしれません。

Zhu & Tung                  Standards Track                    [Page 27]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[27ページ]。

   Kerberos error messages are not integrity protected; as a result, the
   domain parameters sent by the KDC as TD-DH-PARAMETERS can be tampered
   with by an attacker so that the set of domain parameters selected
   could be either weaker or not mutually preferred.  Local policy can
   configure sets of domain parameters acceptable locally, or disallow
   the negotiation of DH domain parameters.

ケルベロスエラーメッセージは保護された保全ではありません。 その結果、TD-DH-PARAMETERSとしてKDCによって送られたドメインパラメタは、攻撃者がパラメタが選択したドメインのセットが、より弱いことができなるようにいじることができないか、互いに好むことができません。 ローカルの方針は、局所的に許容できるドメインパラメタのセットを構成するか、またはDHドメインパラメタの交渉を禁じることができます。

   The symmetric reply key size and Diffie-Hellman field size or RSA
   modulus size should be chosen so as to provide sufficient
   cryptographic security [RFC3766].

左右対称の回答主要なサイズとディフィー-ヘルマン分野サイズかRSA係数サイズが、十分な暗号のセキュリティ[RFC3766]を提供するために選ばれるべきです。

   When MODP Diffie-Hellman is used, the exponents should have at least
   twice as many bits as the symmetric keys that will be derived from
   them [ODL99].

MODPディフィー-ヘルマンが使用されているとき、解説者には、少なくともそれら[ODL99]から得られる対称鍵の2倍のビットがあるはずです。

   PKINIT raises certain security considerations beyond those that can
   be regulated strictly in protocol definitions.  We will address them
   in this section.

PKINITはプロトコル定義で厳密に規制できるものを超えてあるセキュリティ問題を提起します。 私たちはこのセクションでそれらを扱うつもりです。

   PKINIT extends the cross-realm model to the public-key
   infrastructure.  Users of PKINIT must understand security policies
   and procedures appropriate to the use of Public Key Infrastructures
   [RFC3280].

PKINITは交差している分野モデルを公開鍵インフラストラクチャに広げています。 PKINITのユーザは公開鍵暗号基盤[RFC3280]の使用に適切な安全保障政策と手順を理解しなければなりません。

   In order to trust a KDC certificate that is certified by a CA as a
   KDC certificate for a target realm (for example, by asserting the TGS
   name of that Kerberos realm as an id-pkinit-san SAN and/or
   restricting the certificate usage by using the id-pkinit-KPKdc EKU,
   as described in Section 3.2.4), the client MUST verify that the KDC
   certificate's issuing CA is authorized to issue KDC certificates for
   that target realm.  Otherwise, the binding between the KDC
   certificate and the KDC of the target realm is not established.

目標分野(例えばイドpkinit SANさんとしてそのケルベロス分野のTGS名について断言する、そして/または、セクション3.2.4で説明されるようにイド-pkinit-KPKdc EKUを使用することによって証明書用法を制限することによって)のためのKDC証明書がカリフォルニアによって公認されるKDC証明書を信じるために、クライアントは、KDC証明書がカリフォルニアを発行するとその目標分野のための証明書がKDCに発行されるのが認可されることを確かめなければなりません。 さもなければ、KDC証明書と目標分野のKDCの間の結合は確立されません。

   How to validate this authorization is a matter of local policy.  A
   way to achieve this is the configuration of specific sets of
   intermediary CAs and trust anchors, one of which must be on the KDC
   certificate's certification path [RFC3280], and, for each CA or trust
   anchor, the realms for which it is allowed to issue certificates.

どうこの承認を有効にするかは、ローカルの方針の問題です。 これを達成する方法は特定のセットの仲介者CAsと信頼アンカーの構成です。そして、それの1つはそれぞれのカリフォルニアか信頼アンカー(それが証明書を発行できる分野)のためにKDC証明書の証明経路[RFC3280]にあるに違いありません。

   In addition, if any CA that is trusted to issue KDC certificates can
   also issue other kinds of certificates, then local policy must be
   able to distinguish between them; for example, it could require that
   KDC certificates contain the id-pkinit-KPKdc EKU or that the realm be
   specified with the id-pkinit-san SAN.

さらに、また、問題KDC証明書に任せられるどれかカリフォルニアが他の種類の証明書を発行できるなら、ローカルの方針はそれらを見分けることができなければなりません。 例えば、それは、KDC証明書がイド-pkinit-KPKdc EKUを含んでいるか、または分野がイドpkinit SANさんと共に指定されるのを必要とするかもしれません。

   It is the responsibility of the PKI administrators for an
   organization to ensure that KDC certificates are only issued to KDCs,
   and that clients can ascertain this using their local policy.

組織が、クライアントがKDC証明書をKDCsに発行するだけであり、地元の方針を使用することでこれを確かめることができるのを保証するのは、PKI管理者の責任です。

Zhu & Tung                  Standards Track                    [Page 28]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[28ページ]。

   Standard Kerberos allows the possibility of interactions between
   cryptosystems of varying strengths; this document adds interactions
   with public-key cryptosystems to Kerberos.  Some administrative
   policies may allow the use of relatively weak public keys.  When
   using such weak asymmetric keys to protect/exchange stronger
   symmetric Keys, the attack resistant strength of the overall system
   is no better than that of these weak keys [RFC3766].

標準のケルベロスは異なった強さの暗号系の間の相互作用の可能性を許容します。 このドキュメントは公開鍵暗号系との相互作用をケルベロスに追加します。 いくつかの施政方針が比較的弱い公開鍵の使用を許すかもしれません。 より強い左右対称のキーズ、攻撃を保護するか、または交換するそのような弱い非対称のキーを使用するとき、総合体系の抵抗力がある強さはこれらの弱いキー[RFC3766]のものより良いというわけではありません。

   PKINIT requires that keys for symmetric cryptosystems be generated.
   Some such systems contain "weak" keys.  For recommendations regarding
   these weak keys, see [RFC4120].

PKINITは、左右対称の暗号系のためのキーが生成されるのを必要とします。 そのようないくつかのシステムが「弱い」キーを含んでいます。 これらの弱いキーの推薦に関しては、[RFC4120]を見てください。

   PKINIT allows the use of the same RSA key pair for encryption and
   signing when doing RSA encryption-based key delivery.  This is not
   recommended usage of RSA keys [RFC3447]; by using DH-based key
   delivery, this is avoided.

暗号化ベースの主要な配送をRSAにするとき、PKINITは同じRSA主要な組の暗号化と署名の使用を許します。 RSAキー[RFC3447]の使用法はこれに推薦されません。 DHベースの主要な配送を使用することによって、これは避けられます。

   Care should be taken in how certificates are chosen for the purposes
   of authentication using PKINIT.  Some local policies may require that
   key escrow be used for certain certificate types.  Deployers of
   PKINIT should be aware of the implications of using certificates that
   have escrowed keys for the purposes of authentication.  Because
   signing-only certificates are normally not escrowed, by using DH-
   based key delivery this is avoided.

認証の目的が証明書にPKINITを使用することで選ばれている注意を中に入れるべきです。 いくつかのローカルの方針が、キーエスクローが、ある証明書タイプに使用されるのを必要とするかもしれません。 PKINITのデプロイヤは認証の目的のためにキーをescrowedした使用証明書の含意を意識しているべきです。 通常、署名だけ証明書がescrowedされないDHのベースの主要な配送を使用することによって、これは避けられます。

   PKINIT does not provide for a "return routability" test to prevent
   attackers from mounting a denial-of-service attack on the KDC by
   causing it to perform unnecessary and expensive public-key
   operations.  Strictly speaking, this is also true of standard
   Kerberos, although the potential cost is not as great, because
   standard Kerberos does not make use of public-key cryptography.  By
   using DH-based key delivery and reusing DH keys, the necessary crypto
   processing cost per request can be minimized.

PKINITは、不要で高価な公開鍵操作を実行することを引き起こすことによって攻撃者がKDCでサービス不能攻撃を仕掛けるのを防ぐために「リターンroutability」テストに備えません。 また、厳密に言うと、これも標準のケルベロスに関して本当です、潜在的費用は大きくはありませんが、標準のケルベロスが公開鍵暗号を利用しないので。 DHベースの主要な配送を使用して、DHキーを再利用することによって、1要求あたりの必要な暗号加工費を最小にすることができます。

   When the Diffie-Hellman key exchange method is used, additional pre-
   authentication data [RFC4120] (in addition to the PA_PK_AS_REQ, as
   defined in this specification) is not bound to the AS_REQ by the
   mechanisms discussed in this specification (meaning it may be dropped
   or added by attackers without being detected by either the client or
   the KDC).  Designers of additional pre-authentication data should
   take that into consideration if such additional pre-authentication
   data can be used in conjunction with the PA_PK_AS_REQ.  The future
   work of the Kerberos working group is expected to update the hash
   algorithms specified in this document and provide a generic mechanism
   to bind additional pre-authentication data with the accompanying
   AS_REQ.

ディフィー-ヘルマンの主要な交換メソッドが使用されているとき、追加プレ認証データ[RFC4120](PA_PK_AS_REQに加えてこの仕様に基づき定義されるように)はこの仕様で議論したメカニズムによってAS_REQに縛られません(クライアントかKDCのどちらかによって検出されないで、それを意味するのは、攻撃者によって下げられるか、または加えられるかもしれません)。 PA_PK_AS_REQに関連してそのような追加プレ認証データを使用できるなら、追加プレ認証データのデザイナーはそれを考慮に入れるべきです。 ケルベロスワーキンググループの今後の活動は、付随のAS_REQと共に追加プレ認証データを縛るために本書では指定されたハッシュアルゴリズムをアップデートして、ジェネリックメカニズムを提供すると予想されます。

Zhu & Tung                  Standards Track                    [Page 29]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[29ページ]。

   The key usage number 6 used by the asChecksum field is also used for
   the authenticator checksum (cksum field of AP-REQ) contained in the
   PA-TGS-REQ preauthentication data contained in a TGS-REQ [RFC4120].
   This conflict is present for historical reasons; the reuse of key
   usage numbers is strongly discouraged.

また、asChecksum分野によって使用される主要な用法No.6はTGS-REQ[RFC4120]に含まれたPA-TGS-REQ preauthenticationデータに含まれた固有識別文字チェックサム(AP-REQのcksum分野)に使用されます。 この闘争は歴史的な理由で存在しています。 主要な用法番号の再利用は強くお勧めできないです。

5.  Acknowledgements

5. 承認

   The following people have made significant contributions to this
   document: Paul Leach, Stefan Santesson, Sam Hartman, Love Hornquist
   Astrand, Ken Raeburn, Nicolas Williams, John Wray, Tom Yu, Jeffrey
   Hutzelman, David Cross, Dan Simon, Karthik Jaganathan, Chaskiel M
   Grundman, and Jeffrey Altman.

以下の人々はこのドキュメントへの重要な貢献をしました: ポール・リーチ、ステファンSantesson(サム・ハートマン)はHornquist Astrand、ケン・レイバーン、ニコラス・ウィリアムズ、ジョン・レイ、トム・ユー、ジェフリーHutzelman、David Cross、ダン・サイモン、Karthik Jaganathan、Chaskiel M Grundman、およびジェフリー・アルトマンを愛しています。

   Andre Scedrov, Aaron D. Jaggard, Iliano Cervesato, Joe-Kai Tsay, and
   Chris Walstad discovered a binding issue between the AS-REQ and AS-
   REP in draft -26; the asChecksum field was added as the result.

アンドレScedrov、アーロンD.Jaggard、Iliano Cervesato、ジョー-カイTsay、およびクリスWalstadはAS-REQとAS- REPの間の草稿-26における拘束力がある問題を発見しました。 asChecksum分野は結果として加えられました。

   Special thanks to Clifford Neuman, Matthew Hur, Ari Medvinsky, Sasha
   Medvinsky, and Jonathan Trostle who wrote earlier versions of this
   document.

このドキュメントの以前のバージョンを書いたクリフォード・ヌーマン、マシューHur、アリMedvinsky、サシャMedvinsky、およびジョナサンTrostleへの特別な感謝。

   The authors are indebted to the Kerberos working group chair, Jeffrey
   Hutzelman, who kept track of various issues and was enormously
   helpful during the creation of this document.

作者はケルベロスワーキンググループいす、様々な問題の動向をおさえている、このドキュメントの作成の間に途方もないほど役立っているジェフリーHutzelmanの世話になっています。

   Some of the ideas on which this document is based arose during
   discussions over several years between members of the SAAG, the IETF
   CAT working group, and the PSRG, regarding integration of Kerberos
   and SPX.  Some ideas have also been drawn from the DASS system.
   These changes are by no means endorsed by these groups.  This is an
   attempt to revive some of the goals of those groups, and this
   document approaches those goals primarily from the Kerberos
   perspective.

このドキュメントが基づいている考えのいくつかが議論の間、SAAG、IETF CATワーキンググループ、およびPSRGのメンバーの間に数年の上にケルベロスとSPXの統合に関して起こりました。 また、ダスシステムからいくつかの考えを得ました。 これらの変化はこれらのグループによって決して是認されません。 これはそれらのグループの目標のいくつかを蘇らせる試みです、そして、このドキュメントは主としてケルベロス見解からそれらの目標に近づきます。

   Lastly, comments from groups working on similar ideas in DCE have
   been invaluable.

最後に、DCEの同様の考えに取り組むグループからのコメントは非常に貴重です。

6.  References

6. 参照

6.1.  Normative References

6.1. 引用規格

   [IEEE1363] IEEE, "Standard Specifications for Public Key
              Cryptography", IEEE 1363, 2000.

[IEEE1363]IEEE、「公開鍵暗号のための標準の仕様」、IEEE1363、2000。

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

[RFC2119] ブラドナー、S.、「Indicate Requirement LevelsへのRFCsにおける使用のためのキーワード」、BCP14、RFC2119、1997年3月。

Zhu & Tung                  Standards Track                    [Page 30]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[30ページ]。

   [RFC2412]  Orman, H., "The OAKLEY Key Determination Protocol", RFC
              2412, November 1998.

[RFC2412] Orman、H.、「オークリーの主要な決断プロトコル」、RFC2412、1998年11月。

   [RFC2631]  Rescorla, E., "Diffie-Hellman Key Agreement Method", RFC
              2631, June 1999.

[RFC2631] レスコラ、E.、「ディフィー-ヘルマンの主要な協定メソッド」、RFC2631、1999年6月。

   [RFC3279]  Bassham, L., Polk, W., and R. Housley, "Algorithms and
              Identifiers for the Internet X.509 Public Key
              Infrastructure Certificate and Certificate Revocation List
              (CRL) Profile", RFC 3279, April 2002.

[RFC3279] Bassham、L.、ポーク、W.、およびR.Housley、「インターネットX.509公開鍵暗号基盤証明書と証明書取消しのためのアルゴリズムと識別子は(CRL)プロフィールをリストアップします」、RFC3279、2002年4月。

   [RFC3280]  Housley, R., Polk, W., Ford, W., and D. Solo, "Internet
              X.509 Public Key Infrastructure Certificate and
              Certificate Revocation List (CRL) Profile", RFC 3280,
              April 2002.

[RFC3280] Housley、R.、ポーク、W.、フォード、W.、および一人で生活して、「インターネットX.509公開鍵暗号基盤証明書と証明書失効リスト(CRL)は輪郭を描く」D.、RFC3280(2002年4月)。

   [RFC3370]  Housley, R., "Cryptographic Message Syntax (CMS)
              Algorithms", RFC 3370, August 2002.

[RFC3370] Housley、R.、「暗号のメッセージ構文(cm)アルゴリズム」、RFC3370、2002年8月。

   [RFC3447]  Jonsson, J. and B. Kaliski, "Public-Key Cryptography
              Standards (PKCS) #1: RSA Cryptography Specifications
              Version 2.1", RFC 3447, February 2003.

[RFC3447] イェンソン、J.、およびB.Kaliski、「公開鍵暗号化標準(PKCS)#1:」 RSA暗号仕様バージョン2.1インチ、RFC3447、2月2003日

   [RFC3526]  Kivinen, T. and M. Kojo, "More Modular Exponential (MODP)
              Diffie-Hellman groups for Internet Key Exchange (IKE)",
              RFC 3526, May 2003.

[RFC3526] Kivinen、T.、およびM.Kojo、「より多くのModular Exponential(MODP)ディフィー-ヘルマンはインターネット・キー・エクスチェンジ(IKE)のために分類します」、RFC3526、2003年5月。

   [RFC3560]  Housley, R., "Use of the RSAES-OAEP Key Transport
              Algorithm in Cryptographic Message Syntax (CMS)", RFC
              3560, July 2003.

[RFC3560] Housley、R.、「暗号のメッセージ構文(cm)におけるRSAES-OAEPの主要な輸送アルゴリズムの使用」、RFC3560、2003年7月。

   [RFC3766]  Orman, H. and P. Hoffman, "Determining Strengths For
              Public Keys Used For Exchanging Symmetric Keys", BCP 86,
              RFC 3766, April 2004.

[RFC3766] OrmanとH.とP.ホフマン、「対称鍵を交換するのに使用される公開鍵のために強さを測定する」BCP86、RFC3766、2004年4月。

   [RFC3852]  Housley, R., "Cryptographic Message Syntax (CMS)", RFC
              3852, July 2004.

[RFC3852] Housley、R.、「暗号のメッセージ構文(cm)」、RFC3852、2004年7月。

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

[RFC3961] レイバーンとK.と「暗号化とケルベロス5インチチェックサム仕様、RFC3961、2005年2月。」

   [RFC3962]  Raeburn, K., "Advanced Encryption Standard (AES)
              Encryption for Kerberos 5", RFC 3962, February 2005.

[RFC3962]レイバーン(K.)は「2005年2月にケルベロス5インチ、RFC3962のために暗号化の標準の(AES)暗号化を進めました」。

   [RFC4086]  Eastlake, D., 3rd, Schiller, J., and S. Crocker,
              "Randomness Requirements for Security", BCP 106, RFC 4086,
              June 2005.

[RFC4086]イーストレークとD.と3番目、シラー、J.とS.クロッカー、「セキュリティのための偶発性要件」BCP106、2005年6月のRFC4086。

Zhu & Tung                  Standards Track                    [Page 31]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[31ページ]。

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

[RFC4120]ヌーマン、C.、ユー、T.、ハートマン、S.、およびK.レイバーン、「ケルベロスネットワーク認証サービス(V5)」、RFC4120 2005年7月。

   [X680]     ITU-T Recommendation X.680 (2002) | ISO/IEC 8824-1:2002,
              Information technology - Abstract Syntax Notation One
              (ASN.1): Specification of basic notation.

[X680]ITU-T推薦X.680(2002)| ISO/IEC8824-1: 2002、情報技術--抽象的なSyntax Notation One(ASN.1): 基本的な記法の仕様。

   [X690]     ITU-T Recommendation X.690 (2002) | ISO/IEC 8825-1:2002,
              Information technology - ASN.1 encoding Rules:
              Specification of Basic Encoding Rules (BER), Canonical
              Encoding Rules (CER) and Distinguished Encoding Rules
              (DER).

[X690]ITU-T推薦X.690(2002)| ISO/IEC8825-1: 2002、情報技術--Rulesをコード化するASN.1: 基本的なコード化の仕様は(BER)、正準な符号化規則(CER)、および顕著な符号化規則(DER)を統治します。

6.2.  Informative References

6.2. 有益な参照

   [ODL99]    Odlyzko, A., "Discrete logarithms: The past and the
              future, Designs, Codes, and Cryptography (1999)".  April
              1999.

[ODL99]Odlyzko、A.、「離散対数:」 「過去、未来、Designs、Codes、およびCryptography(1999)。」 1999年4月。

   [RFC4121]  Zhu, L., Jaganathan, K., and S. Hartman, "The Kerberos
              Version 5 Generic Security Service Application Program
              Interface (GSS-API) Mechanism: Version 2", RFC 4121, July
              2005.

[RFC4121] 朱、L.、Jaganathan、K.、およびS.ハートマン、「ケルベロスバージョン5ジェネリックセキュリティは適用業務プログラム・インタフェース(GSS-API)メカニズムを修理します」。 バージョン2インチ、RFC4121、2005年7月。

   [RFC4158]  Cooper, M., Dzambasow, Y., Hesse, P., Joseph, S., and R.
              Nicholas, "Internet X.509 Public Key Infrastructure:
              Certification Path Building", RFC 4158, September 2005.

[RFC4158] クーパー、M.、Dzambasow、Y.、ヘッセ、P.、ジョゼフ、S.、およびR.ニコラス、「インターネットX.509公開鍵基盤:」 「証明経路ビル」、RFC4158、2005年9月。

Zhu & Tung                  Standards Track                    [Page 32]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[32ページ]。

Appendix A.  PKINIT ASN.1 Module

付録A.PKINIT ASN.1モジュール

       KerberosV5-PK-INIT-SPEC {
               iso(1) identified-organization(3) dod(6) internet(1)
               security(5) kerberosV5(2) modules(4) pkinit(5)
       } DEFINITIONS EXPLICIT TAGS ::= BEGIN

KerberosV5-PK-INIT-SPEC、iso(1)の特定された組織(3)dod(6)インターネット(1)セキュリティ(5)kerberosV5(2)モジュール(4)pkinit(5)、DEFINITIONS EXPLICIT TAGS:、:= 始まってください。

       IMPORTS

輸入

           SubjectPublicKeyInfo, AlgorithmIdentifier
               FROM PKIX1Explicit88 { iso (1)
                 identified-organization (3) dod (6) internet (1)
                 security (5) mechanisms (5) pkix (7) id-mod (0)
                 id-pkix1-explicit (18) }
                 -- As defined in RFC 3280.

SubjectPublicKeyInfo、AlgorithmIdentifier FROM PKIX1Explicit88、iso(1)特定された組織(3)dod(6)インターネット(1)セキュリティ(5)メカニズム(5)pkix(7)イドモッズ(0)、イドpkix1明白である、(18)、RFC3280では、定義されます。

           KerberosTime, PrincipalName, Realm, EncryptionKey, Checksum
               FROM KerberosV5Spec2 { iso(1) identified-organization(3)
                 dod(6) internet(1) security(5) kerberosV5(2)
                 modules(4) krb5spec2(2) };
                 -- as defined in RFC 4120.

KerberosTime、PrincipalName、Realm、EncryptionKey、Checksum FROM KerberosV5Spec2、iso(1)の特定された組織(3)dod(6)インターネット(1)セキュリティ(5)kerberosV5(2)モジュール(4)krb5spec2(2)。 -- RFC4120で定義されるように。

       id-pkinit OBJECT IDENTIFIER ::=
         { iso(1) identified-organization(3) dod(6) internet(1)
           security(5) kerberosv5(2) pkinit (3) }

イド-pkinit OBJECT IDENTIFIER:、:= iso(1)の特定された組織(3)dod(6)インターネット(1)セキュリティ(5)kerberosv5(2) pkinit(3)

       id-pkinit-authData      OBJECT IDENTIFIER  ::= { id-pkinit 1 }
       id-pkinit-DHKeyData     OBJECT IDENTIFIER  ::= { id-pkinit 2 }
       id-pkinit-rkeyData      OBJECT IDENTIFIER  ::= { id-pkinit 3 }
       id-pkinit-KPClientAuth  OBJECT IDENTIFIER  ::= { id-pkinit 4 }
       id-pkinit-KPKdc         OBJECT IDENTIFIER  ::= { id-pkinit 5 }

イド-pkinit-authDataオブジェクト識別子:、:= イド-pkinit1、イド-pkinit-DHKeyData OBJECT IDENTIFIER:、:= イド-pkinit2、イド-pkinit-rkeyData OBJECT IDENTIFIER:、:= イド-pkinit3、イド-pkinit-KPClientAuth OBJECT IDENTIFIER:、:= イド-pkinit4、イド-pkinit-KPKdc OBJECT IDENTIFIER:、:= イド-pkinit5

       id-pkinit-san OBJECT IDENTIFIER ::=
         { iso(1) org(3) dod(6) internet(1) security(5) kerberosv5(2)
           x509SanAN (2) }

イドpkinit OBJECT IDENTIFIERさん:、:= iso(1) org(3) dod(6)インターネット(1)セキュリティ(5)kerberosv5(2) x509SanAN(2)

       pa-pk-as-req INTEGER ::=                  16
       pa-pk-as-rep INTEGER ::=                  17

req INTEGERとしてのpa-pk:、:= 16 レップとしてのpa-pk INTEGER:、:= 17

       ad-initial-verified-cas INTEGER ::=        9

広告初期の確かめられたcas INTEGER:、:= 9

       td-trusted-certifiers INTEGER ::=        104
       td-invalid-certificates INTEGER ::=      105
       td-dh-parameters INTEGER ::=             109

tdが証明することを信じているINTEGER:、:= 104 tdの無効の証明書INTEGER:、:= 105 td-dh-パラメタINTEGER:、:= 109

       PA-PK-AS-REQ ::= SEQUENCE {
          signedAuthPack          [0] IMPLICIT OCTET STRING,
                   -- Contains a CMS type ContentInfo encoded

REQとしてのPA PK:、:= SEQUENCE、signedAuthPack[0]IMPLICIT OCTET STRING--、タイプContentInfoがコード化したCMSを含んでいます。

Zhu & Tung                  Standards Track                    [Page 33]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[33ページ]。

                   -- according to [RFC3852].
                   -- The contentType field of the type ContentInfo
                   -- is id-signedData (1.2.840.113549.1.7.2),
                   -- and the content field is a SignedData.
                   -- The eContentType field for the type SignedData is
                   -- id-pkinit-authData (1.3.6.1.5.2.3.1), and the
                   -- eContent field contains the DER encoding of the
                   -- type AuthPack.
                   -- AuthPack is defined below.
          trustedCertifiers       [1] SEQUENCE OF
                      ExternalPrincipalIdentifier OPTIONAL,
                   -- Contains a list of CAs, trusted by the client,
                   -- that can be used to certify the KDC.
                   -- Each ExternalPrincipalIdentifier identifies a CA
                   -- or a CA certificate (thereby its public key).
                   -- The information contained in the
                   -- trustedCertifiers SHOULD be used by the KDC as
                   -- hints to guide its selection of an appropriate
                   -- certificate chain to return to the client.
          kdcPkId                 [2] IMPLICIT OCTET STRING
                                      OPTIONAL,
                   -- Contains a CMS type SignerIdentifier encoded
                   -- according to [RFC3852].
                   -- Identifies, if present, a particular KDC
                   -- public key that the client already has.
          ...
       }

-- [RFC3852]に従って。 -- contentTypeはContentInfoをタイプとしてさばきます--イド-signedDataである、(1.2 .840 .113549 .1 .7 .2) --満足している分野はSignedDataです。 -- そして、タイプSignedDataのためのeContentType分野はそうです--、イド-pkinit-authData、(1.3 .6 .1 .5 .2 .3 .1、)--、eContent分野がDERコード化を含んでいる、--AuthPackをタイプしてください。 -- AuthPackは. trustedCertifiers[1]SEQUENCE OF ExternalPrincipalIdentifier OPTIONALの下で定義されます--クライアントによって信じられたCAs(KDCを公認するのに使用できる)のリストを含んでいます。 -- 各ExternalPrincipalIdentifierはカリフォルニア、またはカリフォルニア証明書(その結果、公開鍵)を特定します。 -- 情報が中に含んだ、--、trustedCertifiers SHOULD、KDCによって使用されてください、--、選択を誘導するヒント、適切である、--. クライアントkdcPkId[2]IMPLICIT OCTET STRING OPTIONALに返す証明書チェーン--[RFC3852]に従って、タイプSignerIdentifierがコード化したCMSを含んでいます。 -- 特定、特定のKDC存在しているなら--クライアントが既に持っている公開鍵。 ... }

       DHNonce ::= OCTET STRING

DHNonce:、:= 八重奏ストリング

       ExternalPrincipalIdentifier ::= SEQUENCE {
          subjectName            [0] IMPLICIT OCTET STRING OPTIONAL,
                   -- Contains a PKIX type Name encoded according to
                   -- [RFC3280].
                   -- Identifies the certificate subject by the
                   -- distinguished subject name.
                   -- REQUIRED when there is a distinguished subject
                   -- name present in the certificate.
         issuerAndSerialNumber   [1] IMPLICIT OCTET STRING OPTIONAL,
                   -- Contains a CMS type IssuerAndSerialNumber encoded
                   -- according to [RFC3852].
                   -- Identifies a certificate of the subject.
                   -- REQUIRED for TD-INVALID-CERTIFICATES and
                   -- TD-TRUSTED-CERTIFIERS.
         subjectKeyIdentifier    [2] IMPLICIT OCTET STRING OPTIONAL,
                   -- Identifies the subject's public key by a key
                   -- identifier.  When an X.509 certificate is
                   -- referenced, this key identifier matches the X.509

ExternalPrincipalIdentifier:、:= SEQUENCE、subjectName0IMPLICIT OCTET STRING OPTIONAL--、Nameがコード化したa PKIXタイプを含んでいる、--RFC3280、--、証明書対象を特定する、--顕著な対象の名前--顕著な対象があるとき(名前は. 証明書issuerAndSerialNumberで1IMPLICIT OCTET STRING OPTIONALを寄贈します)、REQUIREDはタイプIssuerAndSerialNumberがコード化したa CMSを含んでいます; そして、RFC3852--対象の証明書を特定する、--、TD-INVALID-CERTIFICATESのためのREQUIRED、--TD-TRUSTED-CERTIFIERS. subjectKeyIdentifier2IMPLICIT OCTET STRING OPTIONAL--、特定、キーによる対象の公開鍵--識別子参照をつけられて、X.509証明書がそうときに、合わせる、この主要な識別子はX.509に合っています。

Zhu & Tung                  Standards Track                    [Page 34]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[34ページ]。

                   -- subjectKeyIdentifier extension value.  When other
                   -- certificate formats are referenced, the documents
                   -- that specify the certificate format and their use
                   -- with the CMS must include details on matching the
                   -- key identifier to the appropriate certificate
                   -- field.
                   -- RECOMMENDED for TD-TRUSTED-CERTIFIERS.
          ...
       }

-- subjectKeyIdentifier拡大価値。 他の--参照をつけられる証明書形式(CMSがあるドキュメント)は--適切な証明書への主要な識別子--分野を合わせることに関する詳細を含まなければなりません。(ドキュメントは証明書形式と彼らの使用を指定します)。 -- TDが証明することを信じたので、推薦されます。 ... }

       AuthPack ::= SEQUENCE {
          pkAuthenticator         [0] PKAuthenticator,
          clientPublicValue       [1] SubjectPublicKeyInfo OPTIONAL,
                   -- Type SubjectPublicKeyInfo is defined in
                   -- [RFC3280].
                   -- Specifies Diffie-Hellman domain parameters
                   -- and the client's public key value [IEEE1363].
                   -- The DH public key value is encoded as a BIT
                   -- STRING according to [RFC3279].
                   -- This field is present only if the client wishes
                   -- to use the Diffie-Hellman key agreement method.
          supportedCMSTypes       [2] SEQUENCE OF AlgorithmIdentifier
                                      OPTIONAL,
                   -- Type AlgorithmIdentifier is defined in
                   -- [RFC3280].
                   -- List of CMS algorithm [RFC3370] identifiers
                   -- that identify key transport algorithms, or
                   -- content encryption algorithms, or signature
                   -- algorithms supported by the client in order of
                   -- (decreasing) preference.
          clientDHNonce           [3] DHNonce OPTIONAL,
                   -- Present only if the client indicates that it
                   -- wishes to reuse DH keys or to allow the KDC to
                   -- do so.
          ...
       }

AuthPack:、:= 系列{ 1SubjectPublicKeyInfo OPTIONALタイプSubjectPublicKeyInfoは中で定義されます--(RFC3280)がディフィー-ヘルマンドメインパラメタ、およびクライアントの公開鍵値のIEEE1363を指定します。pkAuthenticator0PKAuthenticator、clientPublicValue. --DH公開鍵価値はBITとしてコード化されます--RFC3279に従ったSTRING--クライアントが願う場合にだけ、この分野は存在しています--、ディフィー-ヘルマンの主要な協定メソッドを使用するためにsupportedCMSTypes2SEQUENCE OF AlgorithmIdentifier OPTIONAL; タイプAlgorithmIdentifierは中で定義されます--RFC3280--CMSアルゴリズムRFC3370識別子(主要な輸送アルゴリズムを特定する)、またはクライアントがそれを示す場合にだけ--(減少すること)の好みclientDHNonce3DHNonce OPTIONAL--プレゼントの順にクライアントによってサポートされた--満足している暗号化アルゴリズム、または署名--アルゴリズムについて記載してください、それ--、願望、DHキーを再利用するか、またはKDCを許容する、--そうしてください; }

       PKAuthenticator ::= SEQUENCE {
          cusec                   [0] INTEGER (0..999999),
          ctime                   [1] KerberosTime,
                   -- cusec and ctime are used as in [RFC4120], for
                   -- replay prevention.
          nonce                   [2] INTEGER (0..4294967295),
                   -- Chosen randomly; this nonce does not need to
                   -- match with the nonce in the KDC-REQ-BODY.
          paChecksum              [3] OCTET STRING OPTIONAL,
                   -- MUST be present.
                   -- Contains the SHA1 checksum, performed over

PKAuthenticator:、:= SEQUENCE、キューセック[0]INTEGER(0 .999999)(キューセック、ctimeは[RFC4120]のように使用されています、この--再生防止一回だけ[2]INTEGER(0 .4294967295)--手当たりしだいに選ばれています;一回だけがそうする必要はないので--KDC-REQ-BODY. paChecksum[3]OCTET STRING OPTIONALの一回だけとのマッチ--存在していなければならないというctime[1]KerberosTime)はSHA1チェックサムを含んでいます、実行されて

Zhu & Tung                  Standards Track                    [Page 35]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[35ページ]。

                   -- KDC-REQ-BODY.
          ...
       }

-- KDC-REQ-ボディー。 ... }

       TD-TRUSTED-CERTIFIERS ::= SEQUENCE OF
                      ExternalPrincipalIdentifier
                   -- Identifies a list of CAs trusted by the KDC.
                   -- Each ExternalPrincipalIdentifier identifies a CA
                   -- or a CA certificate (thereby its public key).

TDは証明することを信じました:、:= SEQUENCE OF ExternalPrincipalIdentifier--KDCによって信じられたCAsのリストを特定します。 -- 各ExternalPrincipalIdentifierはカリフォルニア、またはカリフォルニア証明書(その結果、公開鍵)を特定します。

       TD-INVALID-CERTIFICATES ::= SEQUENCE OF
                      ExternalPrincipalIdentifier
                   -- Each ExternalPrincipalIdentifier identifies a
                   -- certificate (sent by the client) with an invalid
                   -- signature.

TDの無効の証明書:、:= SEQUENCE OF ExternalPrincipalIdentifier--各ExternalPrincipalIdentifierは--病人がいる証明書(クライアントで、発信する)--署名を特定します。

       KRB5PrincipalName ::= SEQUENCE {
           realm                   [0] Realm,
           principalName           [1] PrincipalName
       }

KRB5PrincipalName:、:= 系列分野[0]分野、principalName[1]PrincipalName

       AD-INITIAL-VERIFIED-CAS ::= SEQUENCE OF
                      ExternalPrincipalIdentifier
                   -- Identifies the certification path based on which
                   -- the client certificate was validated.
                   -- Each ExternalPrincipalIdentifier identifies a CA
                   -- or a CA certificate (thereby its public key).

AD初期の確かめられたCAS:、:= SEQUENCE OF ExternalPrincipalIdentifier--、ベースの証明経路を特定する、どれ、--クライアント証明書は有効にされたか。 -- 各ExternalPrincipalIdentifierはカリフォルニア、またはカリフォルニア証明書(その結果、公開鍵)を特定します。

       PA-PK-AS-REP ::= CHOICE {
          dhInfo                  [0] DHRepInfo,
                   -- Selected when Diffie-Hellman key exchange is
                   -- used.
          encKeyPack              [1] IMPLICIT OCTET STRING,
                   -- Selected when public key encryption is used.
                   -- Contains a CMS type ContentInfo encoded
                   -- according to [RFC3852].
                   -- The contentType field of the type ContentInfo is
                   -- id-envelopedData (1.2.840.113549.1.7.3).
                   -- The content field is an EnvelopedData.
                   -- The contentType field for the type EnvelopedData
                   -- is id-signedData (1.2.840.113549.1.7.2).
                   -- The eContentType field for the inner type
                   -- SignedData (when unencrypted) is
                   -- id-pkinit-rkeyData (1.3.6.1.5.2.3.3) and the
                   -- eContent field contains the DER encoding of the
                   -- type ReplyKeyPack.
                   -- ReplyKeyPack is defined below.
          ...

レップとしてのPA PK:、:= dhInfo0DHRepInfo(ディフィー-ヘルマンの主要な交換が選択されるとき、選択される)は. encKeyPackを使用しました。CHOICE、1IMPLICIT OCTET STRING--公開鍵暗号化がいつ使用されているかを選択する、--、含有、CMSはコード化されたContentInfoをタイプします--RFC3852に従ったこと(タイプContentInfoのcontentType分野はそうである)、イド-envelopedData、(1.2 .840 .113549 .1 .7 .3) --満足している分野はEnvelopedDataです; contentTypeはタイプのためにEnvelopedDataをさばきます--イド-signedDataである、(1.2 .840 .113549 .1 .7 .2) --内側のタイプのためのeContentType分野--SignedData(非暗号化されると)はそうです--、イド-pkinit-rkeyData、(1.3、.6、.1、.5、.2、.3、.3、)、--、eContent分野がDERコード化を含んでいる、--タイプReplyKeyPack--ReplyKeyPackは以下で定義されます。

Zhu & Tung                  Standards Track                    [Page 36]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[36ページ]。

       }

}

       DHRepInfo ::= SEQUENCE {
          dhSignedData            [0] IMPLICIT OCTET STRING,
                   -- Contains a CMS type ContentInfo encoded according
                   -- to [RFC3852].
                   -- The contentType field of the type ContentInfo is
                   -- id-signedData (1.2.840.113549.1.7.2), and the
                   -- content field is a SignedData.
                   -- The eContentType field for the type SignedData is
                   -- id-pkinit-DHKeyData (1.3.6.1.5.2.3.2), and the
                   -- eContent field contains the DER encoding of the
                   -- type KDCDHKeyInfo.
                   -- KDCDHKeyInfo is defined below.
          serverDHNonce           [1] DHNonce OPTIONAL,
                   -- Present if and only if dhKeyExpiration is
                   -- present.
          ...
       }

DHRepInfo:、:= 系列{ 内容分野はSignedDataです。そして、dhSignedData0IMPLICIT OCTET STRING--、含有、CMSタイプContentInfoは一致をコード化しました--RFC3852へのこと(タイプContentInfoのcontentType分野はそうである)、イド-signedData、(1.2 .840 .113549 .1 .7 .2、)--. --タイプSignedDataのためのeContentType分野はそうです; そして、イド-pkinit-DHKeyData、(1.3 .6 .1 .5 .2 .3 .2、)--、eContent分野がDERコード化を含んでいる、--タイプKDCDHKeyInfo--KDCDHKeyInfoが以下で定義される、serverDHNonce、1DHNonce OPTIONAL--、現在、dhKeyExpirationがあります--単に存在しています; }

       KDCDHKeyInfo ::= SEQUENCE {
          subjectPublicKey        [0] BIT STRING,
                   -- The KDC's DH public key.
                   -- The DH public key value is encoded as a BIT
                   -- STRING according to [RFC3279].
          nonce                   [1] INTEGER (0..4294967295),
                   -- Contains the nonce in the pkAuthenticator field
                   -- in the request if the DH keys are NOT reused,
                   -- 0 otherwise.
          dhKeyExpiration         [2] KerberosTime OPTIONAL,
                   -- Expiration time for KDC's key pair,
                   -- present if and only if the DH keys are reused.
                   -- If present, the KDC's DH public key MUST not be
                   -- used past the point of this expiration time.
                   -- If this field is omitted then the serverDHNonce
                   -- field MUST also be omitted.
          ...
       }

KDCDHKeyInfo:、:= 系列{ subjectPublicKey[0]BIT STRING--KDCのDH公開鍵。 -- DH公開鍵価値はBITとしてコード化されます--[RFC3279]に従ったSTRING、一回だけ[1]INTEGER、(0。そして、4294967295)--DHキーが再利用されないなら、pkAuthenticator分野、要求における一回だけを含んでいます--、0. そうでなければ、KerberosTime OPTIONAL(KDCの主要な組満了時間)が提示するdhKeyExpiration[2]、DHキーが再利用される場合にだけ。 -- 存在しているなら、KDCのDH公開鍵は存在しているはずがありません--この満了時間のポイントの先で使用されます。 -- 分野はこれであるならその時、省略されます。serverDHNonce--分野は省略しなければならなくて、また、省略されてください。 ... }

       ReplyKeyPack ::= SEQUENCE {
          replyKey                [0] EncryptionKey,
                   -- Contains the session key used to encrypt the
                   -- enc-part field in the AS-REP, i.e., the
                   -- AS reply key.
          asChecksum              [1] Checksum,
                  -- Contains the checksum of the AS-REQ
                  -- corresponding to the containing AS-REP.
                  -- The checksum is performed over the type AS-REQ.

ReplyKeyPack:、:= AS回答は. asChecksum[1]チェックサムを合わせます--含んでいるAS-REPに対応している、AS-REQのチェックサムを含んでいます。SEQUENCE、replyKey[0]EncryptionKey--、暗号化するのにおいて中古のセッションキーを含んでいる、--、すなわち、AS-REPの分野をenc分けてください--. --チェックサムはタイプAS-REQで実行されます。

Zhu & Tung                  Standards Track                    [Page 37]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[37ページ]。

                  -- The protocol key [RFC3961] of the checksum is the
                  -- replyKey and the key usage number is 6.
                  -- If the replyKey's enctype is "newer" [RFC4120]
                  -- [RFC4121], the checksum is the required
                  -- checksum operation [RFC3961] for that enctype.
                  -- The client MUST verify this checksum upon receipt
                  -- of the AS-REP.
          ...
       }

-- チェックサムのプロトコルキー[RFC3961]がそうである、--replyKeyと主要な用法番号が6である -- replyKeyのenctypeであるなら、「より新しい」[RFC4120]は[RFC4121]、チェックサムが必要であるというそのenctypeのためのチェックサム操作[RFC3961]ですか? -- クライアントはAS-REPの領収書でこのチェックサムについて確かめなければなりません。 }

       TD-DH-PARAMETERS ::= SEQUENCE OF AlgorithmIdentifier
                   -- Each AlgorithmIdentifier specifies a set of
                   -- Diffie-Hellman domain parameters [IEEE1363].
                   -- This list is in decreasing preference order.
       END

TD-DH-パラメタ:、:= SEQUENCE OF AlgorithmIdentifier--AlgorithmIdentifierがセットを指定するそれぞれ--ディフィー-ヘルマンドメインパラメタ[IEEE1363]。 -- このリストは減少している好みの命令にあります。 終わり

Appendix B.  Test Vectors

付録B.テストベクトル

   Function octetstring2key() is defined in Section 3.2.3.1.  This
   section describes a few sets of test vectors that would be useful for
   implementers of octetstring2key().

機能octetstring2key()はセクション3.2.3で.1に定義されます。 このセクションは数セットのoctetstring2key()のimplementersの役に立つテストベクトルについて説明します。

   Set 1:
   =====
   Input octet string x is:

セット1: ===== 入力八重奏ストリングxは以下の通りです。

     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

   Output of K-truncate() when the key size is 32 octets:

-Kについて出力されて、主要なサイズが32の八重奏であるときには()に先端を切らせてください:

     5e e5 0d 67 5c 80 9f e5 9e 4a 77 62 c5 4b 65 83
     75 47 ea fb 15 9b d8 cd c7 5f fc a5 91 1e 4c 41

5e e5 0d67 5c80 9f e5 9e 4a77 62c5 4b65 83 75 47ea fb15 9b d8 cd c7 5f fc a5 91 1e 4c41

Zhu & Tung                  Standards Track                    [Page 38]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[38ページ]。

   Set 2:
   =====
   Input octet string x is:

セット2: ===== 入力八重奏ストリングxは以下の通りです。

     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

   Output of K-truncate() when the key size is 32 octets:

-Kについて出力されて、主要なサイズが32の八重奏であるときには()に先端を切らせてください:

     ac f7 70 7c 08 97 3d df db 27 cd 36 14 42 cc fb
     a3 55 c8 88 4c b4 72 f3 7d a6 36 d0 7d 56 78 7e

36 14 42ccのac f7 70 7c08 97 3d df db27cd fb a3 55c8 88 4c b4 72f3 7d a6 36d0 7d56 78 7e

   Set 3:
   ======
   Input octet string x is:

セット3: ====== 入力八重奏ストリングxは以下の通りです。

     00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
     10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e
     0f 10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d
     0e 0f 10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c
     0d 0e 0f 10 00 01 02 03 04 05 06 07 08 09 0a 0b
     0c 0d 0e 0f 10 00 01 02 03 04 05 06 07 08 09 0a
     0b 0c 0d 0e 0f 10 00 01 02 03 04 05 06 07 08 09
     0a 0b 0c 0d 0e 0f 10 00 01 02 03 04 05 06 07 08

00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08

   Output of K-truncate() when the key size is 32 octets:

-Kについて出力されて、主要なサイズが32の八重奏であるときには()に先端を切らせてください:

     c4 42 da 58 5f cb 80 e4 3b 47 94 6f 25 40 93 e3
     73 29 d9 90 01 38 0d b7 83 71 db 3a cf 5c 79 7e

c4 42da58 5f cb80e4 3b47 94 6f25 40 93e3 73 29d9 90 01 38 0d b7 83 71db 3a Cf5c79 7e

   Set 4:
   =====
   Input octet string x is:

セット4: ===== 入力八重奏ストリングxは以下の通りです。

     00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
     10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e
     0f 10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d
     0e 0f 10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c
     0d 0e 0f 10 00 01 02 03 04 05 06 07 08

00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f10 00 01 02 03 04 05 06 07 08

Zhu & Tung                  Standards Track                    [Page 39]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[39ページ]。

   Output of K-truncate() when the key size is 32 octets:

-Kについて出力されて、主要なサイズが32の八重奏であるときには()に先端を切らせてください:

     00 53 95 3b 84 c8 96 f4 eb 38 5c 3f 2e 75 1c 4a
     59 0e d6 ff ad ca 6f f6 4f 47 eb eb 8d 78 0f fc

00 53 95 3b84c8 96f4 eb38 5c 3f 2e75 1c 4a59 0e d6ff広告ca 6f f6 4f47eb eb 8d78 0f fc

Appendix C.  Miscellaneous Information about Microsoft Windows PKINIT
             Implementations

マイクロソフトWindows PKINIT実装に関する付録のC.の種々雑多な情報

   Earlier revisions of the PKINIT I-D were implemented in various
   releases of Microsoft Windows and deployed in fairly large numbers.
   To enable the community to interoperate better with systems running
   those releases, the following information may be useful.

PKINIT I-Dの以前の改正は、マイクロソフトWindowsの様々なリリースで実装されて、かなり大きい数で配布されました。 システムがそれらのリリース、以下の情報を実行している状態で共同体が、よりよく共同利用するのを可能にするのは役に立つかもしれません。

   KDC certificates issued by Windows 2000 Enterprise CAs contain a
   dNSName SAN with the DNS name of the host running the KDC, and the
   id-kp-serverAuth EKU [RFC3280].

Windows2000エンタープライズCAsによって発行されたKDC証明書はホストのDNS名がKDCを実行しているdNSName SAN、およびイド-kp-serverAuth EKU[RFC3280]を含んでいます。

   KDC certificates issued by Windows 2003 Enterprise CAs contain a
   dNSName SAN with the DNS name of the host running the KDC, the id-
   kp-serverAuth EKU, and the id-ms-kp-sc-logon EKU.

Windows2003エンタープライズCAsによって発行されたKDC証明書はホストのDNS名がKDCを実行しているdNSName SAN、イドkp-serverAuth EKU、およびイドms-kp ScログオンEKUを含んでいます。

   It is anticipated that the next release of Windows is already too far
   along to allow it to support the issuing KDC certificates with id-
   pkinit-san SAN as specified in this RFC.  Instead, they will have a
   dNSName SAN containing the domain name of the KDC, and the intended
   purpose of these KDC certificates will be restricted by the presence
   of the id-pkinit-KPKdc EKU and id-kp-serverAuth EKU.

Windowsの次のリリースが発行がKDCであるとサポートするのを許容するのが既に、また、はるかにずっと、イドpkinitさんと共にこのRFCで指定されているとしてSANを証明するということであると予期されます。 代わりに、彼らはKDCのドメイン名を含むdNSName SANを持つでしょう、そして、これらのKDC証明書の本来の目的はイド-pkinit-KPKdc EKUとイド-kp-serverAuth EKUの存在によって制限されるでしょう。

   In addition to checking that the above are present in a KDC
   certificate, Windows clients verify that the issuer of the KDC
   certificate is one of a set of allowed issuers of such certificates,
   so those wishing to issue KDC certificates need to configure their
   Windows clients appropriately.

上記がKDC証明書に存在しているのをチェックすることに加えてウインドウズのクライアントが、KDC証明書の発行人がそのような証明書の許容発行人の1セットの1つであることを確かめるので、KDCに証明書を発行したがっている人は、適切に彼らのウインドウズのクライアントを構成する必要があります。

   Client certificates accepted by Windows 2000 and Windows 2003 Server
   KDCs must contain an id-ms-san-sc-logon-upn (1.3.6.1.4.1.311.20.2.3)
   SAN and the id-ms-kp-sc-logon EKU.  The id-ms-san-sc-logon-upn SAN
   contains a UTF8-encoded string whose value is that of the Directory
   Service attribute UserPrincipalName of the client account object, and
   the purpose of including the id-ms-san-sc-logon-upn SAN in the client
   certificate is to validate the client mapping (in other words, the
   client's public key is bound to the account that has this
   UserPrincipalName value).

Windows2000によって受け入れられたクライアント証明書とWindows2003Server KDCsがイドms Scログオンupnさんを含まなければならない、(1.3 .6 .1 .4 .1 .311 .20 .2 .3) SANとイドms-kp ScログオンEKU。 イドがさんScログオンupn SANをmsしているのが値がクライアントアカウントオブジェクトのディレクトリサービス属性UserPrincipalNameのものであるUTF8によってコード化されたストリングを含んでいて、クライアント証明書が有効にすることになっているイドがさんScログオンupn SANをmsしているコネを含む目的はクライアントマッピングを含んでいます(言い換えれば、クライアントの公開鍵はこのUserPrincipalName値を持っているアカウントに縛られます)。

   It should be noted that all Microsoft Kerberos realm names are
   domain-style realm names and strictly in uppercase.  In addition, the
   UserPrincipalName attribute is globally unique in Windows 2000 and
   Windows 2003.

ドメインスタイル分野名と厳密な大文字にはすべてのマイクロソフトケルベロス分野名があることに注意されるべきです。 さらに、UserPrincipalName属性はWindows2000とWindows2003でグローバルにユニークです。

Zhu & Tung                  Standards Track                    [Page 40]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[40ページ]。

Authors' Addresses

作者のアドレス

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

ラリー朱マイクロソフト社1マイクロソフト、道のワシントン98052レッドモンド(米国)

   EMail: lzhu@microsoft.com

メール: lzhu@microsoft.com

   Brian Tung
   Aerospace Corporation
   2350 E. El Segundo Blvd.
   El Segundo, CA  90245
   US

ブライアンタン航空宇宙社2350のE.エルセガンドBlvd. エルセガンド、カリフォルニア90245米国

   EMail: brian@aero.org

メール: brian@aero.org

Zhu & Tung                  Standards Track                    [Page 41]

RFC 4556                         PKINIT                        June 2006

朱とタンStandardsはPKINIT2006年6月にRFC4556を追跡します[41ページ]。

Full Copyright Statement

完全な著作権宣言文

   Copyright (C) The Internet Society (2006).

Copyright(C)インターネット協会(2006)。

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

このドキュメントはBCP78に含まれた権利、ライセンス、および制限を受けることがあります、そして、そこに詳しく説明されるのを除いて、作者は彼らのすべての権利を保有します。

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

このドキュメントと「そのままで」という基礎と貢献者、その人が代表する組織で提供するか、または後援されて、インターネット協会とインターネット・エンジニアリング・タスク・フォースはすべての保証を放棄します、と急行ORが含意したということであり、他を含んでいて、ここに含まれて、情報の使用がここに侵害しないどんな保証も少しもまっすぐになるという情報か市場性か特定目的への適合性のどんな黙示的な保証。

Intellectual Property

知的所有権

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

IETFはどんなIntellectual Property Rightsの正当性か範囲、実現に関係すると主張されるかもしれない他の権利、本書では説明された技術の使用またはそのような権利の下におけるどんなライセンスも利用可能であるかもしれない、または利用可能でないかもしれない範囲に関しても立場を全く取りません。 または、それはそれを表しません。どんなそのような権利も特定するためのどんな独立している努力もしました。 BCP78とBCP79でRFCドキュメントの権利に関する手順に関する情報を見つけることができます。

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

IPR公開のコピーが利用可能に作られるべきライセンスの保証、または一般的な免許を取得するのが作られた試みの結果をIETF事務局といずれにもしたか、または http://www.ietf.org/ipr のIETFのオンラインIPR倉庫からこの仕様のimplementersかユーザによるそのような所有権の使用のために許可を得ることができます。

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.

IETFはこの規格を実行するのに必要であるかもしれない技術をカバーするかもしれないどんな著作権もその注目していただくどんな利害関係者、特許、特許出願、または他の所有権も招待します。 ietf-ipr@ietf.org のIETFに情報を記述してください。

Acknowledgement

承認

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).

RFC Editor機能のための基金はIETF Administrative Support Activity(IASA)によって提供されます。

Zhu & Tung                  Standards Track                    [Page 42]

朱とタン標準化過程[42ページ]

一覧

 RFC 1〜100  RFC 1401〜1500  RFC 2801〜2900  RFC 4201〜4300 
 RFC 101〜200  RFC 1501〜1600  RFC 2901〜3000  RFC 4301〜4400 
 RFC 201〜300  RFC 1601〜1700  RFC 3001〜3100  RFC 4401〜4500 
 RFC 301〜400  RFC 1701〜1800  RFC 3101〜3200  RFC 4501〜4600 
 RFC 401〜500  RFC 1801〜1900  RFC 3201〜3300  RFC 4601〜4700 
 RFC 501〜600  RFC 1901〜2000  RFC 3301〜3400  RFC 4701〜4800 
 RFC 601〜700  RFC 2001〜2100  RFC 3401〜3500  RFC 4801〜4900 
 RFC 701〜800  RFC 2101〜2200  RFC 3501〜3600  RFC 4901〜5000 
 RFC 801〜900  RFC 2201〜2300  RFC 3601〜3700  RFC 5001〜5100 
 RFC 901〜1000  RFC 2301〜2400  RFC 3701〜3800  RFC 5101〜5200 
 RFC 1001〜1100  RFC 2401〜2500  RFC 3801〜3900  RFC 5201〜5300 
 RFC 1101〜1200  RFC 2501〜2600  RFC 3901〜4000  RFC 5301〜5400 
 RFC 1201〜1300  RFC 2601〜2700  RFC 4001〜4100  RFC 5401〜5500 
 RFC 1301〜1400  RFC 2701〜2800  RFC 4101〜4200 

スポンサーリンク

dispatch.php

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る