Documentation ¶
Overview ¶
Package darwin contains a darwin-specific client for accessing the keychain APIs directly, bypassing the RPC mechanism of the universal client.
Index ¶
- type SecureKey
- func (sk *SecureKey) CertificateChain() [][]byte
- func (sk *SecureKey) Close()
- func (sk *SecureKey) Decrypt(_ io.Reader, msg []byte, opts crypto.DecrypterOpts) (plaintext []byte, err error)
- func (sk *SecureKey) Encrypt(_ io.Reader, msg []byte, opts any) (ciphertext []byte, err error)
- func (sk *SecureKey) Public() crypto.PublicKey
- func (sk *SecureKey) Sign(_ io.Reader, digest []byte, opts crypto.SignerOpts) (signed []byte, err error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type SecureKey ¶
type SecureKey struct {
// contains filtered or unexported fields
}
SecureKey is a public wrapper for the internal keychain implementation.
func NewSecureKey ¶
NewSecureKey returns a handle to the first available certificate and private key pair in the MacOS Keychain matching the issuer CN filter. This includes both the current login keychain for the user as well as the system keychain.
func (*SecureKey) CertificateChain ¶
CertificateChain returns the SecureKey's raw X509 cert chain. This contains the public key.
func (*SecureKey) Close ¶
func (sk *SecureKey) Close()
Close frees up resources associated with the underlying key.
func (*SecureKey) Decrypt ¶ added in v0.3.0
func (sk *SecureKey) Decrypt(_ io.Reader, msg []byte, opts crypto.DecrypterOpts) (plaintext []byte, err error)
Decrypt decrypts a ciphertext msg into plaintext, using the specified decrypter opts. Implements crypto.Decrypter interface.
func (*SecureKey) Encrypt ¶ added in v0.3.0
Encrypt encrypts a plaintext msg into ciphertext, using the specified encrypt opts.