---
title: SecKeyUsage
framework: security
role: symbol
role_heading: Structure
path: security/seckeyusage
---

# SecKeyUsage

The flags that indicate key usage in the KeyUsage extension of a certificate.

## Declaration

```swift
struct SecKeyUsage
```

## Topics

### Initializers

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

### Flags

- [crlSign](security/seckeyusage/crlsign.md)
- [contentCommitment](security/seckeyusage/contentcommitment.md)
- [critical](security/seckeyusage/critical.md)
- [dataEncipherment](security/seckeyusage/dataencipherment.md)
- [decipherOnly](security/seckeyusage/decipheronly.md)
- [digitalSignature](security/seckeyusage/digitalsignature.md)
- [encipherOnly](security/seckeyusage/encipheronly.md)
- [keyAgreement](security/seckeyusage/keyagreement.md)
- [keyCertSign](security/seckeyusage/keycertsign.md)
- [keyEncipherment](security/seckeyusage/keyencipherment.md)
- [nonRepudiation](security/seckeyusage/nonrepudiation.md)
- [all](security/seckeyusage/all.md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [ExpressibleByArrayLiteral](swift/expressiblebyarrayliteral.md)
- [OptionSet](swift/optionset.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [SetAlgebra](swift/setalgebra.md)
