Veri Gönderilmez

HMAC Oluşturucu (Tarayıcıda HMAC-SHA256 Hesapla)

HMAC-SHA256 oluşturmak için bir hesaplama aracı. Anahtarlar ve girişler gönderilmez veya saklanmaz.

Metin/Hex/Base64 girişlerini ve Hex/Base64 çıkışlarını destekler. Tarayıcının standart Crypto API'sini kullanarak güvenli bir şekilde hesaplar.

Yerel Hesaplama Saklama Yok Hex/Base64 Destekli

Giriş ve Çıkış

Bu sayfa hesaplamaları tamamen tarayıcı içinde gerçekleştirir ve veri göndermez.

Veri Gönderilmez
Giriş Formatı

* API özelliklerine göre 'bayt dizisi' önemlidir. Anahtar ikili (binary) ise lütfen Hex/Base64 formatında girin.

Giriş Formatı
Çıkış Uzunluğu: 32 bayt (SHA-256)
Seçenekler

İşletim sistemi veya kopyala-yapıştır nedeniyle satır sonu kodları farklıysa sonuçlar değişecektir.

API imzaları 'tam eşleşme' varsaydığından, genellikle olduğu gibi bırakılması önerilir.

Kullanım

Bir HMAC imzası oluşturmak için temel 3 adım.

  1. 1 Anahtarı Girin (API spesifikasyonu ikili ise Hex / Base64 seçin)
  2. 2 Mesajı Girin (İmzalanacak dize / payload)
  3. 3 Çıkış Formatını Seçin (Hex / Base64) ve Kopyalayın

HMAC 'karakter dizileri' üzerinden değil, 'bayt dizileri' üzerinden hesaplanır. Aynı görünseler bile, karakter kodlaması, satır sonları veya fazladan boşluklar farklıysa sonuçlar değişecektir (UTF-8 varsayılır).

Örnekler (Doğrulama için Test Vektörleri)

Giriş alanlarını doldurmak için 'Örnek Yükle'ye tıklayın.

Örnek 1
Anahtar (Metin/UTF-8)
secret
Mesaj (Metin/UTF-8)
message
HMAC-SHA256 (Hex)
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b
HMAC-SHA256 (Base64)
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=
Örnek 2
Anahtar (Metin/UTF-8)
key
Mesaj (Metin/UTF-8)
The quick brown fox jumps over the lazy dog
HMAC-SHA256 (Hex)
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8
HMAC-SHA256 (Base64)
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Yaygın Hatalar

Satır Sonu Kodu Farklılıkları (LF/CRLF)

Satır sonu işleme değişirse sonuçlar değişir.

Kırpma (Boşlukları Kaldırma)

İmzalar tam eşleşme varsaydığından, boşlukları kaldırmak uyuşmazlığa neden olabilir.

Base64URL Gösterimi

Base64URL genellikle +→-, /→_ kullanır ve = işaretini atlar. Lütfen spesifikasyonları kontrol edin.

Anahtar İşleme (Metin vs İkili)

Örnek: 'deadbeef'i bir 'dize' olarak girmek ile '0xDE 0xAD... bayt dizisi' olarak girmek farklıdır.

Ek Bilgiler

HMAC Nedir?

Gizli bir anahtar ve bir mesajdan imza oluşturma mekanizması. Üçüncü bir taraf aynı anahtar olmadan aynı sonucu oluşturamaz.

SHA-256'dan Farkı

SHA-256 bir 'hastir', HMAC ise 'anahtarlı bir hashtir (imza)'.

Kullanım Durumları

API imzaları, Webhook doğrulaması, istek kurcalama tespiti vb. için kullanılır.

SSS

Anahtar saklanıyor mu?

Saklanmaz. Bu araç tarayıcı içinde hesaplama yapar ve anahtarları veya mesajları bir sunucuya göndermez. (※ Önlem olarak, ortak bir bilgisayarda giriş yaptıktan sonra lütfen sıfırlayın)

Base64 mü Hex mi?

Her ikisi de kullanılır. Çıkış formatını (Hex / Base64 / Base64URL) seçebilirsiniz. Lütfen API spesifikasyonlarına göre seçin.

Karakter Kodlaması?

UTF-8 varsayılır. Metin girişi hesaplama için UTF-8 olarak baytlara dönüştürülür. İkili verileri işlemek için Hex / Base64 girişini kullanın.

HMAC ile SHA-256 hash arasındaki fark?

SHA-256 bir 'hashtir', HMAC ise 'anahtarlı bir hashtir (imza)'. Anahtarlar eşleşmedikçe aynı sonuç üretilemez.

Çıkış eşleşmiyor

Yaygın nedenler (1) Anahtar işleme (Metin vs İkili), (2) Satır sonları, (3) Boşluklar, (4) Base64URL'dir. Lütfen yukarıdaki hataları sırayla kontrol edin.