Einzelnen Beitrag anzeigen

Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#1

Indy 10 SSL Client ohne Private Key File

  Alt 8. Dez 2020, 08:29
Hallo!

Ich habe ein selbstsigniertes Zertifikat erstellt. Die csr.pem habe ich dem Serverbetreiber gegeben und er hat mir ein signiertes Zertifikat client.pem zurückgegeben. Nun soll das übliche TIdHTTP+TIdSSLIOHandlerSocketOpenSSL - Gespann eine gewöhnliche TLS1.2-gesicherte Verbindung aufbauen. Bei TIdSSLIOHandlerSocketOpenSSL.SSLOptions.CertFile gebe ich den Pfad zur client.pem an.

Beim Versuch eines GET-Request zum Server steigt Indy jedoch mit einer EIdOSSLLoadingKeyError Exception aus. Gebe ich zusätzlich unter TIdSSLIOHandlerSocketOpenSSL.SSLOptions.KeyFile noch den Pfad zu der ursprünglich von mir erstellten privkey.pem an, dann baut Indy die Verbindung problemlos auf.

Soweit ich aber das SSL/TLS-Prinzip verstehe, sollte es die Private Keys auf der Clientseite gar nicht brauchen. Ich beziehe mich dabei auf das hier:
Zitat:
At no point in the SSL process does The SSL Store have your private key. It should be saved safely on the server you generated it on. Do not send your private key to anyone, as that can compromise the security of your certificate. If you lose your private key, you will be unable to install your SSL certificate and will need to generate a new key pair (CSR + Private Key) and re-issue the certificate.
Andernfalls müsste ich ja die privkey.pem in meinem Client-Setup ausliefern. Ich glaub das war nicht im Sinne des Erfinders. Bin ich da jetzt gedanklich falsch oder muss ich TIdSSLIOHandlerSocketOpenSSL nur anders konfigurieren?

Grüße
Cody
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat