---
title: SecKeyAlgorithm
framework: security
role: symbol
role_heading: Structure
path: security/seckeyalgorithm
---

# SecKeyAlgorithm

The algorithms that cryptographic keys enable.

## Declaration

```swift
struct SecKeyAlgorithm
```

## Topics

### Elliptic curve encryption standard X963

- [eciesEncryptionStandardX963SHA1AESGCM](security/seckeyalgorithm/eciesencryptionstandardx963sha1aesgcm.md)
- [eciesEncryptionStandardX963SHA224AESGCM](security/seckeyalgorithm/eciesencryptionstandardx963sha224aesgcm.md)
- [eciesEncryptionStandardX963SHA256AESGCM](security/seckeyalgorithm/eciesencryptionstandardx963sha256aesgcm.md)
- [eciesEncryptionStandardX963SHA384AESGCM](security/seckeyalgorithm/eciesencryptionstandardx963sha384aesgcm.md)
- [eciesEncryptionStandardX963SHA512AESGCM](security/seckeyalgorithm/eciesencryptionstandardx963sha512aesgcm.md)

### Elliptic curve encryption standard variable IVX963

- [eciesEncryptionStandardVariableIVX963SHA224AESGCM](security/seckeyalgorithm/eciesencryptionstandardvariableivx963sha224aesgcm.md)
- [eciesEncryptionStandardVariableIVX963SHA256AESGCM](security/seckeyalgorithm/eciesencryptionstandardvariableivx963sha256aesgcm.md)
- [eciesEncryptionStandardVariableIVX963SHA384AESGCM](security/seckeyalgorithm/eciesencryptionstandardvariableivx963sha384aesgcm.md)
- [eciesEncryptionStandardVariableIVX963SHA512AESGCM](security/seckeyalgorithm/eciesencryptionstandardvariableivx963sha512aesgcm.md)

### Elliptic curve encryption cofactor variable IVX963

- [eciesEncryptionCofactorVariableIVX963SHA224AESGCM](security/seckeyalgorithm/eciesencryptioncofactorvariableivx963sha224aesgcm.md)
- [eciesEncryptionCofactorVariableIVX963SHA256AESGCM](security/seckeyalgorithm/eciesencryptioncofactorvariableivx963sha256aesgcm.md)
- [eciesEncryptionCofactorVariableIVX963SHA384AESGCM](security/seckeyalgorithm/eciesencryptioncofactorvariableivx963sha384aesgcm.md)
- [eciesEncryptionCofactorVariableIVX963SHA512AESGCM](security/seckeyalgorithm/eciesencryptioncofactorvariableivx963sha512aesgcm.md)

### Elliptic curve encryption cofactor X963

- [eciesEncryptionCofactorX963SHA1AESGCM](security/seckeyalgorithm/eciesencryptioncofactorx963sha1aesgcm.md)
- [eciesEncryptionCofactorX963SHA224AESGCM](security/seckeyalgorithm/eciesencryptioncofactorx963sha224aesgcm.md)
- [eciesEncryptionCofactorX963SHA256AESGCM](security/seckeyalgorithm/eciesencryptioncofactorx963sha256aesgcm.md)
- [eciesEncryptionCofactorX963SHA384AESGCM](security/seckeyalgorithm/eciesencryptioncofactorx963sha384aesgcm.md)
- [eciesEncryptionCofactorX963SHA512AESGCM](security/seckeyalgorithm/eciesencryptioncofactorx963sha512aesgcm.md)

### Elliptic curve signature RFC4754

- [ecdsaSignatureRFC4754](security/seckeyalgorithm/ecdsasignaturerfc4754.md)

### Elliptic curve signature digest RFC4754

- [ecdsaSignatureDigestRFC4754](security/seckeyalgorithm/ecdsasignaturedigestrfc4754.md)
- [ecdsaSignatureDigestRFC4754SHA1](security/seckeyalgorithm/ecdsasignaturedigestrfc4754sha1.md)
- [ecdsaSignatureDigestRFC4754SHA224](security/seckeyalgorithm/ecdsasignaturedigestrfc4754sha224.md)
- [ecdsaSignatureDigestRFC4754SHA256](security/seckeyalgorithm/ecdsasignaturedigestrfc4754sha256.md)
- [ecdsaSignatureDigestRFC4754SHA384](security/seckeyalgorithm/ecdsasignaturedigestrfc4754sha384.md)
- [ecdsaSignatureDigestRFC4754SHA512](security/seckeyalgorithm/ecdsasignaturedigestrfc4754sha512.md)

