この記事では主に PHP における OpenSSL の暗号化問題の解決策を紹介します。これには特定の参考値があります。今、あなたに共有します。困っている友達は参考にしてください。
ニーズがあります。最近の企業プロジェクトでこの問題が発生しました。OpenSSL の暗号化および Java 側に移動してインターフェイスの検証を実行します。テスト環境を PHP7 にアップグレードすると、暗号化エラーが発生します。その後、複数の検査を経て、最終的に原因が判明しました:
# PHP7 環境では ##openssl_get_privatekeyメソッドが
openssl_pkey_get_private
秘密鍵の形式を変換するメソッド:
function transJavaRsaKeyToPhpOpenSSL($content) { if ($content) { return trim(chunk_split($content, 64, "\n")); } return false; }
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"; } }
以上がPHP での OpenSSL の暗号化問題の解決の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。