Attualmente sto lavorando con il modulo Richieste in python, che ti permette di specificare un certificato SSL da usare nella tua richiesta, usando il seguente comando
url = r'https://www.google.com'
cert_path = r'C:\mystuff\google.crt'
requests.get(url, verify=cert_path)
Richieste memorizza le sue CA di fiducia in un file PEM situato in python / Lib / site-packages / requests / cacert.pem. Se si specifica 'verify = True', quindi cercherà cacert.pem.
Sto visualizzando il Cert per link tramite Chrome, e ha il seguente percorso cert.
GeoTrust Global CA - > Google Internet Authority G2 - > www.google.com
Quello che trovo strano è che quando estraggo tutti i certificati SSL relativi a GeoTrust dall'archivio cacert.pem, li metto nel proprio GeoTrust.pem e punti le richieste su quel file, l'handshake fallisce.
Tuttavia, attraverso tentativi ed errori, se rimuovo il primissimo cert SSL da cacerts.pem, che è "CA Equifax Secure", inseriscilo nel proprio file cert e, a tale scopo, la richiesta funziona perfettamente.
In sostanza, perché una richiesta che usa un certificato di GeoTrust viene negata contro una configurazione di URL con un certificato GeoTrust? E perché dovrebbe funzionare quando si specifica la radice di Equifax?
Ho anche provato a copiare direttamente da google tramite chrome il certificato di root GeoTrust come Base64, e lo aggiungo a GeoTrust.pem, ma l'handshake continua a fallire.
Sono nuovo, quindi qualsiasi aiuto sarebbe molto apprezzato