<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    5.2 支持S/MIME的CMS選項(CMS Options of support S/MIME)

    在內容和算法支持方面,CMS考慮了各種各樣的選項。為了使所有支持S/MIME版本3的實現方案間達到基本的互操作性,RFC 2633提出了某些支持要求和建議。

    5.2.1 摘要算法標識符(DigestAlgorithmIdentifier)

    發送代理和接收代理必須支持同一個算法。這里以SHA-1[SHA1]為例。為了提供對采用MD5[MD5]摘要的S/MIME版本2簽名數據對象的向后兼容性,接收代理應支持MD5。

    5.2.2 簽名算法標識符(SignatureAlgorithmIdentifier)

    發送代理和接收代理必須支持同一個數字簽名算法,這里以DSS [DSS]為例。發送代理和接收代理應支持在DSS[DSS]中定義的id-dsa為例,算法參數不必存在。接收代理應支持PKCS-1[PKCS-1]所定義的rsaEncryption,發送代理應支持rsaEncryption。采用用戶私有密鑰對出去的報文進行簽名,并在密鑰生成期間確定私有密鑰的長度。

    00001注: S/MIME版本2客戶只能夠驗證采用rsaEncryption算法的數字簽名。

    5.2.3 密鑰加密算法標識符(KeyEncryptionAlgorithmIdentifier)

    發送代理和接收代理必須支持同一個密鑰交換算法,這里以Diffie-Hellman算法為例。接收代理應支持rsaEncryption。進入的加密報文包含著多個對稱密鑰,這些密鑰可以通過用戶的私有密鑰來解密,在密鑰生成期間確定私有密鑰的長度。發送代理應支持rsaEncryption。

    00002注: S/MIME版本2的客戶只能解密使用rsaEncryption算法的內容加密密鑰。

    5.2.4 通用語法 (General Syntax)

    CMS規定了多種內容類型,其中S/MIME目前可用的只有數據、簽名數據及包裝的數據這三種內容類型。

    5.2.4.1 數據內容類型 (Data Content Type)

    發送代理必須使用id-data內容類型標識符來指明那些已采用安全服務的報文內容。例如,當對MIME數據采用數字簽名時,CMS signedData encapContentInfo eContentType必須包括id-data對象標識符,并且MIME內容必須被存放在SignedData encapContentInfo eContent的八位位組串中(除非發送代理使用多部分/簽字,此時eContent可以不存在)。另一個例子,當對MIME數據進行加密時,CMS EnvelopedData encryptedContentInfo ContentType必須包含id-data對象標識符,并且加密的MIME內容必須被存放在envelopedData encryptedContentInfo encryptedContent的八位位組串中。

    5.2.4.2 簽名數據內容類型 (SignedData Content Type)

    發送代理必須對應用數字簽名的報文使用簽名數據內容類型,或者在用于傳輸無簽名信息的證書的退化情況下必須使用簽名內容類型。

    5.2.4.3 包裝數據內容類型 (EnvelopedData Content Type)

    該內容類型用來向報文提供隱私性保護。發送者必須能夠獲得應用該服務所涉及的每報文接收者的公開密鑰。

    5.2.5 屬性簽名者信息類型 (Attribute SignerInfo Type)

    SignerInfo類型允許同簽名一起包含無簽名屬性和簽名屬性。接收代理必須能夠處理在此列出的每個簽名屬性的零個或一個實例。發送代理應在每個S/MIME報文中生成下列每個簽名屬性中一個實例:

    ·  signingTime

    ·  sMIMECapabilities

    ·  sMIMEEncryptionKeyPreference

    此外,接收代理應能處理signingCertificate屬性內簽名屬性的0個或1個實例。發送代理應能在每個S/MIME報文中生成signingCertificate簽名屬性的一個實例。以后可能會對這些屬性的附加屬性和值進行定義。接收代理應能通過友好的方式來處理那些它不識別的屬性或值。那些含有此處未列出的簽名屬性的發送代理應能向用戶顯示這些屬性,以便用戶知道被簽名數據的所有屬性。

    5.2.6 SignerIdentifier SignerInfo類型(SignerIdentifier SignerInfo Type)

    S/MIME版本3要求使用SignerInfo版本1,即對于SignerIdentifier必須使用issuerAndSerialNumber的選項。

    5.2.7 內容加密運算標識符(ContentEncryptionAlgorithmIdentifier)

    發送代理和接收代理必須支持采用同一數字加密算法。這里以DES EDE3 CBC為例進行加密和解密,以下簡稱“tripleDES”[3DES] [DES]。接收代理應支持以RC2[RC2]為例的兼容算法進行加密和解密。

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类