work with CURVE security certificates
Create and initialize a new certificate in memory
Accepts public/secret key pair from caller
Load certificate from file
Destroy a certificate in memory
Return public part of key pair as 32-byte binary string
Return secret part of key pair as 32-byte binary string
Return public part of key pair as Z85 armored string
Return secret part of key pair as Z85 armored string
Set certificate metadata from formatted string.
Unset certificate metadata.
Get metadata value from certificate; if the metadata value doesn't
exist, returns NULL.
Get list of metadata fields from certificate. Caller is responsible for
destroying list. Caller should not modify the values of list items.
Save full certificate (public + secret) to file for persistent storage
This creates one public file and one secret file (filename + "_secret").
Save public certificate only to file for persistent storage
Save secret certificate only to file for persistent storage
Apply certificate to socket, i.e. use for CURVE security on socket.
If certificate was loaded from public file, the secret key will be
undefined, and this certificate will not work successfully.
Return copy of certificate; if certificate is NULL or we exhausted
heap memory, returns NULL.
Return true if two certificates have the same keys
Print certificate contents to stdout
Self test of this class