ホームページ >バックエンド開発 >PHPチュートリアル >WeChat パブリック プラットフォーム デベロッパー センター セキュリティ モードのメッセージ本文の暗号化と復号化の実装、パブリック Developers_PHP チュートリアル

WeChat パブリック プラットフォーム デベロッパー センター セキュリティ モードのメッセージ本文の暗号化と復号化の実装、パブリック Developers_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:14:591376ブラウズ

WeChat パブリック プラットフォーム デベロッパー センター セキュリティ モード メッセージ本文の暗号化と復号化の実装、パブリック開発者

キーワード: WeChat パブリック プラットフォーム メッセージ本文の署名 メッセージ本文の暗号化と復号化 EncodingAESKey セキュリティ モード

原文 http://www.cnblogs.com/txw1958/p/weixin-aes-encrypt-decrypt.html

1. メッセージ本文の暗号化と復号化

サーバーを構成する際、WeChat パブリック プラットフォームでは、開発者が選択できる 3 つの暗号化および復号化モード、つまり平文モード、互換性モード、セキュリティ モードが提供されます。互換性モードとセキュリティ モードを選択する前に、メッセージの暗号化と復号化を入力する必要があります。開発者センターのパスワード KeyEncodingAESKey。

  • 平文モード: 既存のモードを維持し、新しい暗号化および復号化機能は適用されません。メッセージ本文は平文で送受信されます。デフォルト設定は平文モードです
  • 互換モード: パブリック プラットフォームによって送信されるメッセージの内容にはプレーン テキストと暗号テキストの両方が含まれ、メッセージ パケットの長さはパブリック アカウントがプレーン テキストまたは暗号テキストで返信できる長さの約 3 倍に増加します。既存のメッセージの送受信に影響を与えることなく、開発者はここでモードでデバッグできます
  • セーフ モード (推奨): パブリック プラットフォームによって送信されるメッセージ本文の内容には暗号文のみが含まれており、パブリック アカウントによって返信されるメッセージ本文も暗号文です。開発者は、成功後のメッセージの送受信にこのモードを使用することをお勧めします。デバッグ

エンコーディングAESKeyとは何ですか?

  • WeChat パブリック プラットフォームは、AES 対称暗号化アルゴリズムを使用して、パブリック アカウントにプッシュされるメッセージ本文を暗号化します。 EncodingAESKey は、暗号化に使用される秘密キーです。公開アカウントは、この秘密キーを使用して受信した暗号文メッセージ本文を復号化し、応答メッセージ本文もこの秘密キーで暗号化されます。 AES対称暗号化アルゴリズムの原理については、http://www.cnblogs.com/txw1958/p/aes.htmlを参照してください

暗号化と復号化の詳細な技術ソリューションについては、公式ドキュメント http://mp.weixin.qq.com/wiki/index.php?title=%E6%8A%80%E6%9C%AF%E6 を参照してください。 %96%B9% E6%A1%88

パブリックアカウントタイプに適用可能

  • 認証済みサブスクリプションアカウント
  • サービスアカウント

appid パラメーターがないため、認証されていないサブスクリプション アカウントには使用できません


2. 開発、実装、データ分析

1. 構成

この開発構成の URL は

であると仮定します。 リーリー

次の3つのパラメータをインターフェースプログラムで設定する必要があります

リーリー

2. 暗号化と復号化の実装

ユーザーが公開アカウントにメッセージを送信すると、WeChat 公開アカウントは、以下に示すように、署名、タイムスタンプ、nonce、encrypt_type、msg_signature、およびその他のパラメーターを URL に含めます

リーリー

同時に、暗号化されたメッセージである次の XML メッセージをインターフェイスにプッシュします

リーリー

このとき、プログラムはURLから以下のパラメータを取得する必要があります

リーリー

これらのパラメータは暗号化と復号化のプロセスで使用されます

メッセージを受信したら、まず復号コードの一部を以下に示します。 リーリー

復号化が完了すると、復号化されたコンテンツが $postStr に返されます。これは、その後の処理を容易にするために、メッセージ内の復号化されたコンテンツが平文モードのメッセージと確実に統合されるようにするためです。 リーリー

独自のコードでメッセージを処理すると、返信されるメッセージは以下のようになります

リーリー

上記のメッセージを暗号化してWeChat公開アカウントに返します

リーリー

暗号化された内容は以下の通りです

リーリー

このようにして、セーフモードでのメッセージの暗号化と復号化が完了します。

3. 完全なコード

リーリー

WeChat パブリック プラットフォームの高度な機能をクリックすると、その機能が存在しないことがページに表示されますか?

あなたは新しく登録されたアカウントですか?新規アカウントの場合、まだ承認されていないため表示されない場合があります。新しいアカウントでない場合は、ブラウザのキャッシュをクリアするか、別のマシンを試してください。他に理由はないはずです。


WeChatパブリックプラットフォーム開発者モードで複数のグラフィックメッセージに返信するコード

単一のグラフィック メッセージをループとして抽象化し、各記事のコンテンツを入力して、それらを結合することができます。これが最も速い方法です。私は WeChat 開発モデルのサードパーティ開発者でもあります。私の情報をご覧ください。 、個人プロフィール。


http://www.bkjia.com/PHPjc/907044.html

tru​​ehttp://www.bkjia.com/PHPjc/907044.html技術記事 WeChat パブリック プラットフォーム デベロッパー センター セキュリティ モード メッセージ本文の暗号化と復号化の実装、パブリック開発者キーワード: WeChat パブリック プラットフォーム メッセージ本文の署名 メッセージ本文の暗号化と復号化 EncodingAESKey セキュリティ モード...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。