Generator HMAC

Generuj HMAC-SHA256 z wiadomości i klucza.

Bezpieczeństwo
Algorytm:

O HMAC

HMAC wykorzystuje klucz tajny i funkcję hashującą (np. SHA-256) do wygenerowania podpisu o stałej długości. Każdy, kto posiada ten sam klucz, może zweryfikować, że wiadomość nie została zmieniona. Służy do podpisywania żądań API i weryfikacji webhooków.

Jak używać HMAC Generator

  1. Wpisz wiadomość, którą chcesz uwierzytelnić, w polu wiadomości.
  2. Wpisz klucz tajny — powinien być poufny i udostępniany wyłącznie stronie, która musi zweryfikować HMAC.
  3. Wybierz algorytm: SHA-256 jest najczęstszym wyborem; SHA-512 zapewnia silniejsze zabezpieczenia.
  4. Kliknij Oblicz HMAC, aby wygenerować podpis HMAC w formacie szesnastkowym.
  5. Skopiuj wynik i użyj go w żądaniach API, konfiguracji webhooków lub implementacjach bezpieczeństwa.

Kluczowe funkcje

  • Wiele algorytmów — Obsługuje HMAC-SHA-256, HMAC-SHA-384 i HMAC-SHA-512 dla różnych wymagań bezpieczeństwa.
  • Web Crypto API — Wykorzystuje natywną bibliotekę kryptograficzną przeglądarki, zapewniając zgodność ze standardami i wysoką wydajność.
  • Wyjście szesnastkowe — Podpisy HMAC są wyświetlane w standardowym formacie hex do łatwej integracji.
  • Pełna prywatność — Twoja wiadomość i klucz tajny nigdy nie opuszczają przeglądarki. Bez przetwarzania na serwerze.
  • Przyjazne dla programistów — Idealne do testowania podpisów API, debugowania weryfikacji webhooków i prototypowania przepływów bezpieczeństwa.

Kiedy używać tego narzędzia

  • Testowanie podpisów żądań API wymagających uwierzytelniania HMAC (np. AWS, bramki płatnicze).
  • Weryfikacja ładunków webhooków od serwisów takich jak GitHub, Stripe lub Slack.
  • Debugowanie niezgodności HMAC w aplikacji przez porównanie oczekiwanych i faktycznych podpisów.
  • Nauka działania HMAC i eksperymentowanie z różnymi algorytmami i danymi wejściowymi.
  • Generowanie wartości HMAC dla dokumentacji, przypadków testowych lub przewodników integracyjnych.

Szczegóły techniczne

HMAC jest zdefiniowany w RFC 2104 i działa poprzez obliczenie H((K' ⊕ opad) || H((K' ⊕ ipad) || message)), gdzie H to funkcja hashująca, K' to klucz dopełniony do rozmiaru bloku, a ipad/opad to stałe dopełnienia. Ta dwuprzebiegowa konstrukcja czyni HMAC odpornym na ataki rozszerzania długości, które dotykają zwykłe funkcje hashujące. Narzędzie wykorzystuje metody Web Crypto API crypto.subtle.importKey() i crypto.subtle.sign() do obliczania HMAC. HMAC-SHA-256 generuje 64-znakowe wyjście hex (256 bitów), HMAC-SHA-384 generuje 96 znaków hex, a HMAC-SHA-512 generuje 128 znaków hex. Dla silnego bezpieczeństwa używaj klucza o długości co najmniej równej wyjściu hasha (np. 32 bajty dla HMAC-SHA-256). Powiązane narzędzia bezpieczeństwa: Dekoder JWT i Generator Bcrypt.

Podsumowanie

Generator HMAC to niezbędne narzędzie dla programistów do obliczania kodów uwierzytelniania wiadomości opartych na kluczu bezpośrednio w przeglądarce. Niezależnie od tego, czy testujesz podpisy API, weryfikujesz webhooki, czy uczysz się o uwierzytelnianiu wiadomości, to narzędzie zapewnia szybkie, prywatne i zgodne ze standardami obliczenia HMAC.

Najczęściej zadawane pytania

Czym jest HMAC?
HMAC (Hash-based Message Authentication Code) łączy klucz tajny z wiadomością i hashuje je. Potwierdza, że wiadomość nie została zmieniona i że została utworzona przez kogoś znającego klucz.
Czy moje dane są wysyłane na serwer?
Nie. HMAC jest obliczany wyłącznie w Twojej przeglądarce za pomocą Web Crypto API. Wiadomość i klucz nigdy nie opuszczają urządzenia.
Kiedy stosuje się HMAC?
Najczęściej do podpisów żądań API, webhooków i weryfikacji integralności. Zarówno nadawca, jak i odbiorca używają tego samego tajnego klucza do obliczenia lub weryfikacji HMAC.
Czym HMAC różni się od zwykłego hasha?
Zwykły hash (np. SHA-256) może być obliczony przez każdego, kto zna dane wejściowe. HMAC wymaga klucza tajnego, więc tylko strony posiadające klucz mogą generować lub weryfikować podpis. Dlatego HMAC nadaje się do uwierzytelniania, podczas gdy zwykłe hasze służą jedynie do sprawdzania integralności.