1. ทุกผลมาจากตัวสร้างเลขสุ่มแบบเข้ารหัส
Spinvolta สุ่มผลด้วย crypto.getRandomValues() ตัวสร้างเลขสุ่มที่ปลอดภัยแบบเข้ารหัสซึ่งมีอยู่ในทุกเบราว์เซอร์และระบบปฏิบัติการสมัยใหม่ — แหล่งเดียวกับที่ใช้สร้างกุญแจเข้ารหัส เราไม่เคยใช้ Math.random() ตัดสินอะไรเลย (สิ่งที่เป็นแค่การตกแต่ง เช่น คอนเฟตตีปลิวไปทางไหน ใช้ได้)
2. ไม่มีความลำเอียงจากการหารเอาเศษ
เลขสุ่ม 32 บิตไม่สามารถแบ่งลงตัวเป็น 7 ตัวเลือกได้เสมอ: 4,294,967,296 หาร 7 ไม่ลงตัว วิธีง่ายๆ อย่าง number % 7 จึงทำให้บางตัวเลือกมีโอกาสมากกว่าเล็กน้อย Spinvolta ใช้การสุ่มแบบปฏิเสธ: ถ้าเลขตกในส่วนเศษที่ไม่ลงตัวที่ปลายช่วง จะทิ้งแล้วสุ่มใหม่ ทุกตัวเลือกจึงมีโอกาสเท่ากันพอดี ไม่ว่าจะมีกี่ตัวเลือก
3. น้ำหนักแม่นยำ
ในโหมดถ่วงน้ำหนัก น้ำหนักอย่าง 1, 2.5 หรือ 0.125 ถูกแปลงเป็นจำนวนเต็มบนสเกลเดียวกันแล้วบวกกันอย่างแม่นยำ การสุ่มแบบสม่ำเสมอครั้งเดียวบนผลรวมจะเลือกผู้ชนะ ตัวเลือกน้ำหนัก 2 จึงมีโอกาสเป็นสองเท่าของน้ำหนัก 1 พอดี — และขนาดช่องบนวงล้อก็แสดงโอกาสนั้น
4. หลายผู้ชนะโดยไม่ซ้ำ
โหมดหลายผู้ชนะ ทีม ลำดับสุ่ม การสับไพ่ และกิจกรรมแจกของ ใช้การสับแบบ Fisher–Yates ที่ไม่ลำเอียง (พร้อมการสุ่มแบบปฏิเสธเหมือนกัน) ทุกลำดับหรือกลุ่มผู้ชนะที่เป็นไปได้จึงมีโอกาสเท่ากัน
5. ผลก่อน ภาพเคลื่อนไหวทีหลัง
เมื่อคุณกดหมุน ผู้ชนะถูกกำหนดก่อนวงล้อขยับ จากนั้นตัวคำนวณจะหาการเคลื่อนไหว — การง้าง ความเร็ว จำนวนรอบ การโยกเบาๆ ตอนท้าย — ที่หยุดในช่องผู้ชนะพอดี ณ จุดสุ่มที่ห่างจากขอบ การปัดแรงขึ้น หมุนนานขึ้น หรือหยุดเอง เปลี่ยนแค่หน้าตาการหมุน การทดสอบอัตโนมัติของเราตรวจการหมุนแบบสุ่มนับพันครั้งเพื่อให้แน่ใจว่าภาพเคลื่อนไหวหยุดที่ผลที่สุ่มไว้ก่อนเสมอ และไม่ไหลไปช่องข้างๆ
6. การสุ่มที่พิสูจน์ได้สำหรับกิจกรรมแจกของและห้องสด
สำหรับกิจกรรมแจกของ (และการสุ่มใดที่ความน่าเชื่อถือสำคัญ) Spinvolta ทำมากขึ้นอีกขั้น คุณจึงไม่ต้องเชื่อเราหรือผู้จัด:
- ก่อนสุ่ม เบราว์เซอร์ของคุณล็อกรายชื่อและการตั้งค่า แล้วเผยแพร่ลายนิ้วมือ — แฮช SHA-256 ของรายชื่อ การตั้งค่า และค่าเมล็ดลับ เซิร์ฟเวอร์ของเราบันทึกเวลาที่ได้รับ
- ลายนิ้วมือระบุรอบในอนาคตของแหล่งสุ่ม drand League of Entropy — ค่าสาธารณะที่องค์กรอิสระทั่วโลกสร้างขึ้นทุก 3 วินาที ซึ่งไม่มีใครทำนายหรือเลือกได้
- เมื่อรอบนั้นเผยแพร่ ผู้ชนะจะถูกคำนวณจากลายนิ้วมือ ค่า drand และค่าเมล็ด
- หน้าหลักฐานแสดงทุกอย่าง ใครก็กดตรวจสอบเพื่อคำนวณใหม่ในเบราว์เซอร์ของตัวเองได้ รวมถึงตรวจลายเซ็นเข้ารหัสของ drand
ผู้จัดเลือกผู้ชนะไม่ได้เพราะค่า drand ยังไม่เกิดขึ้นตอนล็อกรายชื่อ เราก็ทำไม่ได้ เพราะเราไม่เห็นค่าเมล็ดก่อนลายนิ้วมือถูกล็อก และเราไม่ได้ควบคุม drand ถ้าติดต่อ drand ไม่ได้ การสุ่มจะเปลี่ยนเป็นแบบผูกมัดและเปิดเผยที่มีป้ายกำกับชัดเจน
7. ทดสอบทางสถิติ
ชุดทดสอบของเรารันการทดสอบไคสแควร์บนการสุ่มจำลองหลายแสนครั้งทุกครั้งที่มีการเปลี่ยนแปลง และกว่าหนึ่งล้านครั้งในชุดเต็ม: การเลือกแบบสม่ำเสมอ การเลือกแบบถ่วงน้ำหนัก การสับ และตำแหน่งในโหมดหลายผู้ชนะ คุณรันเวอร์ชันของตัวเองได้ที่หน้าทดสอบความยุติธรรม
สิ่งที่เราพิสูจน์ไม่ได้
ในการหมุนทั่วไป คุณเชื่อว่าโค้ดที่ทำงานในเบราว์เซอร์คือโค้ดที่เราอธิบาย โค้ดทำงานในเครื่องของคุณทั้งหมด และตรวจดูได้ด้วยเครื่องมือนักพัฒนาของเบราว์เซอร์ เมื่อเดิมพันสูงขึ้น — ของรางวัล การสุ่มต่อสาธารณะ — ให้ใช้การสุ่มที่พิสูจน์ได้ ซึ่งไม่ต้องเชื่อใจใครเลย
คำถามที่พบบ่อย
วงล้อโกงได้ไหม?
ไม่ได้ผ่านภาพเคลื่อนไหว: ผลถูกสุ่มอย่างยุติธรรมก่อน แล้วการเคลื่อนไหวถูกคำนวณให้แสดงผลนั้น วิธีเดียวที่จะเปลี่ยนโอกาสคือโหมดถ่วงน้ำหนัก ซึ่งแสดงป้าย “วงล้อถ่วงน้ำหนัก” และวาดขนาดช่องตามโอกาส
ทำไมชื่อเดิมออกสองครั้งติด?
เพราะการสุ่มจริงมีการออกติดกัน ถ้ามี 10 ตัวเลือก ตัวเลือกเดิมจะออกสองครั้งติดประมาณ 10% ของเวลา ใช้โหมดคัดออกถ้าต้องการให้แต่ละตัวเลือกออกครั้งเดียว
drand คืออะไร?
drand คือแหล่งสุ่มแบบกระจายที่ดำเนินการโดย League of Entropy กลุ่มมหาวิทยาลัย บริษัท และองค์กรอิสระ มันเผยแพร่ค่าสุ่มใหม่ที่ตรวจสอบได้ทุกไม่กี่วินาที