chickadee » cryptlib

Cryptlib

Author

Thomas Chust

Requirements

Pogramming Interface

The Scheme programming interface stays relatively close to the original one for C, with some added conveniences. Notable differences from the C interface are:

Exported Procedures

All the procedures do automatic error checking and may throw exceptions of the kind (exn crypt) with a code property holding the cryptlib error code.

(add-random! RANDOM-DATA [RANDOM-DATA-LENGTH]) => (void) procedure
(login NAME PASSWORD) => USER procedure

Logs in with the given user NAME, sets the internal parameter for the current user and returns the cryptlib user object handle.

(logout) => (void) procedure

Logs the current user out and resets the internal parameter for the current user handle to UNUSED.

(destroy-object HANDLE) => (void) procedure
(open-device DEVICE-TYPE NAME) => DEVICE procedure
(query-capability ALGO [DEVICE]) => (values NAME BLOCK-SIZE MIN-KEY-SIZE KEY-SIZE MAX-KEY-SIZE) procedure
(query-object OBJECT-DATA [OBJECT-DATA-LENGTH]) => (values OBJECT-TYPE ALGO MODE HASH-ALGO SALT-LENGTH) procedure
(create-context ALGO [DEVICE]) => CONTEXT procedure
(generate-key CONTEXT) => KEY procedure
(encrypt CONTEXT BUFFER [BUFFER-LENGTH]) => (void) procedure
(decrypt CONTEXT BUFFER [BUFFER-LENGTH]) => (void) procedure
(attribute OBJECT ATTRIBUTE-TYPE) => VALUE procedure
(attribute/string OBJECT ATTRIBUTE-TYPE) => VALUE procedure
(attribute-set! OBJECT ATTRIBUTE-TYPE VALUE) => (void) procedure
(set! (attribute OBJECT ATTRIBUTE-TYPE) VALUE) => (void) syntax
(attribute-set!/string OBJECT ATTRIBUTE-TYPE VALUE) => (void) procedure
(set! (attribute/string OBJECT ATTRIBUTE-TYPE) VALUE) => (void) syntax
(attribute-delete! OBJECT ATTRIBUTE-TYPE) => (void) procedure
(export-key EXPORT-KEY SESSION-KEY-CONTEXT) => KEY-DATA procedure
(import-key IMPORT-CONTEXT SESSION-KEY-CONTEXT KEY-DATA [KEY-DATA-LENGTH]) => (void) procedure
(create-signature SIGN-CONTEXT HASH-CONTEXT [FORMAT-TYPE EXTRA-DATA]) => SIGNATURE-DATA procedure
(check-signature SIG-CHECK-KEY HASH-CONTEXT SIGNATURE [SIGNATURE-LENGTH GET-EXTRA-DATA?]) => EXTRA-DATA | (void) procedure
(open-keyset KEYSET-TYPE KEYSET-NAME [KEYSET-OPTIONS]) => KEYSET procedure
(get-public-key KEYSET KEYID-TYPE KEYID) => HANDLE procedure
(get-private-key KEYSET KEYID-TYPE KEYID [PASSWORD]) => HANDLE procedure
(get-key KEYSET KEYID-TYPE KEYID [PASSWORD]) => HANDLE procedure
(add-public-key! KEYSET CERTIFICATE) => (void) procedure
(add-private-key! KEYSET KEY PASSWORD) => (void) procedure
(delete-key! OBJECT KEYID-TYPE KEYID) => (void) procedure
(create-cert CERT-TYPE) => CERTIFICATE procedure
(sign-cert! CERTIFICATE SIGN-CONTEXT) => (void) procedure
(check-cert CERTIFICATE SIG-CHECK-KEY) => (void) procedure
(export-cert CERT-FORMAT-TYPE CERTIFICATE) => CERT-DATA procedure
(import-cert CERT-DATA [CERT-DATA-LENGTH]) => CERTIFICATE procedure
(ca-get-item KEYSET CERT-TYPE ID-TYPE ID) => CERTIFICATE procedure
(ca-add-item! KEYSET CERTIFICATE) => (void) procedure
(ca-delete-item! KEYSET CERT-TYPE ID-TYPE ID) => (void) procedure
(ca-cert-management ACTION KEYSET CA-KEY CERT-REQUEST [GET-CERTIFICATE?]) => CERTIFICATE | (void) procedure
(create-envelope FORMAT-TYPE) => ENVELOPE procedure
(create-session SESSION-TYPE) => SESSION procedure
(push-data HANDLE BUFFER [BUFFER-LENGTH SILENT-EOF?]) => COPIED-LENGTH procedure
(pop-data HANDLE BUFFER [BUFFER-LENGTH SILENT-EOF?]) => COPIED-LENGTH procedure

Iff SILENT-EOF? is true, ERROR-READ or ERROR-WRITE conditions are not raised but rather cause a return value of #f.

(flush-data HANDLE) => (void) procedure
(object-port? VALUE) => BOOLEAN procedure

Checks whether a VALUE is a port wrapped around a cryptlib envelope or session object.

(port->object PORT) => HANDLE procedure

Extracts the object handle from a port wrapping a cryptlib envelope or session object.

(open-input-object HANDLE [DESTROY-ON-CLOSE? EOF-WHEN-EMPTY?]) => PORT procedure

Wraps a cryptlib envelope or session object into an input port. If DESTROY-ON-CLOSE? is true, closing the port causes disposal of the underlying object using destroy-object.

If EOF-WHEN-EMPTY? is true, the port will enter the end-of-file state as soon as pop-data returns zero, otherwise the port will enter the end-of-file state as soon as pop-data reports an ERROR-READ. The former behaviour is suitable for envelopes, the latter for sessions.

(open-output-object HANDLE DESTROY-ON-CLOSE?) => PORT procedure

Wraps a cryptlib envelope or session object into an output port. If DESTROY-ON-CLOSE? is true, closing the port causes disposal of the underlying object using destroy-object.

Exported Constants

ALGO-NONE constant
ALGO-DES constant
ALGO-3DES constant
ALGO-IDEA constant
ALGO-RC2 constant
ALGO-RC4 constant
ALGO-RC5 constant
ALGO-AES constant
ALGO-BLOWFISH constant
ALGO-DH constant
ALGO-RSA constant
ALGO-DSA constant
ALGO-ELGAMAL constant
ALGO-ECDSA constant
ALGO-ECDH constant
ALGO-MD5 constant
ALGO-SHA1 constant
ALGO-RIPEMD160 constant
ALGO-SHA2 constant
ALGO-SHAng constant
ALGO-HMAC-MD5 constant
ALGO-HMAC-SHA1 constant
ALGO-HMAC-RIPEMD160 constant
ALGO-HMAC-SHA2 constant
ALGO-HMAC-SHAng constant
ALGO-FIRST-CONVENTIONAL constant
ALGO-LAST-CONVENTIONAL constant
ALGO-FIRST-PKC constant
ALGO-LAST-PKC constant
ALGO-FIRST-HASH constant
ALGO-LAST-HASH constant
ALGO-FIRST-MAC constant
ALGO-LAST-MAC constant
MODE-NONE constant
MODE-ECB constant
MODE-CBC constant
MODE-CFB constant
MODE-OFB constant
MODE-GCM constant
MODE-LAST constant
KEYSET-NONE constant
KEYSET-FILE constant
KEYSET-HTTP constant
KEYSET-LDAP constant
KEYSET-ODBC constant
KEYSET-DATABASE constant
KEYSET-ODBC-STORE constant
KEYSET-DATABASE-STORE constant
KEYSET-LAST constant
DEVICE-NONE constant
DEVICE-FORTEZZA constant
DEVICE-PKCS11 constant
DEVICE-CRYPTOAPI constant
DEVICE-HARDWARE constant
DEVICE-LAST constant
CERTTYPE-NONE constant
CERTTYPE-CERTIFICATE constant
CERTTYPE-ATTRIBUTE-CERT constant
CERTTYPE-CERTCHAIN constant
CERTTYPE-CERTREQUEST constant
CERTTYPE-REQUEST-CERT constant
CERTTYPE-REQUEST-REVOCATION constant
CERTTYPE-CRL constant
CERTTYPE-CMS-ATTRIBUTES constant
CERTTYPE-RTCS-REQUEST constant
CERTTYPE-RTCS-RESPONSE constant
CERTTYPE-OCSP-REQUEST constant
CERTTYPE-OCSP-RESPONSE constant
CERTTYPE-PKIUSER constant
CERTTYPE-LAST constant
FORMAT-NONE constant
FORMAT-AUTO constant
FORMAT-CRYPTLIB constant
FORMAT-CMS constant
FORMAT-PKCS7 constant
FORMAT-SMIME constant
FORMAT-PGP constant
FORMAT-LAST constant
SESSION-NONE constant
SESSION-SSH constant
SESSION-SSH-SERVER constant
SESSION-SSL constant
SESSION-SSL-SERVER constant
SESSION-RTCS constant
SESSION-RTCS-SERVER constant
SESSION-OCSP constant
SESSION-OCSP-SERVER constant
SESSION-TSP constant
SESSION-TSP-SERVER constant
SESSION-CMP constant
SESSION-CMP-SERVER constant
SESSION-SCEP constant
SESSION-SCEP-SERVER constant
SESSION-CERTSTORE-SERVER constant
SESSION-LAST constant
USER-NONE constant
USER-NORMAL constant
USER-SO constant
USER-CA constant
USER-LAST constant
ATTRIBUTE-NONE constant
PROPERTY-HIGHSECURITY constant
PROPERTY-OWNER constant
PROPERTY-FORWARDCOUNT constant
PROPERTY-LOCKED constant
PROPERTY-USAGECOUNT constant
PROPERTY-NONEXPORTABLE constant
ATTRIBUTE-ERRORTYPE constant
ATTRIBUTE-ERRORLOCUS constant
ATTRIBUTE-ERRORMESSAGE constant
ATTRIBUTE-CURRENT-GROUP constant
ATTRIBUTE-CURRENT constant
ATTRIBUTE-CURRENT-INSTANCE constant
ATTRIBUTE-BUFFERSIZE constant
OPTION-INFO-DESCRIPTION constant
OPTION-INFO-MAJORVERSION constant
OPTION-INFO-MINORVERSION constant
OPTION-INFO-STEPPING constant
OPTION-ENCR-ALGO constant
OPTION-ENCR-HASH constant
OPTION-ENCR-MAC constant
OPTION-PKC-ALGO constant
OPTION-PKC-KEYSIZE constant
OPTION-SIG-ALGO constant
OPTION-SIG-KEYSIZE constant
OPTION-KEYING-ALGO constant
OPTION-KEYING-ITERATIONS constant
OPTION-CERT-SIGNUNRECOGNISEDATTRIBUTES constant
OPTION-CERT-VALIDITY constant
OPTION-CERT-UPDATEINTERVAL constant
OPTION-CERT-COMPLIANCELEVEL constant
OPTION-CMS-DEFAULTATTRIBUTES constant
OPTION-SMIME-DEFAULTATTRIBUTES constant
OPTION-KEYS-LDAP-OBJECTCLASS constant
OPTION-KEYS-LDAP-OBJECTTYPE constant
OPTION-KEYS-LDAP-FILTER constant
OPTION-KEYS-LDAP-CACERTNAME constant
OPTION-KEYS-LDAP-CERTNAME constant
OPTION-KEYS-LDAP-CRLNAME constant
OPTION-KEYS-LDAP-EMAILNAME constant
OPTION-DEVICE-PKCS11-DVR01 constant
OPTION-DEVICE-PKCS11-DVR02 constant
OPTION-DEVICE-PKCS11-DVR03 constant
OPTION-DEVICE-PKCS11-DVR04 constant
OPTION-DEVICE-PKCS11-DVR05 constant
OPTION-DEVICE-PKCS11-HARDWAREONLY constant
OPTION-NET-SOCKS-SERVER constant
OPTION-NET-SOCKS-USERNAME constant
OPTION-NET-HTTP-PROXY constant
OPTION-NET-CONNECTTIMEOUT constant
OPTION-NET-READTIMEOUT constant
OPTION-NET-WRITETIMEOUT constant
OPTION-MISC-ASYNCINIT constant
OPTION-MISC-SIDECHANNELPROTECTION constant
OPTION-CONFIGCHANGED constant
OPTION-SELFTESTOK constant
CTXINFO-ALGO constant
CTXINFO-MODE constant
CTXINFO-NAME-ALGO constant
CTXINFO-NAME-MODE constant
CTXINFO-KEYSIZE constant
CTXINFO-BLOCKSIZE constant
CTXINFO-IVSIZE constant
CTXINFO-KEYING-ALGO constant
CTXINFO-KEYING-ITERATIONS constant
CTXINFO-KEYING-SALT constant
CTXINFO-KEYING-VALUE constant
CTXINFO-KEY constant
CTXINFO-KEY-COMPONENTS constant
CTXINFO-IV constant
CTXINFO-HASHVALUE constant
CTXINFO-LABEL constant
CTXINFO-PERSISTENT constant
CERTINFO-SELFSIGNED constant
CERTINFO-IMMUTABLE constant
CERTINFO-XYZZY constant
CERTINFO-CERTTYPE constant
CERTINFO-FINGERPRINT constant
CERTINFO-FINGERPRINT-MD5 constant
CERTINFO-FINGERPRINT-SHA1 constant
CERTINFO-FINGERPRINT-SHA2 constant
CERTINFO-FINGERPRINT-SHAng constant
CERTINFO-TRUSTED-USAGE constant
CERTINFO-TRUSTED-IMPLICIT constant
CERTINFO-SIGNATURELEVEL constant
CERTINFO-VERSION constant
CERTINFO-SERIALNUMBER constant
CERTINFO-SUBJECTPUBLICKEYINFO constant
CERTINFO-CERTIFICATE constant
CERTINFO-USERCERTIFICATE constant
CERTINFO-CACERTIFICATE constant
CERTINFO-ISSUERNAME constant
CERTINFO-VALIDFROM constant
CERTINFO-VALIDTO constant
CERTINFO-SUBJECTNAME constant
CERTINFO-ISSUERUNIQUEID constant
CERTINFO-SUBJECTUNIQUEID constant
CERTINFO-CERTREQUEST constant
CERTINFO-THISUPDATE constant
CERTINFO-NEXTUPDATE constant
CERTINFO-REVOCATIONDATE constant
CERTINFO-REVOCATIONSTATUS constant
CERTINFO-CERTSTATUS constant
CERTINFO-DN constant
CERTINFO-PKIUSER-ID constant
CERTINFO-PKIUSER-ISSUEPASSWORD constant
CERTINFO-PKIUSER-REVPASSWORD constant
CERTINFO-COUNTRYNAME constant
CERTINFO-STATEORPROVINCENAME constant
CERTINFO-LOCALITYNAME constant
CERTINFO-ORGANIZATIONNAME constant
CERTINFO-ORGANISATIONNAME constant
CERTINFO-ORGANIZATIONALUNITNAME constant
CERTINFO-ORGANISATIONALUNITNAME constant
CERTINFO-COMMONNAME constant
CERTINFO-OTHERNAME-TYPEID constant
CERTINFO-OTHERNAME-VALUE constant
CERTINFO-RFC822NAME constant
CERTINFO-EMAIL constant
CERTINFO-DNSNAME constant
CERTINFO-DIRECTORYNAME constant
CERTINFO-EDIPARTYNAME-NAMEASSIGNER constant
CERTINFO-EDIPARTYNAME-PARTYNAME constant
CERTINFO-UNIFORMRESOURCEIDENTIFIER constant
CERTINFO-IPADDRESS constant
CERTINFO-REGISTEREDID constant
CERTINFO-CHALLENGEPASSWORD constant
CERTINFO-CRLEXTREASON constant
CERTINFO-KEYFEATURES constant
CERTINFO-AUTHORITYINFOACCESS constant
CERTINFO-AUTHORITYINFO-RTCS constant
CERTINFO-AUTHORITYINFO-OCSP constant
CERTINFO-AUTHORITYINFO-CAISSUERS constant
CERTINFO-AUTHORITYINFO-CERTSTORE constant
CERTINFO-AUTHORITYINFO-CRLS constant
CERTINFO-BIOMETRICINFO constant
CERTINFO-BIOMETRICINFO-TYPE constant
CERTINFO-BIOMETRICINFO-HASHALGO constant
CERTINFO-BIOMETRICINFO-HASH constant
CERTINFO-BIOMETRICINFO-URL constant
CERTINFO-QCSTATEMENT constant
CERTINFO-QCSTATEMENT-SEMANTICS constant
CERTINFO-QCSTATEMENT-REGISTRATIONAUTHORITY constant
CERTINFO-IPADDRESSBLOCKS constant
CERTINFO-IPADDRESSBLOCKS-ADDRESSFAMILY constant
CERTINFO-IPADDRESSBLOCKS-PREFIX constant
CERTINFO-IPADDRESSBLOCKS-MIN constant
CERTINFO-IPADDRESSBLOCKS-MAX constant
CERTINFO-AUTONOMOUSSYSIDS constant
CERTINFO-AUTONOMOUSSYSIDS-ASNUM-ID constant
CERTINFO-AUTONOMOUSSYSIDS-ASNUM-MIN constant
CERTINFO-AUTONOMOUSSYSIDS-ASNUM-MAX constant
CERTINFO-OCSP-NONCE constant
CERTINFO-OCSP-RESPONSE constant
CERTINFO-OCSP-RESPONSE-OCSP constant
CERTINFO-OCSP-NOCHECK constant
CERTINFO-OCSP-ARCHIVECUTOFF constant
CERTINFO-SUBJECTINFOACCESS constant
CERTINFO-SUBJECTINFO-CAREPOSITORY constant
CERTINFO-SUBJECTINFO-TIMESTAMPING constant
CERTINFO-SUBJECTINFO-SIGNEDOBJECTREPOSITORY constant
CERTINFO-SUBJECTINFO-RPKIMANIFEST constant
CERTINFO-SUBJECTINFO-SIGNEDOBJECT constant
CERTINFO-SIGG-DATEOFCERTGEN constant
CERTINFO-SIGG-PROCURATION constant
CERTINFO-SIGG-PROCURE-COUNTRY constant
CERTINFO-SIGG-PROCURE-TYPEOFSUBSTITUTION constant
CERTINFO-SIGG-PROCURE-SIGNINGFOR constant
CERTINFO-SIGG-ADMISSIONS constant
CERTINFO-SIGG-ADMISSIONS-AUTHORITY constant
CERTINFO-SIGG-ADMISSIONS-NAMINGAUTHID constant
CERTINFO-SIGG-ADMISSIONS-NAMINGAUTHURL constant
CERTINFO-SIGG-ADMISSIONS-NAMINGAUTHTEXT constant
CERTINFO-SIGG-ADMISSIONS-PROFESSIONITEM constant
CERTINFO-SIGG-ADMISSIONS-PROFESSIONOID constant
CERTINFO-SIGG-ADMISSIONS-REGISTRATIONNUMBER constant
CERTINFO-SIGG-MONETARYLIMIT constant
CERTINFO-SIGG-MONETARY-CURRENCY constant
CERTINFO-SIGG-MONETARY-AMOUNT constant
CERTINFO-SIGG-MONETARY-EXPONENT constant
CERTINFO-SIGG-DECLARATIONOFMAJORITY constant
CERTINFO-SIGG-DECLARATIONOFMAJORITY-COUNTRY constant
CERTINFO-SIGG-RESTRICTION constant
CERTINFO-SIGG-CERTHASH constant
CERTINFO-SIGG-ADDITIONALINFORMATION constant
CERTINFO-STRONGEXTRANET constant
CERTINFO-STRONGEXTRANET-ZONE constant
CERTINFO-STRONGEXTRANET-ID constant
CERTINFO-SUBJECTDIRECTORYATTRIBUTES constant
CERTINFO-SUBJECTDIR-TYPE constant
CERTINFO-SUBJECTDIR-VALUES constant
CERTINFO-SUBJECTKEYIDENTIFIER constant
CERTINFO-KEYUSAGE constant
CERTINFO-PRIVATEKEYUSAGEPERIOD constant
CERTINFO-PRIVATEKEY-NOTBEFORE constant
CERTINFO-PRIVATEKEY-NOTAFTER constant
CERTINFO-SUBJECTALTNAME constant
CERTINFO-ISSUERALTNAME constant
CERTINFO-BASICCONSTRAINTS constant
CERTINFO-CA constant
CERTINFO-AUTHORITY constant
CERTINFO-PATHLENCONSTRAINT constant
CERTINFO-CRLNUMBER constant
CERTINFO-CRLREASON constant
CERTINFO-HOLDINSTRUCTIONCODE constant
CERTINFO-INVALIDITYDATE constant
CERTINFO-DELTACRLINDICATOR constant
CERTINFO-ISSUINGDISTRIBUTIONPOINT constant
CERTINFO-ISSUINGDIST-FULLNAME constant
CERTINFO-ISSUINGDIST-USERCERTSONLY constant
CERTINFO-ISSUINGDIST-CACERTSONLY constant
CERTINFO-ISSUINGDIST-SOMEREASONSONLY constant
CERTINFO-ISSUINGDIST-INDIRECTCRL constant
CERTINFO-CERTIFICATEISSUER constant
CERTINFO-NAMECONSTRAINTS constant
CERTINFO-PERMITTEDSUBTREES constant
CERTINFO-EXCLUDEDSUBTREES constant
CERTINFO-CRLDISTRIBUTIONPOINT constant
CERTINFO-CRLDIST-FULLNAME constant
CERTINFO-CRLDIST-REASONS constant
CERTINFO-CRLDIST-CRLISSUER constant
CERTINFO-CERTIFICATEPOLICIES constant
CERTINFO-CERTPOLICYID constant
CERTINFO-CERTPOLICY-CPSURI constant
CERTINFO-CERTPOLICY-ORGANIZATION constant
CERTINFO-CERTPOLICY-NOTICENUMBERS constant
CERTINFO-CERTPOLICY-EXPLICITTEXT constant
CERTINFO-POLICYMAPPINGS constant
CERTINFO-ISSUERDOMAINPOLICY constant
CERTINFO-SUBJECTDOMAINPOLICY constant
CERTINFO-AUTHORITYKEYIDENTIFIER constant
CERTINFO-AUTHORITY-KEYIDENTIFIER constant
CERTINFO-AUTHORITY-CERTISSUER constant
CERTINFO-AUTHORITY-CERTSERIALNUMBER constant
CERTINFO-POLICYCONSTRAINTS constant
CERTINFO-REQUIREEXPLICITPOLICY constant
CERTINFO-INHIBITPOLICYMAPPING constant
CERTINFO-EXTKEYUSAGE constant
CERTINFO-EXTKEY-MS-INDIVIDUALCODESIGNING constant
CERTINFO-EXTKEY-MS-COMMERCIALCODESIGNING constant
CERTINFO-EXTKEY-MS-CERTTRUSTLISTSIGNING constant
CERTINFO-EXTKEY-MS-TIMESTAMPSIGNING constant
CERTINFO-EXTKEY-MS-SERVERGATEDCRYPTO constant
CERTINFO-EXTKEY-MS-ENCRYPTEDFILESYSTEM constant
CERTINFO-EXTKEY-SERVERAUTH constant
CERTINFO-EXTKEY-CLIENTAUTH constant
CERTINFO-EXTKEY-CODESIGNING constant
CERTINFO-EXTKEY-EMAILPROTECTION constant
CERTINFO-EXTKEY-IPSECENDSYSTEM constant
CERTINFO-EXTKEY-IPSECTUNNEL constant
CERTINFO-EXTKEY-IPSECUSER constant
CERTINFO-EXTKEY-TIMESTAMPING constant
CERTINFO-EXTKEY-OCSPSIGNING constant
CERTINFO-EXTKEY-DIRECTORYSERVICE constant
CERTINFO-EXTKEY-ANYKEYUSAGE constant
CERTINFO-EXTKEY-NS-SERVERGATEDCRYPTO constant
CERTINFO-EXTKEY-VS-SERVERGATEDCRYPTO-CA constant
CERTINFO-CRLSTREAMIDENTIFIER constant
CERTINFO-FRESHESTCRL constant
CERTINFO-FRESHESTCRL-FULLNAME constant
CERTINFO-FRESHESTCRL-REASONS constant
CERTINFO-FRESHESTCRL-CRLISSUER constant
CERTINFO-ORDEREDLIST constant
CERTINFO-BASEUPDATETIME constant
CERTINFO-DELTAINFO constant
CERTINFO-DELTAINFO-LOCATION constant
CERTINFO-DELTAINFO-NEXTDELTA constant
CERTINFO-INHIBITANYPOLICY constant
CERTINFO-TOBEREVOKED constant
CERTINFO-TOBEREVOKED-CERTISSUER constant
CERTINFO-TOBEREVOKED-REASONCODE constant
CERTINFO-TOBEREVOKED-REVOCATIONTIME constant
CERTINFO-TOBEREVOKED-CERTSERIALNUMBER constant
CERTINFO-REVOKEDGROUPS constant
CERTINFO-REVOKEDGROUPS-CERTISSUER constant
CERTINFO-REVOKEDGROUPS-REASONCODE constant
CERTINFO-REVOKEDGROUPS-INVALIDITYDATE constant
CERTINFO-REVOKEDGROUPS-STARTINGNUMBER constant
CERTINFO-REVOKEDGROUPS-ENDINGNUMBER constant
CERTINFO-EXPIREDCERTSONCRL constant
CERTINFO-AAISSUINGDISTRIBUTIONPOINT constant
CERTINFO-AAISSUINGDIST-FULLNAME constant
CERTINFO-AAISSUINGDIST-SOMEREASONSONLY constant
CERTINFO-AAISSUINGDIST-INDIRECTCRL constant
CERTINFO-AAISSUINGDIST-USERATTRCERTS constant
CERTINFO-AAISSUINGDIST-AACERTS constant
CERTINFO-AAISSUINGDIST-SOACERTS constant
CERTINFO-NS-CERTTYPE constant
CERTINFO-NS-BASEURL constant
CERTINFO-NS-REVOCATIONURL constant
CERTINFO-NS-CAREVOCATIONURL constant
CERTINFO-NS-CERTRENEWALURL constant
CERTINFO-NS-CAPOLICYURL constant
CERTINFO-NS-SSLSERVERNAME constant
CERTINFO-NS-COMMENT constant
CERTINFO-SET-HASHEDROOTKEY constant
CERTINFO-SET-ROOTKEYTHUMBPRINT constant
CERTINFO-SET-CERTIFICATETYPE constant
CERTINFO-SET-MERCHANTDATA constant
CERTINFO-SET-MERID constant
CERTINFO-SET-MERACQUIRERBIN constant
CERTINFO-SET-MERCHANTLANGUAGE constant
CERTINFO-SET-MERCHANTNAME constant
CERTINFO-SET-MERCHANTCITY constant
CERTINFO-SET-MERCHANTSTATEPROVINCE constant
CERTINFO-SET-MERCHANTPOSTALCODE constant
CERTINFO-SET-MERCHANTCOUNTRYNAME constant
CERTINFO-SET-MERCOUNTRY constant
CERTINFO-SET-MERAUTHFLAG constant
CERTINFO-SET-CERTCARDREQUIRED constant
CERTINFO-SET-TUNNELING constant
CERTINFO-SET-TUNNELLING constant
CERTINFO-SET-TUNNELINGFLAG constant
CERTINFO-SET-TUNNELLINGFLAG constant
CERTINFO-SET-TUNNELINGALGID constant
CERTINFO-SET-TUNNELLINGALGID constant
CERTINFO-CMS-CONTENTTYPE constant
CERTINFO-CMS-MESSAGEDIGEST constant
CERTINFO-CMS-SIGNINGTIME constant
CERTINFO-CMS-COUNTERSIGNATURE constant
CERTINFO-CMS-SIGNINGDESCRIPTION constant
CERTINFO-CMS-SMIMECAPABILITIES constant
CERTINFO-CMS-SMIMECAP-3DES constant
CERTINFO-CMS-SMIMECAP-AES constant
CERTINFO-CMS-SMIMECAP-CAST128 constant
CERTINFO-CMS-SMIMECAP-IDEA constant
CERTINFO-CMS-SMIMECAP-RC2 constant
CERTINFO-CMS-SMIMECAP-RC5 constant
CERTINFO-CMS-SMIMECAP-SKIPJACK constant
CERTINFO-CMS-SMIMECAP-DES constant
CERTINFO-CMS-SMIMECAP-SHAng constant
CERTINFO-CMS-SMIMECAP-SHA2 constant
CERTINFO-CMS-SMIMECAP-SHA1 constant
CERTINFO-CMS-SMIMECAP-HMAC-SHAng constant
CERTINFO-CMS-SMIMECAP-HMAC-SHA2 constant
CERTINFO-CMS-SMIMECAP-HMAC-SHA1 constant
CERTINFO-CMS-SMIMECAP-AUTHENC256 constant
CERTINFO-CMS-SMIMECAP-AUTHENC128 constant
CERTINFO-CMS-SMIMECAP-RSA-SHAng constant
CERTINFO-CMS-SMIMECAP-RSA-SHA2 constant
CERTINFO-CMS-SMIMECAP-RSA-SHA1 constant
CERTINFO-CMS-SMIMECAP-DSA-SHA1 constant
CERTINFO-CMS-SMIMECAP-ECDSA-SHAng constant
CERTINFO-CMS-SMIMECAP-ECDSA-SHA2 constant
CERTINFO-CMS-SMIMECAP-ECDSA-SHA1 constant
CERTINFO-CMS-SMIMECAP-PREFERSIGNEDDATA constant
CERTINFO-CMS-SMIMECAP-CANNOTDECRYPTANY constant
CERTINFO-CMS-SMIMECAP-PREFERBINARYINSIDE constant
CERTINFO-CMS-RECEIPTREQUEST constant
CERTINFO-CMS-RECEIPT-CONTENTIDENTIFIER constant
CERTINFO-CMS-RECEIPT-FROM constant
CERTINFO-CMS-RECEIPT-TO constant
CERTINFO-CMS-SECURITYLABEL constant
CERTINFO-CMS-SECLABEL-CLASSIFICATION constant
CERTINFO-CMS-SECLABEL-POLICY constant
CERTINFO-CMS-SECLABEL-PRIVACYMARK constant
CERTINFO-CMS-SECLABEL-CATTYPE constant
CERTINFO-CMS-SECLABEL-CATVALUE constant
CERTINFO-CMS-MLEXPANSIONHISTORY constant
CERTINFO-CMS-MLEXP-ENTITYIDENTIFIER constant
CERTINFO-CMS-MLEXP-TIME constant
CERTINFO-CMS-MLEXP-NONE constant
CERTINFO-CMS-MLEXP-INSTEADOF constant
CERTINFO-CMS-MLEXP-INADDITIONTO constant
CERTINFO-CMS-CONTENTHINTS constant
CERTINFO-CMS-CONTENTHINT-DESCRIPTION constant
CERTINFO-CMS-CONTENTHINT-TYPE constant
CERTINFO-CMS-EQUIVALENTLABEL constant
CERTINFO-CMS-EQVLABEL-POLICY constant
CERTINFO-CMS-EQVLABEL-CLASSIFICATION constant
CERTINFO-CMS-EQVLABEL-PRIVACYMARK constant
CERTINFO-CMS-EQVLABEL-CATTYPE constant
CERTINFO-CMS-EQVLABEL-CATVALUE constant
CERTINFO-CMS-SIGNINGCERTIFICATE constant
CERTINFO-CMS-SIGNINGCERT-ESSCERTID constant
CERTINFO-CMS-SIGNINGCERT-POLICIES constant
CERTINFO-CMS-SIGNINGCERTIFICATEV2 constant
CERTINFO-CMS-SIGNINGCERTV2-ESSCERTIDV2 constant
CERTINFO-CMS-SIGNINGCERTV2-POLICIES constant
CERTINFO-CMS-SIGNATUREPOLICYID constant
CERTINFO-CMS-SIGPOLICYID constant
CERTINFO-CMS-SIGPOLICYHASH constant
CERTINFO-CMS-SIGPOLICY-CPSURI constant
CERTINFO-CMS-SIGPOLICY-ORGANIZATION constant
CERTINFO-CMS-SIGPOLICY-NOTICENUMBERS constant
CERTINFO-CMS-SIGPOLICY-EXPLICITTEXT constant
CERTINFO-CMS-SIGTYPEIDENTIFIER constant
CERTINFO-CMS-SIGTYPEID-ORIGINATORSIG constant
CERTINFO-CMS-SIGTYPEID-DOMAINSIG constant
CERTINFO-CMS-SIGTYPEID-ADDITIONALATTRIBUTES constant
CERTINFO-CMS-SIGTYPEID-REVIEWSIG constant
CERTINFO-CMS-NONCE constant
CERTINFO-SCEP-MESSAGETYPE constant
CERTINFO-SCEP-PKISTATUS constant
CERTINFO-SCEP-FAILINFO constant
CERTINFO-SCEP-SENDERNONCE constant
CERTINFO-SCEP-RECIPIENTNONCE constant
CERTINFO-SCEP-TRANSACTIONID constant
CERTINFO-CMS-SPCAGENCYINFO constant
CERTINFO-CMS-SPCAGENCYURL constant
CERTINFO-CMS-SPCSTATEMENTTYPE constant
CERTINFO-CMS-SPCSTMT-INDIVIDUALCODESIGNING constant
CERTINFO-CMS-SPCSTMT-COMMERCIALCODESIGNING constant
CERTINFO-CMS-SPCOPUSINFO constant
CERTINFO-CMS-SPCOPUSINFO-NAME constant
CERTINFO-CMS-SPCOPUSINFO-URL constant
KEYINFO-QUERY constant
KEYINFO-QUERY-REQUESTS constant
DEVINFO-INITIALISE constant
DEVINFO-INITIALIZE constant
DEVINFO-AUTHENT-USER constant
DEVINFO-AUTHENT-SUPERVISOR constant
DEVINFO-SET-AUTHENT-USER constant
DEVINFO-SET-AUTHENT-SUPERVISOR constant
DEVINFO-ZEROISE constant
DEVINFO-ZEROIZE constant
DEVINFO-LOGGEDIN constant
DEVINFO-LABEL constant
ENVINFO-DATASIZE constant
ENVINFO-COMPRESSION constant
ENVINFO-CONTENTTYPE constant
ENVINFO-DETACHEDSIGNATURE constant
ENVINFO-SIGNATURE-RESULT constant
ENVINFO-INTEGRITY constant
ENVINFO-PASSWORD constant
ENVINFO-KEY constant
ENVINFO-SIGNATURE constant
ENVINFO-SIGNATURE-EXTRADATA constant
ENVINFO-RECIPIENT constant
ENVINFO-PUBLICKEY constant
ENVINFO-PRIVATEKEY constant
ENVINFO-PRIVATEKEY-LABEL constant
ENVINFO-ORIGINATOR constant
ENVINFO-SESSIONKEY constant
ENVINFO-HASH constant
ENVINFO-TIMESTAMP constant
ENVINFO-KEYSET-SIGCHECK constant
ENVINFO-KEYSET-ENCRYPT constant
ENVINFO-KEYSET-DECRYPT constant
SESSINFO-ACTIVE constant
SESSINFO-CONNECTIONACTIVE constant
SESSINFO-USERNAME constant
SESSINFO-PASSWORD constant
SESSINFO-PRIVATEKEY constant
SESSINFO-KEYSET constant
SESSINFO-AUTHRESPONSE constant
SESSINFO-SERVER-NAME constant
SESSINFO-SERVER-PORT constant
SESSINFO-SERVER-FINGERPRINT constant
SESSINFO-CLIENT-NAME constant
SESSINFO-CLIENT-PORT constant
SESSINFO-SESSION constant
SESSINFO-NETWORKSOCKET constant
SESSINFO-VERSION constant
SESSINFO-REQUEST constant
SESSINFO-RESPONSE constant
SESSINFO-CACERTIFICATE constant
SESSINFO-TSP-MSGIMPRINT constant
SESSINFO-CMP-REQUESTTYPE constant
SESSINFO-CMP-PRIVKEYSET constant
SESSINFO-SSH-CHANNEL constant
SESSINFO-SSH-CHANNEL-TYPE constant
SESSINFO-SSH-CHANNEL-ARG1 constant
SESSINFO-SSH-CHANNEL-ARG2 constant
SESSINFO-SSH-CHANNEL-ACTIVE constant
SESSINFO-SSL-OPTIONS constant
USERINFO-PASSWORD constant
USERINFO-CAKEY-CERTSIGN constant
USERINFO-CAKEY-CRLSIGN constant
USERINFO-CAKEY-RTCSSIGN constant
USERINFO-CAKEY-OCSPSIGN constant
KEYUSAGE-NONE constant
KEYUSAGE-DIGITALSIGNATURE constant
KEYUSAGE-NONREPUDIATION constant
KEYUSAGE-KEYENCIPHERMENT constant
KEYUSAGE-DATAENCIPHERMENT constant
KEYUSAGE-KEYAGREEMENT constant
KEYUSAGE-KEYCERTSIGN constant
KEYUSAGE-CRLSIGN constant
KEYUSAGE-ENCIPHERONLY constant
KEYUSAGE-DECIPHERONLY constant
KEYUSAGE-LAST constant
CRLREASON-UNSPECIFIED constant
CRLREASON-KEYCOMPROMISE constant
CRLREASON-CACOMPROMISE constant
CRLREASON-AFFILIATIONCHANGED constant
CRLREASON-SUPERSEDED constant
CRLREASON-CESSATIONOFOPERATION constant
CRLREASON-CERTIFICATEHOLD constant
CRLREASON-REMOVEFROMCRL constant
CRLREASON-PRIVILEGEWITHDRAWN constant
CRLREASON-AACOMPROMISE constant
CRLREASON-LAST constant
CRLREASON-NEVERVALID constant
CRLEXTREASON-LAST constant
CRLREASONFLAG-UNUSED constant
CRLREASONFLAG-KEYCOMPROMISE constant
CRLREASONFLAG-CACOMPROMISE constant
CRLREASONFLAG-AFFILIATIONCHANGED constant
CRLREASONFLAG-SUPERSEDED constant
CRLREASONFLAG-CESSATIONOFOPERATION constant
CRLREASONFLAG-CERTIFICATEHOLD constant
CRLREASONFLAG-LAST constant
HOLDINSTRUCTION-NONE constant
HOLDINSTRUCTION-CALLISSUER constant
HOLDINSTRUCTION-REJECT constant
HOLDINSTRUCTION-PICKUPTOKEN constant
HOLDINSTRUCTION-LAST constant
COMPLIANCELEVEL-OBLIVIOUS constant
COMPLIANCELEVEL-REDUCED constant
COMPLIANCELEVEL-STANDARD constant
COMPLIANCELEVEL-PKIX-PARTIAL constant
COMPLIANCELEVEL-PKIX-FULL constant
COMPLIANCELEVEL-LAST constant
NS-CERTTYPE-SSLCLIENT constant
NS-CERTTYPE-SSLSERVER constant
NS-CERTTYPE-SMIME constant
NS-CERTTYPE-OBJECTSIGNING constant
NS-CERTTYPE-SSLCA constant
NS-CERTTYPE-SMIMECA constant
NS-CERTTYPE-OBJECTSIGNINGCA constant
NS-CERTTYPE-LAST constant
SET-CERTTYPE-CARD constant
SET-CERTTYPE-MER constant
SET-CERTTYPE-PGWY constant
SET-CERTTYPE-CCA constant
SET-CERTTYPE-MCA constant
SET-CERTTYPE-PCA constant
SET-CERTTYPE-GCA constant
SET-CERTTYPE-BCA constant
SET-CERTTYPE-RCA constant
SET-CERTTYPE-ACQ constant
SET-CERTTYPE-LAST constant
CONTENT-NONE constant
CONTENT-DATA constant
CONTENT-SIGNEDDATA constant
CONTENT-ENVELOPEDDATA constant
CONTENT-SIGNEDANDENVELOPEDDATA constant
CONTENT-DIGESTEDDATA constant
CONTENT-ENCRYPTEDDATA constant
CONTENT-COMPRESSEDDATA constant
CONTENT-TSTINFO constant
CONTENT-SPCINDIRECTDATACONTEXT constant
CONTENT-RTCSREQUEST constant
CONTENT-RTCSRESPONSE constant
CONTENT-RTCSRESPONSE-EXT constant
CONTENT-MRTD constant
CONTENT-LAST constant
CLASSIFICATION-UNMARKED constant
CLASSIFICATION-UNCLASSIFIED constant
CLASSIFICATION-RESTRICTED constant
CLASSIFICATION-CONFIDENTIAL constant
CLASSIFICATION-SECRET constant
CLASSIFICATION-TOP-SECRET constant
CLASSIFICATION-LAST constant
CERTSTATUS-VALID constant
CERTSTATUS-NOTVALID constant
CERTSTATUS-NONAUTHORITATIVE constant
CERTSTATUS-UNKNOWN constant
OCSPSTATUS-NOTREVOKED constant
OCSPSTATUS-REVOKED constant
OCSPSTATUS-UNKNOWN constant
SIGNATURELEVEL-NONE constant
SIGNATURELEVEL-SIGNERCERT constant
SIGNATURELEVEL-ALL constant
SIGNATURELEVEL-LAST constant
INTEGRITY-NONE constant
INTEGRITY-MACONLY constant
INTEGRITY-FULL constant
CERTFORMAT-NONE constant
CERTFORMAT-CERTIFICATE constant
CERTFORMAT-CERTCHAIN constant
CERTFORMAT-TEXT-CERTIFICATE constant
CERTFORMAT-TEXT-CERTCHAIN constant
CERTFORMAT-XML-CERTIFICATE constant
CERTFORMAT-XML-CERTCHAIN constant
CERTFORMAT-LAST constant
REQUESTTYPE-NONE constant
REQUESTTYPE-INITIALISATION constant
REQUESTTYPE-INITIALIZATION constant
REQUESTTYPE-CERTIFICATE constant
REQUESTTYPE-KEYUPDATE constant
REQUESTTYPE-REVOCATION constant
REQUESTTYPE-PKIBOOT constant
REQUESTTYPE-LAST constant
KEYID-NONE constant
KEYID-NAME constant
KEYID-URI constant
KEYID-EMAIL constant
KEYID-LAST constant
OBJECT-NONE constant
OBJECT-ENCRYPTED-KEY constant
OBJECT-PKCENCRYPTED-KEY constant
OBJECT-KEYAGREEMENT constant
OBJECT-SIGNATURE constant
OBJECT-LAST constant
ERRTYPE-NONE constant
ERRTYPE-ATTR-SIZE constant
ERRTYPE-ATTR-VALUE constant
ERRTYPE-ATTR-ABSENT constant
ERRTYPE-ATTR-PRESENT constant
ERRTYPE-CONSTRAINT constant
ERRTYPE-ISSUERCONSTRAINT constant
ERRTYPE-LAST constant
CERTACTION-NONE constant
CERTACTION-CREATE constant
CERTACTION-CONNECT constant
CERTACTION-DISCONNECT constant
CERTACTION-ERROR constant
CERTACTION-ADDUSER constant
CERTACTION-REQUEST-CERT constant
CERTACTION-REQUEST-RENEWAL constant
CERTACTION-REQUEST-REVOCATION constant
CERTACTION-CERT-CREATION constant
CERTACTION-CERT-CREATION-COMPLETE constant
CERTACTION-CERT-CREATION-DROP constant
CERTACTION-CERT-CREATION-REVERSE constant
CERTACTION-RESTART-CLEANUP constant
CERTACTION-RESTART-REVOKE-CERT constant
CERTACTION-ISSUE-CERT constant
CERTACTION-ISSUE-CRL constant
CERTACTION-REVOKE-CERT constant
CERTACTION-EXPIRE-CERT constant
CERTACTION-CLEANUP constant
CERTACTION-LAST constant
SSLOPTION-NONE constant
SSLOPTION-MINVER-SSLV3 constant
SSLOPTION-MINVER-TLS10 constant
SSLOPTION-MINVER-TLS11 constant
SSLOPTION-MINVER-TLS12 constant
SSLOPTION-SUITEB-128 constant
SSLOPTION-SUITEB-256 constant
MAX-KEYSIZE constant
MAX-IVSIZE constant
MAX-PKCSIZE constant
MAX-PKCSIZE-ECC constant
MAX-HASHSIZE constant
MAX-TEXTSIZE constant
USE-DEFAULT constant
UNUSED constant
KEYTYPE-PRIVATE constant
KEYTYPE-PUBLIC constant
RANDOM-FASTPOLL constant
RANDOM-SLOWPOLL constant
CURSOR-FIRST constant
CURSOR-PREVIOUS constant
CURSOR-NEXT constant
CURSOR-LAST constant
KEYOPT-NONE constant
KEYOPT-READONLY constant
KEYOPT-CREATE constant
KEYOPT-LAST constant
OK constant
ERROR-PARAM1 constant
ERROR-PARAM2 constant
ERROR-PARAM3 constant
ERROR-PARAM4 constant
ERROR-PARAM5 constant
ERROR-PARAM6 constant
ERROR-PARAM7 constant
ERROR-MEMORY constant
ERROR-NOTINITED constant
ERROR-INITED constant
ERROR-NOSECURE constant
ERROR-RANDOM constant
ERROR-FAILED constant
ERROR-INTERNAL constant
ERROR-NOTAVAIL constant
ERROR-PERMISSION constant
ERROR-WRONGKEY constant
ERROR-INCOMPLETE constant
ERROR-COMPLETE constant
ERROR-TIMEOUT constant
ERROR-INVALID constant
ERROR-SIGNALLED constant
ERROR-OVERFLOW constant
ERROR-UNDERFLOW constant
ERROR-BADDATA constant
ERROR-SIGNATURE constant
ERROR-OPEN constant
ERROR-READ constant
ERROR-WRITE constant
ERROR-NOTFOUND constant
ERROR-DUPLICATE constant
ENVELOPE-RESOURCE constant

Additional Documentation

For information about the functions of the underlying C library, consult the reference guide that can be downloaded from its homepage. The repository site contains some documentation, too.

License

 Copyright (C) 2011 Thomas Chust <chust@web.de>.  All rights reserved.
 
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation files
 (the Software), to deal in the Software without restriction,
 including without limitation the rights to use, copy, modify, merge,
 publish, distribute, sublicense, and/or sell copies of the Software,
 and to permit persons to whom the Software is furnished to do so,
 subject to the following conditions:
 
 The above copyright notice and this permission notice shall be
 included in all copies or substantial portions of the Software.
 
 THE SOFTWARE IS PROVIDED ASIS, WITHOUT WARRANTY OF ANY KIND, EXPRESS
 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
 BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 SOFTWARE.

Contents »