Um mit einem RSA-Schlüssel zu verschlüsseln und zu entschlüsseln, benötigen Sie den Modulo, den privaten und den öffentlichen Exponenten.
Normalerweise erfolgt die Verschlüsselung mit dem Paar (Modul, öffentlicher Exponent) und Entschlüsselung mit dem Paar (Modul, privater Exponent).
Nun, bei einigen Implementierungen, wie oft auf eingebetteten Geräten, wird der öffentliche Exponent standardmäßig auf die Zahl F4 gesetzt, die 0x10001 oder 65537 Dezimal ist.
Mit einem 2048 Bit RSA-Schlüssel ist der private Exponent exakt 2048 Bit, sowie der Modul.
Sie können die privaten Exponenten im Binärformat erhalten, indem eine String-Manipulation zu tun:
openssl rsa -in key.der -inform der -text -noout | awk '/^[^ ]/{if($1 == "privateExponent:") {dump=1} else {dump=0}} /^ /{if(dump==1){gsub(":","");printf "%s", $1}}END{print ""}' | xxd -ps -r -c256 > pr_key.bin
Sie können auch das Modul erhalten, indem die Zeichenfolge in dem awk-Befehl zu ersetzen.
Um fortzufahren, benötigen Sie 4096 Bits (512 Bytes), um Ihren privaten 2048-Bit-Schlüssel zu speichern. Um den öffentlichen Schlüssel zu speichern, benötigen Sie 2048 Bit (256 Byte).
Wo möchten Sie Ihre rohen Bits bekommen? Welche Sprache oder welches Werkzeug möchten Sie verwenden? – user2807083
Stack Overflow ist eine Website für Programmier- und Entwicklungsfragen. Diese Frage scheint off-topic zu sein, weil es nicht um Programmierung oder Entwicklung geht. Siehe [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic) in der Hilfe. Vielleicht [Super User] (http://superuser.com/) oder [Information Security Stack Exchange] (http://security.stackexchange.com/) wäre ein besserer Ort zu fragen. Auch [Wo veröffentliche ich Fragen zu Dev Ops?] (Http://meta.stackexchange.com/q/134306). – jww
Ich möchte den Schlüssel in einen FLASH einer CPU schreiben. Die CPU wird den Schlüssel zum Verschlüsseln/Entschlüsseln von Nachrichten verwenden und über die drahtlose Schnittstelle senden. – Lev