HMAC imzası

HMAC — hash-based message authentication code — gizli bir anahtarı bir mesajla birlikte bir özet fonksiyonundan geçirerek, yalnızca aynı anahtara ve aynı mesaja sahip olanın üretebileceği kısa bir değer verir. Açık anahtarlı kriptografiye gerek kalmadan hem özgünlüğü hem bütünlüğü aynı anda sağlar.

Nasıl çalışır

Gönderen HMAC(gizli, gövde) hesaplar ve sonucu bir başlığa koyar. Alıcı aynı hesabı aldığı gövde üzerinde yapar ve karşılaştırır. Gövde ya da anahtar farklıysa değerler tutmaz. Karşılaştırma sabit zamanlı olmalıdır: sıradan bir dize karşılaştırması ilk farklı baytta döner, ve bu zamanlama farkı yeterince denemeyle geçerli bir imzanın yeniden kurulmasına izin verecek kadar bilgi sızdırır.

Yaygın yanılgı

İmzanın tazeliği kanıtladığı sanılır. Kanıtlamaz — geçerli imzalı bir yük sonsuza kadar geçerli kalır, dolayısıyla birini yakalayan saldırgan onu tekrar oynatabilir. İmzalar bu yüzden normalde gövdeyle birlikte bir zaman damgası üzerinden hesaplanır ve alıcılar birkaç dakikadan eskisini reddeder.

Burada deneyin

Bir webhook teslimatı tetikleyin ve `x-funapi-signature` başlığını abonelikte size verilen gizli anahtara karşı doğrulayın. Yükün tek bir baytını değiştirin, doğrulama başarısız olur — bütün mesele bu.

İlgili

Diğer terimler

Read this page in English

Tüm sözlük maddeleri · Test teknikleri · 39 mock REST API’nin tamamı

Last updated