📄 cryptlib.pas
字号:
{ Object properties }
CRYPT_PROPERTY_HIGHSECURITY = 2; { Owned+non-forwardable+locked }
CRYPT_PROPERTY_OWNER = 3; { Object owner }
CRYPT_PROPERTY_FORWARDABLE = 4; { No.of times object can be forwarded }
CRYPT_PROPERTY_LOCKED = 5; { Whether properties can be chged/read }
CRYPT_PROPERTY_USAGECOUNT = 6; { Usage count before object expires }
CRYPT_PROPERTY_NONEXPORTABLE = 7; { Whether key is nonexp.from context }
{ Used internally }
CRYPT_PROPERTY_LAST = 8;
CRYPT_GENERIC_FIRST = 9;
{ Extended error information }
CRYPT_ATTRIBUTE_ERRORTYPE = 10; { Type of last error }
CRYPT_ATTRIBUTE_ERRORLOCUS = 11; { Locus of last error }
CRYPT_ATTRIBUTE_INT_ERRORCODE = 12; { Low-level software-specific }
CRYPT_ATTRIBUTE_INT_ERRORMESSAGE = 13; { error code and message }
{ Generic information }
CRYPT_ATTRIBUTE_BUFFERSIZE = 14; { Internal data buffer size }
{ User internally }
CRYPT_GENERIC_LAST = 15;
CRYPT_OPTION_FIRST = 100;
{**************************}
{ Configuration attributes }
{**************************}
{ cryptlib information (read-only) }
CRYPT_OPTION_INFO_DESCRIPTION = 101; { Text description }
CRYPT_OPTION_INFO_COPYRIGHT = 102; { Copyright notice }
CRYPT_OPTION_INFO_MAJORVERSION = 103; { Major release version }
CRYPT_OPTION_INFO_MINORVERSION = 104; { Minor release version }
CRYPT_OPTION_INFO_STEPPING = 105; { Release stepping }
{ Encryption options }
CRYPT_OPTION_ENCR_ALGO = 106; { Encryption algorithm }
CRYPT_OPTION_ENCR_HASH = 107; { Hash algorithm }
CRYPT_OPTION_ENCR_MAC = 108; { MAC algorithm }
{ PKC options }
CRYPT_OPTION_PKC_ALGO = 109; { Public-key encryption algorithm }
CRYPT_OPTION_PKC_KEYSIZE = 110; { Public-key encryption key size }
{ Signature options }
CRYPT_OPTION_SIG_ALGO = 111; { Signature algorithm }
CRYPT_OPTION_SIG_KEYSIZE = 112; { Signature keysize }
{ Keying options }
CRYPT_OPTION_KEYING_ALGO = 113; { Key processing algorithm }
CRYPT_OPTION_KEYING_ITERATIONS = 114; { Key processing iterations }
{ Certificate options }
CRYPT_OPTION_CERT_CREATEV3CERT = 115; { Whether to create X.509v3 certs }
CRYPT_OPTION_CERT_PKCS10ALT = 116; { Use alternative PKCS #10 encoding }
CRYPT_OPTION_CERT_FIXEMAILADDRESS = 117; { Whether to fix encoding of email addr.}
CRYPT_OPTION_CERT_SIGNUNRECOGNISEDATTRIBUTES = 118; { Whether to sign unrecog.attrs }
CRYPT_OPTION_CERT_TRUSTCHAINROOT = 119; { Whether to trust cert chain root }
CRYPT_OPTION_CERT_VALIDITY = 120; { Certificate validity period }
CRYPT_OPTION_CERT_UPDATEINTERVAL = 121; { CRL update interval }
CRYPT_OPTION_CERT_ENCODE_VALIDITYNESTING = 122;
CRYPT_OPTION_CERT_DECODE_VALIDITYNESTING = 123; { Enforce validity nesting on R/W }
CRYPT_OPTION_CERT_ENCODE_CRITICAL = 124;
CRYPT_OPTION_CERT_DECODE_CRITICAL = 125; { Enforce critical flag in extensions }
{ CMS/SMIME options }
CRYPT_OPTION_CMS_DEFAULTATTRIBUTES = 126; { Add default CMS attributes }
CRYPT_OPTION_SMIME_DEFAULTATTRIBUTES = 126; { = CRYPT_OPTION_CMS_DEFAULTATTRIBUTES }
{ LDAP keyset options }
CRYPT_OPTION_KEYS_LDAP_OBJECTCLASS = 127; { Object class }
CRYPT_OPTION_KEYS_LDAP_OBJECTTYPE = 128; { Object type to fetch }
CRYPT_OPTION_KEYS_LDAP_FILTER = 129; { Query filter }
CRYPT_OPTION_KEYS_LDAP_CACERTNAME = 130; { CA certificate attribute name }
CRYPT_OPTION_KEYS_LDAP_CERTNAME = 131; { Certificate attribute name }
CRYPT_OPTION_KEYS_LDAP_CRLNAME = 132; { CRL attribute name }
CRYPT_OPTION_KEYS_LDAP_EMAILNAME = 133; { Email attribute name }
{ Crypto device options }
CRYPT_OPTION_DEVICE_PKCS11_DVR01 = 134; { Name of first PKCS #11 driver }
CRYPT_OPTION_DEVICE_PKCS11_DVR02 = 135; { Name of second PKCS #11 driver }
CRYPT_OPTION_DEVICE_PKCS11_DVR03 = 136; { Name of third PKCS #11 driver }
CRYPT_OPTION_DEVICE_PKCS11_DVR04 = 137; { Name of fourth PKCS #11 driver }
CRYPT_OPTION_DEVICE_PKCS11_DVR05 = 138; { Name of fifth PKCS #11 driver }
CRYPT_OPTION_DEVICE_PKCS11_HARDWAREONLY = 139; { Use only hardware mechanisms }
CRYPT_OPTION_DEVICE_SERIALRNG = 140; { Serial-port-based RNG name }
CRYPT_OPTION_DEVICE_SERIALRNG_PARAMS = 141; { Serial RNG parameters }
{ Network access options }
CRYPT_OPTION_NET_SOCKS_SERVER = 142; { Socks server name }
CRYPT_OPTION_NET_SOCKS_USERNAME = 143; { Socks server name }
CRYPT_OPTION_NET_HTTP_PROXY = 144; { Web proxy server }
CRYPT_OPTION_NET_CONNECTTIMEOUT = 145; { Timeout for network connection setup }
CRYPT_OPTION_NET_TIMEOUT = 146; { Timeout for network read/write }
{ Miscellaneous options }
CRYPT_OPTION_MISC_ASYNCINIT = 147; { Whether to init cryptlib async'ly }
{ cryptlib state information }
CRYPT_OPTION_CONFIGCHANGED = 148; { Whether in-mem.opts match on-disk ones }
CRYPT_OPTION_SELFTESTOK = 149; { Whether self-test was completed and OK }
{ Used internally }
CRYPT_OPTION_LAST = 150; CRYPT_CTXINFO_FIRST = 1000;
{********************}
{ Context attributes }
{********************}
{ Algorithm and mode information }
CRYPT_CTXINFO_ALGO = 1001; { Algorithm }
CRYPT_CTXINFO_MODE = 1002; { Mode }
CRYPT_CTXINFO_NAME_ALGO = 1003; { Algorithm name }
CRYPT_CTXINFO_NAME_MODE = 1004; { Mode name }
CRYPT_CTXINFO_KEYSIZE = 1005; { Key size in bytes }
CRYPT_CTXINFO_BLOCKSIZE = 1006; { Block size }
CRYPT_CTXINFO_IVSIZE = 1007; { IV size }
CRYPT_CTXINFO_KEYING_ALGO = 1008; { Key processing algorithm }
CRYPT_CTXINFO_KEYING_ITERATIONS = 1009; { Key processing iterations }
CRYPT_CTXINFO_KEYING_SALT = 1010; { Key processing salt }
CRYPT_CTXINFO_KEYING_VALUE = 1011; { Value used to derive key }
{ State information }
CRYPT_CTXINFO_KEY = 1012; { Key }
CRYPT_CTXINFO_KEY_COMPONENTS = 1013; { Public-key components }
CRYPT_CTXINFO_IV = 1014; { IV }
CRYPT_CTXINFO_HASHVALUE = 1015; { Hash value }
{ Misc.information }
CRYPT_CTXINFO_LABEL = 1016; { Label for private/secret key }
{ Used internally }
CRYPT_CTXINFO_LAST = 1017; CRYPT_CERTINFO_FIRST = 2000;
{************************}
{ Certificate attributes }
{************************}
{ Pseudo-information on a cert object or meta-information which is used
to control the way a cert object is processed }
CRYPT_CERTINFO_SELFSIGNED = 2001; { Cert is self-signed }
CRYPT_CERTINFO_IMMUTABLE = 2002; { Cert is signed and immutable }
CRYPT_CERTINFO_XYZZY = 2003; { Cert is a magic just-works cert }
CRYPT_CERTINFO_CERTTYPE = 2004; { Certificate object type }
CRYPT_CERTINFO_FINGERPRINT = 2005; { Certificate fingerprints }
CRYPT_CERTINFO_FINGERPRINT_MD5 = 2005; { = CRYPT_CERTINFO_FINGERPRINT }
CRYPT_CERTINFO_FINGERPRINT_SHA = 2006;
CRYPT_CERTINFO_CURRENT_CERTIFICATE = 2007; { Certificate cursor management }
CRYPT_CERTINFO_CURRENT_EXTENSION = 2008;
CRYPT_CERTINFO_CURRENT_FIELD = 2009;
CRYPT_CERTINFO_CURRENT_COMPONENT = 2010; { Extension cursor management }
CRYPT_CERTINFO_TRUSTED_USAGE = 2011; { Usage which cert is trusted for }
CRYPT_CERTINFO_TRUSTED_IMPLICIT = 2012; { Whether cert is implicitly trusted }
{ General certificate object information }
CRYPT_CERTINFO_SERIALNUMBER = 2013; { Serial number (read-only) }
CRYPT_CERTINFO_SUBJECTPUBLICKEYINFO = 2014; { Public key }
CRYPT_CERTINFO_USERCERTIFICATE = 2015; { User certificate }
CRYPT_CERTINFO_CERTIFICATE = 2015; { = CRYPT_CERTINFO_USERCERTIFICATE }
CRYPT_CERTINFO_CACERTIFICATE = 2016; { CA certificate }
CRYPT_CERTINFO_ISSUERNAME = 2017; { Issuer DN (read-only) }
CRYPT_CERTINFO_VALIDFROM = 2018; { Cert valid from time }
CRYPT_CERTINFO_VALIDTO = 2019; { Cert valid to time }
CRYPT_CERTINFO_SUBJECTNAME = 2020; { Subject DN }
CRYPT_CERTINFO_ISSUERUNIQUEID = 2021; { Issuer unique ID (read-only) }
CRYPT_CERTINFO_SUBJECTUNIQUEID = 2022; { Subject unique ID (read-only) }
CRYPT_CERTINFO_CERTREQUEST = 2023; { Cert.request (DN + public key) }
CRYPT_CERTINFO_THISUPDATE = 2024; { CRL/OCSP current update time }
CRYPT_CERTINFO_NEXTUPDATE = 2025; { CRL/OCSP next update time }
CRYPT_CERTINFO_REVOCATIONDATE = 2026; { CRL/OCSP cert revocation time }
CRYPT_CERTINFO_REVOCATIONSTATUS = 2027; { OCSP revocation status }
CRYPT_CERTINFO_DN = 2028; { Currently selected DN in string form }
CRYPT_CERTINFO_PKIUSER_ID = 2029; { PKI user ID }
CRYPT_CERTINFO_PKIUSER_ISSUEPASSWORD = 2030; { PKI user issue password }
CRYPT_CERTINFO_PKIUSER_REVPASSWORD = 2031; { PKI user revocation password }
{ X.520 Distinguished Name components. This is a composite field, the
DN to be manipulated is selected through the addition of a
pseudocomponent, and then one of the following is used to access the
DN components directly }
CRYPT_CERTINFO_COUNTRYNAME = 2100; { countryName }
CRYPT_CERTINFO_STATEORPROVINCENAME = 2101; { stateOrProvinceName }
CRYPT_CERTINFO_LOCALITYNAME = 2102; { localityName }
CRYPT_CERTINFO_ORGANIZATIONNAME = 2103; { organizationName }
CRYPT_CERTINFO_ORGANISATIONNAME = 2103; { = CRYPT_CERTINFO_ORGANIZATIONNAME }
CRYPT_CERTINFO_ORGANIZATIONALUNITNAME = 2104; { organizationalUnitName }
CRYPT_CERTINFO_ORGANISATIONALUNITNAME = 2104; { = CRYPT_CERTINFO_ORGANIZATIONALUNITNAME }
CRYPT_CERTINFO_COMMONNAME = 2105; { commonName }
{ X.509 General Name components. These are handled in the same way as
the DN composite field, with the current GeneralName being selected by
a pseudo-component after which the individual components can be
modified through one of the following }
CRYPT_CERTINFO_OTHERNAME_TYPEID = 2106; { otherName.typeID }
CRYPT_CERTINFO_OTHERNAME_VALUE = 2107; { otherName.value }
CRYPT_CERTINFO_RFC822NAME = 2108; { rfc822Name }
CRYPT_CERTINFO_EMAIL = 2108; { = CRYPT_CERTINFO_RFC822NAME }
CRYPT_CERTINFO_DNSNAME = 2109; { dNSName }
CRYPT_CERTINFO_DIRECTORYNAME = 2110; { directoryName }
CRYPT_CERTINFO_EDIPARTYNAME_NAMEASSIGNER = 2111; { ediPartyName.nameAssigner }
CRYPT_CERTINFO_EDIPARTYNAME_PARTYNAME = 2112; { ediPartyName.partyName }
CRYPT_CERTINFO_UNIFORMRESOURCEIDENTIFIER = 2113; { uniformResourceIdentifier }
CRYPT_CERTINFO_IPADDRESS = 2114; { iPAddress }
CRYPT_CERTINFO_REGISTEREDID = 2115; { registeredID }
{ X.509v3 certificate extensions. Although it would be nicer to use
names which match the extensions more closely (eg
CRYPT_CERTINFO_BASICCONSTRAINTS_PATHLENCONSTRAINT), these exceed the
32-character ANSI minimum length for unique names, and get really
hairy once you get into the weird policy constraints extensions whose
names wrap around the screen about three times.
The following values are defined in OID order, this isn't absolutely
necessary but saves an extra layer of processing when encoding them }
{ 1 3 6 1 5 5 7 1 1 authorityInfoAccess }
CRYPT_CERTINFO_AUTHORITYINFOACCESS = 2200;
CRYPT_CERTINFO_AUTHORITYINFO_OCSP = 2201; { accessDescription.accessLocation }
CRYPT_CERTINFO_AUTHORITYINFO_CAISSUERS = 2202; { accessDescription.accessLocation }
CRYPT_CERTINFO_AUTHORITYINFO_TIMESTAMPING = 2203; { accessDescription.accessLocation }
{ 1 3 6 1 5 5 7 48 1 2 ocspNonce }
CRYPT_CERTINFO_OCSP_NONCE = 2204; { nonce }
{ 1 3 6 1 5 5 7 48 1 5 ocspNoCheck }
CRYPT_CERTINFO_OCSP_NOCHECK = 2205;
{ 1 3 6 1 5 5 7 48 1 6 ocspArchiveCutoff }
CRYPT_CERTINFO_OCSP_ARCHIVECUTOFF = 2206; { archiveCutoff }
{ 1 3 36 8 3 1 }
CRYPT_CERTINFO_SIGG_DATEOFCERTGEN = 2207;
{ 1 3 36 8 3 2 }
CRYPT_CERTINFO_SIGG_PROCURATION = 2208;
CRYPT_CERTINFO_SIGG_PROCURE_COUNTRY = 2209; { country }
CRYPT_CERTINFO_SIGG_PROCURE_TYPEOFSUBSTITUTION = 2210; { typeOfSubstitution }
CRYPT_CERTINFO_SIGG_PROCURE_SIGNINGFOR = 2211; { signingFor.thirdPerson }
{ 1 3 36 8 3 4 }
CRYPT_CERTINFO_SIGG_MONETARYLIMIT = 2212;
CRYPT_CERTINFO_SIGG_MONETARY_CURRENCY = 2213; { currency }
CRYPT_CERTINFO_SIGG_MONETARY_AMOUNT = 2214; { amount }
CRYPT_CERTINFO_SIGG_MONETARY_EXPONENT = 2215; { exponent }
{ 1 3 36 8 3 8 }
CRYPT_CERTINFO_SIGG_RESTRICTION = 2216;
{ 1 3 101 1 4 1 strongExtranet }
CRYPT_CERTINFO_STRONGEXTRANET = 2217;
CRYPT_CERTINFO_STRONGEXTRANET_ZONE = 2218; { sxNetIDList.sxNetID.zone }
CRYPT_CERTINFO_STRONGEXTRANET_ID = 2219; { sxNetIDList.sxNetID.id }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -