제비 › 뽑기 가이드 › 확률

컴퓨터의 랜덤은 정말 랜덤일까, 난수 이야기

2026년 10월 27일 · 제비 편집팀

모니터 속 숫자들이 무작위로 흩어지고 옆에 주사위와 용암 램프가 놓인 그림

온라인 뽑기를 쓰다 보면 한 번쯤 이런 의문이 듭니다. 컴퓨터는 입력한 대로만 계산하는 기계인데, 어떻게 아무도 예측할 수 없는 결과를 만들어 낼 수 있을까. 실제로 컴퓨터는 혼자서는 진짜 무작위를 만들지 못합니다. 그래서 컴퓨터 과학자들은 오랫동안 무작위처럼 보이는 숫자를 만드는 방법, 그리고 바깥 세상의 무작위를 컴퓨터 안으로 들여오는 방법을 함께 발전시켜 왔습니다. 우리가 쓰는 돌림판과 사다리, 이름 뽑기도 모두 이 기술 위에서 돌아갑니다.

계산으로 만드는 무작위, 의사난수

컴퓨터가 가장 흔하게 쓰는 난수는 의사난수입니다. 의사난수는 시작값 하나를 정해 두고, 정해진 공식으로 다음 숫자, 그다음 숫자를 계속 계산해 내는 방식입니다. 공식이 잘 만들어져 있으면 나오는 숫자들은 고르게 퍼지고 아무 규칙이 없는 것처럼 보입니다. 하지만 시작값과 공식을 알면 다음 숫자를 정확히 계산할 수 있습니다. 같은 시작값을 넣으면 매번 똑같은 숫자들이 똑같은 순서로 나오기 때문입니다.

이 성질은 단점이기도 하지만 장점이기도 합니다. 게임에서 같은 지도를 다시 만들거나, 과학 실험에서 같은 모의실험을 다시 돌려 결과를 확인할 때는 같은 숫자가 다시 나오는 것이 오히려 필요합니다. 그래서 의사난수는 게임, 통계, 시뮬레이션에서 지금도 가장 널리 쓰입니다. 웹 페이지에서 흔히 쓰는 Math.random 같은 기능도 의사난수입니다. 다만 결과를 예측할 수 없어야 하는 일, 이를테면 비밀번호를 만들거나 돈이 걸린 추첨을 할 때는 의사난수만으로는 부족합니다.

예측할 수 없어야 하는 곳, 암호용 난수

인터넷 은행에 접속하거나 메신저로 메시지를 보낼 때, 우리 기기는 매번 새로운 암호 열쇠를 만듭니다. 이 열쇠를 누군가 예측할 수 있다면 암호는 의미가 없어집니다. 그래서 운영체제는 예측할 수 없는 재료를 모아 난수를 만드는 장치를 따로 갖추고 있습니다. 키보드를 누르는 아주 미세한 시간 차이, 하드웨어가 만들어 내는 전기적 잡음, 네트워크 신호가 도착하는 시각처럼 바깥에서 들어오는 흔들림을 모아 섞고, 이것을 암호학적으로 안전한 공식에 넣어 숫자를 뽑아냅니다. 이렇게 만든 난수를 암호용 난수라고 부릅니다.

암호용 난수는 지금까지 나온 숫자를 모두 알고 있어도 다음 숫자를 맞힐 수 없도록 설계되어 있습니다. 최근의 휴대폰과 컴퓨터는 칩 안에 난수 생성 회로를 넣어 두기도 합니다. 웹 브라우저도 웹 페이지가 이 암호용 난수를 쓸 수 있도록 crypto.getRandomValues라는 기능을 제공합니다. 제비의 모든 뽑기 도구는 이 기능으로 결과를 정합니다.

용암 램프로 만드는 난수

바깥 세상의 무작위를 들여오는 방법 가운데 가장 유명한 예는 용암 램프입니다. 인터넷 보안 회사 클라우드플레어는 사무실 로비 벽에 용암 램프 수십 개를 진열해 두고, 그 앞을 카메라로 계속 찍습니다. 램프 속 덩어리가 끊임없이 움직이고, 로비를 지나가는 사람의 그림자와 빛까지 섞이니 사진 한 장 한 장은 누구도 다시 만들 수 없습니다. 이 사진에서 뽑아낸 값을 다른 난수 재료와 함께 섞어 암호 열쇠를 만드는 데 보탭니다. 용암 램프 없이도 충분히 안전하지만, 진짜 무작위를 눈으로 볼 수 있게 만든 상징적인 장치로 널리 알려졌습니다.

이 밖에도 방사성 원소가 붕괴하는 시각, 대기의 잡음, 빛 입자가 거울을 통과할지 반사될지 같은 물리 현상을 이용해 난수를 만드는 서비스들이 있습니다. 모두 컴퓨터 바깥에서 예측할 수 없는 사건을 가져온다는 점이 같습니다.

고르게 뽑는 것도 기술이다

