Проблема "неизвестный центр сертификации" с chilkat ActiveX 9.5.0.51 - PullRequest
0 голосов
/ 03 мая 2020

Я использую ChilkatAx-9.5.0-win32.dll (9.5.0.51) в vb6, чтобы сделать сообщение https. Коды перестают работать, когда владелец сервера обновил свою систему новыми сертификатами. С curl он работает с опцией --cacert для самозаверяющего сертификата в дополнение к --cert и --key. Перед обновлением требуются только --cert и --key.

Я пробовал несколько методов, включая ChilkatTrustedRoots, чтобы позволить распознавать самоподписанный сертификат CA, например:

...
trustedRoot.LoadCaCertsPem ("< the chain.pem file>") 
trustedRoot.TrustSystemCaRoots = 1
trustedRoot.Activate
...

Оцените, если кто-нибудь может посоветовать, как добиться тех же функций, что и у опции "--cacert" в curl with chilkat. Удар бревна из Чилката.

Chilkat log:

                    clientHandshake2(140ms):
                      readHandshakeMessages(62ms):
                        processHandshakeRecord:
                          processHandshakeMessage:
                            processServerHello:
                              MajorVersion: 3
                              MinorVersion: 3
                              cipherSuite: RSA_WITH_AES_256_CBC_SHA
                              cipherSuiteNumeric: 00,35
                              compressionMethod: 0
                              minAcceptableRsaKeySize: 1024
                            --processServerHello
                          --processHandshakeMessage
                        --processHandshakeRecord
                      --readHandshakeMessages
                      Sending client-side certificate(s)...
                      sendClientCertificates:
                        buildCertificatesMessage:
                          numCerts: 1
                        --buildCertificatesMessage
                      --sendClientCertificates
                      buildClientKeyExchange:
                        buildClientKeyExchangeRsa:
                          modulus_bitlen: 2048
                          bigEndian: 1
                          padding: PKCS 1.5
                        --buildClientKeyExchangeRsa
                      --buildClientKeyExchange
                      sendCertificateVerify(16ms):
                        Sending ClientCertVerify message...
                        RsaDerToKey:
                          ModulusLen: 257
                          DLen: 257
                          PLen: 129
                          QLen: 129
                          DPLen: 129
                          DQLen: 128
                          InvQLen: 128
                        --RsaDerToKey
                        signatureSize: 260
                      --sendCertificateVerify
                      readHandshakeMessages(62ms):
                        processAlert(15ms):
                          TlsAlert:
                            level: fatal
                            descrip: unknown certificate authority
                          --TlsAlert
                          Closing connection in response to fatal SSL/TLS alert.
                          terminateConnection(15ms):
                            Terminated TCP connection.
                          --terminateConnection
                        --processAlert
                        Aborting handshake because of fatal alert.
                      --readHandshakeMessages
                    --clientHandshake2
...