Araç hakkında
HMAC nedir?
HMAC (Hash-based Message Authentication Code), bir mesajın gizli anahtarı bilen biri tarafından üretildiğini ve değiştirilmediğini kanıtlayan bir koddur. Hash fonksiyonunu anahtarla iki katmanlı biçimde kullandığı için SHA-256’nın uzunluk uzatma zayıflığından etkilenmez.
Mesaj: The quick brown fox jumps over the lazy dog
Anahtar: key
HMAC-SHA256: f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8Araç HMAC-SHA256 (64 hex karakter) ve HMAC-SHA512 (128 hex karakter) destekler; mesaj ve anahtar UTF-8 olarak işlenir.
Webhook imzalarını doğrulama
GitHub, Stripe, Shopify ve Slack gibi servisler gönderdikleri webhook isteklerini HMAC-SHA256 ile imzalar. İmzayı elle denetlemek için:
- İsteğin ham gövdesini (JSON’u yeniden biçimlendirmeden) “Mesaj” alanına yapıştırın.
- Servisin verdiği webhook gizli anahtarını “Anahtar” alanına girin.
- Çıktıyı istekteki imza başlığıyla karşılaştırın (ör. GitHub:
X-Hub-Signature-256: sha256=<hex>). Stripe gibi bazı servisler gövdenin önüne zaman damgası ekleyerek imzalar; servisin belgelerine bakın.
Sık sorulan sorular
Anahtar ne kadar uzun olmalı?
En az hash çıktısı kadar: HMAC-SHA256 için 32 bayt. Rastgele bir anahtarı güvenli token oluşturucuyla üretebilirsiniz.