Dies ist der Befehl rsautlssl, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
rsautl – RSA-Dienstprogramm
ZUSAMMENFASSUNG
openssl rsautl [-in Datei] [-aus Datei] [-inkey Datei] [-pubin] [-sicher] [-Zeichen] [-verifizieren]
[-Verschlüsseln] [-entschlüsseln] [-pkcs] [-ssl] [-roh] [-hexdump] [-asn1parse]
BESCHREIBUNG
Die rsautl Der Befehl kann zum Signieren, Überprüfen, Verschlüsseln und Entschlüsseln von Daten mithilfe von RSA verwendet werden
Algorithmus.
COMMAND OPTIONAL
-in Dateinamen
Dies gibt den Namen der Eingabedatei an, aus der Daten gelesen werden sollen, oder die Standardeingabe, wenn diese Option aktiviert ist
ist nicht angegeben.
-aus Dateinamen
Gibt standardmäßig den Namen der Ausgabedatei an, in die geschrieben werden soll, oder die Standardausgabe.
-inkey Datei
Die Eingabeschlüsseldatei sollte standardmäßig ein privater RSA-Schlüssel sein.
-pubin
Die Eingabedatei ist ein öffentlicher RSA-Schlüssel.
-sicher
Die Eingabe ist ein Zertifikat, das einen öffentlichen RSA-Schlüssel enthält.
-Zeichen
Signieren Sie die Eingabedaten und geben Sie das signierte Ergebnis aus. Dies erfordert einen privaten RSA-Schlüssel.
-verifizieren
Überprüfen Sie die Eingabedaten und geben Sie die wiederhergestellten Daten aus.
-Verschlüsseln
Verschlüsseln Sie die Eingabedaten mit einem öffentlichen RSA-Schlüssel.
-entschlüsseln
Entschlüsseln Sie die Eingabedaten mit einem privaten RSA-Schlüssel.
-pkcs, -oaep, -ssl, -roh
die zu verwendende Auffüllung: PKCS#1 v1.5 (Standard), PKCS#1 OAEP, spezielle Auffüllung, die in verwendet wird
Abwärtskompatible SSL v2-Handshakes bzw. kein Padding. Für Unterschriften,
einzige -pkcs und -roh kann verwendet werden.
-hexdump
Hex-Dump der Ausgabedaten.
-asn1parse
asn1parse die Ausgabedaten, dies ist nützlich, wenn es mit dem kombiniert wird -verifizieren .
ANMERKUNG
rsautl Da der RSA-Algorithmus direkt verwendet wird, kann er nur zum Signieren oder Verifizieren von Kleinigkeiten verwendet werden
Datenstücke.
Beispiele:
Signieren Sie einige Daten mit einem privaten Schlüssel:
openssl rsautl -sign -in file -inkey key.pem -out sig
Stellen Sie die signierten Daten wieder her
openssl rsautl -verify -in sig -inkey key.pem
Untersuchen Sie die signierten Rohdaten:
openssl rsautl -verify -in file -inkey key.pem -raw -hexdump
0000 - 00 01 ff ff ff ff ff ff-ff ff ff ff ff ff ff ................
0010 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ................
0020 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ................
0030 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ................
0040 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ................
0050 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ................
0060 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ................
0070 - ff ff ff ff 00 68 65 6c-6c 6f 20 77 6f 72 6c 64 .....Hallo Welt
Daraus ist die PKCS#1-Blockformatierung ersichtlich. Wenn dies mit encrypt and geschehen ist
Beim Entschlüsseln des Blocks wäre es vom Typ 2 (das zweite Byte) und mit zufälligen Auffülldaten
sichtbar anstelle der 0xff-Bytes.
Mit diesem Dienstprogramm ist es möglich, die Signatur von Zertifikaten zu analysieren
mit asn1parse. Betrachten Sie das selbstsignierte Beispiel in certs/pca-cert.pem . Läuft asn1parse
wie folgt ergibt:
openssl asn1parse -in pca-cert.pem
0:d=0 hl=4 l= 742 Nachteile: SEQUENZ
4:d=1 hl=4 l= 591 Nachteile: SEQUENZ
8:d=2 hl=2 l= 3 Nachteile: Fortsetzung [ 0 ]
10:d=3 hl=2 l= 1 prim: INTEGER :02
13:d=2 hl=2 l= 1 prim: INTEGER :00
16:d=2 hl=2 l= 13 Nachteile: SEQUENZ
18:d=3 hl=2 l= 9 prim: OBJECT :md5WithRSAEncryption
29:d=3 hl=2 l= 0 prim: NULL
31:d=2 hl=2 l= 92 Nachteile: SEQUENZ
33:d=3 hl=2 l= 11 Nachteile: SET
35:d=4 hl=2 l= 9 Nachteile: SEQUENZ
37:d=5 hl=2 l= 3 prim: OBJECT :countryName
42:d=5 hl=2 l= 2 prim: PRINTABLESTRING :AU
....
599:d=1 hl=2 l= 13 Nachteile: SEQUENZ
601:d=2 hl=2 l= 9 prim: OBJECT :md5WithRSAEncryption
612:d=2 hl=2 l= 0 prim: NULL
614:d=1 hl=3 l= 129 prim: BIT STRING
Der letzte BIT STRING enthält die eigentliche Signatur. Es kann extrahiert werden mit:
openssl asn1parse -in pca-cert.pem -out sig -noout -strparse 614
Der öffentliche Schlüssel des Zertifikats kann extrahiert werden mit:
openssl x509 -in test/testx509.pem -pubkey -noout >pubkey.pem
Die Signatur kann analysiert werden mit:
openssl rsautl -in sig -verify -asn1parse -inkey pubkey.pem -pubin
0:d=0 hl=2 l= 32 Nachteile: SEQUENZ
2:d=1 hl=2 l= 12 Nachteile: SEQUENZ
4:d=2 hl=2 l= 8 prim: OBJEKT :md5
14:d=2 hl=2 l= 0 prim: NULL
16:d=1 hl=2 l= 16 prim: OCTET STRING
0000 - f3 46 9e aa 1a 4a 73 c9-37 ea 93 00 48 25 08 b5 .F...Js.7...H%..
Dies ist die analysierte Version einer ASN1 DigestInfo-Struktur. Es ist ersichtlich, dass der Digest
Verwendet wurde MD5. Der tatsächliche Teil des signierten Zertifikats kann extrahiert werden mit:
openssl asn1parse -in pca-cert.pem -out tbs -noout -strparse 4
und sein Digest berechnet mit:
openssl md5 -c tbs
MD5(tbs)= f3:46:9e:aa:1a:4a:73:c9:37:ea:93:00:48:25:08:b5
was, wie man sehen kann, mit dem oben ermittelten Wert übereinstimmt.
Verwenden Sie rsautlssl online über die Dienste von onworks.net
