RFC 2311:S/MIME Version 2 Message Specification
RFC-Ref

S/MIME Version 2 Message Specification


1. Introduction
1.1. Specification Overview
1.2. Terminology
1.3. Definitions
1.4. Compatibility with Prior Practice of S/MIME
2. PKCS #7 Options
2.1. DigestAlgorithmIdentifier
2.2. DigestEncryptionAlgorithmIdentifier
2.3. KeyEncryptionAlgorithmIdentifier
2.4. General Syntax
2.4.1. Data Content Type
2.4.2. SignedData Content Type
2.4.3. EnvelopedData Content Type
2.5. Attribute SignerInfo Type
2.5.1. Signing-Time Attribute
2.5.2. S/MIME Capabilities Attribute
2.6. ContentEncryptionAlgorithmIdentifier
2.6.1. Deciding Which Encryption Method To Use
2.6.1.1. Rule 1: Known Capabilities
2.6.1.2. Rule 2: Unknown Capabilities, Known Use of Encryption
2.6.1.3. Rule 3: Unknown Capabilities, Risk of Failed Decryption
2.6.1.4. Rule 4: Unknown Capabilities, No Risk of Failed Decryption
2.6.2. Choosing Weak Encryption
2.6.3. Multiple Recipients
3. Creating S/MIME Messages
3.1. Preparing the MIME Entity for Signing or Enveloping
3.1.1. Canonicalization
3.1.2. Transfer Encoding
3.1.3. Transfer Encoding for Signing Using multipart/signed
3.1.4. Sample Canonical MIME Entity
3.2. The application/pkcs7-mime Type
3.2.1. The name and filename Parameters
3.3. Creating an Enveloped-only Message
3.4. Creating a Signed-only Message
3.4.1. Choosing a Format for Signed-only Messages
3.4.2. Signing Using application/pkcs7-mime and SignedData
3.4.3. Signing Using the multipart/signed Format
3.4.3.1. The application/pkcs7-signature MIME Type
3.4.3.2. Creating a multipart/signed Message
3.4.3.3. Sample multipart/signed Message
3.5. Signing and Encrypting
3.6. Creating a Certificates-only Message
3.7. Creating a Registration Request
3.7.1. Format of the application/pkcs10 Body
3.7.2. Sending and Receiving an application/pkcs10 Body Part
3.8. Identifying an S/MIME Message
4. Certificate Processing
4.1. Key Pair Generation
5. Security Considerations
6. A. Object Identifiers and Syntax
6.1. A.1 Content Encryption Algorithms
6.2. A.2 Digest Algorithms
6.3. A.3 Asymmetric Encryption Algorithms
6.4. A.4 Signature Algorithms
6.5. A.5 Signed Attributes
7. B. References
8. C. Compatibility with Prior Practice in S/MIME
8.1. C.1 Early MIME Types
8.2. C.2 Profiles
8.2.1. C.2.1 Historical Reasons for the Existence of Two Encryption Profiles
9. D. Request for New MIME Subtypes
9.1. D.1 application/pkcs7-mime
9.2. D.2 application/pkcs7-signature
9.3. D.3 application/pkcs10
10. E. Encapsulating Signed Messages for Internet Transport
10.1. E.1 Solutions to the Problem
10.2. E.2 Encapsulation in an Non-MIME Environment
11. F. Acknowledgements
12. G. Authors' Addresses
13. H. Full Copyright Statement

Google
Web
RFC-Ref