Heim  >  Artikel  >  Backend-Entwicklung  >  Lösung des Verschlüsselungsproblems von OpenSSL in PHP

Lösung des Verschlüsselungsproblems von OpenSSL in PHP

不言
不言Original
2018-07-11 16:37:331644Durchsuche

Dieser Artikel stellt hauptsächlich die Lösung des Verschlüsselungsproblems von OpenSSL in PHP vor. Jetzt kann ich ihn mit Ihnen teilen.

Es wird in letzter Zeit benötigt Unternehmensprojekte. Gehen Sie zur Verschlüsselungs- und Java-Seite von OpenSSL, um eine Schnittstellenüberprüfung durchzuführen. Nach mehreren Überprüfungen wird die Ursache gefunden:

  1. In der PHP7-Umgebungopenssl_get_privatekeyDie Methode wurde geändert in openssl_pkey_get_private

  2. Es gibt einen Unterschied zwischen dem Schlüsselformat in der Fensterumgebung und die Linux-Umgebung (nicht sicher, ob sie mit dem Betriebssystem zusammenhängt)

  3. Die Schlüsselüberprüfung von PHP muss einen Header und einen Tail enthalten.

Fügen Sie die angehängte Methode hier ein
Methode zum Konvertieren des geheimen Schlüsselformats:

function transJavaRsaKeyToPhpOpenSSL($content) {
        if ($content) {
            return trim(chunk_split($content, 64, "\n"));
        }
        return false;
    }

Methode zum Hinzufügen von Header und Tail:

function appendFlags($content, $isPublic = true) {
        if ($isPublic) {
            return "-----BEGIN PUBLIC KEY-----\n" . $content . "\n-----END PUBLIC KEY-----\n";
        }
        else {
            return "-----BEGIN PRIVATE KEY-----\n" . $content . "\n-----END PRIVATE KEY-----\n";
        }
    }

Das ist Es ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

Das obige ist der detaillierte Inhalt vonLösung des Verschlüsselungsproblems von OpenSSL in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn