ตรวจสอบผลการสุ่ม

Acrafto Team ความปลอดภัย
อัปเดต

วางโค้ดใบรับรองเพื่อตรวจสอบ

ทุกอย่างทำงานในเบราว์เซอร์ของคุณ ไม่มีตัวเลขใดถูกส่งออกจากอุปกรณ์

เครื่องมือนี้ตรวจสอบอะไร

มีคนทำการสุ่มแล้วส่งโค้ดใบรับรองมาให้คุณ หน้านี้จะบอกคุณว่าโค้ดนั้น มีความสอดคล้องกันภายในหรือไม่ — ตัวเลขที่ได้มาจาก Seed ที่ผู้จัดเผยแพร่ไว้จริงหรือไม่ และลายนิ้วมือครอบคลุม Seed กับการตั้งค่าชุดนั้นจริงหรือไม่

ทุกอย่างทำงานในเบราว์เซอร์ของคุณ ใบรับรองจะไม่ถูกส่งไปที่ใดเลย

การตรวจสอบสองแบบ

ลายนิ้วมือ ใบรับรองบรรจุค่าแฮช SHA-256 ที่คำนวณจาก Seed และการตั้งค่าการสุ่ม หน้านี้จะคำนวณแฮชนั้นใหม่อีกครั้ง หากไม่ตรงกับค่าที่บันทึกไว้ในใบรับรอง แสดงว่า Seed หรือการตั้งค่าถูกเปลี่ยนแปลงหลังจากที่มีการผูกมัดไว้แล้ว

การเล่นซ้ำ (Replay) เครื่องมือสุ่มแบบใช้ Seed ให้ผลลัพธ์ที่แน่นอนเสมอ ดังนั้น Seed และการตั้งค่าชุดเดียวกันจะให้ตัวเลขชุดเดียวกันทุกครั้ง หน้านี้จะสุ่มซ้ำ ตามขั้นตอนเดิมแล้วเปรียบเทียบผลลัพธ์ หากตัวเลขไม่ตรงกัน แสดงว่าผลลัพธ์ถูกแก้ไข

ใบรับรองจะผ่านการตรวจสอบก็ต่อเมื่อทั้งสองแบบผ่านทั้งคู่เท่านั้น

สิ่งที่การตรวจสอบที่ผ่านพิสูจน์ได้และพิสูจน์ไม่ได้

มันพิสูจน์ว่าผู้จัดไม่ได้แอบเปลี่ยน Seed การตั้งค่า หรือตัวเลข หลังจากที่ผูกมัดกับค่าเหล่านั้นแล้ว

มัน ไม่ได้ พิสูจน์ว่า Seed นั้นคาดเดาไม่ได้ หากผู้จัดเลือก Seed เองและไม่เคย เผยแพร่ลายนิ้วมือก่อนทำการสุ่ม ผู้จัดอาจลองใช้ Seed หลายตัวแล้วเลือกใช้ตัวที่ให้ผลลัพธ์ ที่ต้องการ ลายนิ้วมือจะมีความหมายก็ต่อเมื่อถูกเผยแพร่ ก่อน ทำการสุ่ม ในที่ที่มี การประทับเวลา เช่น โพสต์ ความคิดเห็น หรือข้อความ

นั่นคือจุดประสงค์ทั้งหมดของขั้นตอนการผูกมัด มันเปลี่ยน “เชื่อฉันสิ” ให้กลายเป็นสิ่งที่ ใครก็ตรวจสอบย้อนหลังได้

การจัดการสุ่มที่คนอื่นตรวจสอบได้

  1. กำหนดช่วงตัวเลขและจำนวนตัวเลขที่ต้องการ
  2. กด สร้างลายนิ้วมือ แล้วเผยแพร่ค่าแฮชที่ได้ — ในโพสต์แจกของรางวัล ในความคิดเห็น หรือที่ใดก็ได้ที่ผู้เข้าร่วมมองเห็นพร้อมการประทับเวลา
  3. ปิดรับสมัคร แล้วจึงทำการสุ่ม
  4. เผยแพร่ Seed และใบรับรอง ใครก็สามารถนำมาวางตรวจสอบที่นี่ได้

หากข้ามขั้นตอนที่ 2 ใบรับรองจะเป็นเพียงของตกแต่งเท่านั้น การเผยแพร่ลายนิ้วมือก่อน คือสิ่งที่ทำให้มันมีน้ำหนักจริง

ทำไม Seed เพียงอย่างเดียวจึงไม่เพียงพอ

Seed เป็นเพียงข้อความ มันจะให้ตัวเลขได้ก็ต่อเมื่อรู้ว่าถูกขยายออกมาเป็นตัวเลขอย่างไร — ใช้อัลกอริทึมใด ช่วงตัวเลขเท่าใด จำนวนตัวเลขเท่าใด และอนุญาตให้ซ้ำกันได้หรือไม่

นั่นคือเหตุผลที่ลายนิ้วมือครอบคลุมทั้ง Seed และ การตั้งค่า หากไม่มีสิ่งนี้ ผู้จัดอาจเผยแพร่ Seed แล้วอ้างในภายหลังว่าการสุ่มใช้ช่วงตัวเลขอื่น และตัวเลขอีกชุดหนึ่ง คือผลลัพธ์ที่แท้จริง การผูกมัดจะปิดช่องโหว่นี้

ทำไมลายนิ้วมือจึงปลอมแปลงไม่ได้

แฮช SHA-256 เป็นฟังก์ชันทางเดียว คำนวณไปข้างหน้าได้ง่าย แต่ไม่มีวิธีคำนวณย้อนกลับ นี่คือสิ่งที่ทำให้การผูกมัดมีผลผูกพันจริง

หากจะโกง ผู้จัดต้องเผยแพร่ลายนิ้วมือหนึ่งค่า แล้วภายหลังเปิดเผย Seed อื่น ที่ให้แฮชเดียวกัน ซึ่งเรียกว่าการโจมตีแบบ second-preimage attack ยังไม่มีใครเคยพบวิธีทำเช่นนี้กับ SHA-256 ได้ และขอบเขตการค้นหาก็ใหญ่จนการไล่ลองทีละค่าไม่มีความหมาย เพราะ 2²⁵⁶ มากกว่าจำนวนอะตอมโดยประมาณในเอกภพที่สังเกตได้

สิ่งที่ผู้จัดทำไม่ได้อีกอย่างคือการขยับผลลัพธ์ให้เอนเอียง เพียงเปลี่ยนตัวอักษรเดียวใน Seed ก็จะเปลี่ยนบิตในแฮชไปประมาณครึ่งหนึ่งอย่างคาดเดาไม่ได้ จึงไม่มีทางค้นหา Seed ที่ทั้งตรงกับ ลายนิ้วมือที่เผยแพร่ไว้และให้ผลลัพธ์ที่ต้องการได้ เพราะต้องกำหนดแฮชให้ตรงก่อน ในขณะที่แฮชขึ้นอยู่กับทุกอย่าง

ดังนั้นลายนิ้วมือจึงตรึง Seed และการตั้งค่าไว้อย่างสมบูรณ์ สิ่งเดียวที่มันตรึงไม่ได้คือ เวลา ที่เผยแพร่ ซึ่งเป็นเหตุผลว่าทำไมการประทับเวลาบนโพสต์ของคุณจึงสำคัญไม่แพ้กัน

