Mesaj Doğrulama (MAC)
HMAC, CMAC, Poly1305 ve diğer MAC algoritmaları
Mesaj Doğrulama (MAC) Nedir?
MAC (Message Authentication Code), bir mesajın bütünlüğünü ve kimliğini doğrulamak için kullanılan kriptografik bir kod parçasıdır. Basit bir benzetme yapmak gerekirse, MAC bir mektubun üzerindeki mühür gibidir - mektubun değiştirilip değiştirilmediğini ve gerçekten gönderen kişiden geldiğini kontrol eder. MAC, hem veri bütünlüğünü (verinin değiştirilmediğini) hem de kimlik doğrulamayı (gönderenin kim olduğunu) sağlar.
Kullanım Alanları
- Güvenli iletişim protokolleri
- API kimlik doğrulama
- Veri bütünlüğü kontrolü
- Finansal işlemler
- Blockchain doğrulama
- Yazılım güncellemeleri
Temel Özellikler
- Veri bütünlüğü garantisi
- Kimlik doğrulama
- Çarpışma direnci
- Hızlı doğrulama
- Anahtar tabanlı güvenlik
Algoritma Karşılaştırması
| Algoritma | Güvenlik | Hız | Kullanım Alanları |
|---|---|---|---|
| HMAC-SHA256 | Çok Yüksek | Hızlı | API güvenliğiJWT tokenGenel amaçlı kimlik doğrulamaYeni tasarımlar için önerilir |
| HMAC-SHA1 | Yeni sistemlerde HMAC-SHA256+ tercih edilir. HMAC-SHA1 yalnızca uyumluluk gerektiren durumlarda kabul edilebilir. | Hızlı | Uyumluluk gerektiren sistemlerYeni tasarımlar için HMAC-SHA256+ önerilir; HMAC-SHA1 uyumluluk için kabul edilebilir |
| CMAC | Çok Yüksek | Hızlı | Block cipher tabanlı uygulamalarYüksek güvenlik gerektiren sistemler |
| Poly1305 | Çok Yüksek | Çok Hızlı | Tek başına değil, AEAD şemasıyla (ChaCha20-Poly1305, AES-Poly1305) kullanılırYüksek performans gerektiren uygulamalar |
* Karşılaştırmalar 64-bit CPU'da referans/donanım hızlandırmasına göre
HMAC (Hash-based MAC)
Hash fonksiyonları kullanarak oluşturulan MAC algoritmaları. En yaygın kullanılan MAC türüdür.
İlgili Standartlar
- • RFC 2104
- • FIPS PUB 198-1
- • ISO/IEC 9797-1