Przejdź do treści

Generator losowych ciągów

Potrzebujesz losowego ciągu na klucz API, sekret JWT, kod rabatowy albo dane testowe? Wybierz długość i znaki, a potem skopiuj wynik. Jeden ciąg albo do 1 000 naraz.

Ciągi powstają bezpośrednio w twojej przeglądarce za pomocą bezpiecznego generatora liczb losowych i nigdzie nie są wysyłane.

Wygeneruj losowy ciąg

Znaki

Dodawany przed ciągiem i nie wlicza się do długości.

Wynik

Losowe ciągi

Jak długi powinien być losowy ciąg?

Im dłuższy ciąg i im więcej rodzajów znaków zawiera, tym trudniej go odgadnąć. Te ustawienia sprawdzą się w najczęstszych zastosowaniach.

Zastosowanie Ustawienia Losowość
Sekret JWT (HS256) 43 litery i cyfry albo 64 znaki hex 256 bitów
Klucz API lub token dostępu 32 litery i cyfry 190 bitów
Identyfikator sesji lub token CSRF 32 litery i cyfry 190 bitów
Kod rabatowy lub zaproszenie 8 do 12 wielkich liter i cyfr bez podobnych znaków 40 do 60 bitów
Nazwa pliku lub klucz cache 16 małych liter i cyfr 82 bity

Do czego się przydaje

  • Klucze API i tokeny dostępu do programowania i testów
  • Sekrety do podpisywania JWT i webhooków
  • Identyfikatory sesji i tokeny CSRF
  • Kody rabatowe, zaproszenia i kody polecające
  • Unikalne nazwy plików, klucze cache i numery referencyjne
  • Dane testowe i wartości zastępcze

Potrzebujesz hasła?

Do haseł do kont lepiej nadaje się generator haseł. Tworzy też frazy hasłowe i kody PIN oraz pokazuje, jak silne jest każde hasło.

Szukasz raczej losowych słów albo zdań? Użyj generatora Lorem Ipsum.

Losowy ciąg z liter, cyfr, symboli lub hex

Generator zaczyna od liter i cyfr. Włącz lub wyłącz znaki zależnie od tego, gdzie użyjesz ciągu.

Losowy ciąg alfanumeryczny

Domyślnie: wielkie litery, małe litery i cyfry (A-Z, a-z, 0-9), razem 62 znaki. Działa niemal wszędzie, w adresach URL, nazwach plików, bazach danych i plikach konfiguracyjnych, bez żadnego escapowania.

Losowy ciąg ze znakami specjalnymi

Włącz symbole, a dojdą znaki !#$%&()*+,-./:;<=>?@[]^_{}~. Każdy znak ma wtedy więcej możliwości, więc ta sama długość daje więcej bitów losowości. Cudzysłowy, ukośniki wsteczne, grawisy, pionowe kreski i spacje są pominięte celowo, bo najczęściej psują kod, pliki konfiguracyjne i wiersz poleceń.

Losowy ciąg tylko z liter lub tylko z cyfr

Wyłącz grupy, których nie potrzebujesz. Do kodu liczbowego albo testowego ID zostaw tylko cyfry, do kodu bez cyfr tylko litery, a do kodu, który łatwo podyktować, wielkie litery i cyfry.

Losowy ciąg hex

Włącz hex, a ciąg będzie zawierał tylko cyfry 0-9 i litery a-f. Każdy znak hex niesie 4 bity, więc 32 znaki hex odpowiadają 16 losowym bajtom, a 64 znaki 32 bajtom. Wiele systemów oczekuje kluczy, tokenów i identyfikatorów właśnie w tym formacie.

Losowy kod bez podobnych znaków

Przy kodach rabatowych, zaproszeniach i wszystkim, co ludzie przepisują albo czytają z kartki, włącz pomiń podobne znaki. Znaki 0 i O albo 1, l i I wtedy się nie pojawią, więc nikt ich nie pomyli.

Losowy ciąg w kodzie

W skrypcie lub aplikacji użyj bezpiecznych funkcji losowych, które ma każdy język. Każdy przykład tworzy 32 znaki albo sekret z 32 losowych bajtów.

Python, 32 litery i cyfry
import secrets, string
alphabet = string.ascii_letters + string.digits
print(''.join(secrets.choice(alphabet) for _ in range(32)))
Python, sekret JWT (43 znaki)
python3 -c "import secrets; print(secrets.token_urlsafe(32))"
JavaScript (przeglądarka, Node.js 19+)
const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
const limit = 2 ** 32 - (2 ** 32 % alphabet.length);
let value = '';
while (value.length < 32) {
    const [n] = crypto.getRandomValues(new Uint32Array(1));
    if (n < limit) value += alphabet[n % alphabet.length];
}
console.log(value);
Node.js, 64 znaki hex
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
PHP, 32 znaki hex
echo bin2hex(random_bytes(16));
Terminal w Linuksie i macOS
openssl rand -hex 32
LC_ALL=C tr -dc 'A-Za-z0-9' < /dev/urandom | head -c 32; echo

FAQ

Często zadawane pytania

Czy mogę używać tych ciągów jako kluczy API?

Do lokalnego tworzenia oprogramowania i testów tak. Do produkcyjnych kluczy API użyj narzędzi do tokenów, które oferuje twój framework lub platforma, na przykład Laravel Sanctum, Rails has_secure_token, Django REST Framework TokenAuth albo Phoenix Token, i przy przechowywaniu, wymianie i unieważnianiu tokenów kieruj się ich dokumentacją.

Czy dwa wygenerowane ciągi mogą być takie same?

Przy 32 literach i cyfrach istnieje około 2 × 1057 możliwości, więc powtórzenie jest praktycznie niemożliwe. Krótkie ciągi, na przykład 6 cyfr, mogą się powtarzać przy większej liczbie. Jeśli każda wartość musi być unikalna, sprawdź duplikaty.

Czy ciągi są wysyłane na serwer?

Nie. Powstają w twojej przeglądarce i nigdzie nie są zapisywane ani wysyłane. Przeglądarka zapamiętuje tylko twoje ustawienia na następny raz.