Перейти до основного вмісту
🔒 Режим прев'ю. Перші 15 уроків Foundations — безкоштовні; цей — Pro. Запусти 7-денний trial щоб відкрити редактор, AI-підказки і решту курсу. Потрібна картка, скасування в Dashboard у будь-який момент.Почати 7-денний trial →
← КурсиFastAPI ProductionМодуль 4 · Async, Background Tasks, WebSocketsПеревірка підпису вебхука HMACpredict52 / 105
+125 XP
Завдання
📝 **Питання:** Спрогнозуйте результат. Тест повторно обчислює HMAC з тим самим секретом + міткою часу + тілом, а потім порівнює — він має збігатися (обидві сторони використовували однакові вхідні дані). 📋 Виберіть правильну відповідь. 💡 **Підказка:** Перечитайте наведену вище теорію, якщо не впевнені.
Передбач вивід

Прочитай код уважно

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))

Що виведе програма? Напиши тут:

💬 Обговорення

Будьте першим — поставте запитання або поділіться порадою.
Увійдіть щоб приєднатися до обговорення. Читання безкоштовне.
Завантаження обговорення…