HMAC-SHA256 Üreteci
Mesaj ve gizli anahtar girerek HMAC-SHA256 değerini hesaplayın.
Sonuç
Nasıl hesaplanır?
Araç HMAC-SHA256(anahtar, mesaj) değerini hesaplar. İçeride anahtar 64 baytlık blok boyutuna tamamlanır (daha uzunsa önce hash'lenir), iki sabitle XOR'lanır ve iç içe iki SHA-256 işleminde kullanılır. Sonuç 32 bayttır; 64 küçük harfli onaltılık karakter olarak ve ayrıca base64 olarak gösterilir. Metin ve anahtar birlikte gereklidir; biri boşsa araç sonuç vermez. İkisi de yazıldığı gibi düz UTF-8 metin sayılır, bu yüzden bir boşluk, satır sonu ya da büyük/küçük harf farkı çıktıyı değiştirir. Anahtar bir metin dizesidir, onaltılık değil: 0a1b yazarsanız iki bayt değil bu dört karakter kullanılır. Aynı girdi her zaman aynı sonucu verir.
Örnek hesaplama
Mesaj: The quick brown fox jumps over the lazy dog; anahtar: anahtar. Araç 64 karakterlik onaltılık kodu f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8 olarak verir. Aynı 32 bayt base64 olarak 97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg= olur. "dog" yerine "cog" yazarsanız ya da anahtarı "Key" yaparsanız çıktı tamamen değişir; alıcı değişikliği böyle fark eder.
Sık yapılan hatalar
- Mesajın veya anahtarın sonuna boşluk ya da yeni satır eklemek; sunucunun hesapladığından sessizce farklı bir kod çıkar.
- Onaltılık ya da base64 anahtar girip önce çözülmesini beklemek; araç karakterleri yazıldığı gibi kullanır, ikili anahtar kodda işlenmelidir.
- Onaltılık çıktıyı base64 imzayla (ya da tersini) biçim farkını görmeden karşılaştırmak.
- HMAC'i şifreleme sanmak; kod yalnızca kaynağı ve bütünlüğü doğrular, mesajı gizlemez.
- Gerçek bir üretim sırrını bir web sayfasına yapıştırmak; yalnızca uygulamanızı denemek istiyorsanız test anahtarı kullanın.
Bu hesaplama hakkında
HMAC-SHA256, RFC 2104'te tanımlanan anahtarlı bir hash mesaj kimlik doğrulama kodudur: gizli anahtarı iç içe iki SHA-256 hash işlemiyle mesajla birleştirir (HMAC(K,m) = H((K⊕opad) ∥ H((K⊕ipad) ∥ m))), böylece yalnızca anahtara sahip biri geçerli bir kod üretebilir ve mesaj veya anahtarda yapılan herhangi bir değişiklik tamamen farklı bir çıktı üretir. Düz bir hash'in aksine HMAC, özellikle uzunluk-uzatma saldırılarına karşı dayanıklı olacak şekilde tasarlanmıştır.
Bu üreteç bir mesaj ve gizli anahtar alır, HMAC-SHA256 kodunu hem onaltılık hem de base64 biçiminde hesaplar. API geliştiricileri, webhook yüklerini imzalamak ve doğrulamak, AWS tarzı istek imzaları üretmek, JWT HS256 token'ları oluşturmak ve bir mesajın iletim sırasında değiştirilmediğini doğrulamak için bunu sürekli kullanır — çünkü aynı anahtar ve mesaj her zaman aynı kodu üretir, bu da alıcı tarafın kodu yeniden hesaplayıp karşılaştırmasına imkân verir.
Bu faydalı oldu mu?
En fazla 3 tepki seçebilirsiniz.
Popüler hesaplayıcılar
Kredi Hesaplama
Aylık taksit, toplam faiz ve ödeme planını hesaplayın.
Yüzde Hesaplama
Yüzde değişim, indirim ve oran hesaplamaları.
İndirim Hesaplama
İndirimli fiyatı, kazancı ve indirim tutarını hesaplayın.
Vücut Kitle Endeksi (VKİ)
Boy ve kiloya göre vücut kitle endeksini hesaplayın.
Yaş Hesaplama
Doğum tarihinden bugüne tam yıl, ay ve gün cinsinden yaşınızı hesaplayın.
Bileşik Faiz Hesaplama
Ana para, faiz oranı ve süreye göre bileşik faizle nihai tutarı hesaplayın.
Tüm Hesaplayıcılar
- Kredi Hesaplama
- Kar Hesaplama
- İndirim Hesaplama
- Vücut Kitle Endeksi (VKİ)
- Yüzde Hesaplama
- İdeal Kilo Hesaplama
- Yaş Hesaplama
- Gebelik Hesaplama
- Bileşik Faiz Hesaplama
- Bazal Metabolizma (BMR) Hesaplama
- Bahşiş Hesaplama
- Yakıt Maliyeti Hesaplama
- Tarih Farkı Hesaplama
- Uyku Döngüsü Hesaplama
- Günlük Su İhtiyacı Hesaplama
- Basit Faiz Hesaplama
- Kalp Atış Hızı Bölgeleri Hesaplama
- Koşu Temposu Hesaplama
- Evcil Hayvan Yaşı Hesaplama
- Kalori Yakım Hesaplama
- Makro Besin Dağılımı Hesaplama
- TDEE (Toplam Günlük Enerji İhtiyacı) Hesaplama
- Bel-Kalça Oranı Hesaplama
- Takdir ve Teşekkür Belgesi Hesaplama
- Tek Tekrar Maksimum (1RM) Hesaplama
- Yumurtlama (Ovülasyon) Hesaplama
- Elektrik Maliyeti Hesaplama
- Birim Fiyat Hesaplama
- Tasarruf Hedefi Hesaplama
- Başabaş Noktası Hesaplama
- Boya Hesaplama
- Vize-Final Ortalama Hesaplama
- İş Günü Hesaplama
- Saat Farkı (Süre) Hesaplama
- Yakıt Tüketimi Hesaplama
- Sıcaklık Birimi Çevirici
- Fayans (Seramik) Hesaplama
- En-Boy Oranı Hesaplama
- Roma Rakamı Çevirici
- Hedef Kilo Süresi Hesaplama
- Maaş Çevirici (Saatlik-Yıllık)
- Kredi Kartı Doğrulama (Luhn)
- Vücut Yüzey Alanı (BSA) Hesaplama
- Hissedilen Sıcaklık Hesaplama
- Ohm Kanunu Hesaplama
- PPI (Piksel Yoğunluğu) Hesaplama
- Molar Kütle Hesaplama
- Burç Hesaplama (Batı + Çin)
- IBAN Doğrulama
- Ayakkabı Numarası Dönüştürücü
- Ülke Bilgisi (Telefon Kodu) Sorgulama
- Saat Dilimi Farkı (Dünya Saati)
- CAGR (Bileşik Yıllık Büyüme) Hesaplama
- 72 Kuralı Hesaplama
- Kandaki Alkol (Promil) Hesaplama
- Yağsız Vücut Kütlesi (LBM) Hesaplama
- Pisagor Teoremi Hesaplama
- Hız Birimi Dönüştürücü
- İndirme Süresi Hesaplama
- Tarih Hesaplama (Gün Ekle/Çıkar)
Hesaplayıcı bulunamadı
Yorumlar (1)
Etiketiniz sunucununkiyle eşleşmiyorsa, algoritmadan şüphelenmeden önce tam baytları karşılaştırın. Sondaki tek bir satır sonu bile etiketin tamamını değiştirir; sunucu anahtarı bayta çevirdiği hâlde onu onaltılık metin olarak yazmak da aynı sonucu verir. Bu sayfa iki alanı da yazdığınız metin olarak kullanır. İyi bir sınama, anahtar olarak key ve bilinen tilki cümlesinden oluşan ünlü test çiftidir. Hangi servisin ya da webhook imzasının sonucunu yeniden üretmeye çalışıyorsunuz?