This new version includes the following updates/fixes:
- Added the TrustedRoots class to allow for programss to globally specify a specific set of trusted root CA certificates for PKCS7 certificate signature verification and for SSL/TLS server certificate trust.
- Added the RequireSslCertVerify property to Http, IMAP, Socket, and MHT.
- Added the CrcFile and CrcBytes methods to the Crypt2 API.
- Added a new DnsCacheClear method to Http and Socket. This method clears the Chilkat-wide (in-memory) DNS cache.
- Fixed a minor issue with writing AES encrypted Zips — the CRC written to the local file header and central directory record within the zip format was the correct CRC, but it is preferred to write a 0. This caused no actual problem, but it now conforms to what is preferred for AES encrypted zip archives.
- Fixed a problem with the HTTP SyncrhonousRequest method where the request body of the HttpRequest object was being sent when the HttpRequest.HttpVerb equals GET or HEAD. Normally, one would not set the HttpRequest body, but this was discovered when an HttpRequest object instance was re-used after a previous POST request.
Added the Cert.ExportToPfxData method to export to an in-memory image of a PFX file.
(In VB6) One thing we would like to do is to read out the SHA1
fingerprint of the root ca. For example, the programm should read the user
certificate. The user certificate has a certification path. Is it possible
to read out the fingerprint of the top-level root certificate?
Here is a sample program. The user certificate is loaded from the current-user registry-based certificate store by common name. Once you have the cert object, you can build the chain of authority and step through it. The root cert is the last in the list.
Dim cert As New ChilkatCert
success = cert.LoadByCommonName("Chilkat Software, Inc.")
Dim certChain As New ChilkatCertChain
' Leave the certCollection object empty..
Dim certCollection As New ChilkatCertColl
success = certChain.BuildChain(cert, certCollection)
NumCerts = certChain.NumCerts
Dim certN As ChilkatCert
For i = 0 To NumCerts - 1
Set certN = certChain.GetCert(i)
' The certificate at index NumCerts - 1 is the root.
' get the fingerprint:
MsgBox "Root Thumbprint: " & certChain.GetCert(NumCerts - 1).Sha1Thumbprint
This article provides a step-by-step procedure for installing a certificate w/ private key (from a .PFX) so that it will be usable from ASP, ASP.NET, a Windows Service, or the SYSTEM account: