Provably Fair
공정성 검증 · [테스트] 용사 모집 체험판 2 (이미지·새 연출)
이 세트의 배정표(어느 번호에 어느 등급이 들어 있는지)는 판매 시작 전에 확정되었고, 그 해시가 아래에 공개되어 있습니다. 완판되면 시드와 배정표 원본이 공개되며, 누구나 브라우저에서 해시를 다시 계산해 일치하는지 확인할 수 있습니다.
커밋 해시 (판매 전 공개)
23503a16cb2a11488e197690c7c2b6c7540c853c37c5341224a487ec7f92bfb4
세트 생성 2026-09-21 16:07:33 · 판매 시작 2026-09-21 16:07:33 · 완판 2026-09-21 16:26:27
상품 구성
| 인덱스 | 등급 | 상품 | 수량 |
|---|---|---|---|
| 0 | A상 | 미도리야 이즈쿠 & 올마이트 MASTERLISE PLUS | 1 |
| 1 | B상 | 바쿠고 카츠키 MASTERLISE | 2 |
| 2 | C상 | 아이자와 쇼타 MASTERLISE | 5 |
| 3 | D상 | 네즈 교장 MASTERLISE | 8 |
| 4 | E상 | 이즈쿠 : 오리진 MASTERLISE | 14 |
시드 (완판 후 공개)
b8d78de9a7f66ed7086968a571df1fb9938c45b56ef6587250d145fb9a2b8f57
배정표
종이 1번부터 순서대로, 위 상품 구성 표의 인덱스입니다.
3,3,4,1,2,4,2,4,2,1,3,4,3,4,4,4,2,2,3,3,4,4,0,3,4,3,4,4,4,4
브라우저에서 직접 검증
① SHA-256(시드 + "|" + 배정표) 가 커밋 해시와 같은지, ② 시드로 결정적 셔플을 다시 돌렸을 때 같은 배정표가 나오는지 두 가지를 확인합니다.
알고리즘
base = 등급 인덱스를 수량만큼 나열 [0,0,1,1,1,2,...]
for i = N-1 down to 1:
h = sha256_hex(seed + ":" + i)
r = parseInt(h[0..8], 16) / 2^32
j = floor(r * (i+1))
swap(base[i], base[j])
assignment = base
commit = sha256_hex(seed + "|" + assignment.join(","))
