Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision |
development:net:openssl [2014-04-14 13:07] – Martin Prochnow | development:net:openssl [2017-03-07 08:45] – Martin Prochnow |
---|
| ====== OpenSSL ====== |
| |
| ===== Fehler ===== |
| Fehlermeldungen der OpenSSL-Bibliothek sind teilweise schon etwas kryptisch. Hier der Versuch, etwas Klarheit zu schaffen (basierend auf eigenen Erfahrungen ohne Anspruch auf Korrektheit oder Vollständigkeit). |
| ^Code ^ Meldung ^Server/Client ^Bemerkung ^ |
| |1407609C |SSL23_GET_CLIENT_HELLO:http request |Server |Client beginnt Verbindung nicht mit SSL-Handshake, z.B. wenn HTTP gegen einen HTTPS-Server verwendet wird | |
| |14090086 |SSL3_GET_SERVER_CERTIFICATE:certificate verify failed|Client | Client kann das Server-Zertifikat nicht verifizieren | |
| |14094416 |SSL3_READ_BYTES:sslv3 alert certificate unknown |Server |Client kann das Server-Zertifikat nicht verifizieren | |
| |14094412 |SSL3_READ_BYTES:sslv3 alert bad certificate |Server/Client |Gegenstelle akzeptiert das Zertifikat nicht (z.B. weil CN != Hostname) | |
| |140890C7 |SSL3_GET_CLIENT_CERTIFICATE:peer did not return a certificate|Server |Client-Authentifizierung ist aktiv, aber Client liefert kein Zertifikat | |
| |14094410 |SSL3_READ_BYTES:sslv3 alert handshake failure|Server |Client-Authentifizierung ist aktiv, aber Client liefert kein Zertifikat | |
| |14090086 |SSL3_GET_SERVER_CERTIFICATE:certificate verify failed |Client |Server-Zertifikat konnte nicht verifiziert werden | |
| | |Certificate Verification : Error (26): unsupported certificate purpose|Server | Ein Zertifikat mit gesetztem Server-Flag wurde als Client-Zertifikat verwendet | |
| |14077410 |SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure |Server/Client |Kein unterstützter Cipher für die Kommunikation gefunden | |
| |
| ===== Mit Wireshark tcpdump des Verbindungsaufbaus debuggen ===== |
| * tcpdump-Datei in Wireshark öffnen |
| * Rechtsklick auf Listeneintrag, der zur Verbindung gehört, die debuggt werden soll |
| * //Follow TCP Stream// auswählen |
| * Wieder Rechtsklick auf Listeneintrag, //Decode as...// auswählen, im erscheinenden Dialog //SSL// auswählen |
| |
| ===== Links ===== |
| *Artikelserie zur OpenSSL-Programmierung bei Heise-Developers: |
| * [[http://www.heise.de/developer/artikel/OpenSSL-Implementierung-innerhalb-eines-Client-und-Server-Programms-Teil-1-1050619.html|Teil 1]] |
| * [[http://www.heise.de/developer/artikel/OpenSSL-Implementierung-innerhalb-eines-Client-und-Server-Programms-Teil-2-1058771.html|Teil 2]] |
| * [[http://www.heise.de/developer/artikel/OpenSSL-Implementierung-innerhalb-eines-Client-und-Server-Programms-Teil-3-1157455.html|Teil 3]] |
| * [[http://www.heise.de/developer/artikel/OpenSSL-Implementierung-innerhalb-eines-Client-und-Server-Programms-Teil-4-1157918.html|Teil 4]] |
| * [[http://www.strlen.de/talks/ssl-programming.pdf|Folien zur OpenSSL-Programmierung]] |
| * [[http://h71000.www7.hp.com/doc/83final/ba554_90007/ch04s03.html|SSL Programming Tutorial]] |
| * http://www.skytale.net/blog/archives/22-SSL-cipher-setting.html |
| * [[https://www.peereboom.us/assl/assl/html/openssl.html|OpenSSL is written by monkeys]] |
| |
| |
| {{tag>SSL/TLS OpenSSL Wireshark}} |