問題タブ [mcrypt]

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.

0 投票する
1 に答える
2671 参照

php - PHP:base_64データをCookieに保存する

いくつかのデータをCookieに保存する必要があります。データはmcrypt暗号化base64されてから、奇妙な文字が使用されるのを防ぎます。
暗号化およびエンコードされた文字列をセッションに保存し、それを読み戻し、復号化/デコードすることは完全に機能します。Cookieに対して同じことを行うと、失敗します。完全にぎこちないテキストが返されます。

明らかに、これはmcrypt-decrypt関数呼び出しが不適切なデータを受信するという事実によるものであり、Cookieの内容が何らかの形で影響を受けていると私は信じています。

PHPは私のCookieデータの舞台裏で何をしているのですか?

コード:(
以下では、mcrypt-functionsが読みやすさのための単純な関数呼び出しとして表されていることに注意してください)

0 投票する
1 に答える
12131 参照

php - PHP:Mcrypt-どのモードですか?

私はPHPの関数で利用できるさまざまなモードをテストしてきました。ECB はほとんどのチュートリアルで使用されるモードですが、リンクされたばかりのページと一部のユーザーの両方に推奨されていないため、 CBCまたはCFBのいずれかでうまくいくと思います。mcrypt

PHPのドキュメントは、利用可能なさまざまなモードの比較でそれほど太っていません。mcrypt代わりに、「シュナイアーによる応用暗号化」の本を参照しています。これは、今のところ購入することにあまり熱心ではありません。

では、mcryptどのモードを使用したいのか、そしてその理由は何ですか?

0 投票する
4 に答える
10011 参照

php - 暗号化: 初期化ベクトルとキーの使用?

私は PHP のmcryptライブラリと AES-256(rijndael) アルゴリズムを使用しています。これは、キーと初期化ベクトルの両方を実行する必要があります。

私の論理的な頭脳は、実際にはこれに沿っていません。鍵一つじゃ足りない?

理論的なシナリオ:
所有者のみが復号化できるようにデータベースに格納された機密データを暗号化した場合、ユーザーのハッシュ化されたパスワードをキーまたはデータの初期化ベクトルに使用するのは適切でしょうか?

キーは初期化ベクトルよりもプライベートであると見なすべきですか、それともその逆ですか?

0 投票する
4 に答える
3161 参照

php - 関数 mcrypt_cbc() を使用して PHP でエラーを取得する

データを暗号化するために作成したこの関数を使用しています。

PHP では、次の警告が表示されます。

私のキーは長すぎますか?何文字にするべきですか?

0 投票する
1 に答える
2125 参照

php - PHPオブジェクトまたは配列の暗号化/復号化に優先されるmcrypt暗号は何ですか?

これは短くシンプルにしておきます。PHPのmcryptライブラリの一部として、40ほどの可能な暗号があります。ここを参照してください

自分自身は暗号化についてあまり知らないので、使用する暗号に関係なく、復号化されたデータは暗号化されたデータと同じであるという前提で作業しています(そうでなければ、何が正しいのでしょうか?)

配列またはシリアル化された標準オブジェクトのいずれかを暗号化してから復号化する必要があります。mcryptライブラリの基本的な実装のいくつかの例をオンラインで閲覧しましたが、それぞれの例で異なる暗号が使用されていることに気付きました。これには何か意味があるのか​​、それとも単に個人的な好みなのか、疑問に思いました。

私の質問は、これらの暗号の間に重要な違いがあるかどうかです。

  • 暗号化/復号化は配列またはシリアル化された標準オブジェクトのいずれかであり、データは比較的少なくなります。
  • この操作はかなり珍しいので、速度は大きな問題ではなく、2秒未満の範囲であればどこでも許容されます。
  • 暗号化された文字列はCookieに保存され、URLクエリ文字列を介して送信される必要があります(したがって、長さと文字セットに制限があります)

ノート

ハッシュとhmacのどちらを使うべきかについての議論は終わっていません。暗号化が必要であり、この問題に対する正しいオプションです。

0 投票する
5 に答える
8119 参照

php - これらの暗号化アルゴリズムの違いは何ですか?

MCRYPT_RIJNDAEL_128MCRYPT_RIJNDAEL_256、などの違いは何ですかMCRYPT_BLOWFISH。Web でのデータ転送に最適なのはどれですか?

0 投票する
2 に答える
861 参照

php - Mcrypt 出力 - 小文字のみ?

Mcrypt を使用する場合、小文字のみの出力を指定することはできますか?

これは、暗号化に使用されるコードのサンプルです。

この理由は、小文字のみの暗号化された文字列が必要だからです。

ありがとうございました、

クリス。

編集

ユーザーが通知メールを介してスレッドに返信できるようにする、メールアプリを介した返信を作成しています。一意の暗号化された文字列を返信メールとして使用して識別しています。Mcrypt は、大文字と小文字の文字列を出力します。これは Gmail と Outlook では正常に機能しますが、Hotmail は返信アドレス文字列を小文字に変換し、復号化するとエラーになります。したがって、上記の func からの出力文字列は小文字のみにする必要があります。

0 投票する
1 に答える
512 参照

php - PHP crypt のエラー

私はそのようなfnを使用して暗号化/復号化します

mc_encrypt('test', 'pass') を呼び出すとすべて復号化されますが、mc_encrypt('test=value', 'pass') を呼び出すと復号化できません。なぜ?そして、私は何をしなければなりませんか?

0 投票する
1 に答える
799 参照

php - phpmcryptとさまざまなサーバー

私はそのようなコードを持っています

1つのスクリプトでEnDeCryptを呼び出すと、すべてが機能します。getparamで暗号化されたデータを別のサーバーに渡そうとすると、復号化できません(このような文字列ŸTe³qëêyÀÝを取得します)

キーが等しい、結果を置くthrow urlencode\urldecode-復号化しない

ベクトルmcrypt_create_iv-nothingを渡してみてください

0 投票する
2 に答える
1979 参照

php - 署名されたCookieを実行する際のシリアル化/逆シリアル化およびmcryptの問題

友人と協力してWebサイトで署名されたCookieを取得していますが、mcryptとMCRYPT_RIJNDAEL_256で暗号化しようとすると多くの問題が発生します。私はCookieが正常に機能しているので、問題はCookieの値を暗号化/復号化する場合にのみ発生します。

Cookieを復号化しようとすると、次のエラーが表示されます。

この正確な行は、次のものに対応します。

そして、これが私が暗号化/復号化する方法です。

まず、Cookieを送信します。

PD:うん、素敵なテストパスワード;-)

cookieのfirebugに表示される値は次のとおりです。

値を復号化する必要があるgetcookieは次のとおりです。

問題は、復号化されたデータの値を逆シリアル化しようとしたときです。どこが問題になるか知っている人はいますか?

前もって感謝します!

アップデート:

エラーを返しますWarning: mcrypt_generic_init(): Iv size incorrect; supplied length: 0, needed: 32