Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 57220|Odpowiedź: 3

[Źródło] Weryfikacja tokenów c# wysłana przez WeChat

[Skopiuj link]
Opublikowano 23.08.2016 15:49:49 | | | |


Do tej symbolicznej weryfikacji nie znalazłem żadnych istotnych dokumentów od przedstawicieli WeChat.

Nie znalazłem żadnej dokumentacji, skąd mam wiedzieć, jak weryfikacja tokenów WeChat jest weryfikowana???

Możesz szukać tylko online, a weryfikacja wygląda następująco:

W metodzie przetwarzania odpowiadającej adresowi URL uzyskaj przekazane parametry i wykonaj szyfrowanie/weryfikację
Proces wygląda następująco:
1. Posortuj trzy parametry: token, timestamp i nonce w kolejności słownikowej
2. Zszyć trzy ciągi parametrów w jeden ciąg do szyfrowania SHA1
3. Zaszyfrowany ciąg danych uzyskany przez programistę można porównać ze sygnaturą, aby zidentyfikować źródło żądania z WeChat


Następnie, wiedząc o tym, bezpośrednio nagrałem połączenie URL żądane przez WeChat, żeby ułatwić własne debugowanie.

Na koniec napisałem metodę szyfrowania w następujący sposób:



Tutaj jest sortowanie wartości bezpośrednio, a nie według wartości sortowania klucza, popełniłem ten błąd na początku,

Ponieważ zwykle jest to posortowane kluczem, a klucz i wartość są szyfrowane razem, albo szyfrowana jest tylko wartość...


Na koniec porównaj zaszyfrowany ciąg z sygnaturą, a jeśli jest poprawny, zwróć bezpośrednio parametr echostr przesłany przez serwer WeChat.

Jeśli jesteś leniwy, po prostu zwróć wartość parametru echostr.




Poprzedni:c# Alibaba to coś więcej niż wysyłanie SMS-a do pobrania kodu źródłowego
Następny:deserializacja xml W dokumencie XML wystąpił błąd (1, 2).
 Ziemianin| Opublikowano 23.08.2016 15:53:51 |
 Ziemianin| Opublikowano 24.08.2016 13:06:07 |
http://mp.weixin.qq.com/wiki/4/2ccadaef44fe1e4b0322355c2312bfa8.html

Znalazłem dokumentację

Gdy programista po raz pierwszy złoży wniosek weryfikacyjny, serwer WeChat wysyła żądanie GET do wypełnionego adresu URL z czterema parametrami (podpis, znacznik czasu, nonce, echostr), a deweloper oceni autentyczność wiadomości poprzez weryfikację podpisu (czyli podpisu).
Po tym, za każdym razem, gdy deweloper otrzymuje wiadomość od użytkownika, WeChat również przenosi pierwsze trzy parametry (podpis, znacznik czasu, nonce), aby uzyskać dostęp do URL ustawionego przez dewelopera, a deweloper nadal ocenia autentyczność wiadomości na podstawie ważności podpisu. Metoda walidacji jest taka sama jak przy pierwszym złożeniu wniosku weryfikacyjnego.
parametropis
PodpisPodpis kryptograficzny WeChat, podpis łączy parametry tokena wypełnione przez dewelopera z parametrami timestamp i nonce zawartymi w żądaniu.
Znacznik czasuZnacznik czasu
NonceLiczba losowa
echostrLosowy ciąg
Programista weryfikuje żądanie, sprawdzając podpis (metoda weryfikacji pokazana poniżej). Jeśli potwierdzisz, że żądanie GET pochodzi z serwera WeChat, prosimy o zwrócenie zawartości parametrów echostr w obecnej formie, a dostęp zadziała i stanie się skutecznym deweloperem, w przeciwnym razie dostęp się nie powie.
Proces szyfrowania/weryfikacji przebiega następująco:1. Posortuj trzy parametry: token, timestamp i nonce w kolejności słownika2. Zszyj trzy ciągi parametrów w ciągu dla szyfrowania SHA13. Zaszyfrowany ciąg danych uzyskany przez programistę można porównać ze sygnaturą, aby zidentyfikować źródło żądania z WeChat
Opublikowano 07.10.2021 20:56:07 |
  Te duże firmy otwierają dokumenty nie są przyjazne
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com