좋은 난수가 있다고 해서 공정한 뽑기가 저절로 되는 것은 아닙니다. 난수를 원하는 범위로 바꾸는 과정에서 흔히 치우침이 생기기 때문입니다. 예를 들어 0부터 9까지 고르게 나오는 숫자를 세 사람에게 나누려고 “3으로 나눈 나머지” 를 쓰면, 0, 3, 6, 9가 나머지 0이 되어 첫 번째 사람이 네 번, 나머지 두 사람은 세 번씩 걸리게 됩니다. 범위가 클수록 이 차이는 작아지지만 사라지지는 않습니다. 그래서 제대로 만든 뽑기 도구는 나누어떨어지지 않는 남는 구간의 숫자가 나오면 버리고 다시 뽑는 방법으로 이 치우침을 없앱니다.

순서를 섞을 때도 마찬가지입니다. 이름 목록을 섞는 가장 흔한 실수는 “무작위로 정렬하기” 를 대충 구현하는 것인데, 이렇게 하면 특정 순서가 다른 순서보다 더 잘 나오는 일이 생깁니다. 맨 뒤에서부터 한 자리씩, 아직 섞지 않은 자리 가운데 하나와 맞바꾸는 피셔-예이츠 방식으로 섞어야 모든 순서가 정확히 같은 확률로 나옵니다. 제비의 랜덤 숫자 뽑기, 중복 없는 숫자 뽑기, 이름 뽑기는 모두 버리고 다시 뽑는 방식과 피셔-예이츠 섞기를 함께 씁니다.

사람이 만드는 무작위는 왜 어설플까

흥미롭게도 사람은 무작위를 만드는 데 서툽니다. 1부터 10 사이 숫자 하나를 아무거나 말해 보라고 하면 7을 고르는 사람이 유난히 많다는 실험 결과는 여러 번 반복해서 확인됐습니다. 동전 던지기 결과를 지어내 보라고 하면 앞뒤를 너무 자주 바꿔서 진짜 무작위보다 고르게 만들어 버립니다. 1이나 10처럼 끝에 있는 숫자, 5처럼 한가운데 숫자는 덜 무작위해 보인다고 느껴 피하는 경향도 있습니다. 그래서 사람이 직접 고른 번호나 순서에는 그 사람의 습관이 묻어나고, 그 습관을 아는 다른 사람은 결과를 어느 정도 짐작할 수 있습니다. 공정함이 중요한 자리에서 사람 대신 난수를 쓰는 이유가 여기에 있습니다.

뽑기 도구가 공정한지 확인하는 법

뽑기 도구가 정말 공정한지 궁금하다면 직접 많이 돌려 보는 것이 가장 쉬운 확인 방법입니다. 1부터 6 사이 숫자를 6,000번 뽑으면 각 숫자는 1,000번 안팎으로 나와야 합니다. 몇십 번 정도 차이는 자연스러운 우연이지만, 한 숫자가 계속 두 배씩 나온다면 문제가 있는 것입니다. 또 하나는 결과가 화면 밖으로 전송되는지 확인하는 것입니다. 제비의 도구는 모든 계산을 지금 쓰는 기기 안에서 하고, 입력한 이름이나 결과를 서버로 보내지 않습니다. 결과를 조작할 사람이 끼어들 틈이 없다는 뜻이기도 합니다.

난수를 책으로 팔던 시절

컴퓨터가 흔하지 않던 시절에는 무작위 숫자가 필요한 사람들이 난수표라는 책을 썼습니다. 1927년 영국의 통계학자 레너드 티펫은 인구 조사 자료에서 숫자를 뽑아 4만 개 넘는 숫자를 담은 난수표를 펴냈습니다. 통계 조사를 할 때 표본을 무작위로 고르려면 사람이 마음대로 고르지 않은 숫자 목록이 필요했기 때문입니다. 1955년에는 미국의 연구소 랜드 코퍼레이션이 전자 장치로 만든 숫자 백만 개를 담은 책 『백만 개의 난수』를 출간했습니다. 한 쪽 가득 숫자만 빼곡한 이 책은 과학자와 공학자들 사이에서 오랫동안 쓰였고, 지금은 숫자만 가득한 책이라는 이유로 재미있는 서평이 달리는 책으로도 유명합니다.

난수표를 쓰는 방법은 간단했습니다. 책의 아무 쪽이나 펴고 아무 줄에서 시작해 필요한 만큼 숫자를 차례로 읽어 나가면 됩니다. 시작점을 정하는 것조차 연필로 책장을 찍는 식으로 무작위로 정하라는 안내가 붙어 있기도 했습니다. 오늘날 휴대폰 하나로 몇 초 만에 수백만 개의 난수를 만들 수 있다는 것을 생각하면 격세지감이 느껴지는 이야기입니다.

카드 섞기와 셔플 알고리즘

