ホームページ >バックエンド開発 >PHPチュートリアル >PHPでのDES CBCメッセージ検証方法

PHPでのDES CBCメッセージ検証方法

WBOY
WBOYオリジナル
2016-06-23 14:20:211183ブラウズ

MAC DEC CBC

メッセージを送信するときに MAC (メッセージ認証コード) と DES CBC アルゴリズムを使用する最近のプロジェクトがあります。
ネットで調べたところ、おそらくデータに対してチェックコードを計算し、データそのものと一緒に送信することで、データが改ざんされていないか確認するということのようです。

この関数を直接実装できる関数が PHP にあるかどうかを尋ねたいのですが、関数を自分で書くと、セグメンテーション、XOR、暗号化によって複雑になります。 mcrypt_cbc のような関数があることはわかりましたが、それが関連しているかどうかはわかりません。

助けてください!例を挙げるか、正しい方向を教えていただければ幸いです。

ディスカッションへの返信 (解決策)

mcrypt_cbc

CBC を使用してデータを暗号化/復号化します。

構文: string mcrypt_cbc(int cipher, string key, string data, int mode, string [iv]);

戻り値: String

関数の種類: 暗号化処理

内容説明
この関数は CBC パスワード検索を使用しますこれ (暗号ブロックチェーン) を使用してデータを暗号化および復号化します。パラメーター cipher は、MCRYPT_TripleDES などの暗号化/復号化方式です。パラメータ キーはパスワード キーであるため、機密性を保つように注意する必要があります。暗号化または復号化する文字列はパラメータ データに配置されます。パラメータモードは暗号化 MCRYPT_ENCRYPT または復号化 MCRYPT_DECRYPT を表します。パラメータ iv は省略されたパラメータであり、ベクトルの初期化 (初期化ベクトル、IV) を表します。

公式の説明をコピペして申し訳ありませんが、純粋に説明からすると、これは暗号化に使用される関数です。必要に応じて、暗号文を生成して KEY を一緒に送信することもできますが、ピアは送信された平文を同じ KEY で暗号化し、暗号文を比較して検証の目的を達成できます。ただし、KEY の送信はセキュリティを失います。比較的シンプルなのでMD5の方が簡単そうです。鍵が必要ないからです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。