openSSL: Wie gebe ich die Signatur-Hash-Algorithmen an, die ich akzeptiere?

openSSL: Wie gebe ich die Signatur-Hash-Algorithmen an, die ich akzeptiere?

Mithilfe von openSSL habe ich auf einem TLS-Client eine eindeutige Verschlüsselungssuite mit SSL_CTX_set_cipher_list() angegeben.

Wenn ich Wireshark zum Anschauen der Nachrichten verwende, sehe ich in der Client-Hello-Nachricht, dass die zulässigen Verschlüsselungssammlungen die von mir angegebenen sind.

Wenn ich mir aber die Erweiterung „Signaturalgorithmen“ ansehe, sehe ich, dass der Client scheinbar eine große Anzahl von Algorithmen akzeptiert, darunter auch einige, die mir nicht sehr sicher erscheinen, wie beispielsweise MD5.

Wie kann ich dieses Verhalten ändern?

Antwort1

(Habe bei der Recherche etwas anderes gefunden. Ich weiß nicht, ob Sicherheit oder sogar SO besser wäre.)

In der Version 1.0.2 (nur) gibt es SSL_[CTX_]set1[_client]_sigalgs[_list]dafür neue Funktionen. Ich habe bisher in keiner Version eine Dokumentation gesehen, aber sie befindet sich anscheinend im "Master" (also im Entwicklungs-"Stamm") auf der Website unterhttps://www.openssl.org/docs/manmaster/ssl/SSL_CTX_set1_sigalgs.htmlDies wird vermutlich auch in zukünftigen Versionen der Fall sein.

In früheren Versionen konnten Sie einen Überprüfungs-Callback festlegen oder einfach die Ergebniskette prüfen und alle Zertifikate oder Ketten mit MD5, RSA<=1024 oder ECC mit Kurven ablehnen, bei denen der Verdacht auf NSA-Hintertüren besteht, oder alles andere, was Ihnen nicht gefällt, wie etwa die CA-Richtlinie, die besagt: „Wir hassen Katzen“.

verwandte Informationen