추첨 검증 도구

Acrafto Team 보안
업데이트

확인하려면 인증서 코드를 붙여넣으세요.

모든 처리는 브라우저 안에서 이루어집니다. 숫자는 기기 밖으로 나가지 않습니다.

이 도구가 확인하는 것

누군가 추첨을 진행하고 인증서 코드를 전달했습니다. 이 페이지는 그 코드가 내부적으로 일관된지 알려줍니다 — 숫자가 정말로 주최자가 공개한 시드에서 나왔는지, 그리고 지문이 정말로 그 시드와 설정을 포함하는지 확인합니다.

모든 과정은 브라우저 안에서 실행됩니다. 인증서는 어디로도 전송되지 않습니다.

두 가지 검증

지문. 인증서에는 시드와 추첨 설정에 대한 SHA-256 해시가 담겨 있습니다. 이 페이지는 그 해시를 다시 계산합니다. 인증서에 저장된 값과 일치하지 않으면, 공약 이후에 시드나 설정이 변경된 것입니다.

재현. 시드 기반 생성기는 완전히 결정적이므로, 같은 시드와 같은 설정은 항상 같은 숫자를 만들어냅니다. 이 페이지는 추첨을 다시 실행해 비교합니다. 숫자가 다르면 결과가 수정된 것입니다.

인증서는 두 검증을 모두 통과해야 합니다.

검증 통과가 증명하는 것과 증명하지 않는 것

주최자가 공약 이후에 시드, 설정, 숫자를 몰래 바꾸지 않았다는 것을 증명합니다.

시드가 예측 불가능했다는 것은 증명하지 않습니다. 주최자가 직접 시드를 고르고 추첨 전에 지문을 공개하지 않았다면, 여러 시드를 시도해 보고 마음에 드는 결과만 남겼을 수도 있습니다. 지문은 추첨 전에, 시간이 기록되는 곳 — 게시글, 댓글, 메시지 — 에 공개되었을 때만 의미가 있습니다.

바로 이것이 공약 단계의 핵심입니다. “저를 믿으세요”를 나중에 누구나 확인할 수 있는 것으로 바꿔줍니다.

누구나 검증할 수 있는 추첨 진행 방법

  1. 범위와 필요한 숫자 개수를 설정하세요.
  2. 지문 생성을 누르세요. 얻은 해시를 공개하세요 — 이벤트 게시글이나 댓글 등 참가자가 시간 기록과 함께 볼 수 있는 곳이면 됩니다.
  3. 참가 접수를 마감한 뒤 추첨하세요.
  4. 시드와 인증서를 공개하세요. 누구나 여기에 붙여넣어 확인할 수 있습니다.

2단계를 건너뛰면 인증서는 장식일 뿐입니다. 지문을 먼저 공개하는 것이 인증서에 무게를 실어줍니다.

시드만으로는 충분하지 않은 이유

시드는 단지 텍스트일 뿐입니다. 그것이 어떻게 숫자로 확장되었는지 — 어떤 알고리즘, 어떤 범위, 몇 개의 숫자, 중복 허용 여부 — 를 알아야만 숫자를 만들어낼 수 있습니다.

그래서 지문은 시드와 설정을 함께 포함합니다. 그렇지 않다면 주최자가 시드를 공개한 뒤, 사실 다른 범위로 추첨을 진행했고 다른 숫자 집합이 진짜 결과였다고 나중에 주장할 수 있습니다. 공약은 그런 여지를 막아줍니다.

왜 지문은 위조할 수 없는가

SHA-256 해시는 한 방향으로만 작동하는 함수입니다 — 앞으로 계산하기는 쉽지만, 거꾸로 되돌리는 방법은 알려져 있지 않습니다. 이 때문에 공약이 구속력을 가집니다.

