랜덤 뽑기

도구 소개

랜덤 뽑기 · 추첨기란

랜덤 뽑기(추첨기)는 후보 항목 여러 개 중 하나를 무작위로 골라 주는 도구입니다. 점심 메뉴, 발표 순서, 벌칙 당첨자처럼 모두가 납득할 수 있는 공정한 결정이 필요할 때 가장 많이 쓰입니다. 가위바위보나 제비뽑기보다 빠르고, 참가자 수에 상관없이 동일한 확률이 보장됩니다.

이 도구는 별도 설치나 가입 없이 브라우저에서 바로 작동합니다. 항목을 입력하고 뽑기 버튼을 누르면 각 항목이 동일한 당첨 확률(1 ÷ 항목 수)로 무작위 선택됩니다. 결과는 서버에 저장되지 않아 개인정보 걱정이 없습니다.

사용 방법

랜덤 뽑기 사용하는 법

  1. 항목 입력 — 뽑을 후보를 칸에 입력합니다. Enter 키를 누르면 다음 칸으로 넘어가고, 마지막 칸에서 Enter를 누르면 새 항목이 자동으로 추가됩니다.
  2. 항목 수 조정 — '항목 추가' 버튼으로 늘리거나, 항목 오른쪽 X 버튼으로 삭제합니다. 빈 칸은 자동 제외되므로 비워 두기만 해도 됩니다.
  3. 뽑기 — 항목이 2개 이상이면 '뽑기!' 버튼이 활성화됩니다. 클릭하면 짧은 애니메이션 후 당첨 항목이 표시됩니다.
  4. 재추첨 — 결과가 마음에 들지 않으면 뽑기 버튼을 다시 누르면 됩니다. 각 추첨은 독립 시행이므로, 이전 결과가 다음 결과에 영향을 주지 않습니다.
실사용 예시

이런 상황에서 씁니다

  • 점심 메뉴 결정 — 팀원들이 원하는 식당 후보를 모아 넣고 뽑으면 선택 장애를 한 번에 해결합니다. 5개 중 하나를 고르면 각 가게가 선택될 확률은 20%로 동일합니다.
  • 발표·발언 순서 정하기 — 참가자 이름을 모두 입력하고, 뽑힌 사람을 지운 뒤 다시 뽑는 방식을 반복하면 1번·2번·3번 순서가 차례로 결정됩니다. 사회자가 개입할 여지가 없어 공정성 시비가 없습니다.
  • 팀 나누기 — 'A팀', 'B팀' 두 항목만 넣고 참가자마다 한 번씩 뽑으면 무작위로 팀이 배정됩니다. 짝수 인원이라면 절반씩 배정될 때까지 진행하세요.
  • 소규모 경품 추첨 — 사내 이벤트나 소셜 미디어 이벤트 당첨자를 정할 때 참가자 이름을 넣고 뽑기 화면을 화면 녹화하면 공정성을 시각적으로 남길 수 있습니다.
  • 벌칙·당번 정하기 — 청소 당번, 커피 사기 내기, 모임 장소 예약 담당자처럼 아무도 먼저 나서기 어려운 역할을 정할 때 유용합니다.
공정성·난수 원리

이 도구의 난수 방식과 공정성 근거

이 도구는 브라우저 내장 Math.random() 함수를 사용합니다. 크롬(V8)·사파리(JavaScriptCore)· 파이어폭스(SpiderMonkey) 모두 xorshift128+ 계열의 의사난수 생성기(PRNG)를 씁니다. 어떤 항목이든 뽑힐 확률이 같도록 고르게 퍼지므로 일상 추첨에는 충분히 공정합니다.

