Frage für alle SSL-Experten da draußen:SSL-Authentifizierung durch Vergleichen des Fingerabdrucks des Zertifikats?
Wir haben ein Embedded-Gerät mit einem kleinen Webserver darauf, und wir können unsere eigenen SSL-selbstsignierten Zertifikaten darauf installieren. Der Client ist in .NET geschrieben (aber das ist nicht so wichtig).
Wie kann ich das Gerät in .NET authentifizieren? Ist es genug, den Fingerabdruck des Zertifikats gegen einen bekannten Eintrag in der Datenbank zu vergleichen?
Mein Verständnis ist, dass der Fingerabdruck ein Hash des gesamten Zertifikats ist, einschließlich des öffentlichen Schlüssels. Ein Gerät, das fälschlicherweise als mein Gerät angesehen wird, könnte natürlich dasselbe öffentliche Zertifikat senden, aber es könnte den privaten Schlüssel nicht kennen, oder?
Oder muss ich meine eigene Vertrauenskette aufbauen, ein eigenes CA-Stammzertifikat erstellen, das Webserver-Zertifikat signieren und das auf dem Client installieren?
Die Skalierbarkeit ist wirklich ein guter Grund für die PKI, danke! – chris166
Schöne Art, eine Analogie zwischen Fingerabdruck-Validierung und Key Signing-Parteien zu zeichnen. Der Widerstand von SHA-1-Hashes gegenüber Kollisionen spielt in beiden Ereignissen eine große Rolle. –