Documentation
¶
Rendered for darwin/amd64
Index ¶
- Constants
- Variables
- func GetSecAttrApplicationLabel(v *cf.DictionaryRef) []byte
- func GetSecValueData(v *cf.DictionaryRef) []byte
- func SecCertificateCopyData(cert *SecCertificateRef) (*cf.DataRef, error)
- func SecCopyErrorMessageString(status C.OSStatus) *cf.StringRef
- func SecItemAdd(attributes *cf.DictionaryRef, result *cf.TypeRef) error
- func SecItemCopyMatching(query *cf.DictionaryRef, result *cf.TypeRef) error
- func SecItemDelete(query *cf.DictionaryRef) error
- func SecItemUpdate(query *cf.DictionaryRef, attributesToUpdate *cf.DictionaryRef) error
- func SecKeyCopyAttributes(key *SecKeyRef) *cf.DictionaryRef
- func SecKeyCopyExternalRepresentation(key *SecKeyRef) (*cf.DataRef, error)
- func SecKeyCopyKeyExchangeResult(privateKey *SecKeyRef, algorithm SecKeyAlgorithm, publicKey *SecKeyRef, ...) (*cf.DataRef, error)
- func SecKeyCreateSignature(key *SecKeyRef, algorithm SecKeyAlgorithm, dataToSign *cf.DataRef) (*cf.DataRef, error)
- type SecAccessControlCreateFlags
- type SecAccessControlRef
- type SecCertificateRef
- type SecKeyAlgorithm
- type SecKeyRef
Constants ¶
View Source
const ( // Enable a private key to be used in signing a block of data or verifying a // signed block. KSecAccessControlPrivateKeyUsage = SecAccessControlCreateFlags(C.kSecAccessControlPrivateKeyUsage) // Option to use an application-provided password for data encryption key // generation. KSecAccessControlApplicationPassword = SecAccessControlCreateFlags(C.kSecAccessControlApplicationPassword) // Constraint to access an item with a passcode. KSecAccessControlDevicePasscode = SecAccessControlCreateFlags(C.kSecAccessControlDevicePasscode) // Constraint to access an item with Touch ID for any enrolled fingers, or // Face ID. KSecAccessControlBiometryAny = SecAccessControlCreateFlags(C.kSecAccessControlBiometryAny) // Constraint to access an item with Touch ID for currently enrolled // fingers, or from Face ID with the currently enrolled user. KSecAccessControlBiometryCurrentSet = SecAccessControlCreateFlags(C.kSecAccessControlBiometryCurrentSet) // Constraint to access an item with either biometry or passcode. KSecAccessControlUserPresence = SecAccessControlCreateFlags(C.kSecAccessControlUserPresence) // Constraint to access an item with a watch. KSecAccessControlWatch = SecAccessControlCreateFlags(C.kSecAccessControlWatch) // Indicates that all constraints must be satisfied. KSecAccessControlAnd = SecAccessControlCreateFlags(C.kSecAccessControlAnd) // Indicates that at least one constraint must be satisfied. KSecAccessControlOr = SecAccessControlCreateFlags(C.kSecAccessControlOr) )
Variables ¶
View Source
var ( ErrNotFound = errors.New("not found") ErrAlreadyExists = errors.New("already exists") ErrInvalidData = errors.New("invalid data") )
View Source
var ( KSecAttrAccessControl = cf.TypeRef(C.kSecAttrAccessControl) KSecAttrAccessGroup = cf.TypeRef(C.kSecAttrAccessGroup) KSecAttrAccessibleWhenUnlocked = cf.TypeRef(C.kSecAttrAccessibleWhenUnlocked) KSecAttrAccessibleWhenPasscodeSetThisDeviceOnly = cf.TypeRef(C.kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly) KSecAttrAccessibleWhenUnlockedThisDeviceOnly = cf.TypeRef(C.kSecAttrAccessibleWhenUnlockedThisDeviceOnly) KSecAttrAccessibleAfterFirstUnlock = cf.TypeRef(C.kSecAttrAccessibleAfterFirstUnlock) KSecAttrAccessibleAfterFirstUnlockThisDeviceOnly = cf.TypeRef(C.kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly) KSecAttrApplicationLabel = cf.TypeRef(C.kSecAttrApplicationLabel) KSecAttrApplicationTag = cf.TypeRef(C.kSecAttrApplicationTag) KSecAttrIsPermanent = cf.TypeRef(C.kSecAttrIsPermanent) KSecAttrKeyClass = cf.TypeRef(C.kSecAttrKeyClass) KSecAttrKeyClassPrivate = cf.TypeRef(C.kSecAttrKeyClassPrivate) KSecAttrKeyClassPublic = cf.TypeRef(C.kSecAttrKeyClassPublic) KSecAttrKeySizeInBits = cf.TypeRef(C.kSecAttrKeySizeInBits) KSecAttrKeyType = cf.TypeRef(C.kSecAttrKeyType) KSecAttrKeyTypeECSECPrimeRandom = cf.TypeRef(C.kSecAttrKeyTypeECSECPrimeRandom) KSecAttrKeyTypeRSA = cf.TypeRef(C.kSecAttrKeyTypeRSA) KSecAttrLabel = cf.TypeRef(C.kSecAttrLabel) KSecAttrTokenID = cf.TypeRef(C.kSecAttrTokenID) KSecAttrTokenIDSecureEnclave = cf.TypeRef(C.kSecAttrTokenIDSecureEnclave) KSecAttrSerialNumber = cf.TypeRef(C.kSecAttrSerialNumber) KSecAttrSubjectKeyID = cf.TypeRef(C.kSecAttrSubjectKeyID) KSecAttrSubject = cf.TypeRef(C.kSecAttrSubject) KSecAttrIssuer = cf.TypeRef(C.kSecAttrIssuer) KSecAttrSynchronizable = cf.TypeRef(C.kSecAttrSynchronizable) KSecUseDataProtectionKeychain = cf.TypeRef(C.kSecUseDataProtectionKeychain) KSecClass = cf.TypeRef(C.kSecClass) KSecClassKey = cf.TypeRef(C.kSecClassKey) KSecClassCertificate = cf.TypeRef(C.kSecClassCertificate) KSecClassIdentity = cf.TypeRef(C.kSecClassIdentity) KSecMatchLimit = cf.TypeRef(C.kSecMatchLimit) KSecMatchLimitOne = cf.TypeRef(C.kSecMatchLimitOne) KSecPublicKeyAttrs = cf.TypeRef(C.kSecPublicKeyAttrs) KSecPrivateKeyAttrs = cf.TypeRef(C.kSecPrivateKeyAttrs) KSecReturnRef = cf.TypeRef(C.kSecReturnRef) KSecValueRef = cf.TypeRef(C.kSecValueRef) KSecValueData = cf.TypeRef(C.kSecValueData) )
View Source
var ( KSecKeyAlgorithmECDSASignatureDigestX962 = C.kSecKeyAlgorithmECDSASignatureDigestX962 KSecKeyAlgorithmECDSASignatureDigestX962SHA256 = C.kSecKeyAlgorithmECDSASignatureDigestX962SHA256 KSecKeyAlgorithmECDSASignatureDigestX962SHA384 = C.kSecKeyAlgorithmECDSASignatureDigestX962SHA384 KSecKeyAlgorithmECDSASignatureDigestX962SHA512 = C.kSecKeyAlgorithmECDSASignatureDigestX962SHA512 KSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA256 = C.kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA256 KSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA384 = C.kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA384 KSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA512 = C.kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA512 KSecKeyAlgorithmRSASignatureDigestPSSSHA256 = C.kSecKeyAlgorithmRSASignatureDigestPSSSHA256 KSecKeyAlgorithmRSASignatureDigestPSSSHA384 = C.kSecKeyAlgorithmRSASignatureDigestPSSSHA384 KSecKeyAlgorithmRSASignatureDigestPSSSHA512 = C.kSecKeyAlgorithmRSASignatureDigestPSSSHA512 KSecKeyAlgorithmECDHKeyExchangeStandard = C.kSecKeyAlgorithmECDHKeyExchangeStandard )
Functions ¶
func GetSecAttrApplicationLabel ¶
func GetSecAttrApplicationLabel(v *cf.DictionaryRef) []byte
func GetSecValueData ¶
func GetSecValueData(v *cf.DictionaryRef) []byte
func SecCertificateCopyData ¶
func SecCertificateCopyData(cert *SecCertificateRef) (*cf.DataRef, error)
func SecItemAdd ¶
func SecItemAdd(attributes *cf.DictionaryRef, result *cf.TypeRef) error
func SecItemCopyMatching ¶
func SecItemCopyMatching(query *cf.DictionaryRef, result *cf.TypeRef) error
func SecItemDelete ¶
func SecItemDelete(query *cf.DictionaryRef) error
func SecItemUpdate ¶
func SecItemUpdate(query *cf.DictionaryRef, attributesToUpdate *cf.DictionaryRef) error
func SecKeyCopyAttributes ¶
func SecKeyCopyAttributes(key *SecKeyRef) *cf.DictionaryRef
func SecKeyCopyKeyExchangeResult ¶ added in v0.47.0
func SecKeyCopyKeyExchangeResult(privateKey *SecKeyRef, algorithm SecKeyAlgorithm, publicKey *SecKeyRef, parameters *cf.DictionaryRef) (*cf.DataRef, error)
func SecKeyCreateSignature ¶
Types ¶
type SecAccessControlCreateFlags ¶
type SecAccessControlCreateFlags = C.SecAccessControlCreateFlags
type SecAccessControlRef ¶
type SecAccessControlRef struct {
// contains filtered or unexported fields
}
func SecAccessControlCreateWithFlags ¶
func SecAccessControlCreateWithFlags(protection cf.TypeRef, flags SecAccessControlCreateFlags) (*SecAccessControlRef, error)
func (*SecAccessControlRef) Release ¶
func (v *SecAccessControlRef) Release()
func (*SecAccessControlRef) TypeRef ¶
func (v *SecAccessControlRef) TypeRef() cf.CFTypeRef
type SecCertificateRef ¶
type SecCertificateRef struct {
Value C.SecCertificateRef
}
func NewSecCertificateRef ¶
func NewSecCertificateRef(ref cf.TypeRef) *SecCertificateRef
func SecCertificateCreateWithData ¶
func SecCertificateCreateWithData(certData *cf.DataRef) (*SecCertificateRef, error)
func (*SecCertificateRef) Release ¶
func (v *SecCertificateRef) Release()
func (*SecCertificateRef) TypeRef ¶
func (v *SecCertificateRef) TypeRef() cf.CFTypeRef
type SecKeyAlgorithm ¶
type SecKeyAlgorithm = C.SecKeyAlgorithm
type SecKeyRef ¶
func NewSecKeyRef ¶
func SecKeyCopyPublicKey ¶
func SecKeyCreateRandomKey ¶
func SecKeyCreateRandomKey(parameters *cf.DictionaryRef) (*SecKeyRef, error)
func SecKeyCreateWithData ¶ added in v0.47.0
Click to show internal directories.
Click to hide internal directories.