問題タブ [php-openssl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - OpenSSLを使用してPHPでAES-256 CBCでプレーンテキストを暗号化するには?
データベースに入力する前に、PHP を使用した Web サイトで個人メッセージなどの機密ユーザー データを暗号化しようとしています。インターネットで少し調べたところ、覚えておくべきいくつかの重要なことがわかりました。
mcrypt は決して使用しないでください。
AES は Rijndael アルゴリズムに基づいており、現在まで壊れていません。
AES も NSA によって推奨されており、米国政府のデータ暗号化に使用されていますが、NSA が AES を推奨しているため、ユーザー データに簡単に忍び寄る可能性があります。
ブローフィッシュも壊れていませんが、速度が遅く、あまり人気がありません。
そこで、まず AES-256 cbc で試してみることにしました。しかし、Blowfish をより良い選択肢と見なすべきかどうかはまだわかりません。したがって、任意の推奨事項は大歓迎です。
そして私の主な関心事は、phpでデータを暗号化する方法ですか? これに関する適切なマニュアルが PHP のドキュメントにありません。それを実装する正しい方法は何ですか?
どんな助けでも大歓迎です。
php - メモリにロードするよりも openssl_pkey_get_private を好む理由はありますか?
PHPでopenssl関数を使用するさまざまな方法があるのはなぜだろうと思っています:
- キーを文字列として渡します (例: を使用してロードする
file_get_contents()
か、env 変数に格納します)。 - キー ファイルをファイル名として渡します。
file:///var/keys/private_key
- を使用してキーをロードし
openssl_pkey_get_private()
、それを解放しますopenssl_free_key()
特定の方法を好む理由はありますか?最後の解決策は、キーがメモリからロード/解放される方法をより適切に処理しますか (そうであれば、セキュリティに影響がありますか)?
php - Php と OpenSsl
php サポートと php-openssl 拡張機能が有効になっているホスト サーバーで、次の openssl コマンドを実行する必要があります。
openssl.exe smime -verify -inform DER -in $p7m_file -noverify -out $out_file
上記の (適切に機能する) コマンドに相当する php コードは何ですか? シェルコマンドではなく、openssl-extension のみを使用する必要があります。
詳細には、署名を検証せずに CADES ファイルを復号化する必要があります https://en.wikipedia.org/wiki/CAdES_(computing)
php - ファイルの代わりに文字列を openssl_pkcs7_sign() に渡す
私はphp openSSLライブラリを調べており、pubとprivキーを使用して文字列に署名する必要があります. ドキュメントの関数openssl_pkcs7_sign()
では、ファイル パスをファイル パラメータとして使用しているように見えますが、暗号化する必要がある変数に文字列が含まれています。その例はすべて、ファイルの書き込みを示しています。
文字列を関数に渡す方法はありますか? それとも他の機能が利用可能ですか?私のユースケースでは、ファイルをディスクに書き込むことはあまり実用的ではないようです。
php - openssl_encrypt が PHP で認識されない
openssl_encrypt ($string, $method, $pass);
php cmdで実行すると実行できます。ただし、Apache http サーバー経由で実行すると、次のエラーがスローされます。