### Elliptic curve signature message RFC4754

- [ecdsaSignatureMessageRFC4754SHA1](security/seckeyalgorithm/ecdsasignaturemessagerfc4754sha1.md)
- [ecdsaSignatureMessageRFC4754SHA224](security/seckeyalgorithm/ecdsasignaturemessagerfc4754sha224.md)
- [ecdsaSignatureMessageRFC4754SHA256](security/seckeyalgorithm/ecdsasignaturemessagerfc4754sha256.md)
- [ecdsaSignatureMessageRFC4754SHA384](security/seckeyalgorithm/ecdsasignaturemessagerfc4754sha384.md)
- [ecdsaSignatureMessageRFC4754SHA512](security/seckeyalgorithm/ecdsasignaturemessagerfc4754sha512.md)

### Elliptic curve signature digest X962

- [ecdsaSignatureDigestX962](security/seckeyalgorithm/ecdsasignaturedigestx962.md)
- [ecdsaSignatureDigestX962SHA1](security/seckeyalgorithm/ecdsasignaturedigestx962sha1.md)
- [ecdsaSignatureDigestX962SHA224](security/seckeyalgorithm/ecdsasignaturedigestx962sha224.md)
- [ecdsaSignatureDigestX962SHA256](security/seckeyalgorithm/ecdsasignaturedigestx962sha256.md)
- [ecdsaSignatureDigestX962SHA384](security/seckeyalgorithm/ecdsasignaturedigestx962sha384.md)
- [ecdsaSignatureDigestX962SHA512](security/seckeyalgorithm/ecdsasignaturedigestx962sha512.md)

### Elliptic curve signature message X962

- [ecdsaSignatureMessageX962SHA1](security/seckeyalgorithm/ecdsasignaturemessagex962sha1.md)
- [ecdsaSignatureMessageX962SHA224](security/seckeyalgorithm/ecdsasignaturemessagex962sha224.md)
- [ecdsaSignatureMessageX962SHA256](security/seckeyalgorithm/ecdsasignaturemessagex962sha256.md)
- [ecdsaSignatureMessageX962SHA384](security/seckeyalgorithm/ecdsasignaturemessagex962sha384.md)
- [ecdsaSignatureMessageX962SHA512](security/seckeyalgorithm/ecdsasignaturemessagex962sha512.md)

### Elliptic curve key exchange

- [ecdhKeyExchangeCofactor](security/seckeyalgorithm/ecdhkeyexchangecofactor.md)
- [ecdhKeyExchangeStandard](security/seckeyalgorithm/ecdhkeyexchangestandard.md)
- [ecdhKeyExchangeCofactorX963SHA1](security/seckeyalgorithm/ecdhkeyexchangecofactorx963sha1.md)
- [ecdhKeyExchangeStandardX963SHA1](security/seckeyalgorithm/ecdhkeyexchangestandardx963sha1.md)
- [ecdhKeyExchangeCofactorX963SHA224](security/seckeyalgorithm/ecdhkeyexchangecofactorx963sha224.md)
- [ecdhKeyExchangeCofactorX963SHA256](security/seckeyalgorithm/ecdhkeyexchangecofactorx963sha256.md)
- [ecdhKeyExchangeCofactorX963SHA384](security/seckeyalgorithm/ecdhkeyexchangecofactorx963sha384.md)
- [ecdhKeyExchangeCofactorX963SHA512](security/seckeyalgorithm/ecdhkeyexchangecofactorx963sha512.md)
- [ecdhKeyExchangeStandardX963SHA224](security/seckeyalgorithm/ecdhkeyexchangestandardx963sha224.md)
- [ecdhKeyExchangeStandardX963SHA256](security/seckeyalgorithm/ecdhkeyexchangestandardx963sha256.md)
- [ecdhKeyExchangeStandardX963SHA384](security/seckeyalgorithm/ecdhkeyexchangestandardx963sha384.md)
- [ecdhKeyExchangeStandardX963SHA512](security/seckeyalgorithm/ecdhkeyexchangestandardx963sha512.md)

### RSA encryption

- [rsaEncryptionRaw](security/seckeyalgorithm/rsaencryptionraw.md)
- [rsaEncryptionPKCS1](security/seckeyalgorithm/rsaencryptionpkcs1.md)

### RSA encryption OAEP

