<!--
{
  "availability" : [
    "macCatalyst: 13.0.0 -",
    "macOS: 10.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Security",
  "identifier" : "/documentation/Security/CMSSignedAttributes",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Security"
    ],
    "preciseIdentifier" : "c:@E@CMSSignedAttributes"
  },
  "title" : "CMSSignedAttributes"
}
-->

# CMSSignedAttributes

Optional attributes you can add to a signed message.

```
struct CMSSignedAttributes
```

## Overview

Use these flags with the [`CMSEncoderAddSignedAttributes(_:_:)`](/documentation/Security/CMSEncoderAddSignedAttributes(_:_:)) method to cause the encoder to add attributes to a signed message that can be interpreted by the recipient. These attributes are not used for unsigned messages.

## Topics

### Attributes

[`kCMSAttrNone`](/documentation/Security/CMSSignedAttributes/kCMSAttrNone)

No attributes.

[`attrSmimeCapabilities`](/documentation/Security/CMSSignedAttributes/attrSmimeCapabilities)

Identify signature, encryption, and digest algorithms supported by the encoder.

[`attrSmimeEncryptionKeyPrefs`](/documentation/Security/CMSSignedAttributes/attrSmimeEncryptionKeyPrefs)

Indicate that the signing certificate included with the message is the preferred one for S/MIME encryption.

[`attrSmimeMSEncryptionKeyPrefs`](/documentation/Security/CMSSignedAttributes/attrSmimeMSEncryptionKeyPrefs)

Indicate that the signing certificate included with the message is the preferred one for S/MIME encryption, but using an attribute object identifier (OID) preferred by Microsoft.

[`attrSigningTime`](/documentation/Security/CMSSignedAttributes/attrSigningTime)

Include the signing time.

[`attrAppleCodesigningHashAgility`](/documentation/Security/CMSSignedAttributes/attrAppleCodesigningHashAgility)

Include Apple codesigning hash agility.

[`attrAppleCodesigningHashAgilityV2`](/documentation/Security/CMSSignedAttributes/attrAppleCodesigningHashAgilityV2)

Include Apple codesigning hash agility, version 2.

[`attrAppleExpirationTime`](/documentation/Security/CMSSignedAttributes/attrAppleExpirationTime)

Include the expiration time.

### Initializers

[`init(rawValue:)`](/documentation/Security/CMSSignedAttributes/init(rawValue:))

Initializes a new attributes structure.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)