Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 57220|Отговор: 3

[Източник] c# верификация на токена, изпратена от WeChat

[Копирай линк]
Публикувано в 23.08.2016 г. 15:49:49 ч. | | | |


За тази проверка на токена не намерих никакви релевантни документи от служители на WeChat.

Не намерих никаква документация, как да знам как се проверява верификацията на токените в WeChat???

Можете да търсите само онлайн, а проверката е следната:

В метода на обработка, съответстващ на URL адреса, се получават предоставените параметри и се извършва криптиране/верификация
Процесът е следният:
1. Сортирайте трите параметъра – token, timestamp и nononce – в ред на речника
2. Съшийте трите параметърни низа в един низ за SHA1 криптиране
3. Криптираният низ, получен от разработчика, може да бъде сравнен със сигнатурата, за да се идентифицира източникът на заявката от WeChat


След това, знаейки това, директно записах URL връзката, поискана от WeChat, за да улесня собственото си отстраняване на грешки.

Накрая написах метод за криптиране, както следва:



Тук трябва да сортирам стойността директно, а не според стойността на ключовете, направих тази грешка в началото,

Защото обикновено ключът е сортиран, а ключът и стойността се криптират заедно, или само стойността се криптира...


Накрая сравнете криптирания низ със signture-а и ако е вярен, директно върнете параметъра echostr, изпратен от WeChat сървъра.

Ако си мързелив, просто върни стойността на параметъра Echostr.




Предишен:c# Alibaba е по-добра от изпращане на SMS демо код, изходен код за изтегляне
Следващ:xml десериализация В XML документа има грешка (1, 2).
 Хазяин| Публикувано в 23.08.2016 г. 15:53:51 ч. |
 Хазяин| Публикувано в 24.08.2016 г. 13:06:07 ч. |
http://mp.weixin.qq.com/wiki/4/2ccadaef44fe1e4b0322355c2312bfa8.html

Намерих документацията

Когато разработчикът подаде заявлението за верификация за първи път, WeChat сървърът изпраща GET заявка към попълнения URL адрес с четири параметъра (подпис, времеви печат, nonce, echostr), а разработчикът преценява автентичността на съобщението чрез проверка на подписа (т.е. подписа).
След това, всеки път, когато разработчик получи потребителско съобщение, WeChat ще донесе първите три параметъра (подпис, времеви печат, nonce) за достъп до URL адреса, зададен от разработчика, и разработчикът все пак преценява автентичността на съобщението по валидността на подписа. Методът на валидиране е същият като при първото подаване на заявлението за верификация.
параметърописание
ПодписКриптографският подпис на WeChat комбинира параметрите на токена, попълнени от разработчика, с параметрите на времевия печат и nonce в заявката.
времеви печатВремеви печат
nonceСлучайно число
echostrСлучаен низ
Разработчикът проверява заявката чрез проверка на подписа (методът за проверка е показан по-долу). Ако потвърдите, че заявката за GET идва от WeChat сървъра, моля, върнете съдържанието на параметъра EchoStr както е, и достъпът ще влезе в сила и ще стане успешен разработчик, в противен случай достъпът ще се провали.
Процесът на криптиране/верификация е следният:1. Сортирайте трите параметъра – token, timestamp и nonce в речниковия ред2. Зашийте три параметърни низа в низ за SHA1 криптиране3. Криптираният низ, получен от разработчика, може да бъде сравнен със сигнатурата, за да се идентифицира произходът на заявката от WeChat
Публикувано в 7.10.2021 г. 20:56:07 ч. |
  Тези големи компании с отворени документи не са приятелски настроени
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com