속이려면 주최자는 지문 하나를 공개한 뒤, 나중에 같은 해시를 만들어내는 다른 시드를 공개해야 합니다 — 이른바 2차 역상 공격(second-preimage attack)입니다. SHA-256을 상대로 이를 찾아낸 사례는 아직 없으며, 탐색 공간 자체가 무차별 대입을 무의미하게 만듭니다. 2²⁵⁶은 관측 가능한 우주에 있는 원자 수의 추정치보다도 큽니다.

주최자가 할 수 없는 또 하나는 결과를 슬쩍 유리하게 바꾸는 것입니다. 시드의 글자 하나를 바꾸면 해시 비트의 절반가량이 예측 불가능하게 바뀝니다. 공개된 지문과 일치하면서 동시에 원하는 당첨자가 나오는 시드를 찾을 방법은 없습니다 — 해시를 먼저 고정해야 하는데, 그 해시는 모든 것에 의존하기 때문입니다.

즉 지문은 시드와 설정을 완전히 고정합니다. 지문이 고정하지 못하는 단 하나는 그것이 언제 공개되었는가입니다 — 그래서 게시물에 남는 시간 기록이 그 역할의 절반을 대신하는 것입니다.

검증 가능한 추첨이 중요한 경우

  • 경품 이벤트와 공모전 — 당첨되지 못한 참가자가 가장 먼저 캐묻는 사람들입니다
  • 커뮤니티와 DAO 선정 — 자리, 보조금, 역할을 누구에게 줄지 정할 때
  • 연구 — 검토자가 다시 실행해 확인할 수 있는 표본 추출 계획
  • 법적 책임이 따르는 경품 프로모션 — 일부 국가·지역은 단순한 주장이 아니라 입증 가능한 방법을 요구합니다
  • 낯선 사람이 믿어야 하는 모든 경우 — 대상이 멀어질수록 “무작위로 뽑았습니다”라는 말 자체의 가치는 줄어듭니다

자주 묻는 질문 (FAQ)

인증서가 유효하면 추첨이 무작위였다는 뜻인가요? 그것은 추첨이 공약 이후에 변경되지 않았다는 뜻입니다. 예측 불가능했는지는 지문이 언제 공개되었는지에 달려 있습니다. 추첨 전에, 공개적으로, 시간 기록과 함께 공개되었다면 주최자는 그 결과에 묶인 것입니다. 추첨 후에 공개되었다면 예측 가능성에 대해서는 아무것도 증명하지 못합니다.
제 인증서가 어딘가에 업로드되나요? 아니요. 검증은 전적으로 브라우저 안에서 자바스크립트로 실행됩니다. 어떤 것도 기기 밖으로 나가지 않으며, 이를 기록할 서버도 없습니다.
"지문이 일치하지 않습니다"는 무슨 뜻인가요? 인증서에 담긴 시드나 설정이 공약했던 것과 다릅니다. 누군가 인증서를 수정했거나, 다른 도구로 생성된 것입니다.
"시드로는 이 숫자가 나오지 않습니다"는 무슨 뜻인가요? 지문은 온전하지만, 숫자 목록이 나중에 변경되었습니다. 이 도구는 시드가 실제로 만들어내는 숫자를 보여주므로 차이를 확인할 수 있습니다.
다른 웹사이트의 추첨도 검증할 수 있나요? 이 형식으로 인증서가 생성된 경우에만 가능합니다. 검증은 정확한 생성기 알고리즘에 의존합니다 — 시드가 어떻게 숫자로 확장되었는지 모르면 시드만으로는 의미가 없습니다.
인증서가 매우 길면 어떻게 되나요? 길이는 추첨된 숫자 개수에 따라 달라집니다. 인증서가 전체 결과를 담고 있기 때문입니다. 숫자 6개를 추첨하면 짧은 코드가, 만 개를 추첨하면 긴 코드가 나옵니다. 둘 다 같은 방식으로 검증됩니다.

이 페이지를 친구들과 공유하거나, 북마크하거나, 링크해 주시면 감사하겠습니다. 감사합니다! 🙏