Skip to content
ecdsa.com

Secure Enclave

Apple's isolated security coprocessor in iPhone, iPad, Mac and Apple Watch chips, which creates non-exportable keys and signs or decrypts inside the chip, optionally gated by Face ID, Touch ID or the passcode.
Also written asApple Secure EnclaveSEPSecure Enclave Processor

Through CryptoKit (SecureEnclave.P256.Signing.PrivateKey, SecureEnclave.P256.KeyAgreement.PrivateKey) or the Keychain (kSecAttrTokenIDSecureEnclave), apps get a key that never leaves the hardware; what they store is an opaque, device-bound handle. For classical algorithms the enclave supports only NIST P-256, which is one reason ES256 and COSE −7 dominate passkeys and device-bound credentials.

Starting with iOS 26 and macOS 26 (2025), CryptoKit also offers ML-KEM and ML-DSA with Secure Enclave support. Access control flags (.biometryCurrentSet, .userPresence) can require biometric or passcode approval for every use of the key.

Signatures come out DER-encoded, like those of other platform keystores; JWS and COSE consumers need raw r‖s. Keys are lost with the device unless the app's protocol supports recovery: synced passkeys are a different design, kept in iCloud Keychain rather than in the enclave.

Standards and references

All terms