この記事では、PHPのOpenSSL暗号化で遭遇する問題とその解決策を主に解説していますので、PHPの暗号化に興味のある方はぜひ参考にしてください。 最近、会社のプロジェクトで
インターフェース検証にOpenSSL暗号化を使用する必要があり、テスト環境をPHP7にアップグレードすると暗号化エラーが発生するようになりました。その後、複数の検査を経て、最終的に原因が判明しました。 : PHP7環境では openssl_get_privatekey メソッドが openssl_pkey_get_private に置き換えられます
秘密鍵を変換する必要があります。 window 環境と
環境では鍵の形式が異なります (関係があるかどうかはわかりません)。当面はオペレーティングシステム)
PHP のキー検証にはヘッダー末尾を追加する必要があります。
添付のメソッドをここに投稿してください
秘密鍵の形式を変換する方法:
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"; } }
以上が、との出会いです。今回は OPENSSL 暗号化の問題について少し体験してみました。まだ質問がある場合は、以下にメッセージを残してください。
関連する推奨事項:
PHP 7.1 で Mcrypt 暗号化と復号化の代わりに OpenSSL を使用する方法の詳細な説明_php ヒント
PHP で openssl 暗号化と復号化を使用する方法の詳細な説明 php は、暗号化および復号化メソッドの基本的な実装です以上がPHP_php のヒントで OpenSSL 暗号化の問題を整理するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。