Internet Engineering Task Force (IETF) S. Turner Request for Comments: 5958 IECA Obsoletes: 5208 August 2010 Category: Standards Track ISSN: 2070-1721
Asymmetric Key Packages
Abstract
抽象
This document defines the syntax for private-key information and a content type for it. Private-key information includes a private key for a specified public-key algorithm and a set of attributes. The Cryptographic Message Syntax (CMS), as defined in RFC 5652, can be used to digitally sign, digest, authenticate, or encrypt the asymmetric key format content type. This document obsoletes RFC 5208.
この文書では、プライベート・キー情報およびそのためのコンテンツ・タイプの構文を定義します。プライベート・キー情報が指定された公開鍵アルゴリズムと属性の集合のための秘密鍵が含まれています。暗号メッセージ構文(CMS)、RFC 5652で定義されるように、デジタル、署名ダイジェスト認証、または非対称キーフォーマットコンテンツタイプを暗号化するために使用することができます。この文書はRFC 5208を廃止します。
Status of This Memo
このメモのステータス
This is an Internet Standards Track document.
これは、インターネット標準化過程文書です。
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.
このドキュメントはインターネットエンジニアリングタスクフォース(IETF)の製品です。これは、IETFコミュニティの総意を表しています。これは、公開レビューを受けており、インターネットエンジニアリング運営グループ(IESG)によって公表のために承認されています。インターネット標準の詳細については、RFC 5741のセクション2で利用可能です。
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc5958.
このドキュメントの現在の状態、任意の正誤表、そしてどのようにフィードバックを提供するための情報がhttp://www.rfc-editor.org/info/rfc5958で取得することができます。
Copyright Notice
著作権表示
Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved.
著作権(C)2010 IETF信託とドキュメントの作成者として特定の人物。全著作権所有。
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
この文書では、BCP 78と、この文書の発行日に有効なIETFドキュメント(http://trustee.ietf.org/license-info)に関連IETFトラストの法律の規定に従うものとします。彼らは、この文書に関してあなたの権利と制限を説明するように、慎重にこれらの文書を確認してください。コードコンポーネントは、トラスト法規定のセクションで説明4.eおよび簡体BSDライセンスで説明したように、保証なしで提供されているよう簡体BSDライセンスのテキストを含める必要があり、この文書から抽出されました。
This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English.
この材料の一部がIETFトラストにこのような材料の変更を許可する権利を与えられていない可能性がありますにこの文書は、2008年、IETFドキュメントまたは11月10日以前に発行または公開さIETF貢献から著作権を支配する者(複数可)材料を含んでいてもよいですIETF標準化プロセスの外。そのような材料の著作権を管理者(単数または複数)から適切なライセンスを取得することなく、この文書は、IETF標準化過程の外側修正されないかもしれません、そして、それの派生物は、IETF標準化過程の外側に作成されない場合があり、それをフォーマットする以外出版RFCとして、英語以外の言語に翻訳します。
This document defines the syntax for private-key information and a Cryptographic Message Syntax (CMS) [RFC5652] content type for it. Private-key information includes a private key for a specified public-key algorithm and a set of attributes. The CMS can be used to digitally sign, digest, authenticate, or encrypt the asymmetric key format content type. This document obsoletes PKCS #8 v1.2 [RFC5208].
この文書では、プライベート・キー情報およびそのための暗号メッセージ構文(CMS)[RFC5652]コンテンツタイプのための構文を定義します。プライベート・キー情報が指定された公開鍵アルゴリズムと属性の集合のための秘密鍵が含まれています。 CMSは、デジタル署名、ダイジェスト、認証、または非対称鍵形式のコンテンツタイプを暗号化するために使用することができます。この文書では、PKCS#8 V1.2 [RFC5208]を廃止します。
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].
この文書のキーワード "MUST"、 "MUST NOT"、 "REQUIRED"、、、、 "べきではない" "べきである" "ないもの" "ものとし"、 "推奨"、 "MAY"、および "OPTIONAL" はあります[RFC2119]に記載されているように解釈されます。
The key package is defined using ASN.1 [X.680], [X.681], [X.682], and [X.683].
キーパッケージは、[X.683] [X.682]、[X.681]、[X.680] ASN.1を使用して、そして定義されています。
The following summarizes the updates to [RFC5208]:
以下は、[RFC5208]への更新をまとめたものです。
- Changed the name "PrivateKeyInfo" to "OneAsymmetricKey". This reflects the addition of the publicKey field to allow both parts of the asymmetric key to be conveyed separately. Not all algorithms will use both fields; however, the publicKey field was added for completeness.
- は「PrivateKeyInfoで」へ「OneAsymmetricKey」名前を変更しました。これは、非対称鍵の両方の部分を別々に搬送できるように公開鍵フィールドの追加を反映しています。いないすべてのアルゴリズムは、両方のフィールドを使用します。しかし、公開鍵フィールドは、完全を期すために追加されました。
- Defined Asymmetric Key Package CMS content type.
- 非対称キーパッケージCMSのコンテンツタイプを定義しました。
- Removed redundant IMPLICIT from attributes.
- 属性から冗長IMPLICIT削除しました。
- Added publicKey to OneAsymmetricKey and updated the version number.
- OneAsymmetricKeyに追加公開し、更新されたバージョン番号。
- Added that PKCS #9 attributes may be supported.
- PKCS#9属性をサポートすることができることを追加しました。
- Added discussion of compatibility with other private-key formats.
- 他のプライベート・キーのフォーマットとの互換性についての議論を追加しました。
- Added requirements for encoding rule set.
- エンコーディングルールセットの要件を追加しました。
- Changed imports from PKCS #5 to [RFC5912] and [RFC5911].
- [RFC5912]及び[RFC5911]にPKCS#5から変更輸入。
- Replaced ALGORITHM-IDENTIFIER with ALGORITHM from [RFC5912].
- [RFC5912]のアルゴリズムで置き換えアルゴリズム識別子。
- Registers application/pkcs8 media type and .p8 file extension.
- レジスタアプリケーション/ PKCS8メディアタイプと.p8ファイル拡張子。
The asymmetric key package CMS content type is used to transfer one or more plaintext asymmetric keys from one party to another. An asymmetric key package MAY be encapsulated in one or more CMS protecting content types (see Section 4). Earlier versions of this specification [RFC5208] did not specify a particular encoding rule set, but generators SHOULD use DER [X.690] and receivers MUST support BER [X.690], which also includes DER [X.690].
非対称鍵パッケージCMSのコンテンツタイプは、別の関係者から一つ以上の平文非対称鍵を転送するために使用されます。非対称鍵パッケージは、コンテンツの種類を保護する1つのまたは複数のCMSに封入されてもよい(第4章を参照してください)。本明細書[RFC5208]の以前のバージョンは特定の符号化ルールセットを指定していないが、発電機は、DER [X.690]を使用しなければならず、受信機も含むBER [X.690]、DER [X.690]サポートしなければなりません。
The asymmetric key package content type has the following syntax:
非対称キーパッケージのコンテンツタイプの構文は次のとおりです。
ct-asymmetric-key-package CONTENT-TYPE ::= { AsymmetricKeyPackage IDENTIFIED BY id-ct-KP-aKeyPackage }
id-ct-KP-aKeyPackage OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) dod(2) infosec(1) formats(2) key-package-content-types(78) 5 }
AsymmetricKeyPackage ::= SEQUENCE SIZE (1..MAX) OF OneAsymmetricKey
OneAsymmetricKey ::= SEQUENCE { version Version, privateKeyAlgorithm PrivateKeyAlgorithmIdentifier, privateKey PrivateKey, attributes [0] Attributes OPTIONAL, ..., [[2: publicKey [1] PublicKey OPTIONAL ]], ... }
PrivateKeyInfo ::= OneAsymmetricKey
-- PrivateKeyInfo is used by [P12]. If any items tagged as version -- 2 are used, the version must be v2, else the version should be -- v1. When v1, PrivateKeyInfo is the same as it was in [RFC5208].
- PrivateKeyInfoでは、[P12]によって使用されます。バージョンとしてタグ付けされた任意の項目場合 - V1 - 2が使用されている、バージョンがV2、他のバージョンがあるべきである必要があります。 V1は、PrivateKeyInfoでは、[RFC5208]であったものと同じである場合。
Version ::= INTEGER { v1(0), v2(1) } (v1, ..., v2)
PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier { PUBLIC-KEY, { PrivateKeyAlgorithms } }
PrivateKey ::= OCTET STRING -- Content varies based on type of key. The -- algorithm identifier dictates the format of -- the key.
PublicKey ::= BIT STRING -- Content varies based on type of key. The -- algorithm identifier dictates the format of -- the key.
Attributes ::= SET OF Attribute { { OneAsymmetricKeyAttributes } }
The AsymmetricKeyPackage contains one or more OneAsymmetricKey elements.
AsymmetricKeyPackageは、一つ以上のOneAsymmetricKeyの要素が含まれています。
The syntax of OneAsymmetricKey accommodates a version number, an indication of the asymmetric algorithm to be used with the private key, a private key, optional keying material attributes (e.g., userCertificate from [X.520]), and an optional public key. In general, either the public key or the certificate will be present. In very rare cases will both the public key and the certificate be present as this includes two copies of the public key. OneAsymmetricKey renames the PrivateKeyInfo syntax defined in [RFC5208]. The new name better reflects the ability to carry both private- and public-key components. Backwards compatibility with the original PrivateKeyInfo is preserved via version number. The fields in OneAsymmetricKey are used as follows:
OneAsymmetricKeyの構文は、バージョン番号、秘密鍵で使用する非対称アルゴリズム、秘密鍵、オプションの鍵材料属性(例えば、のuserCertificate [X.520]から)の指示、及び任意の公開鍵を収容します。一般的には、公開鍵または証明書のいずれかが存在することになります。これは、公開鍵の2つのコピーを含んでいるように非常にまれなケースでは、公開鍵と証明書の両方が存在することになります。 OneAsymmetricKeyは、[RFC5208]で定義されPrivateKeyInfoで構文の名前を変更します。より優れた新しい名前は、民間と公開鍵の両方のコンポーネントを運ぶ能力を反映しています。後方原PrivateKeyInfoでとの互換性は、バージョン番号を介して保存されます。次のようにOneAsymmetricKey内のフィールドが使用されます。
- version identifies the version of OneAsymmetricKey. If publicKey is present, then version is set to v2 else version is set to v1.
- バージョンはOneAsymmetricKeyのバージョンを識別する。公開鍵が存在する場合、バージョンはV1に設定されているv2の他のバージョンに設定されています。
- privateKeyAlgorithm identifies the private-key algorithm and optionally contains parameters associated with the asymmetric key pair. The algorithm is identified by an object identifier (OID) and the format of the parameters depends on the OID, but the PrivateKeyAlgorithms information object set restricts the permissible OIDs. The value placed in privateKeyAlgorithmIdentifier is the value an originator would apply to indicate which algorithm is to be used with the private key.
- privateKeyAlgorithmは秘密鍵アルゴリズムを識別し、必要に応じて非対称鍵ペアに関連するパラメータを含んでいます。アルゴリズムは、オブジェクト識別子(OID)によって識別されたパラメータのフォーマットは、OIDに依存するが、PrivateKeyAlgorithms情報オブジェクトセットが許容OIDを制限します。 privateKeyAlgorithmIdentifierに配置された値は、発信者が秘密鍵で使用されるべきアルゴリズムを示すために、適用される値です。
- privateKey is an OCTET STRING that contains the value of the private key. The interpretation of the content is defined in the registration of the private-key algorithm. For example, a DSA key is an INTEGER, an RSA key is represented as RSAPrivateKey as defined in [RFC3447], and an Elliptic Curve Cryptography (ECC) key is represented as ECPrivateKey as defined in [RFC5915].
- のPrivateKeyは、プライベートキーの値が含まれているオクテット文字列です。コンテンツの解釈は、秘密鍵アルゴリズムの登録で定義されています。たとえば、DSAキーは、RSAキーは[RFC3447]で定義されるようRSAPrivateKeyとして表され、そして、[RFC5915]で定義される楕円曲線暗号(ECC)キーがECPrivateKeyとして表される整数です。
- attributes is OPTIONAL. It contains information corresponding to the public key (e.g., certificates). The attributes field uses the class ATTRIBUTE which is restricted by the OneAsymmetricKeyAttributes information object set. OneAsymmetricKeyAttributes is an open ended set in this document. Others documents can constrain these values. Attributes from [RFC2985] MAY be supported.
- 属性はオプションです。これは、公開鍵(例えば、証明書)に対応する情報が含まれています。属性フィールドはOneAsymmetricKeyAttributes情報オブジェクトセットによって制限されているクラス属性を使用しています。 OneAsymmetricKeyAttributesは、この文書に記載されているオープンエンドのセットです。その他の文書は、これらの値を制約することができます。 [RFC2985]からの属性がサポートされるかもしれません。
- publicKey is OPTIONAL. When present, it contains the public key encoded in a BIT STRING. The structure within the BIT STRING, if any, depends on the privateKeyAlgorithm. For example, a DSA key is an INTEGER. Note that RSA public keys are included in RSAPrivateKey (i.e., n and e are present), as per [RFC3447], and ECC public keys are included in ECPrivateKey (i.e., in the publicKey field), as per [RFC5915].
- 公開はオプションです。存在する場合、それはビット列のエンコードされた公開鍵が含まれています。ビット列内の構造は、もしあれば、privateKeyAlgorithmに依存します。たとえば、DSAキーはINTEGERです。 RSA公開鍵は、[RFC5915]に従って(即ち、nおよびeが存在している)、[RFC3447]の通り、およびECC公開鍵が(すなわち、公開鍵フィールドに)ECPrivateKeyに含まれ、RSAPrivateKeyに含まれていることに留意されたいです。
This section gives the syntax for encrypted private-key information, which is used by [P12].
このセクションでは、[P12]で使用される暗号化された秘密鍵情報、の構文を示します。
Encrypted private-key information shall have ASN.1 type EncryptedPrivateKeyInfo:
暗号化された秘密鍵情報は、ASN.1タイプEncryptedPrivateKeyInfoをしなければなりません。
EncryptedPrivateKeyInfo ::= SEQUENCE { encryptionAlgorithm EncryptionAlgorithmIdentifier, encryptedData EncryptedData }
EncryptionAlgorithmIdentifier ::= AlgorithmIdentifier { CONTENT-ENCRYPTION, { KeyEncryptionAlgorithms } }
EncryptedData ::= OCTET STRING
The fields in EncryptedPrivateKeyInfo are used as follows:
次のようにEncryptedPrivateKeyInfoを内のフィールドが使用されます。
- encryptionAlgorithm identifies the algorithm under which the private-key information is encrypted.
- encryptionAlgorithmは、秘密鍵情報が暗号化されて、その下のアルゴリズムを特定します。
- encryptedData is the result of encrypting the private-key information (i.e., the PrivateKeyInfo).
- はEncryptedDataは秘密鍵情報を暗号化した結果である(即ち、PrivateKeyInfoで)。
The encryption process involves the following two steps:
暗号化プロセスは、以下の2つのステップがあります。
1. The private-key information is encoded, yielding an octet string. Generators SHOULD use DER [X.690] and receivers MUST support BER [X.690], which also includes DER [X.690].
1.秘密鍵情報は、オクテット文字列を得、符号化されています。発電機は、DER [X.690]を使用しなければならず、受信機はまた、BER [X.690]、DER [X.690]サポートしなければなりません。
2. The result of step 1 is encrypted with the secret key to give an octet string, the result of the encryption process.
2.ステップ1の結果は、オクテット文字列、暗号化プロセスの結果を与えることを秘密鍵で暗号化されています。
CMS protecting content types, [RFC5652] and [RFC5083], can be used to provide security to the AsymmetricKeyPackage:
コンテンツタイプ、[RFC5652]及び[RFC5083]を保護CMSは、AsymmetricKeyPackageにセキュリティを提供するために用いることができます。
- SignedData can be used to apply a digital signature to the AsymmetricKeyPackage.
- のSignedDataはAsymmetricKeyPackageにデジタル署名を適用するために使用することができます。
- EncryptedData can be used to encrypt the AsymmetricKeyPackage with symmetric encryption, where the sender and the receiver already share the necessary encryption key.
- はEncryptedDataは、送信側と受信側が既に必要な暗号鍵を共有対称暗号化とAsymmetricKeyPackageを暗号化するために使用することができます。
- EnvelopedData can be used to encrypt the AsymmetricKeyPackage with symmetric encryption, where the sender and the receiver do not share the necessary encryption key.
- EnvelopedDataのは、送信者と受信者が必要な暗号鍵を共有していない対称暗号化、とAsymmetricKeyPackageを暗号化するために使用することができます。
- AuthenticatedData can be used to protect the AsymmetricKeyPackage with message authentication codes, where key management information is handled in a manner similar to EnvelopedData.
- 認証されたデータは、鍵管理情報がEnvelopedDataのと同様の方法で処理されるメッセージ認証コード、非対称キーパッケージを保護するために使用することができます。
- AuthEnvelopedData can be used to protect the AsymmetricKeyPackage with algorithms that support authenticated encryption, where key management information is handled in a manner similar to EnvelopedData.
- AuthEnvelopedDataは、鍵管理情報がEnvelopedDataのと同様の方法で処理される認証暗号化をサポートするアルゴリズムとAsymmetricKeyPackageを保護するために使用することができます。
This document defines the syntax and the semantics for a content type that exchanges asymmetric private keys. There are two other formats that have been used for the transport of asymmetric private keys:
この文書では、非対称秘密鍵を交換し、コンテンツタイプの構文とセマンティクスを定義します。非対称秘密鍵の輸送のために使用されている他の二つの形式があります:
- Personal Information Exchange (PFX) Syntax Standard [P12], which is more commonly referred to as PKCS #12 or simply P12, is a transfer syntax for personal identity information, including private keys, certificates, miscellaneous secrets, and extensions. OneAsymmetricKey, PrivateKeyInfo, and EncryptedPrivateKeyInfo can be carried in a P12 message. The private key information, OneAsymmetricKey and PrivateKeyInfo, are carried in the P12 keyBag BAG-TYPE. EncryptedPrivateKeyInfo is carried in the P12 pkcs8ShroudedKeyBag BAG-TYPE. In current implementations, the file extensions .pfx and .p12 can be used interchangeably.
- より一般的にPKCS#12または単にP12と呼ばれている個人情報交換(PFX)構文標準[P12]は、秘密鍵、証明書、その他の秘密、および拡張を含む個人識別情報のための転送構文です。 OneAsymmetricKey、PrivateKeyInfoで、そしてEncryptedPrivateKeyInfoをはP12メッセージの中で実施することができます。秘密鍵情報、OneAsymmetricKeyとPrivateKeyInfoでは、P12のkeyBagのBAG-TYPEに搭載されています。 EncryptedPrivateKeyInfoをはP12のpkcs8ShroudedKeyBagのBAG-TYPEで運ばれます。現在の実装では、ファイルの拡張子は.PFXと.P12は、交換可能に使用することができます。
- Microsoft's private-key proprietary transfer syntax. The .pvk file extension is used for local storage.
- マイクロソフトの秘密鍵の独自の転送構文。 .pvkファイルのファイル拡張子は、ローカルストレージに使用されます。
The .pvk and .p12/.pfx formats are not interchangeable; however, conversion tools exist to convert from one format to another.
.pvkファイルと.P12 / .PFXフォーマットは互換性がありません。ただし、変換ツールは、一つのフォーマットから別のものに変換するために存在します。
To extract the private-key information from the AsymmetricKeyPackage, the encapsulating layers need to be removed. At a minimum, the outer ContentInfo [RFC5652] layer needs to be removed. If the AsymmetricKeyPackage is encapsulated in a SignedData [RFC5652], then the SignedData and EncapsulatedContentInfo layers [RFC5652] also need to be removed. The same is true for EnvelopedData, EncryptedData, and AuthenticatedData all from [RFC5652] as well as AuthEnvelopedData from [RFC5083]. Once all the outer layers are removed, there are as many sets of private-key information as there are OneAsymmetricKey structures. OneAsymmetricKey and PrivateKeyInfo are the same structure; therefore, either can be saved as a .p8 file or copied in to the P12 KeyBag BAG-TYPE. Removing encapsulating security layers will invalidate any signature and may expose the key to unauthorized disclosure.
AsymmetricKeyPackageから秘密鍵の情報を抽出するには、封止層を除去する必要があります。最低でも、外側ContentInfo [RFC5652]層を除去する必要があります。 AsymmetricKeyPackageはのSignedData [RFC5652]の中にカプセル化されている場合、のSignedDataとEncapsulatedContentInfo層[RFC5652]も除去する必要があります。同じことが[RFC5083]から[RFC5652]からのすべてのEnvelopedDataの、はEncryptedData、及びAuthenticatedDataのための真ならびにAuthEnvelopedDataあります。すべての外側の層が削除されるとOneAsymmetricKey構造があるとして、秘密鍵の情報として、多くのセットがあります。 OneAsymmetricKeyとPrivateKeyInfoでは同じ構造です。従って、いずれかが.p8ファイルとして保存またはP12 KeyBagの袋型にコピーすることができます。カプセル化セキュリティ層を除去しても、署名が無効になり、不正開示の鍵を公開することができます。
.p8 files are sometimes PEM-encoded. When .p8 files are PEM encoded they use the .pem file extension. PEM encoding is either the Base64 encoding, from Section 4 of [RFC4648], of the DER-encoded EncryptedPrivateKeyInfo sandwiched between:
.p8ファイルは時々PEMエンコードされています。 .p8ファイルがある場合PEMは、彼らが.pemファイル拡張子を使用してエンコードされました。 PEM符号化は[RFC4648]のセクション4から、間に挟まれたDERエンコードEncryptedPrivateKeyInfoをから、Base64エンコーディングのいずれかです。
-----BEGIN ENCRYPTED PRIVATE KEY----- -----END ENCRYPTED PRIVATE KEY-----
or the Base64 encoding, see Section 4 of [RFC4648], of the DER-encoded PrivateKeyInfo sandwiched between:
またはBase64エンコードは、間に挟まれたDERエンコードPrivateKeyInfoでの、[RFC4648]のセクション4を参照してください。
-----BEGIN PRIVATE KEY----- -----END PRIVATE KEY-----
Protection of the private-key information is vital to public-key cryptography. Disclosure of the private-key material to another entity can lead to masquerades. The encryption algorithm used in the encryption process must be as 'strong' as the key it is protecting.
秘密鍵情報の保護は、公開鍵暗号方式に不可欠です。別のエンティティへの秘密鍵材料の開示は、なりすましにつながることができます。暗号化プロセスで使用される暗号化アルゴリズムは、それが保護しているキーと「強い」としてでなければなりません。
The asymmetric key package contents are not protected. This content type can be combined with a security protocol to protect the contents of the package.
非対称キーパッケージの内容は保護されていません。このコンテンツタイプは、パッケージの内容を保護するためのセキュリティプロトコルと組み合わせることができます。
This document makes use of object identifiers to identify a CMS content type and the ASN.1 module found in Appendix A. The CMS content type OID is registered in a DoD arc. The ASN.1 module OID is registered in an arc delegated by RSADSI to the SMIME Working Group. No further action by IANA is necessary for this document or any anticipated updates.
この文書は、オブジェクト識別子の使用は、CMSコンテンツタイプOIDはDoDの円弧に登録されている付録Aに見出さCMSコンテンツタイプとASN.1モジュールを識別することができます。 ASN.1モジュールのOIDはSMIMEワーキンググループにRSADSIによって委任アークに登録されています。 IANAによってそれ以上のアクションは、この文書または任意の予想されるアップデートの必要はありません。
This specification also defines a new media subtype that IANA has registered at http://www.iana.org/.
また、この仕様はIANAがhttp://www.iana.org/で登録した新しいメディアサブタイプを定義します。
Type name: application
型名:アプリケーション
Subtype name: pkcs8
サブタイプ名:PKCS8
Required parameters: None
必須パラメータ:なし
Optional parameters: None
オプションのパラメータ:なし
Encoding considerations: binary
エンコードの考慮事項:バイナリ
Security considerations: Carries a cryptographic private key. See section 6.
セキュリティの考慮事項:暗号の秘密鍵を運びます。セクション6を参照してください。
Interoperability considerations:
相互運用性の考慮事項:
The PKCS #8 object inside this media type MUST be DER-encoded PrivateKeyInfo.
Published specification: RFC 5958
公開された仕様:RFC 5958
Applications which use this media type:
このメディアタイプを使用するアプリケーション:
Any MIME-compliant transport that processes asymmetric keys.
非対称鍵を処理し、任意のMIME準拠の輸送。
Additional information:
追加情報:
Magic number(s): None File extension(s): .p8 Macintosh File Type Code(s):
マジックナンバー(S):なしファイルの拡張子(S):.p8マッキントッシュファイルタイプコード(S):
Person & email address to contact for further information:
詳細のために連絡する人とEメールアドレス:
Sean Turner <turners@ieca.com>
ショーン・ターナー<turners@ieca.com>
Restrictions on usage: none
使用に関する制限事項:なし
Author:
著者:
Sean Turner <turners@ieca.com>
ショーン・ターナー<turners@ieca.com>
Intended usage: COMMON
意図している用法:COMMON
Change controller:
コントローラを変更します。
The IESG
IESG
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2119]ブラドナーの、S.、 "要件レベルを示すためにRFCsにおける使用のためのキーワード"、BCP 14、RFC 2119、1997年3月。
[RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data Encodings", RFC 4648, October 2006.
[RFC4648] Josefsson氏、S.、 "Base16、Base32、およびBase64でデータエンコーディング"、RFC 4648、2006年10月。
[RFC5652] Housley, R., "Cryptographic Message Syntax (CMS)", STD 70, RFC 5652, September 2009.
[RFC5652] Housley氏、R.、 "暗号メッセージ構文(CMS)"、STD 70、RFC 5652、2009年9月。
[RFC5911] Hoffman, P. and J. Schaad, "New ASN.1 Modules for Cryptographic Message Syntax (CMS) and S/MIME", RFC 5911, June 2010.
[RFC5911]ホフマン、P.及びJ. Schaad、 "暗号メッセージ構文(CMS)とS / MIMEのための新しいASN.1モジュール"、RFC 5911、2010年6月。
[RFC5912] Hoffman, P. and J. Schaad, "New ASN.1 Modules for the Public Key Infrastructure Using X.509 (PKIX)", RFC 5912, June 2010.
[RFC5912]ホフマン、P.およびJ. Schaad、RFC 5912、2010年6月 "公開鍵インフラストラクチャの使用X.509(PKIX)のための新しいASN.1モジュール"。
[X.680] ITU-T Recommendation X.680 (2002) | ISO/IEC 8824-1:2002. Information Technology - Abstract Syntax Notation One.
[X.680] ITU-T勧告X.680(2002)| ISO / IEC 8824から1:2002。情報技術 - 抽象構文記法1。
[X.681] ITU-T Recommendation X.681 (2002) | ISO/IEC 8824-2:2002. Information Technology - Abstract Syntax Notation One: Information Object Specification.
[X.681] ITU-T勧告X.681(2002)| ISO / IEC 8824から2:2002。情報技術 - 抽象構文記法1:情報オブジェクトの仕様。
[X.682] ITU-T Recommendation X.682 (2002) | ISO/IEC 8824-3:2002. Information Technology - Abstract Syntax Notation One: Constraint Specification.
[X.682] ITU-T勧告X.682(2002)| ISO / IEC 8824から3:2002。情報技術 - 抽象構文記法1:制約の仕様。
[X.683] ITU-T Recommendation X.683 (2002) | ISO/IEC 8824-4:2002. Information Technology - Abstract Syntax Notation One: Parameterization of ASN.1 Specifications.
[X.683] ITU-T勧告X.683(2002)| ISO / IEC 8824から4:2002。情報技術 - 抽象構文記法1:ASN.1仕様のパラメータ化。
[X.690] 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).
[X.690] ITU-T勧告X.690(2002)| ISO / IEC 8825から1:2002。情報技術 - ASN.1エンコーディング規則:基本符号化規則(BER)の仕様、Canonicalの符号化規則(CER)、および顕著な符号化規則(DER)。
[P12] RSA Laboratories, "PKCS #12 v1.0: Personal Information Exchange Syntax", June 1999.
[P12] RSA Laboratories社、 "PKCS#12 v1.0を:個人情報交換構文"、1999年6月。
[RFC2985] Nystrom, M. and B. Kaliski, "PKCS #9: Selected Object Classes and Attribute Types Version 2.0", RFC 2985, November 2000.
[RFC2985] Nystrom、M.とB. Kaliski、 "PKCS#9:選択したオブジェクトのクラスと属性タイプバージョン2.0"、RFC 2985、2000年11月。
[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"、RFC 3447、2003年2月。
[RFC5083] Housley, R., "Cryptographic Message Syntax (CMS) Authenticated-Enveloped-Data Content Type", RFC 5083, November 2007.
[RFC5083] Housley氏、R.、 "暗号メッセージ構文(CMS)認証エンベロープ・データコンテンツの種類"、RFC 5083、2007年11月。
[RFC5208] Kaliski, B., "Public-Key Cryptography Standards (PKCS) #8: Private-Key Information Syntax Specification Version 1.2", RFC 5208, May 2008.
[RFC5208] Kaliski、B.、 "公開鍵暗号規格(PKCS)#8:プライベート・キー情報構文仕様バージョン1.2"、RFC 5208、2008年5月。
[X.520] ITU-T Recommendation X.520 (2005) | ISO/IEC 9594-6:2005, Information technology - Open Systems Interconnection - The Directory: Selected attribute types.
[X.520] ITU-T勧告X.520(2005)| ISO / IEC 9594から6:2005、情報技術 - 開放型システム間相互接続 - ディレクトリ:選択した属性タイプ。
[RFC5915] Turner, S. and D. Brown, "Elliptic Curve Private Key Structure", RFC 5915, June 2010.
[RFC5915]ターナー、S.およびD.ブラウン、 "楕円曲線プライベートキー構造"、RFC 5915、2010年6月。
Appendix A. ASN.1 Module
付録A. ASN.1モジュール
This annex provides the normative ASN.1 definitions for the structures described in this specification using ASN.1 as defined in [X.680] through [X.683].
この附属書は、[X.683]を通して[X.680]で定義されるようにASN.1を使用して本明細書に記載した構成のための規範的なASN.1定義を提供します。
AsymmetricKeyPackageModuleV1 { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) modules(0) id-mod-asymmetricKeyPkgV1(50) }
AsymmetricKeyPackageModuleV1 {ISO(1)部材本体(2)米国(840)RSADSI(113549)PKCS(1)PKCS-9(9)SMIME(16)モジュール(0)ID-MOD-asymmetricKeyPkgV1(50)}
DEFINITIONS IMPLICIT TAGS ::=
BEGIN
ベギン
-- EXPORTS ALL
- すべてのエクスポート
IMPORTS
輸入
-- FROM New SMIME ASN.1 [RFC5911]
- から新しいSMIME ASN.1 [RFC5911]
Attribute{}, CONTENT-TYPE FROM CryptographicMessageSyntax-2009 { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) modules(0) id-mod-cms-2004-02(41) }
暗号メッセージ構文-2009 {ISO(1)部材本体(2)米国(840)RSADSI(113549)PKCS(1)PKCS-9(9)SMIME(16)モジュール(0)ID-から属性{}、CONTENT-TYPE MOD-CMS-2004-02(41)}
-- From New PKIX ASN.1 [RFC5912] ATTRIBUTE FROM PKIX-CommonTypes-2009 { iso(1) identified-organization(3) dod(6) internet(1) security(5) mechanisms(5) pkix(7) id-mod(0) id-mod-pkixCommon-02(57) }
- ニューPKIX ASN.1 [RFC5912] PKIX-CommonTypes-2009から属性{ISO(1)同定された組織(3)DOD(6)インターネット(1)セキュリティ(5)メカニズム(5)PKIX(7)IDと-mod(0)ID-MOD-pkixCommon-02(57)}
-- From New PKIX ASN.1 [RFC5912]
- から新規PKIX ASN.1 [RFC5912]
AlgorithmIdentifier{}, ALGORITHM, PUBLIC-KEY, CONTENT-ENCRYPTION FROM AlgorithmInformation-2009 { iso(1) identified-organization(3) dod(6) internet(1) security(5) mechanisms(5) pkix(7) id-mod(0) id-mod-algorithmInformation-02(58) }
AlgorithmIdentifier {}は、アルゴリズム、公開鍵、コンテンツ暗号AlgorithmInformation-2009 FROM {ISO(1)同定された組織(3)DOD(6)インターネット(1)セキュリティ(5)メカニズム(5)PKIX(7)ID- MOD(0)ID-MOD-algorithmInformation-02(58)}
;
;
ContentSet CONTENT-TYPE ::= { ct-asymmetric-key-package, ... -- Expect additional content types -- } ct-asymmetric-key-package CONTENT-TYPE ::= { AsymmetricKeyPackage IDENTIFIED BY id-ct-KP-aKeyPackage }
id-ct-KP-aKeyPackage OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) dod(2) infosec(1) formats(2) key-package-content-types(78) 5 }
AsymmetricKeyPackage ::= SEQUENCE SIZE (1..MAX) OF OneAsymmetricKey
OneAsymmetricKey ::= SEQUENCE { version Version, privateKeyAlgorithm PrivateKeyAlgorithmIdentifier, privateKey PrivateKey, attributes [0] Attributes OPTIONAL, ..., [[2: publicKey [1] PublicKey OPTIONAL ]], ... }
PrivateKeyInfo ::= OneAsymmetricKey
-- PrivateKeyInfo is used by [P12]. If any items tagged as version -- 2 are used, the version must be v2, else the version should be -- v1. When v1, PrivateKeyInfo is the same as it was in [RFC5208].
- PrivateKeyInfoでは、[P12]によって使用されます。バージョンとしてタグ付けされた任意の項目場合 - V1 - 2が使用されている、バージョンがV2、他のバージョンがあるべきである必要があります。 V1は、PrivateKeyInfoでは、[RFC5208]であったものと同じである場合。
Version ::= INTEGER { v1(0), v2(1) } (v1, ..., v2)
PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier { PUBLIC-KEY, { PrivateKeyAlgorithms } }
PrivateKey ::= OCTET STRING -- Content varies based on type of key. The -- algorithm identifier dictates the format of -- the key.
PublicKey ::= BIT STRING -- Content varies based on type of key. The -- algorithm identifier dictates the format of -- the key.
Attributes ::= SET OF Attribute { { OneAsymmetricKeyAttributes } }
OneAsymmetricKeyAttributes ATTRIBUTE ::= { ... -- For local profiles }
-- An alternate representation that makes full use of ASN.1 -- constraints follows. Also note that PUBLIC-KEY needs to be -- imported from the new PKIX ASN.1 Algorithm Information module -- and PrivateKeyAlgorithms needs to be commented out.
- ASN.1を駆使し、代替表現 - 制約は次の通りです。新しいPKIX ASN.1アルゴリズムインフォメーションモジュールからインポート - - とPrivateKeyAlgorithmsをコメントアウトする必要があります。また、公開鍵があることが必要であることに注意してください。
-- OneAsymmetricKey ::= SEQUENCE { -- version Version, -- privateKeyAlgorithm SEQUENCE { -- algorithm PUBLIC-KEY.&id({PublicKeySet}), -- parameters PUBLIC-KEY.&Params({PublicKeySet} -- {@privateKeyAlgorithm.algorithm}) -- OPTIONAL} -- privateKey OCTET STRING (CONTAINING -- PUBLIC-KEY.&PrivateKey({PublicKeySet} -- {@privateKeyAlgorithm.algorithm})), -- attributes [0] Attributes OPTIONAL, -- ..., -- [[2: publicKey [1] BIT STRING (CONTAINING -- PUBLIC-KEY.&Params({PublicKeySet} -- {@privateKeyAlgorithm.algorithm}) -- OPTIONAL, -- ... -- }
EncryptedPrivateKeyInfo ::= SEQUENCE { encryptionAlgorithm EncryptionAlgorithmIdentifier, encryptedData EncryptedData }
EncryptionAlgorithmIdentifier ::= AlgorithmIdentifier { CONTENT-ENCRYPTION, { KeyEncryptionAlgorithms } }
EncryptedData ::= OCTET STRING -- Encrypted PrivateKeyInfo
PrivateKeyAlgorithms ALGORITHM ::= { ... -- Extensible }
KeyEncryptionAlgorithms ALGORITHM ::= { ... -- Extensible }
END
終わり
Acknowledgements
謝辞
Many thanks go out to the Burt Kaliski and Jim Randall at RSA. Without the prior version of the document, this one wouldn't exist.
多くのおかげでは、RSAでのバート・カリスキーとジム・ランドールに出かけます。ドキュメントの以前のバージョンがなければ、この1は存在しなかったでしょう。
I'd also like to thank Pasi Eronen, Roni Even, Alfred Hoenes, Russ Housley, Jim Schaad, and Carl Wallace.
私はまたしてもパシEronen、ロニ、アルフレッドHoenes、ラスHousley、ジムSchaad、およびカール・ウォレスに感謝したいと思います。
Author's Address
著者のアドレス
Sean Turner IECA, Inc. 3057 Nutley Street, Suite 106 Fairfax, VA 22031 USA
ショーン・ターナーIECA株式会社3057ナトリーストリート、スイート106バージニア州フェアファクス22031 USA
EMail: turners@ieca.com
メールアドレス:turners@ieca.com