Changes in version 3.5:
X509_MakeCRL function to make a basic X.509 certificate revocation list (CRL).
X509_CheckCertInCRL function to check if a given X.509 certificate
has been revoked in an X.509 certificate revocation list (CRL).
OCSP_MakeRequest function to
create an Online Certification Status Protocol (OCSP) request as a base64 string.
OCSP_ReadResponse function to
read a response to an Online Certification Status Protocol (OCSP) request and output the main results in text form.
X509_TextDump function to dump details of X.509 certificate (or a CRL or a PKCS10 CSR) to a text file.
X509_ValidatePath function to validate a certificate path, either in the form of
a list of X.509 certificate filenames or in a PKCS7 "certs-only" certificate chain file (.p7b or .p7c).
X509_MakeCert function
to allow the creation of a new X.509 certificate using a PKCS#10 Certificate Signing Request (CSR).
X509_VerifyCert function
to also verify X.509 Certificate Revocation List (CRL) and PKCS#10 Certificate Signing Request (CSR) documents.
X509_QueryCert function.
CMS_ReadEnvData[ToString] and
CMS_ReadSigData[ToString]
functions, allowing the user to pass the data directly as a base64 string or PEM string;
and added the automatic detection of format for input files.
Changes in version 3.4:
Changes in version 3.3:
X509_MakeCert and
X509Make_CertSelf functions,
and added more options for distinguished names.
PEM_FileFromBinFile and
PEM_FileToBinFile
functions to enable you to convert files between ASN.1 DER/BER binary format and PEM format.
WIPE_File function
- up to three times faster for large files.
RSA_FromXMLString
function to allow the import of a restricted RSA private key from XML data consisting only of the
<Modulus>, <Exponent> and <D> fields.
The resulting "internal" key string can be used to sign raw data but cannot be saved in a private key file.
This is useful to reproduce certain test vectors.
PKI_EMSIG_ISO9796 option to the RSA_EncodeMsg and
RSA_DecodeMsg
functions to enable the user to encode and decode a message according to ISO/IEC 9796-1.
RSA_RawPrivate and
RSA_RawPublic
functions to sign and decrypt RSA signatures using the "RSA2" method used in ISO/IEC 9796-1, ANSI X9.31 and P1363.
PKI_KEYGEN_INDICATE option in RSA_MakeKeys()
so it does not clash with the des-EDE3-CBC block cipher option.
Changes in version 3.2:
CIPHER_Bytes,
CIPHER_Hex, and
CIPHER_File.
HASH_HexFromHex
and HMAC_HexFromHex functions.
shaXXXWithRSAEncryption"
with SHA-224/256/384/512
for
X509_MakeCert[Self]
and
X509_CertRequest.
CMS_MakeSigData[FromString].
CMS_MakeEnvData[FromString].
RSA_KemWrap and
RSA_KemUnwrap which will wrap (encrypt) and unwrap (decrypt)
secret keying data for a recipient with the recipient's RSA key using the
RSA-KEM ("Simple RSA") algorithm;
and added the block cipher key wrap functions
CIPHER_KeyWrap
and CIPHER_KeyUnwrap
using AES-wrap and Triple DES wrap.
(Note that the function name is [was] RSA_KemWrap, not KeyWrap.)
RSA_SaveEncPrivateKey and
RSA_ReadEncPrivateKey
functions.
CMS_QueryEnvData function,
and included the ability to pass a base64- or PEM-encoded certificate list to
CMS_MakeEnvData and
CMS_MakeSigData.
Changes in version 3.1:
X509_MakeCert or X509_MakeCertSelf.
See Specifying Distinguished Names for more details.
RSA_KeyMatch
function to verify that a pair of RSA private and public key strings are matched.
TDEA_File.
To prevent accidental misuse, if an error occurs when using this function, the output file will now not exist.
CMS_MakeEnvData function to conform with the
PKI requirements of the German Health System.
Changes in version 3.0:
RSA_KeyHashCode
function to allow comparison of internal key strings.
HASH functions.HMAC functions to compute a keyed hash value,
HMAC_HexFromBytes and
HMAC_Bytes.
X509_KeyUsageFlags and
X509_QueryCert.
X509_ReadStringFromFile and
X509_SaveFileFromString.
Changes in version 2.9:
CMS_MakeSigDataFromSigValue
function to create a SignedData
object directly from a pre-computed signature value.
CNV_CheckUTF8
function to check whether a string contains only valid UTF-8 characters.TDEA_BytesMode.
RNG_Number function to generate
a random number in a given range.
Changes in version 2.8:
X509_GetCertFromP7Chain and
X509_GetCertFromPFX.
CMS_VerifySigData and
CMS_QuerySigData functions.
nMajor and nMinor in
PKI_Version.
Changes in version 2.7:
X509_VerifyCert()
can now verify certificates signed using DSA.
RSA_ReadEncPrivateKey()
to read PKCS#8 files encrypted with RC2.
CMS_ReadEnvData()
and
CMS_ReadEnvDataToString()
more tolerant of different input formats, including adding support to read
data encrypted with RC2.RSA_MakeKeys()
and
RSA_SaveEncPrivateKey().
RSA_MakeKeys().
X509_MakeCert()
and
X509_MakeCertSelf()
UTF8String and to decode multi-byte distinguished names
into 8-bit ASCII, if possible.