2012-06-25 21 views
7

All.Ich arbeite an einem Android-Projekt. Ich muss ein RSA-Schlüsselpaar erzeugen und sie dann verwenden, um mit anderen zu kommunizieren. Ich muss den privaten Schlüssel und den öffentlichen Schlüssel an einem sicheren Ort speichern, und ich finde, dass Schlüsselspeicher verwendet werden kann.Wie man privaten Schlüssel und öffentlichen Schlüssel in KeyStore speichert

Ich sehe, dass KeyStore KeyStore.PrivateKeyEntry speichern könnte, aber es eine Kette [] benötigt. Ich habe versucht, es zu erstellen, aber fehlgeschlagen ...

Gibt es jemanden könnte einige Beispielcode einfügen, um privaten Schlüssel und öffentlichen Schlüssel zu speichern.

Vielen Dank!

+1

Hallo, müssen Sie Zertifikate programmgesteuert erstellen/verwalten ?. Weil Sie keinen Code zum Erstellen oder Importieren von Zertifikaten in den Keystore schreiben müssen. Sie können hierfür [keytool] (http://docs.oracle.com/javase/7/docs/technotes/tools/windows/keytool.html) verwenden. – sperumal

+0

Hallo supermal, danke an deine Antwort. Ich muss das programmatisch beenden. –

+0

werfen Sie einen Blick auf die Dokumentation http://docs.oracle.com/javase/6/docs/api/java/security/KeyStore.html –

Antwort

6

Wie Sie gesagt haben, benötigen Sie den privaten Schlüssel (den Sie haben) und die Zertifikatskette für den entsprechenden öffentlichen Schlüssel, um den privaten Schlüssel im Keystore zu speichern. Was Sie haben, ist nur der öffentliche Schlüssel, Sie müssen ein Zertifikat von einer Behörde basierend auf Ihrem öffentlichen Schlüssel erhalten. Ja, Sie können das Zertifikat selbst signieren. Aber ich glaube nicht, dass es eine eingebaute Java-API gibt, um ein Zertifikat programmatisch zu erstellen und selbst zu signieren.

Es gab ähnliche Diskussionen über diese thread. Die akzeptierte Lösung beschreibt das Speichern des privaten Schlüssels und des öffentlichen Schlüssels außerhalb des Schlüsselspeichers in einer geschützten Datei.

Sie können hier mehr über Java Cryptography-Architektur lesen http://docs.oracle.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html

Hoffnung, das hilft.

+2

Nur ein Kommentar. Die verknüpfte akzeptierte Lösung speichert die Schlüssel in ungeschützten Dateien. – Andy

Verwandte Themen