난수 생성기이란?
랜덤 숫자 생성기는 기기의 암호화 엔진을 활용하여 무작위 숫자를 만들어 냅니다. 범위를 설정하고 복권, 게임, 통계 표본 추출, 의사결정 등에 활용할 수 있는 숫자를 생성하세요.
최솟값과 최댓값을 정하고, 필요한 개수(한 번에 최대 1,000개)를 선택한 뒤 중복 허용 여부를 결정하세요. 정수 모드와 소수 모드를 전환할 수 있고, 정수 추첨은 홀수만 또는 짝수만으로 좁힐 수 있으며, 특정 숫자를 제외하거나 결과를 일반 텍스트 파일로 복사·다운로드할 수 있습니다. 난수는 crypto.getRandomValues에서 가져옵니다. 운영체제가 제공하는 암호학적 난수 소스이자 TLS 키 시드를 만드는 데 쓰는 바로 그 소스이므로, 매 추첨이 정말 예측 불가능합니다. Math.random처럼 반복되는 흐름이 아닙니다.
사용 방법
- 1단계 — 범위의 최솟값과 최댓값을 설정하세요.
- 2단계 — 한 번에 생성할 난수의 개수를 선택하세요.
- 3단계 — 생성 버튼을 클릭하고 결과를 복사하세요. 언제든 새로운 숫자를 다시 생성할 수 있습니다.
사용 시기
- 1~49 또는 1~69 범위에서 로또나 사내 추첨 번호를 뽑을 때.
- 실제 고객 데이터를 쓰지 않고 4자리 PIN이나 6자리 코드를 테스트용으로 만들 때.
- 각 행에 고유한 정수 키가 있는 데이터셋에서 통계 표본 ID를 고를 때.
결과
매주 로또 번호 선택을 위해 1부터 49 사이의 중복 없는 난수 6개를 생성해 보세요.
자주 묻는 질문
- 정말 무작위인가요, 아니면 의사 난수를 섞은 건가요?
- crypto.getRandomValues를 사용해 운영체제의 암호학적 안전 난수 생성기(CSPRNG)에서 엔트로피를 가져옵니다. TLS 키를 시드할 때와 같은 원천이며, 결정론적인 Math.random보다 훨씬 강력합니다.
- '고유 숫자만'과 '중복 허용'의 차이는?
- 고유 모드에서는 뽑힌 숫자를 풀에서 제거하므로 같은 결과 안에서 값이 겹치지 않습니다 — 로또에 알맞습니다. 끄면 매 추출이 독립적이라 중복이 가능합니다 — 주사위 굴리기나 복원 표본추출에 적합합니다.
- 사용할 수 있는 가장 큰 숫자 범위는 얼마인가요?
- 최솟값과 최댓값 모두 JavaScript가 정확히 표현할 수 있는 정수(약 −9×10¹⁵ ~ 9×10¹⁵)를 받습니다. 다만 그 규모에서는 입력 필드를 다루기 번거로워, 수십억이 넘는 범위에서는 자릿수를 신중히 입력하세요.
- 어떤 범위에서는 고유 모드가 오류를 내는데 이유가 뭔가요?
- 1~5 범위에서 서로 다른 10개를 뽑는 것은 불가능합니다 — 값이 모자라기 때문입니다. 도구가 이 경우를 막고 알려 줍니다. 범위를 넓히거나, 수량을 줄이거나, 고유 모드를 끄세요.
- 이 숫자를 보안에 민감한 용도로 써도 되나요?
- 이벤트 추첨, 테스트용 PIN, PIN 스타일 코드처럼 가벼운 용도라면 충분합니다. 난수 소스가 암호학적이기 때문입니다. 다만 실제 비밀번호나 암호화 키는 길이와 문자 종류를 제대로 다루는 비밀번호 관리자에서 만드세요. 이 도구는 정수 또는 고정 자리의 소수만 출력하며, 문자열이나 영숫자 혼합 값은 만들지 않습니다.