<!--
{
  "documentType" : "article",
  "framework" : "Security",
  "identifier" : "/documentation/Security/signing-information-dictionary-keys",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Signing Information Dictionary Keys"
}
-->

# Signing Information Dictionary Keys

Use these keys from the information dictionary when you retrieve information from a code signature.

## Discussion

Use these keys when examining the dictionary returned by the [`SecCodeCopySigningInformation(_:_:_:)`](/documentation/Security/SecCodeCopySigningInformation(_:_:_:)) function to obtain information about the signed code.

## Topics

### Constants

[`let kSecCodeInfoCdHashes: CFString`](/documentation/Security/kSecCodeInfoCdHashes)

A key whose value is an array containing the unique binary identifier for every digest algorithm supported in the signature.

[`let kSecCodeInfoCertificates: CFString`](/documentation/Security/kSecCodeInfoCertificates)

A key whose value is an array of certificates representing the certificate chain of the signing certificate as seen by the system.

[`let kSecCodeInfoChangedFiles: CFString`](/documentation/Security/kSecCodeInfoChangedFiles)

A key whose value is a list of all files in the code that may have been modified by the process of signing it.

[`let kSecCodeInfoCMS: CFString`](/documentation/Security/kSecCodeInfoCMS)

A key whose value is the CMS cryptographic object that secures the code signature.

[`let kSecCodeInfoDesignatedRequirement: CFString`](/documentation/Security/kSecCodeInfoDesignatedRequirement)

A keys whose value is the designated requirement of the code.

[`let kSecCodeInfoDigestAlgorithm: CFString`](/documentation/Security/kSecCodeInfoDigestAlgorithm)

A key whose value is a number indicating the cryptographic hash function.

[`let kSecCodeInfoDigestAlgorithms: CFString`](/documentation/Security/kSecCodeInfoDigestAlgorithms)

A key whose value is a list of the kinds of cryptographic hash functions available within the signature.

[`let kSecCodeInfoEntitlements: CFString`](/documentation/Security/kSecCodeInfoEntitlements)

A key whose value represents the embedded entitlement blob of the code, if any.

[`let kSecCodeInfoEntitlementsDict: CFString`](/documentation/Security/kSecCodeInfoEntitlementsDict)

A key whose value is a dictionary of embedded entitlements.

[`let kSecCodeInfoFormat: CFString`](/documentation/Security/kSecCodeInfoFormat)

A key whose value is a string representing the type and format of the code in a form suitable for display to a knowledgeable user.

[`let kSecCodeInfoFlags: CFString`](/documentation/Security/kSecCodeInfoFlags)

A key whose value indicates the static (on-disk) state of the object.

[`let kSecCodeInfoIdentifier: CFString`](/documentation/Security/kSecCodeInfoIdentifier)

A key whose value is the signing identifier sealed into the signature.

[`let kSecCodeInfoImplicitDesignatedRequirement: CFString`](/documentation/Security/kSecCodeInfoImplicitDesignatedRequirement)

A key whose value is the designated requirement (DR) that the system generated—or would have generated—for the code in the absence of an explicitly-declared DR.

[`let kSecCodeInfoMainExecutable: CFString`](/documentation/Security/kSecCodeInfoMainExecutable)

A key whose value is a URL locating the main executable file of the code.

[`let kSecCodeInfoPList: CFString`](/documentation/Security/kSecCodeInfoPList)

A key whose value is an information dictionary containing the contents of the secured `Info.plist` file as seen by Code Signing Services.

[`let kSecCodeInfoPlatformIdentifier: CFString`](/documentation/Security/kSecCodeInfoPlatformIdentifier)

A key whose value identifies the operating system release with which the code is associated, if any.

[`let kSecCodeInfoRequirements: CFString`](/documentation/Security/kSecCodeInfoRequirements)

A key whose value is the internal requirements of the code as a text string in canonical syntax.

[`let kSecCodeInfoRequirementData: CFString`](/documentation/Security/kSecCodeInfoRequirementData)

A key whose value is the internal requirements of the code as a binary blob.

[`let kSecCodeInfoRuntimeVersion: CFString`](/documentation/Security/kSecCodeInfoRuntimeVersion)

A key whose value represents the runtime version.

[`let kSecCodeInfoSource: CFString`](/documentation/Security/kSecCodeInfoSource)

The source of the code signature used for the code object in a format suitable for display.

[`let kSecCodeInfoStatus: CFString`](/documentation/Security/kSecCodeInfoStatus)

A key whose value is the set of code status flags for the running code.

[`let kSecCodeInfoTeamIdentifier: CFString`](/documentation/Security/kSecCodeInfoTeamIdentifier)

A key whose value is the team identifier.

[`let kSecCodeInfoTime: CFString`](/documentation/Security/kSecCodeInfoTime)

A key whose value is the signing date embedded in the code signature.

[`let kSecCodeInfoTimestamp: CFString`](/documentation/Security/kSecCodeInfoTimestamp)

A key whose value indicates the actual signing date.

[`let kSecCodeInfoTrust: CFString`](/documentation/Security/kSecCodeInfoTrust)

A key whose value is the trust object the system uses to evaluate the validity of the code’s signature.

[`let kSecCodeInfoUnique: CFString`](/documentation/Security/kSecCodeInfoUnique)

A key whose value is a binary number that uniquely identifies static code.



---

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)