난수로 할 수 있는 가장 흔한 일 가운데 하나가 순서를 섞는 것입니다. 명단을 섞어 순서를 정하거나, 카드를 섞거나, 자리를 섞는 일이 모두 여기에 해당합니다. 섞는 방법으로 가장 널리 쓰이는 것은 피셔-예이츠 셔플입니다. 1938년 통계학자 로널드 피셔와 프랭크 예이츠가 종이와 연필로 하는 방법으로 처음 소개했고, 1964년 리처드 더스텐펠드가 컴퓨터에 맞는 형태로 다듬었습니다. 원리는 간단합니다. 목록의 마지막 자리부터 시작해, 그 자리와 그 앞의 자리 가운데 하나를 무작위로 골라 서로 바꾸고, 한 칸씩 앞으로 오며 같은 일을 반복합니다. 이렇게 하면 가능한 모든 순서가 정확히 같은 확률로 나옵니다.

간단해 보여도 이 방법을 조금만 잘못 바꾸면 결과가 치우칩니다. 매번 목록 전체에서 아무 자리나 골라 바꾸는 방식은 얼핏 더 무작위처럼 보이지만, 어떤 순서는 다른 순서보다 더 자주 나옵니다. 정렬 기능에 무작위 비교를 넣어 섞는 방식도 프로그래밍에서 흔히 쓰이는 실수인데, 정렬 방법에 따라 특정 항목이 앞쪽에 몰리는 치우침이 생깁니다. 뽑기 도구를 만드는 사람에게 섞는 방법은 난수만큼이나 중요한 문제입니다.

실제 카드를 손으로 섞을 때도 비슷한 문제가 있습니다. 카드 뭉치를 반으로 나눠 엇갈리게 끼워 넣는 리플 셔플로 52장 카드를 충분히 섞으려면 일곱 번 정도는 섞어야 한다는 연구가 1992년에 발표되었습니다. 두세 번만 섞으면 처음 순서의 흔적이 꽤 남아 있다는 뜻입니다. 친구들과 카드 게임을 할 때 몇 번 대충 섞고 시작하는 경우가 많은데, 공정하게 하려면 생각보다 더 많이 섞어야 합니다.

무작위인데 왜 패턴이 보일까

진짜 무작위로 뽑은 결과를 보고도 사람들은 자주 패턴을 찾아냅니다. 음악 앱의 무작위 재생에서 같은 가수의 노래가 연달아 나오면 “무작위가 아닌 것 같다”는 불만이 나오고, 실제로 일부 음악 서비스는 같은 가수가 연달아 나오지 않도록 일부러 덜 무작위하게 섞는 방식을 도입했다고 알려져 있습니다. 진짜 무작위에서는 연속이나 뭉침이 생각보다 자주 일어나기 때문에, 사람이 무작위라고 느끼는 것과 수학적인 무작위는 다를 수 있습니다. 뽑기 결과에서 같은 사람이 두 번 연속 걸렸다고 도구를 의심하기 전에, 그런 일이 확률적으로 충분히 일어날 수 있다는 점을 떠올려 보면 좋습니다.

정리하면

컴퓨터는 혼자서는 진짜 무작위를 만들지 못하지만, 바깥 세상의 예측할 수 없는 흔들림을 모아 암호용 난수를 만들어 냅니다. 게임과 시뮬레이션에는 다시 만들 수 있는 의사난수가, 비밀번호와 추첨에는 예측할 수 없는 암호용 난수가 어울립니다. 그리고 좋은 난수를 고르게 나누고 섞는 방법까지 갖춰야 비로소 공정한 뽑기가 됩니다. 다음에 화면 속 돌림판을 돌릴 때는, 그 짧은 회전 뒤에 이런 기술들이 숨어 있다는 것을 떠올려 보세요.

자주 묻는 질문

제비의 뽑기 도구는 어떤 난수를 쓰나요?

모든 도구가 브라우저에 들어 있는 암호용 난수 생성기를 씁니다. 은행이나 보안 프로그램에 쓰이는 것과 같은 종류로, 결과를 예측하거나 조작하기 매우 어렵습니다.

같은 사람이 연달아 뽑히면 도구가 이상한 건가요?

아닙니다. 진짜 무작위에서는 같은 결과가 연달아 나오는 일이 생각보다 자주 생깁니다. 오히려 연속이 전혀 나오지 않는다면 그쪽이 무작위가 아니라는 신호일 수 있습니다.

난수를 직접 만들어 볼 수 있나요?

주사위나 동전을 여러 번 던져 기록하면 가장 간단한 난수표가 됩니다. 제비의 난수 생성기로 범위와 개수를 정해 바로 만들 수도 있습니다.

섞기 결과가 공정한지 어떻게 확인하나요?

같은 명단을 수백 번 섞어 각 사람이 첫 번째에 온 횟수를 세어 보면 됩니다. 공정한 섞기라면 모든 사람의 횟수가 비슷하게 나옵니다.

소개개인정보처리방침이용약관문의
© 2026 제비. 입력한 명단은 내 브라우저 안에서만 쓰이고 어디에도 전송되지 않아요.