2.7. Replace Section 5.2.2 - Encrypted Values (暗号化された値)
2.7. Replace Section 5.2.2 - Encrypted Values (暗号化された値)
[RFC4210] のセクション 5.2.2 は, 暗号化されたデータを転送するための EncryptedValue の使用を説明しています。この文書は, データの暗号化を拡張して EnvelopedData を優先的に使用します。
セクションのテキストを次のテキストに置き換えます:
5.2.2. Encrypted Values
暗号化されたデータ (この仕様では, 秘密鍵, 証明書, または失効パスフレーズ) が PKI メッセージで送信される場合, EncryptedKey データ構造が使用されます。
EncryptedKey ::= CHOICE {
encryptedValue EncryptedValue, -- deprecated
envelopedData [0] EnvelopedData }
EncryptedKey および EncryptedValue の構文については証明書リクエストメッセージ形式 (Certificate Request Message Format, CRMF) [RFC4211] を, EnvelopedData の構文については暗号メッセージ構文 (Cryptographic Message Syntax, CMS) [RFC5652] を参照してください。EncryptedKey データ構造を使用すると, EncryptedValue (後方互換性のためのみ) または EnvelopedData のいずれかを使用できます。EncryptedValue 構造の使用は EnvelopedData 構造を優先して非推奨になりました。したがって, EnvelopedData を使用することが推奨されます。
注意: CRMF [RFC4211] で定義された EncryptedKey 構造がここで再利用されており, これにより更新が後方互換性を持ちます。タグ付けされていないデフォルトの選択 EncryptedValue を使用した新しい構文は, 古い構文とビット単位で互換性があります。
EnvelopedData のサポートを示すために, pvno cmp2021 が導入されました。プロトコルバージョン番号 (pvno) の使用に関する詳細は, セクション 7 で説明されています。
EncryptedKey データ構造は CMP で秘密鍵, 証明書, または失効パスフレーズを暗号化された形式で転送するために使用されます。
EnvelopedData は次のように使用されます:
-
コンテンツは 1 つの受信者に対してのみ暗号化されるため, 1 つの RecipientInfo 構造のみを含みます。
-
[RFC5958]で定義されている AsymmetricKeyPackage 構造内の秘密鍵を含むことができます。これは CMS[RFC5652]および[RFC8933]のセクション 5 で指定されているように SignedData 構造にラップされ, 鍵生成機関 (Key Generation Authority) によって署名されます。 -
証明書または失効パスフレーズを encryptedContent フィールドに直接含めることができます。
CMS [RFC5652] のセクション 6 で指定されているように, EnvelopedData 構造のコンテンツは新しく生成された対称コンテンツ暗号化鍵を使用して暗号化されなければなりません。このコンテンツ暗号化鍵は, 3 つの鍵管理技術のいずれかを使用して受信者に安全に提供されなければなりません。
送信者が使用する鍵管理技術の選択は, 受信者で利用可能な認証情報によって異なります:
-
鍵転送をサポートするアルゴリズム識別子と公開鍵を持ち, 任意の鍵用途拡張が keyEncipherment を許可する受信者の証明書: コンテンツ暗号化鍵は, CMS
[RFC5652]のセクション 6.2.1 で指定されているように, 鍵転送鍵管理技術を使用して保護されます。 -
鍵合意をサポートするアルゴリズム識別子と公開鍵を持ち, 任意の鍵用途拡張が keyAgreement を許可する受信者の証明書: コンテンツ暗号化鍵は, CMS
[RFC5652]のセクション 6.2.2 で指定されているように, 鍵合意鍵管理技術を使用して保護されます。 -
パスワードまたは共有秘密: コンテンツ暗号化鍵は, CMS
[RFC5652]のセクション 6.2.4 で指定されているように, パスワードベースの鍵管理技術を使用して保護されます。