의사난수(PRNG)와 암호학적 난수(CSPRNG)의 차이는 예측 가능성에 있습니다. Math.random은 출력을 여러 개 관찰하면 내부 상태를 역산할 수 있고, 그러면 이후 값이 그대로 드러나므로 보안 용도에는 부적합합니다. 반면 브라우저의 crypto.getRandomValues() API는 CPU 타이밍, 마우스 이동 등 환경 노이즈를 시드로 삼는 CSPRNG로, 예측이 현실적으로 불가능합니다. 복권·보안 토큰·유료 쿠폰 추첨처럼 외부 공격자가 결과를 예측해 이득을 볼 수 있는 상황에서는 반드시 서버 사이드에서 CSPRNG를 써야 합니다.

이 도구에서 모든 항목의 확률은 1 ÷ (항목 수)로 동일합니다. 예를 들어 후보가 5명이면 각자 20%, 10명이면 각자 10%입니다. 같은 항목을 두 번 넣으면 그 항목의 당첨 확률이 두 배가 되므로, 가중 추첨이 필요할 때 활용할 수 있습니다.

경품 추첨 팁

공정성을 기록에 남기는 방법

금전이나 경품이 걸린 추첨이라면 결과를 사후에 입증할 수 있도록 준비해야 합니다. 아래 방법을 추천합니다.

  • 화면 녹화 — 추첨 시작 전 항목 목록이 보이는 상태부터 녹화를 시작해, 뽑기 버튼 클릭과 최종 결과까지 한 화면에 담습니다. OBS, 맥 QuickTime, 윈도우 Xbox Game Bar(Win+G)로 무료로 녹화할 수 있습니다.
  • 참가자 명단 사전 공개 — 추첨 전 참가자 전체 명단을 공개 채널(단체 채팅방, 게시글 댓글 등)에 올린 뒤 추첨합니다. 명단 공개 시각과 추첨 녹화를 함께 두면 나중에 "내 이름이 빠졌다"는 이의를 방어할 수 있습니다.
  • 재현 가능성 확보(시드 고정) — 재현 가능성이 중요한 경우, 별도 라이브러리로 시드를 고정(Seedable PRNG)한 뒤 같은 시드로 같은 결과가 나오는지 제3자가 검증하도록 코드를 공개하는 방법도 있습니다. 이 도구는 브라우저 내장 난수를 쓰므로 시드 고정은 지원하지 않습니다.
  • 대규모·법적 효력 필요 추첨 — 공증인 입회, 전문 추첨 소프트웨어(정부24 전자추첨 시스템, 복권위원회 시스템 등) 이용을 권장합니다. 이 도구는 법적 효력을 보장하지 않습니다.
주의사항

랜덤 뽑기 사용 시 유의점

  • 독립 추첨 — 매번 뽑기는 이전 결과와 무관합니다. 같은 항목이 연달아 당첨될 수 있으며, 이는 통계적으로 정상입니다. 10번 뽑았을 때 특정 항목이 한 번도 안 나왔다고 확률이 더 높아지지는 않습니다(도박사의 오류).
  • 결과 비저장 — 뽑기 결과는 브라우저 메모리에만 존재합니다. 페이지를 닫거나 새로 고침하면 사라지므로 중요한 결과는 바로 캡처해 두세요.
  • 중복 항목 — 같은 이름을 여러 번 입력하면 그 이름의 당첨 가능성이 비례해서 높아집니다. 공정한 추첨을 원한다면 중복 없이 입력하세요.
  • 법적 효력 — 이 도구는 재미와 편의 목적의 무료 서비스입니다. 법적 구속력이 필요한 추첨(경매, 공공기관 선발, 사업권 배분 등)에는 사용하지 마세요.
자주 묻는 질문

FAQ

랜덤 뽑기 결과가 정말 공정한가요?

이 도구는 브라우저 내장 난수 생성기(Math.random)를 사용합니다. Math.random은 XorShift128+ 계열의 의사난수(PRNG) 알고리즘으로(크롬·엣지 기준 V8 엔진 구현), 항목마다 뽑힐 확률이 같으므로 10명 이하의 일상 추첨에는 충분히 공정합니다. 시드는 페이지를 열 때 한 번 정해지고 이후 값들이 그 시드에서 차례로 나오지만, 각 뽑기는 앞선 결과를 참고하지 않는 독립 시행이라 같은 항목이 연달아 나올 수 있습니다. 다만 PRNG는 출력을 여러 번 관찰하면 내부 상태를 역산할 수 있어 예측을 막아야 하는 용도에는 맞지 않습니다. 상금이 걸린 추첨처럼 조작·예측 시도가 우려되는 경우에는 Web Cryptography API(crypto.getRandomValues)를 쓰는 전문 도구를 권장합니다.