การสุ่มที่ตรวจสอบได้สำคัญตรงไหน

  • การแจกของรางวัลและการประกวด — คนที่ไม่ได้รางวัลคือคนที่จะตั้งคำถามก่อนใคร
  • การคัดเลือกในชุมชนและ DAO — เลือกว่าใครจะได้สิทธิ์ ได้ทุน หรือได้ตำแหน่ง
  • งานวิจัย — แผนการสุ่มตัวอย่างที่ผู้ตรวจสอบสามารถรันซ้ำและยืนยันได้
  • โปรโมชันรางวัลที่มีความเสี่ยงทางกฎหมาย — บางเขตอำนาจศาลกำหนดให้ต้องแสดงวิธีการที่ พิสูจน์ได้ ไม่ใช่แค่คำกล่าวอ้าง
  • สิ่งใดก็ตามที่คนแปลกหน้าต้องเชื่อ — ยิ่งกลุ่มผู้ชมอยู่ไกลออกไป คำว่า “เราสุ่มจริง ๆ” ก็ยิ่งมีน้ำหนักน้อยลงเมื่อพูดลอย ๆ

คำถามที่พบบ่อย (FAQ)

ใบรับรองที่ผ่านการตรวจสอบหมายความว่าการสุ่มนั้นสุ่มจริงหรือไม่ มันหมายความว่าการสุ่ม ไม่ถูกเปลี่ยนแปลงหลังจากการผูกมัด ส่วนการสุ่มนั้นคาดเดาไม่ได้หรือไม่ ขึ้นอยู่กับว่าลายนิ้วมือถูกเผยแพร่เมื่อใด หากเผยแพร่ก่อนทำการสุ่ม ต่อสาธารณะ พร้อมการประทับเวลา แสดงว่าผู้จัดถูกผูกมัดไว้แล้วจริง หากเผยแพร่หลังจากนั้น จะไม่พิสูจน์เรื่องการคาดเดาไม่ได้เลย
ใบรับรองของฉันถูกอัปโหลดไปที่ไหนหรือไม่ ไม่ การตรวจสอบทำงานทั้งหมดในเบราว์เซอร์ของคุณด้วย JavaScript ไม่มีข้อมูลใดออกจากอุปกรณ์ของคุณ และไม่มีเซิร์ฟเวอร์ใดที่จะบันทึกข้อมูลนี้ได้
"ลายนิ้วมือไม่ตรงกัน" หมายความว่าอย่างไร Seed หรือการตั้งค่าในใบรับรองไม่ใช่ค่าที่ถูกผูกมัดไว้แต่แรก มีคนแก้ไขใบรับรอง หรือใบรับรองนี้ถูกสร้างขึ้นจากเครื่องมืออื่น
"Seed ไม่ให้ผลลัพธ์เป็นตัวเลขชุดนี้" หมายความว่าอย่างไร ลายนิ้วมือยังคงสมบูรณ์ แต่รายการตัวเลขถูกเปลี่ยนแปลงในภายหลัง เครื่องมือจะแสดงตัวเลขที่ Seed ให้ผลจริง เพื่อให้คุณเห็นความแตกต่าง
ฉันสามารถตรวจสอบการสุ่มจากเว็บไซต์อื่นได้หรือไม่ ได้เฉพาะกรณีที่เว็บไซต์นั้นสร้างใบรับรองในรูปแบบนี้เท่านั้น การตรวจสอบขึ้นอยู่กับอัลกอริทึมของเครื่องมือสุ่มนั้นโดยตรง — Seed เพียงอย่างเดียวไม่มีความหมาย หากไม่รู้ว่ามันถูกขยายออกมาเป็นตัวเลขอย่างไร
ถ้าใบรับรองยาวมากจะเป็นอย่างไร ความยาวขึ้นอยู่กับจำนวนตัวเลขที่ถูกสุ่ม เพราะใบรับรองบรรจุผลลัพธ์ทั้งหมดไว้ การสุ่มหกตัวเลขจะให้โค้ดที่สั้น ส่วนการสุ่มหนึ่งหมื่นตัวเลขจะให้โค้ดที่ยาว ทั้งสองแบบตรวจสอบด้วยวิธีเดียวกัน

ฉันจะขอบคุณมากถ้าคุณสามารถแชร์หน้าเหล่านี้กับเพื่อน บุ๊กมาร์ก หรือลิงก์ไปยังหน้าเหล่านี้ ขอบคุณ! 🙏