# Weryfikacja losowania

> Sprawdź, czy losowanie nie zostało zmanipulowane. Wklej kod certyfikatu i zobacz, czy ziarno, odcisk zobowiązania i liczby się zgadzają.

URL: https://acrafto.com/pl/verify-random-draw/  
Updated: 2026-08-28

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

## Co sprawdza to narzędzie

Ktoś przeprowadził losowanie i przekazał Ci kod certyfikatu. Ta strona sprawdza, czy ten kod jest wewnętrznie spójny — czy liczby rzeczywiście pochodzą z ziarna opublikowanego przez organizatora oraz czy odcisk zobowiązania rzeczywiście obejmuje to ziarno i te ustawienia.

Wszystko działa w Twojej przeglądarce. Certyfikat nigdy nie jest nigdzie wysyłany.

## Dwie kontrole

**Odcisk zobowiązania.** Certyfikat zawiera skrót SHA-256 obliczony z ziarna i ustawień losowania. Ta strona ponownie oblicza ten skrót. Jeśli nie zgadza się on z tym zapisanym w certyfikacie, ziarno lub ustawienia zostały zmienione po dokonaniu zobowiązania.

**Odtworzenie.** Generator z ziarnem jest w pełni deterministyczny, więc to samo ziarno i te same ustawienia zawsze dają te same liczby. Ta strona ponownie przeprowadza losowanie i porównuje wyniki. Jeśli liczby się różnią, wynik został zmieniony.

Certyfikat przechodzi weryfikację tylko wtedy, gdy obie kontrole się zgadzają.

## Co udowadnia, a czego nie udowadnia pozytywny wynik

Udowadnia, że organizator po cichu nie zmienił ziarna, ustawień ani liczb po dokonaniu zobowiązania do nich.

**Nie** udowadnia, że ziarno było nieprzewidywalne. Jeśli organizator sam wybrał ziarno i nigdy nie opublikował odcisku zobowiązania przed losowaniem, mógł wypróbować wiele ziaren i zatrzymać to, które mu odpowiadało. Odcisk zobowiązania ma znaczenie tylko wtedy, gdy został opublikowany **przed** losowaniem, w miejscu z datą i godziną — w poście, komentarzu, wiadomości.

Na tym właśnie polega sens etapu zobowiązania: zamienia „zaufaj mi” w coś, co każdy może później sprawdzić.

## Przeprowadzanie losowania, które można zweryfikować

1. Ustaw zakres i liczbę potrzebnych liczb.
2. Naciśnij **Utwórz odcisk zobowiązania**. Opublikuj otrzymany skrót — w poście z konkursem, w komentarzu, wszędzie tam, gdzie uczestnicy zobaczą go z datą i godziną.
3. Zamknij zgłoszenia, a następnie wylosuj.
4. Opublikuj ziarno i certyfikat. Każdy może wkleić go tutaj.

Pominięcie kroku 2 sprawia, że certyfikat jest jedynie dekoracją. To opublikowanie odcisku zobowiązania jako pierwsze nadaje mu wagę.

## Dlaczego samo ziarno nie wystarczy

Ziarno to zwykły tekst. Daje liczby dopiero wtedy, gdy wiadomo, jak zostało przekształcone w liczby — jaki algorytm, jaki zakres, ile liczb, czy dopuszczono powtórzenia.

Dlatego odcisk zobowiązania obejmuje zarówno ziarno, **jak i** ustawienia. Bez tego organizator mógłby opublikować ziarno, a potem twierdzić, że losowanie przebiegło w innym zakresie i że prawdziwym wynikiem był inny zestaw liczb. Zobowiązanie zamyka tę furtkę.

## Dlaczego odcisku nie da się sfałszować

Skrót SHA-256 jest funkcją jednokierunkową: łatwo policzyć go w przód, a nie ma znanego sposobu, by odwrócić ten proces. To właśnie czyni zobowiązanie wiążącym.

Aby oszukać, organizator musiałby opublikować jeden odcisk, a później ujawnić *inne* ziarno, które daje ten sam skrót — atak drugiego przeciwobrazu (second-preimage attack). Nikt nie znalazł takiego ataku na SHA-256, a przestrzeń poszukiwań sprawia, że brutalne przeszukiwanie nie ma sensu: 2²⁵⁶ to więcej niż szacowana liczba atomów w obserwowalnym wszechświecie.

Organizator nie może też delikatnie skierować wyniku we własną stronę. Zmiana jednego znaku w ziarnie zmienia mniej więcej połowę bitów skrótu, w sposób nieprzewidywalny. Nie da się znaleźć ziarna, które jednocześnie pasuje do opublikowanego odcisku i daje wygodnego zwycięzcę, bo trzeba by najpierw ustalić skrót, a skrót zależy od wszystkiego naraz.

Odcisk zobowiązania jednoznacznie ustala więc ziarno i ustawienia. Jedyne, czego nie ustala, to *kiedy* został opublikowany — dlatego znacznik czasu przy Twoim wpisie odpowiada za drugą połowę tej roboty.

## Gdzie liczy się losowanie, które da się zweryfikować

- **Konkursy i loterie** — pytają o to ci, którzy nie wygrali
- **Wybór w społeczności i DAO** — kto dostaje miejsce, grant, rolę
- **Badania naukowe** — plan próbkowania, który recenzent może powtórzyć i potwierdzić
- **Promocje z nagrodami mające skutki prawne** — niektóre jurysdykcje wymagają metody możliwej do wykazania, a nie tylko zapewnienia
- **Wszystko, w co musi uwierzyć obcy człowiek** — im dalej sięga odbiorca, tym mniej warte jest samo „wylosowaliśmy losowo”

## Najczęściej zadawane pytania (FAQ)

### Czy ważny certyfikat oznacza, że losowanie było losowe?

Oznacza to, że losowanie *nie zostało zmienione po dokonaniu zobowiązania*. To, czy było nieprzewidywalne, zależy od momentu publikacji odcisku zobowiązania. Opublikowany przed losowaniem, publicznie, z datą i godziną — wtedy tak, organizator był związany zobowiązaniem. Opublikowany później nie dowodzi niczego w kwestii nieprzewidywalności.

### Czy mój certyfikat jest gdzieś przesyłany?

Nie. Sprawdzenie odbywa się całkowicie w Twojej przeglądarce, w JavaScript. Nic nie opuszcza Twojego urządzenia i nie ma serwera, który mógłby to zapisać.

### Co oznacza „odcisk zobowiązania się nie zgadza"?

Ziarno lub ustawienia w certyfikacie nie są tymi, do których dokonano zobowiązania. Ktoś edytował certyfikat albo został on wygenerowany przez inne narzędzie.

### Co oznacza „ziarno nie generuje tych liczb"?

Odcisk zobowiązania jest nienaruszony, ale lista liczb została później zmieniona. Narzędzie pokazuje liczby, które ziarno rzeczywiście generuje, więc widać różnicę.

### Czy mogę zweryfikować losowanie z innej strony?

Tylko jeśli wygenerowało certyfikat w tym formacie. Weryfikacja zależy od dokładnego algorytmu generatora — samo ziarno nic nie znaczy bez wiedzy, jak zostało przekształcone w liczby.

### Co jeśli certyfikat jest bardzo długi?

Długość zależy od liczby wylosowanych liczb, ponieważ certyfikat zawiera pełny wynik. Losowanie sześciu liczb daje krótki kod; losowanie dziesięciu tysięcy daje długi. Oba weryfikują się tak samo.

## Other languages

- Čeština (cs): [Ověření losování](https://acrafto.com/cs/verify-random-draw/) ([Markdown](https://acrafto.com/cs/verify-random-draw/index.md))
- Slovenčina (sk): [Overenie žrebovania](https://acrafto.com/sk/verify-random-draw/) ([Markdown](https://acrafto.com/sk/verify-random-draw/index.md))
- English (en): [Verify a Random Draw](https://acrafto.com/en/verify-random-draw/) ([Markdown](https://acrafto.com/en/verify-random-draw/index.md))
- Deutsch (de): [Zufallsziehung prüfen](https://acrafto.com/de/verify-random-draw/) ([Markdown](https://acrafto.com/de/verify-random-draw/index.md))
- Français (fr): [Vérifier un tirage aléatoire](https://acrafto.com/fr/verify-random-draw/) ([Markdown](https://acrafto.com/fr/verify-random-draw/index.md))
- Español (es): [Verificar un sorteo aleatorio](https://acrafto.com/es/verify-random-draw/) ([Markdown](https://acrafto.com/es/verify-random-draw/index.md))
- Italiano (it): [Verifica un'estrazione casuale](https://acrafto.com/it/verify-random-draw/) ([Markdown](https://acrafto.com/it/verify-random-draw/index.md))
- Português (pt): [Verificar sorteio aleatório](https://acrafto.com/pt/verify-random-draw/) ([Markdown](https://acrafto.com/pt/verify-random-draw/index.md))
- Nederlands (nl): [Trekking verifiëren](https://acrafto.com/nl/verify-random-draw/) ([Markdown](https://acrafto.com/nl/verify-random-draw/index.md))
- Română (ro): [Verificare extragere aleatorie](https://acrafto.com/ro/verify-random-draw/) ([Markdown](https://acrafto.com/ro/verify-random-draw/index.md))
- Magyar (hu): [Sorsolás ellenőrzése](https://acrafto.com/hu/verify-random-draw/) ([Markdown](https://acrafto.com/hu/verify-random-draw/index.md))
- Ελληνικά (el): [Επαλήθευση τυχαίας κλήρωσης](https://acrafto.com/el/verify-random-draw/) ([Markdown](https://acrafto.com/el/verify-random-draw/index.md))
- Български (bg): [Проверка на теглене](https://acrafto.com/bg/verify-random-draw/) ([Markdown](https://acrafto.com/bg/verify-random-draw/index.md))
- Hrvatski (hr): [Provjera izvlačenja](https://acrafto.com/hr/verify-random-draw/) ([Markdown](https://acrafto.com/hr/verify-random-draw/index.md))
- Slovenščina (sl): [Preverjanje žrebanja](https://acrafto.com/sl/verify-random-draw/) ([Markdown](https://acrafto.com/sl/verify-random-draw/index.md))
- Eesti (et): [Kontrolli loosimist](https://acrafto.com/et/verify-random-draw/) ([Markdown](https://acrafto.com/et/verify-random-draw/index.md))
- Latviešu (lv): [Nejaušas izlozes pārbaude](https://acrafto.com/lv/verify-random-draw/) ([Markdown](https://acrafto.com/lv/verify-random-draw/index.md))
- Lietuvių (lt): [Patikrinti traukimą](https://acrafto.com/lt/verify-random-draw/) ([Markdown](https://acrafto.com/lt/verify-random-draw/index.md))
- Svenska (sv): [Verifiera en dragning](https://acrafto.com/sv/verify-random-draw/) ([Markdown](https://acrafto.com/sv/verify-random-draw/index.md))
- Dansk (da): [Verificér en tilfældig trækning](https://acrafto.com/da/verify-random-draw/) ([Markdown](https://acrafto.com/da/verify-random-draw/index.md))
- Suomi (fi): [Arvonnan varmennus](https://acrafto.com/fi/verify-random-draw/) ([Markdown](https://acrafto.com/fi/verify-random-draw/index.md))
- Norsk (no): [Kontroller en tilfeldig trekning](https://acrafto.com/no/verify-random-draw/) ([Markdown](https://acrafto.com/no/verify-random-draw/index.md))
- Українська (uk): [Перевірка чесності жеребкування](https://acrafto.com/uk/verify-random-draw/) ([Markdown](https://acrafto.com/uk/verify-random-draw/index.md))
- Русский (ru): [Проверка честности розыгрыша](https://acrafto.com/ru/verify-random-draw/) ([Markdown](https://acrafto.com/ru/verify-random-draw/index.md))
- Српски (sr): [Provera nasumičnog izvlačenja](https://acrafto.com/sr/verify-random-draw/) ([Markdown](https://acrafto.com/sr/verify-random-draw/index.md))
- Македонски (mk): [Провери случајно извлекување](https://acrafto.com/mk/verify-random-draw/) ([Markdown](https://acrafto.com/mk/verify-random-draw/index.md))
- Bosanski (bs): [Provjera nasumičnog izvlačenja](https://acrafto.com/bs/verify-random-draw/) ([Markdown](https://acrafto.com/bs/verify-random-draw/index.md))
- Shqip (sq): [Verifiko shortin](https://acrafto.com/sq/verify-random-draw/) ([Markdown](https://acrafto.com/sq/verify-random-draw/index.md))
- Türkçe (tr): [Rastgele çekilişi doğrula](https://acrafto.com/tr/verify-random-draw/) ([Markdown](https://acrafto.com/tr/verify-random-draw/index.md))
- 日本語 (ja): [ランダム抽選の検証](https://acrafto.com/ja/verify-random-draw/) ([Markdown](https://acrafto.com/ja/verify-random-draw/index.md))
- 한국어 (ko): [추첨 검증 도구](https://acrafto.com/ko/verify-random-draw/) ([Markdown](https://acrafto.com/ko/verify-random-draw/index.md))
- العربية (ar): [التحقق من السحب العشوائي](https://acrafto.com/ar/verify-random-draw/) ([Markdown](https://acrafto.com/ar/verify-random-draw/index.md))
- हिन्दी (hi): [रैंडम ड्रॉ सत्यापित करें](https://acrafto.com/hi/verify-random-draw/) ([Markdown](https://acrafto.com/hi/verify-random-draw/index.md))
- Bahasa Indonesia (id): [Verifikasi undian acak](https://acrafto.com/id/verify-random-draw/) ([Markdown](https://acrafto.com/id/verify-random-draw/index.md))
- Tiếng Việt (vi): [Xác minh lượt quay ngẫu nhiên](https://acrafto.com/vi/verify-random-draw/) ([Markdown](https://acrafto.com/vi/verify-random-draw/index.md))
- ไทย (th): [ตรวจสอบผลการสุ่ม](https://acrafto.com/th/verify-random-draw/) ([Markdown](https://acrafto.com/th/verify-random-draw/index.md))
- עברית (he): [אימות הגרלה אקראית](https://acrafto.com/he/verify-random-draw/) ([Markdown](https://acrafto.com/he/verify-random-draw/index.md))
