---
title: Trust
framework: security
role: collectionGroup
role_heading: API Collection
path: security/trust
---

# Trust

Evaluate trust based on a given policy.

## Overview

Overview Before using a certificate, you evaluate its trustworthiness for a particular purpose. If you know that a certificate comes unaltered from its sender, you can be confident that its embedded public key does as well. You can also take at face value claims made by the certificate about when and for what purpose the public key may be used. You can securely engage in the operations described in Using Keys for Encryption and Signing and Verifying without prior arrangement between sender and receiver.

## Topics

### Essentials

- [Creating a Trust Object](security/creating-a-trust-object.md)
- [SecTrustCreateWithCertificates(_:_:_:)](security/sectrustcreatewithcertificates(_:_:_:).md)
- [SecTrust](security/sectrust.md)
- [SecTrustGetTypeID()](security/sectrustgettypeid().md)

### Trust Evaluation

- [Evaluating a Trust and Parsing the Result](security/evaluating-a-trust-and-parsing-the-result.md)
- [SecTrustEvaluateWithError(_:_:)](security/sectrustevaluatewitherror(_:_:).md)
- [SecTrustEvaluateAsyncWithError(_:_:_:)](security/sectrustevaluateasyncwitherror(_:_:_:).md)
- [SecTrustWithErrorCallback](security/sectrustwitherrorcallback.md)

### Trust Evaluation Result

- [Discovering Why a Trust Evaluation Failed](security/discovering-why-a-trust-evaluation-failed.md)
- [SecTrustGetTrustResult(_:_:)](security/sectrustgettrustresult(_:_:).md)
- [SecTrustResultType](security/sectrustresulttype.md)
- [SecTrustCopyResult(_:)](security/sectrustcopyresult(_:).md)
- [Trust Result Dictionary Keys](security/trust-result-dictionary-keys.md)

### Trust Components

- [SecTrustCopyPublicKey(_:)](security/sectrustcopypublickey(_:).md)
- [SecTrustGetCertificateCount(_:)](security/sectrustgetcertificatecount(_:).md)
- [SecTrustGetCertificateAtIndex(_:_:)](security/sectrustgetcertificateatindex(_:_:).md)
- [SecTrustGetVerifyTime(_:)](security/sectrustgetverifytime(_:).md)
- [SecTrustCopyAnchorCertificates(_:)](security/sectrustcopyanchorcertificates(_:).md)
- [SecTrustCopyCustomAnchorCertificates(_:_:)](security/sectrustcopycustomanchorcertificates(_:_:).md)
- [SecTrustCopyExceptions(_:)](security/sectrustcopyexceptions(_:).md)
- [SecTrustCopyPolicies(_:_:)](security/sectrustcopypolicies(_:_:).md)
- [SecTrustCopyProperties(_:)](security/sectrustcopyproperties(_:).md)

### Advanced Trust Configuation

- [Configuring a Trust](security/configuring-a-trust.md)
- [SecTrustSetVerifyDate(_:_:)](security/sectrustsetverifydate(_:_:).md)
- [SecTrustSetAnchorCertificates(_:_:)](security/sectrustsetanchorcertificates(_:_:).md)
- [SecTrustSetAnchorCertificatesOnly(_:_:)](security/sectrustsetanchorcertificatesonly(_:_:).md)
- [SecTrustSetExceptions(_:_:)](security/sectrustsetexceptions(_:_:).md)
- [SecTrustSetPolicies(_:_:)](security/sectrustsetpolicies(_:_:).md)
- [SecTrustSetOptions(_:_:)](security/sectrustsetoptions(_:_:).md)
- [SecTrustOptionFlags](security/sectrustoptionflags.md)
- [SecTrustGetNetworkFetchAllowed(_:_:)](security/sectrustgetnetworkfetchallowed(_:_:).md)
- [SecTrustSetNetworkFetchAllowed(_:_:)](security/sectrustsetnetworkfetchallowed(_:_:).md)
- [SecTrustSetOCSPResponse(_:_:)](security/sectrustsetocspresponse(_:_:).md)
- [SecTrustSetSignedCertificateTimestamps(_:_:)](security/sectrustsetsignedcertificatetimestamps(_:_:).md)

### Trust Settings

- [SecTrustSettingsCopyCertificates(_:_:)](security/sectrustsettingscopycertificates(_:_:).md)
- [SecTrustSettingsCopyModificationDate(_:_:_:)](security/sectrustsettingscopymodificationdate(_:_:_:).md)
- [Usage Constraints Dictionary Keys](security/usage-constraints-dictionary-keys.md)
- [SecTrustSettingsCopyTrustSettings(_:_:_:)](security/sectrustsettingscopytrustsettings(_:_:_:).md)
- [SecTrustSettingsCreateExternalRepresentation(_:_:)](security/sectrustsettingscreateexternalrepresentation(_:_:).md)
- [SecTrustSettingsImportExternalRepresentation(_:_:)](security/sectrustsettingsimportexternalrepresentation(_:_:).md)
- [SecTrustSettingsRemoveTrustSettings(_:_:)](security/sectrustsettingsremovetrustsettings(_:_:).md)
- [SecTrustSettingsSetTrustSettings(_:_:_:)](security/sectrustsettingssettrustsettings(_:_:_:).md)
- [SecTrustSettingsKeyUsage](security/sectrustsettingskeyusage.md)
- [SecTrustSettingsResult](security/sectrustsettingsresult.md)
- [SecTrustSettingsDomain](security/sectrustsettingsdomain.md)

### Legacy Symbols

- [SecTrustEvaluate(_:_:)](security/sectrustevaluate(_:_:).md)
- [SecTrustEvaluateAsync(_:_:_:)](security/sectrustevaluateasync(_:_:_:).md)
- [SecTrustCallback](security/sectrustcallback.md)
- [SecTrustSetKeychains(_:_:)](security/sectrustsetkeychains(_:_:).md)
