freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

最新微信公眾平臺開發(fā)文檔說明書-資料下載頁

2025-07-20 02:15本頁面
  

【正文】 timestamp, nonce, encrypt的xml格式的字符串,當return返回0時有效 // return:成功0,失敗返回對應的錯誤碼 int EncryptMsg(const std::string amp。sReplyMsg, const std::string amp。sTimeStamp, const std::string amp。sNonce, std::string amp。sEncryptMsg)。使用方法在安全模式或兼容模式下,url上會新增兩個參數(shù)encrypt_type和msg_signature。encrypt_type表示加密類型,msg_signature:表示對消息體的簽名。 url上無encrypt_type參數(shù)或者其值為raw時表示為不加密;encrypt_type為aes時,表示aes加密(暫時只有raw和aes兩種值)。公眾帳號開發(fā)者根據(jù)此參數(shù)來判斷微信公眾平臺發(fā)送的消息是否加密。兼容模式和安全模式加解密的方法完全一樣,兼容模式的xml消息體比安全模式多了幾個明文字段,具體請查看《消息加解密詳細技術方案》。實例化對象使用構造函數(shù),實例化一個對象,傳入公眾帳號的token, appid, EncodingAESKey。解密安全模式或者兼容模式下,公眾號收到以下帶密文消息體(“……”表示兼容模式下的明文字段):encrypt_msg =xml ToUserName![CDATA[gh_10f6c3c3ac5a]]/ToUserName …… Encrypt![CDATA[hQM/NS0ujPGbF+/8yVe61E3mUVWVO1izRlZdyv26zrVUSE3zUEBdcXITxjbjiHH38kexVdpQLCnRfbrqny1yGvgqqKTGKxJWWQ9D5WiiUKxavHRNzYVzAjYkp7esNGy7HJcl/P3BGarQF3+AWyNQ5w7xax5GbOwiXD54yri7xmNMHBOHapDzBslbnTFiEy+8sjSl4asNbn2+ZVBpqGsyKDv0ZG+DlSlXlW+gNPVLP+YxeUhJcyfp91qoa0FJagRNlkNul4mGz+sZXJs0WF7lPx6lslDGW3J66crvIIx/klpl0oa/tC6n/9c8OFQ9pp8hrLq7B9EaAGFlIyz5UhVLiWPN97JkL6JCfxVooVMEKcKRrrlRDGe8RWVM3EW/nxk9Ic37lYY5j97YZfq375AoTBdGDtoPFZsvv3Upyut1i6G0JRogUsMPlyZl9B8Pl/wcA7k7i4LYMr2yK4SxNFrBUw==]]/Encrypt/xml調(diào)用DecryptMsg接口,傳入收到的url上的參數(shù):msg_signature(注意:不是signature,而是msg_signature), timestamp, nonce和接收到的encrypt_msg,若調(diào)用成功,sMsg則為輸出結果,其內(nèi)容為如下的明文的xml消息體:xml ToUserName![CDATA[gh_10f6c3c3ac5a]]/ToUserName FromUserName![CDATA[oyORnuP8q7ou2gfYjqLzSIWZf0rs]]/FromUserName CreateTime1411035097/CreateTime MsgType![CDATA[text]]/MsgType Content![CDATA[this is a test message]]/Content MsgId6060349595123187712/MsgId/xml公眾帳號處理消息生成需要回復給微信公眾平臺的xml消息體,假設回復以下內(nèi)容:res_msg = xml ToUserName![CDATA[oyORnuP8q7ou2gfYjqLzSIWZf0rs]]/ToUserName FromUserName![CDATA[gh_10f6c3c3ac5a]]/FromUserName CreateTime1411034505/CreateTime MsgType![CDATA[text]]/MsgType Content![CDATA[Wele to join us!]]/Content FuncFlag0/FuncFlag/xml回包加密調(diào)用EncryptMsg接口,傳入需要回復給微信公眾平臺的res_msg, timestamp, nonce,若加密成功,則sEncryptMsg為密文消息體,內(nèi)容如下:xml Encrypt![CDATA[LDFAmKFr7U/RMmwRbsR676wjym90byw7+hhh226e8bu6KVYy00HheIsVER4eMgz/VBtofSaeXXQBz6fVdkN2CzBUaTtjJeTCXEIDfTBNxpw/QRLGLqqMZHA3I+JiBxrrSzd2yXuXst7TdkVgY4lZEHQcWk85x1niT79XLaWQog+OnBV31eZbXGPPv8dZciKqGo0meTYi+fkMEJdyS8OE7NjO79vpIyIw7hMBtEXPBK/tJGN5m5SoAS6I4rRZ8Zl8umKxXqgr7N8ZOs6DB9tokpvSl9wT9T3E62rufaKP5EL1imJUd1pngxy09EP24O8Th4bCrdUcZpJio2l11vE6bWK2s5WrLuO0cKY2GP2unQ4fDxh0L4ePmNOVFJwp9Hyvd0BAsleXA4jWeOMw5nH3Vn49/Q/ZAQ2HN3dB0bMA+6KJYLvIzTz/Iz6vEjk8ZkK+AbhW5eldnyRDXP/OWfZH2P3WQZUwc/G/LGmS3ekqMwQThhS2Eg5t4yHv0mAIei07Lknip8nnwgEeF4R9hOGutE9ETsGG4CP1LHTQ4fgYchOMfB3wANOjIt9xendbhHbu51Z4OKnA0F+MlgZomiqweT1v/+LUxcsFAZ1J+Vtt0FQXElDKg+YyQnRCiLl3I+GJ/cxSj86XwClZC3NNhAkVU11SvxcXEYh9smckV/qRP2Acsvdls0UqZVWnPtzgx8hc8QBZaeH+JeiaPQD88frNvA==]]/Encrypt MsgSignature![CDATA[8d9521e63f84b2cd2e0daa124eb7eb0c34b6204a]]/MsgSignature TimeStamp1411034505/TimeStamp Nonce![CDATA[1351554359]]/Nonce/xml注意事項 EncodingAESKey長度固定為43個字符,從az,AZ,09共62個字符中選取。公眾帳號可以在公眾平臺的開發(fā)者中心的服務器配置修改 出于安全考慮,公眾平臺網(wǎng)站提供了修改EncodingAESKey的功能(在EncodingAESKey可能泄漏時進行修改),所以建議公眾賬號保存當前的和上一次的EncodinAESKey,若當前EncodingAESKey解密失敗,則嘗試用上一次的EncodingAESKey的解密。回包時,用哪個Key解密成功,則用此Key加密對應的回包 兼容模式消息體同時存在明文和密文,消息體會增至以前的3倍左右,開發(fā)者注意檢查系統(tǒng),防止因消息變長和URL參數(shù)增加而出現(xiàn)接收錯誤 如果url上無encrypt_type參數(shù)或者其值為raw,則回復明文,否則回復密文。兼容模式期間公眾賬號回復明文或密文均可(不要兩種類型都回)函數(shù)錯誤返回碼函數(shù)返回碼說明0處理成功40001校驗簽名失敗40002解析xml失敗40003計算簽名失敗40004不合法的AESKey40005校驗AppID失敗40006AES加密失敗40007AES解密失敗40008公眾平臺發(fā)送的xml不合法40009Base64編碼失敗40010Base64解碼失敗40011公眾帳號生成回包xml失敗示例代碼下載微信公眾平臺為開發(fā)者提供了5種語言的示例代碼(包括C++、php、Java、Python和C版本) 點擊下載../static/assets/微信公眾平臺接口調(diào)試工具點擊進入技術方案閱讀須知1. EncodingAESKey長度固定為43個字符,從az,AZ,09共62個字符中選取,公眾帳號可以在公眾平臺的開發(fā)者中心的服務器配置修改;2. AES密鑰:AESKey=Base64_Decode(EncodingAESKey + “=”),EncodingAESKey尾部填充一個字符的“=”, 用Base64_Decode生成32個字節(jié)的AESKey;3. AES采用CBC模式,秘鑰長度為32個字節(jié),數(shù)據(jù)采用PKCS7填充;PKCS7:K為秘鑰字節(jié)數(shù)(采用32),buf為待加密的內(nèi)容,N為其字節(jié)數(shù)。Buf需要被填充為K的整數(shù)倍。在buf的尾部填充(KN%K)個字節(jié),每個字節(jié)的內(nèi)容是(K N%K);尾部填充01if ( N%K==(K1))0202if ( N%K==(K2))030303if ( N%K==(K3))......KK....KK (K個字節(jié))if ( N%K==0)具體詳見:5. 出于安全考慮,公眾平臺網(wǎng)站提供了修改EncodingAESKey的功能(在EncodingAESKey可能泄漏時進行修改),所以建議公眾賬號保存當前的和上一次的EncodingAESKey,若當前EncodingAESKey生成的AESKey解密失敗,則嘗試用上一次的AESKey的解密?;匕鼤r,用哪個AESKey解密成功,則用此AESKey加密對應的回包;6. 兼容模式消息體同時存在明文和密文,消息體會增至以前的3倍左右,開發(fā)者注意檢查系統(tǒng),防止因消息變長和URL參數(shù)增加而出現(xiàn)接收錯誤;7. 微信團隊提供了多種語言的示例代碼(包括php、Java、C++、Python、C),請開發(fā)者盡量使用示例代碼。(../static/assets/)下面以普通文本消息為例,詳細說明公眾平臺對消息體加解密的方法和流程,其它普通消息和事件消息的加解密可以此類推。公眾賬號接收用戶消息消息體加密現(xiàn)有消息為明文,格式如下:msg = xml ToUserName![CDATA[toUser]]/ToUserName FromUserName![CDATA[fromUser]]/FromUserName CreateTime1348831860/CreateTime MsgType![CDATA[text]]/MsgType Content![CDATA[this is a test]]/Content MsgId1234567890123456/MsgId/xml兼容模式期間同時保留明文和密文,消息格式如下:new_msg=xml ToUserName![CDATA[toUser]]/ToUserName FromUserName![CDATA[fromUser]]/FromUserName CreateTime1348831860/CreateTime MsgType![CDATA[text]]/MsgType Content![CDATA[this is a test]]/Content MsgId1234567890123456/MsgId Encrypt![CDATA[msg_encrypt]]/Encrypt/xml安全模式下,消息體只有密文,格式如下:new_msg=xml ToUserName![CDATA[toUser]]/ToUserNameEncrypt![CDATA[msg_encrypt]]/Encrypt/xml其中,msg_encrypt = Base64_Encode( AES_Encrypt[ random(16B) + msg_len(4B) + msg + $AppId] )AES加密的buf由16個字節(jié)的隨機字符串、4個字節(jié)的msg_len(網(wǎng)絡字節(jié)序)、msg和$AppId組成,其中msg_len為msg的長度,$AppId為公眾帳號的AppIdAESKey =Base64_Decode(EncodingAESKey + “=”),32個字節(jié)url上增加參數(shù)encrypt_type,encrypt_type的值為raw時表示為不加密,encrypt_type的值為aes時,表示aes加密(暫時只有raw和aes兩種值),無encrypt_type參數(shù)同樣表示不加密消息體簽名為了驗證消息體的合法性,公眾平臺新增消息體簽名,開發(fā)者可用以驗證消息體的真實性,并對驗證通過的消息體進行解密在url上增加參數(shù):msg_signaturemsg_signature=sha1(sort(Token、timestamp、nonce, msg_encrypt))參數(shù)說明Token公眾平臺上,開發(fā)者設置的TokentimestampURL上原有參數(shù),時間戳nonceURL上原有參數(shù),隨機數(shù)msg_en
點擊復制文檔內(nèi)容
黨政相關相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1