2017-03-10 6 views
1

Ich verwende Arduino-Bibliothek für ESP8266.SSL in ESP8266 (Arduino-Bibliothek) - Umgang mit Zertifikatsänderungen?

Um jetzt SSL-Anfrage mit HTTPClient zu machen, müssen Sie SSL-Fingerabdruck bereitstellen. Es gibt keine Möglichkeit, jedes Zertifikat im Moment zu akzeptieren (mit den Methoden der Bibliothek).

Ich frage mich, wie Sie damit umgehen, weil der Fingerabdruck im Laufe der Zeit ändern kann.

Soll ich den Fingerabdruck meines Servers über HTTP von einem anderen Endpunkt abrufen und dann HTTPS verwenden? Oder vielleicht gibt es einen besseren Ansatz?

+0

'Sollte ich den Fingerabdruck meines Servers über HTTP von einem anderen Endpunkt bekommen und dann HTTPS verwenden ** ** nein **. Da die HTTP-Verbindung abgefangen werden kann und beliebige Daten gesendet werden können (denken Sie an: ARP-Spoof an einen HTTP (S) -Server des Angreifer-Controllers), könnte ein Angreifer Ihnen seinen eigenen Zertifikat-Fingerabdruck geben, und dann würden Sie einen Mann akzeptieren. die Middle-Attacke-gesteuerte HTTPS-Serververbindung, da sie den richtigen Fingerprint hat. Stellen Sie außerdem klar, welche Bibliothek und welche Methoden genau Sie verwenden, die diesen "Fingerabdruck" akzeptieren. Ich nehme an, es ist der "SignatureValue" des Cert. –

+0

Dies geschieht normalerweise auf zwei Arten: Entweder fügen Sie der ESPs-Firmware das Stammzertifikat Ihrer Domäne hinzu und überprüfen dann, ob der Server über ein Zertifikat verfügt, das ordnungsgemäß von Ihrem Stammzertifikat signiert wurde. Die andere Möglichkeit wäre, nur bestimmten Zertifikats-Fingerabdrücken zu vertrauen. Bedenken Sie auch, dass der ESP8266 ressourcenbeschränkt ist, so dass die Überprüfung von RSA-Signaturen mit mehr als 2048 Bit eine ganze Menge verursacht (Fehler wegen zu wenig Arbeitsspeicher). Erwägen Sie die Verwendung von ECDSA-Zertifikaten, die Kryptographie mit elliptischer Kurve ist viel schneller und hat kürzere Schlüssel. –

+0

Sie müssen die Firmware aktualisieren, wenn Sie die lib nicht abzweigen oder die sec selbst besiegen wollen – dandavis

Antwort