- [rsaEncryptionOAEPSHA1](security/seckeyalgorithm/rsaencryptionoaepsha1.md)
- [rsaEncryptionOAEPSHA224](security/seckeyalgorithm/rsaencryptionoaepsha224.md)
- [rsaEncryptionOAEPSHA256](security/seckeyalgorithm/rsaencryptionoaepsha256.md)
- [rsaEncryptionOAEPSHA384](security/seckeyalgorithm/rsaencryptionoaepsha384.md)
- [rsaEncryptionOAEPSHA512](security/seckeyalgorithm/rsaencryptionoaepsha512.md)

### RSA encryption OAEP AESGCM

- [rsaEncryptionOAEPSHA1AESGCM](security/seckeyalgorithm/rsaencryptionoaepsha1aesgcm.md)
- [rsaEncryptionOAEPSHA224AESGCM](security/seckeyalgorithm/rsaencryptionoaepsha224aesgcm.md)
- [rsaEncryptionOAEPSHA256AESGCM](security/seckeyalgorithm/rsaencryptionoaepsha256aesgcm.md)
- [rsaEncryptionOAEPSHA384AESGCM](security/seckeyalgorithm/rsaencryptionoaepsha384aesgcm.md)
- [rsaEncryptionOAEPSHA512AESGCM](security/seckeyalgorithm/rsaencryptionoaepsha512aesgcm.md)

### RSA signature raw

- [rsaSignatureRaw](security/seckeyalgorithm/rsasignatureraw.md)

### RSA signature digest PKCS1v15

- [rsaSignatureDigestPKCS1v15Raw](security/seckeyalgorithm/rsasignaturedigestpkcs1v15raw.md)
- [rsaSignatureDigestPKCS1v15SHA1](security/seckeyalgorithm/rsasignaturedigestpkcs1v15sha1.md)
- [rsaSignatureDigestPKCS1v15SHA224](security/seckeyalgorithm/rsasignaturedigestpkcs1v15sha224.md)
- [rsaSignatureDigestPKCS1v15SHA256](security/seckeyalgorithm/rsasignaturedigestpkcs1v15sha256.md)
- [rsaSignatureDigestPKCS1v15SHA384](security/seckeyalgorithm/rsasignaturedigestpkcs1v15sha384.md)
- [rsaSignatureDigestPKCS1v15SHA512](security/seckeyalgorithm/rsasignaturedigestpkcs1v15sha512.md)

### RSA signature message PKCS1v15

- [rsaSignatureMessagePKCS1v15SHA1](security/seckeyalgorithm/rsasignaturemessagepkcs1v15sha1.md)
- [rsaSignatureMessagePKCS1v15SHA224](security/seckeyalgorithm/rsasignaturemessagepkcs1v15sha224.md)
- [rsaSignatureMessagePKCS1v15SHA256](security/seckeyalgorithm/rsasignaturemessagepkcs1v15sha256.md)
- [rsaSignatureMessagePKCS1v15SHA384](security/seckeyalgorithm/rsasignaturemessagepkcs1v15sha384.md)
- [rsaSignatureMessagePKCS1v15SHA512](security/seckeyalgorithm/rsasignaturemessagepkcs1v15sha512.md)

### RSA signature digest PSS

- [rsaSignatureDigestPSSSHA1](security/seckeyalgorithm/rsasignaturedigestpsssha1.md)
- [rsaSignatureDigestPSSSHA224](security/seckeyalgorithm/rsasignaturedigestpsssha224.md)
- [rsaSignatureDigestPSSSHA256](security/seckeyalgorithm/rsasignaturedigestpsssha256.md)
- [rsaSignatureDigestPSSSHA384](security/seckeyalgorithm/rsasignaturedigestpsssha384.md)
- [rsaSignatureDigestPSSSHA512](security/seckeyalgorithm/rsasignaturedigestpsssha512.md)

### RSA signature message PSS

- [rsaSignatureMessagePSSSHA1](security/seckeyalgorithm/rsasignaturemessagepsssha1.md)
- [rsaSignatureMessagePSSSHA224](security/seckeyalgorithm/rsasignaturemessagepsssha224.md)
- [rsaSignatureMessagePSSSHA256](security/seckeyalgorithm/rsasignaturemessagepsssha256.md)
- [rsaSignatureMessagePSSSHA384](security/seckeyalgorithm/rsasignaturemessagepsssha384.md)
- [rsaSignatureMessagePSSSHA512](security/seckeyalgorithm/rsasignaturemessagepsssha512.md)

### Initializers

- [init(rawValue:)](security/seckeyalgorithm/init(rawvalue:).md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
