Przejdź do treści głównej
🔒 Tryb podglądu. Pierwszych piętnaście lekcji Foundations jest darmowych; ta jest Pro. Rozpocznij 7-dniowy trial, aby odblokować edytor, podpowiedzi AI i resztę kursu. Wymagana karta, anulujesz w dowolnym momencie w Dashboard.Rozpocznij 7-dniowy trial →
← KursyFastAPI ProductionModuł 4 · Asynchronizacja, Zadania w tle, WebSocketsWeryfikacja podpisu webhooka HMACpredict52 / 105
+125 XP
Zadanie
📝 **Pytanie:** Przewiduj wynik. Test ponownie oblicza HMAC z tym samym kluczem tajnym + znacznikiem czasu + treścią, a następnie porównuje — musi się zgadzać (obie strony użyły identycznych danych wejściowych). 📋 Wybierz właściwą odpowiedź. 💡 **Wskazówka:** Jeśli nie jesteś pewien, przeczytaj ponownie powyższą teorię.
Przewiduj wynik

Przeczytaj kod uważnie

import hmac, hashlib

def verify_signature(secret, body, timestamp, signature):
    payload = f'{timestamp}.'.encode() + body
    expected = hmac.new(secret.encode(), payload, hashlib.sha256).hexdigest()
    return hmac.compare_digest(expected, signature)

secret = 'whsec_test'
body = b'{"id":"evt_1"}'
ts = '1700000000'
expected = hmac.new(secret.encode(), f'{ts}.'.encode() + body, hashlib.sha256).hexdigest()
print(verify_signature(secret, body, ts, expected))

Co wypisze program? Napisz tutaj:

💬 Dyskusja

Zadaj pierwsze pytanie lub podziel się wskazówką.
Zaloguj się aby dołączyć do dyskusji. Czytanie jest darmowe.
Ładowanie dyskusji…