Wie bekomme ich den öffentlichen Schlüssel (hash für SSL-pinning?
Wie kann ich den hash eines öffentlichen Zertifikats info durchführen zu können SSL-Pinning in meine Anwendung ein?
Ich bin mit TrustKit in meiner iOS-Anwendung und es wird nach mir gefragt um die hash, die ich erwarte. Wo bekomme ich diese her?
- Siehe auch OWASP, die im Zertifikat und Public-Key-Pinning. Das web der Interpretation des pinning ist ein Witz...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn es eine öffentliche website, die Sie verwenden können,SSL Labs server test, die berechnet und zeigt den pin.
Den Public-Key-Pinning-Seite über am Mozilla Developer Network hat auch Befehle für die Erlangung des pin-Codes aus einer Schlüssel-Datei, ein certificate signing request, ein Zertifikat oder eine website (diese ist in @mylogon Antwort).
Es ist ein wirklich straight-forward Weg, dies zu tun. Ich verbrachte einige Zeit kratzen, die Dinge gemeinsam auf, diese zu produzieren, ein sehr wiederverwendbare Lösung. Leider habe ich nur getan, das auf OSX, aber Sie sollten in der Lage sein zu Folgen zusammen ziemlich einfach, wenn Sie auf einem anderen OS.
Für diese Methode, die Sie gehen zu müssen:
Installieren Homebrew
OpenSSL (
brew install openssl
im terminal nach der Installation von Homebrew)Neu erstellen .sh Datei-und set-Inhalt:
openssl s_client -servername $1 -connect $1:443 | openssl x509 -pubkey -noout | openssl rsa -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64
Datei auf Datenträger speichern
Vom terminal-Fenster, rufen Sie
bash <new sh file directory> www.google.com
Diese sollten jetzt wieder den Hashwert, die Sie benötigen, und verlassen Sie mit einem netten kleinen wiederverwendbare Lösung. Sie müssen möglicherweise drücken Sie Strg+c nach dem hash zurückgegeben wird.
Sollte es lassen Sie mit so etwas wie die folgenden:
Hoffe, dies hilft jemand aus.
Dank