Випадковий генератор - Числа, розіграші, кубики та ідентифікатори з CSPRNG браузера | POLPROG Перейти до вмісту

Випадковий генератор

Числа, розіграші, кубики та ідентифікатори з CSPRNG браузера

Криптографічна випадковість, без зсуву від модуля, згенерована в браузері

Інструмент Web
Офіційна сторінка продукту Видавець: POLPROG
Офіційна сторінка продукту
4
Види розіграшу
0
Викликів Math.random
122
Бітів у UUID v4
0
Надісланих байтів
01Випадковий генератор

Про застосунок

Чотири панелі, одне джерело випадковості. Числа з діапазону, з повторами або без. Вставлений список: перемішаний, розіграний або поділений на команди. Кубики у стандартному записі та підкидання монети з підсумком. UUID, випадкові байти й токени.

Використовується crypto.getRandomValues, а не Math.random. Math.random швидкий, має зерно й піддається відтворенню: за жменькою виходів визначають його стан і передбачають решту. У грі в кості це нікого не турбує. Для розіграшу, який хтось може оскаржити, або для ідентифікатора, який має бути невгадуваним, це неправильний інструмент, а змішувати обидва означало б лишити одну частину генератора тихо слабшою за решту.

Числа рівномірні, і це складніше, ніж звучить. Узяти випадкове значення за модулем розміру діапазону означає віддавати перевагу нижньому кінцю щоразу, коли діапазон не ділить джерело порівну: з одним байтом і сотнею учасників перші пʼятдесят шість у півтора раза ймовірніші за решту. Цей рушій відкидає значення, які це спричинили б, і тягне ще раз, тож кожен результат має точнісінько однаковий шанс. Перемішування з тієї самої причини є алгоритмом Фішера-Єйтса.

Інструмент не веде історії, не зберігає списку й не використовує локальне сховище. Список учасників - не налаштування, тож він зникає із закриттям вкладки.

02Застосування

Що це розвʼязує

Проблема
  • Більшість онлайнових розіграшів працюють на Math.random, який має зерно й передбачуваний, і жоден із них про це не каже
  • Список учасників, вставлений у вебсторінку, це персональні дані, а більшість інструментів надсилає його на сервер, щоб провести розіграш
  • Зсув від модуля робить нижній край діапазону ймовірнішим у коді, який майже кожен пише першим
Результат
  • Кожен розіграш походить із криптографічного генератора браузера, а значення, що спричиняють зсув, відкидаються, а не враховуються
  • Ваш список, ваші числа та результат залишаються у вкладці
  • Скопіюйте або завантажте результат: записом є той файл, бо розіграш, який можна повторити, це розіграш, який можна влаштувати
Для кого
  • Кожен, хто проводить конкурс, лотерею чи розіграш у класі
  • Учителі та організатори, які ділять список на команди або визначають порядок
  • Розробники, яким потрібні UUID, токени, випадкові байти або тестові дані
03Ключові можливості

Ключові можливості

Найважливіші можливості з практичними поясненнями.

Числа, з повторами або без

Цілі або десяткові числа, будь-який діапазон аж до меж точної цілочислової арифметики, до десяти тисяч за раз, відсортовані або в порядку розіграшу. Без повторів це прапорець, а прохання про більше різних чисел, ніж вміщує діапазон, відхиляється, а не наближається.

Розіграти, перемішати або поділити на групи

Вставте список і витягніть переможців без повернення, перемішайте все у порядок виступів або роздайте у команди, розміри яких різняться щонайбільше на одиницю. Повторені рядки можна обʼєднати, і інструмент каже, скільки не розіграно.

Кубики у стандартному записі

3d6, d20, 2d10+5. Видно кожен кубик, а не лише суму, бо кидок, частин якого не видно, це просто число, яке треба взяти на віру. Підкидання монети йдуть із підсумком, і саме він робить серію з девʼяти орлів схожою на арифметику, а не на помилку.

UUID і токени

UUID v4 для чистої випадковості, UUID v7 там, де ідентифікатор має сортуватися за часом створення, випадкові байти шістнадцятково та токени над шістьма абетками, зокрема безпечною в URL і такою, з якої прибрано символи, що їх плутають.

Ентропія, названа вголос

Кожне налаштування токена показує, скільки бітів воно варте, бо 24 символи це 144 біти в base64url і 80 на самих цифрах, і жоден інтерфейс інакше цього не каже. Це єдиний чесний спосіб порівняти два налаштування.

Навмисно не генератор паролів

Немає індикатора сили й немає опції легкого запамʼятовування. Пароль, що приходить із вебсторінки, мав би створити й зберегти ваш менеджер паролів; панель токенів призначена для ключів API, промокодів, тестових даних та ідентифікаторів.

04Завантажити

Доступ до продукту

Зрозумілий шлях від офіційного джерела до першого успішного використання.

Виберіть потрібну платформу

Скористайтеся одним з офіційних посилань для свого пристрою або браузера.

Установіть або відкрийте

Дотримуйтеся інструкцій магазину або відкрийте вебзастосунок. Без сторонніх інсталяторів.

Налаштуйте та почніть

Перегляньте параметри, виберіть уподобання та почніть з основного робочого процесу.

Офіційні варіанти доступу
05Технології

Технології продукту

Прозорий огляд основних технологій, використаних для створення та підтримки продукту.

JavaScript
06Безпека

Конфіденційність і безпека

Ваші дані завжди залишаються на вашому пристрої.

Нічого не надсилається
Розігрується у вашому браузері
Нічого не зберігається, навіть локально
Жодного облікового запису