경품 추첨에 이 도구를 쓸 수 있나요? 나중에 증명하려면 어떻게 해야 하나요?

소규모 사내 이벤트나 친목 모임에는 사용하기에 충분합니다. 다만 공정성을 나중에 입증해야 할 상황이라면 추첨 화면을 처음부터 끝까지 화면 녹화하고, 추첨 전 참가자 명단을 모두에게 공개한 상태로 진행하세요. 녹화 영상에 항목 목록, 뽑기 버튼 클릭, 결과가 모두 담겨 있으면 사후 이의제기를 줄일 수 있습니다. 상금 규모가 크거나 법적 효력이 필요한 추첨은 공증인 입회 또는 별도의 추첨 소프트웨어를 사용하세요.

팀 나누기나 발표 순서 정하기에도 쓸 수 있나요?

네, 충분히 활용할 수 있습니다. 발표 순서를 정할 때는 참가자 이름을 모두 입력하고 한 번 뽑은 뒤 그 항목을 지우고 다시 뽑으면 1등·2등 순서가 차례로 정해집니다. 팀 나누기는 팀 이름(A팀, B팀)을 넣고 참가자마다 한 번씩 뽑는 방식으로 배분할 수 있습니다. 참가자 수가 20명 이상이라면 엑셀 RAND 함수나 전용 팀 배분 도구를 쓰면 더 편리합니다.

Math.random(일반 난수)과 crypto.getRandomValues(암호학적 난수)의 차이는 무엇인가요?

Math.random은 결정론적 의사난수(PRNG) 방식이라 시드값이 같으면 동일한 순열이 반복될 수 있습니다. 반면 crypto.getRandomValues는 운영체제의 엔트로피 소스(CPU 타이밍, 마우스 이동 등)를 활용한 암호학적으로 안전한 난수(CSPRNG)로, 복권 시스템·보안 토큰 생성에 쓰입니다. 일반 추첨의 경우 Math.random도 충분하지만, 해킹 시도로 결과를 예측당하면 안 되는 상황(상금이 큰 경품, 유료 서비스 쿠폰 등)에서는 반드시 CSPRNG를 쓰는 서버 사이드 로직이 필요합니다.

항목을 몇 개까지 넣을 수 있나요? 빈 칸은 어떻게 처리되나요?

최소 2개 이상 입력해야 뽑기가 활성화되며, 항목 추가 버튼으로 원하는 만큼 늘릴 수 있습니다. 내용이 비어 있는 칸은 자동으로 후보에서 제외되므로, 항목 수를 줄이고 싶다면 칸을 비워 두기만 해도 됩니다. 중복 이름을 여러 번 넣으면 그만큼 당첨 확률이 높아지니, 가중 추첨이 필요한 경우 활용할 수 있습니다.

뽑기 결과가 저장되나요? 여러 번 뽑은 기록을 볼 수 있나요?

이 도구는 서버에 아무것도 저장하지 않습니다. 결과는 화면에서만 보이며, 새로 뽑거나 페이지를 새로 고침하면 초기화됩니다. 여러 번의 결과를 기록하고 싶다면 화면을 스크린샷하거나 메모장에 따로 적어 두세요. 개인정보 수집이 없으므로 로그인 없이 바로 쓸 수 있습니다.

관련 도구

함께 보면 좋은 도구

재미와 편의를 위한 무작위 추첨 도구입니다. 금전이 걸린 공식 추첨이나 법적 효력이 필요한 결정에는 사용하지 마세요. 브라우저 Math.random 기반이며, 결과는 서버에 저장되지 않습니다.