Ich verwende öffentliche/private Schlüssel in meinem Projekt, um einige Daten zu verschlüsseln/entschlüsseln.Lesen des öffentlichen/privaten Schlüssels aus dem Speicher mit OpenSSL
Ich hosten einen öffentlichen Schlüssel ("public.pem") auf einem Server.
„public.pem“ sieht wie folgt aus:
-----BEGIN PUBLIC KEY-----
.....
.....
-----END PUBLIC KEY-----
ich eine Client-Seite geschrieben, die diesen öffentlichen Schlüssel herunterlädt und auf der Festplatte speichern und ruft dann OpenSSL PEM_read_RSA_PUBKEY() mit einem Dateideskriptor auf diese Datei. Diese Operation funktioniert gut und das Ergebnis ist ein RSA-Objekt, das für die Verschlüsselung bereit ist.
Ich möchte vermeiden, den öffentlichen Schlüssel jedes Mal auf die Festplatte schreiben (da ich den Puffer bereits im Speicher haben).
Wie kann ich die gleiche Operation ausführen, ohne den Puffer auf der Festplatte zu speichern? Ich bemerkte eine Funktion namens: PEM_read_bio_RSAPublicKey(), aber ich bin mir nicht sicher, ob es die BIO-Struktur verwendet. Bin ich auf dem richtigen Weg?
Die wirkliche Frage wäre also: Wie lese ich einen öffentlichen/privaten Schlüssel zu einem RSA-Objekt direkt aus dem Speicher und nicht aus einem Dateideskriptor.
Ich habe diese Option gerade jetzt ausprobiert. Die Verschlüsselung war in Ordnung, die Entschlüsselung funktionierte nicht. Muss der öffentliche Schlüssel wie folgt aussehen oder muss ich den "BEGIN PUBLIC KEY" entfernen, wenn ich ihn an den Client sende? ----- BEGIN PUBLIC KEY ----- ..... ..... ----- ENDE ÖFFENTLICHER SCHLÜSSEL ----- – user1144031
Der man page link ist gebrochen :(. Jeder hat den aktualisierten Link? – digawp