Araç hakkında
HMAC nasıl doğrulanır?
Doğrulama, aynı mesaj ve anahtarla HMAC’i yeniden hesaplayıp beklenen değerle karşılaştırmaktır. Araç seçtiğiniz algoritmayla (SHA-256 veya SHA-512) hesaplama yapar ve hex değerleri büyük/küçük harf ayırt etmeden, tüm baytlar üzerinden karşılaştırır.
Sonuç yalnız “doğrulandı” veya “uyuşmuyor” olarak gösterilir. Uyuşmazlık durumunda en sık nedenler: gövdenin yeniden biçimlendirilmiş olması (boşluk, satır sonu), yanlış anahtar, sha256= gibi bir önekin beklenen değere eklenmiş olması veya algoritmanın farklı olmasıdır.
Sunucu kodunda dikkat
Kendi uygulamanızda karşılaştırmayı == ile değil, sabit zamanlı bir fonksiyonla yapın (Node.js crypto.timingSafeEqual, Python hmac.compare_digest, Go hmac.Equal). Aksi hâlde yanıt süresindeki farklardan doğru imza bayt bayt tahmin edilebilir. Bu araç tüm baytları karşılaştırır, ancak JavaScript sabit zamanlı çalışmayı garanti etmez.