ความยุติธรรมที่พิสูจน์ได้คืออะไร และทำงานอย่างไร

ใช้เครื่องมือคำนวณความยุติธรรมที่พิสูจน์ได้ด้านล่างเพื่อตรวจสอบทุกผลลัพธ์ และทำความเข้าใจว่าทำไมเกมของ Cloudbet Originals ถึงมีความเที่ยงตรงของอัตราต่อรองอยู่เสมอ
Above are two provably fair tools: a Game Verification Tool — paste your Server Seed, Client Seed, and Nonce from any round to reconstruct and confirm the outcome — and a Server Seed Verification Tool — verify that a revealed server seed matches the hash Cloudbet published before you played.

เมื่อคุณเดิมพันบน Cloudbet Originals ทุกผลลัพธ์คือสิ่งที่คุณตรวจสอบได้ด้วยตัวเอง ไม่มีการคาดเดา ไม่มีลูกเล่น มีเพียงการสุ่มที่พิสูจน์ได้ที่คุณตรวจสอบได้เอง

"ความยุติธรรมที่พิสูจน์ได้" คืออะไร

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

ข้อได้เปรียบของ Cloudbet Provably Fair:

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

วิธีที่จะเป็นความยุติธรรมที่พิสูจน์ได้

การเป็นความยุติธรรมที่พิสูจน์ได้หมายถึงการพิสูจน์สองสิ่ง:

  1. ทุกเกมมีสิทธิ์เข้าถึงลำดับตัวเลขสุ่มที่แท้จริงและปลอดจากการบิดเบือน หน้านี้ครอบคลุมส่วนนั้น
  2. ลำดับสุ่มนั้นกำหนดผลลัพธ์ของเกมด้วยวิธีที่ตายตัวและโปร่งใส กล่าวคือ ตัวเลขชุดเดียวกันจะให้ผลลัพธ์เดียวกันเสมอ ส่วนนี้เฉพาะเจาะจงกับแต่ละเกม ดูได้ว่ามันทำงานอย่างไรใน Mines และ Cloudbet Original เกมอื่นๆ ของเรา

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

คำศัพท์สำคัญ

  1. Bit: หน่วยพื้นฐานของข้อมูลดิจิทัล คือ "1" หรือ "0" ลำดับของบิตแทนตัวเลขในระบบเลขฐานสอง
  2. Byte: 8 บิต แทนค่าได้สูงสุด 256 ค่า Seed ของเราใช้ตัวเลขขนาด 32 ไบต์ (256 บิต)
  3. Seed: ค่าเริ่มต้นสำหรับตัวสร้างตัวเลขสุ่ม Seed เดียวกันจะให้ผลลัพธ์เดียวกันเสมอ
  4. Server Seed: รหัสลับของ Cloudbet ซึ่งเป็นสตริงสุ่มเข้ารหัสลับขนาด 32 ไบต์ที่สร้างขึ้นก่อนเล่น ถูกล็อกไว้และเปิดเผยในภายหลัง
  5. Client Seed: รหัสของคุณ ตั้งเองได้ หรือให้เบราว์เซอร์ของคุณสร้างขึ้น (สูงสุด 255 ตัวอักษร)
  6. Nonce: ตัวนับรอบที่เพิ่มขึ้นทุกครั้งที่คุณเล่นด้วย Seed คู่เดิม ทำให้ทุกรอบไม่ซ้ำกัน
  7. Hash / Commitment: ลายนิ้วมือที่ปลอดภัยของ Server Seed ซึ่งแชร์ให้คุณก่อนที่คุณจะเล่น ไม่สามารถย้อนกลับได้ ไม่มีใครสามารถย้อนกลับไปเดา Seed ได้ แต่เมื่อ Seed ถูกเปิดเผยแล้ว การแฮชด้วยตัวคุณเองควรได้ Commitment เดียวกันทุกประการ
  8. Round Signature: Server Seed, Client Seed และ Nonce ที่รวมกันและแฮชเข้าด้วยกัน คือข้อมูลนำเข้าจริงที่กำหนดผลลัพธ์ของรอบคุณ
  9. SHA3-256: อัลกอริทึมการแฮชที่ใช้สร้าง Commitment และ Round Signature ข้อมูลนำเข้าเดียวกันจะให้ผลลัพธ์ความยาวคงที่เดียวกันเสมอ กระบวนการนี้ไม่สามารถย้อนกลับได้
  10. SHAKE256: อัลกอริทึม SHA-3 ที่ยืดหยุ่นซึ่งแปลง Round Signature ให้กลายเป็นสายตัวเลขสุ่มที่ผลลัพธ์เกมของคุณถูกสร้างขึ้นจากมัน ข้อมูลนำเข้าเดียวกันจะให้ผลลัพธ์เดียวกันทุกครั้ง นี่คือสิ่งที่ทำให้การตรวจสอบเป็นไปได้
  11. Modulo: เศษที่เหลือจากการหารตัวเลขหนึ่งด้วยอีกตัวเลขหนึ่ง (เช่น 16 % 5 = 1) ใช้เพื่อแปลงตัวเลขสุ่มให้กลายเป็นหนึ่งในผลลัพธ์ที่เป็นไปได้ชุดหนึ่งที่กำหนดไว้ตายตัว
  12. Rotate Seed: การรีเฟรช Seed ทั้งสองเพื่อให้ได้คู่ Seed แบบสุ่มใหม่

การเตรียมการก่อนเกม

ก่อนแต่ละรอบจะเริ่ม ตัวเลขสองตัวจะถูกสร้างขึ้น ได้แก่ Server Seed และ Client Seed

เซิร์ฟเวอร์เกมของ Cloudbet สร้าง Server Seed โดยใช้ฟังก์ชัน randomBytes เข้ารหัสลับของ Node.js ซึ่งเป็นตัวเลขขนาด 32 ไบต์ (256 บิต) ซึ่งก็เหมือนกับการโยนเหรียญดิจิทัลที่ปลอดภัยซ้ำ 256 ครั้ง มันถูกเก็บเป็นความลับจนกว่า Seed คู่นี้จะถูก Rotate เพื่อพิสูจน์ว่าจะไม่ถูกเปลี่ยนแปลงในภายหลัง เซิร์ฟเวอร์ยังแฮชมันทันที (ด้วย SHA3-256) ให้กลายเป็น Commitment ซึ่งแชร์ให้คุณก่อนที่คุณจะเล่น ดังนั้นเมื่อ Seed ถูกเปิดเผยแล้ว คุณสามารถแฮชมันด้วยตัวคุณเองและยืนยันว่ายังตรงกันอยู่

Client Seed ถูกสร้างขึ้นโดยเบราว์เซอร์ของคุณตามค่าเริ่มต้น หรือคุณสามารถตั้งค่าของคุณเองได้

ระหว่างเกม

Server Seed, Client Seed และ Nonce ของคุณจะถูกนำมารวมกันและแฮชด้วย SHA3-256 ให้กลายเป็น Round Signature เดียว ลองนึกภาพเหมือนสองคนต่างช่วยกันมีส่วนร่วมในครึ่งหนึ่งของชื่ออย่างลับๆ ทำให้ไม่มีใครรู้ผลลัพธ์เต็มล่วงหน้า

จากนั้น Round Signature นั้นจะถูกป้อนเข้าสู่ SHAKE256 ซึ่งสร้างสายตัวเลขสุ่มที่กำหนดผลลัพธ์ของเกมคุณ เนื่องจาก SHAKE256 ให้ผลลัพธ์เดียวกันจากข้อมูลนำเข้าเดียวกันเสมอ ใครก็ตามที่มี Seed และ Nonce ที่เปิดเผยแล้วสามารถสร้างผลลัพธ์ของคุณขึ้นใหม่ได้ทุกประการ นั่นคือสิ่งที่ทำให้การตรวจสอบเป็นไปได้ การแปลงสายตัวเลขสุ่มนั้นให้กลายเป็นผลลัพธ์เกมจริง (เช่น ระเบิดอยู่ตรงไหน หรือลูกเต๋าออกอะไร) ทำงานต่างกันไปในแต่ละเกม ดูได้ว่ามันทำงานอย่างไรใน Mines และ Cloudbet Original เกมอื่นๆ ของเรา

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

สำหรับตัวอย่างโดยละเอียดของ Rejection Sampling เราได้เขียนตัวอย่างสั้นๆ ของการทอยลูกเต๋า 10 ด้าน โดยที่เนื่องจากเรามีผลลัพธ์ที่เป็นไปได้ 10 แบบ P จึงเท่ากับ 10

การทอยลูกเต๋า 10 ด้านตามปกติทำได้โดยการสุ่มตัวเลข "X" ขึ้นมา แล้วคำนวณ X modulo 10 เนื่องจากคล้ายกับการทอยลูกเต๋า การดำเนินการนี้มีผลลัพธ์ที่เป็นไปได้ 10 แบบ อย่างไรก็ตาม หากทำแบบนี้โดยไม่ทำ Rejection Sampling ก่อน จะเอื้อประโยชน์ให้ผลลัพธ์ที่มีค่าน้อยอย่างไม่เป็นธรรม สมมติว่า X เป็นตัวเลขสุ่ม 4 บิต ดังนั้นจึงมีค่าที่เป็นไปได้ 2⁴=16 ค่า คือ 0 ถึง 15 ผลลัพธ์ที่เป็นไปได้ทั้งหมดของ X modulo 10 (X % 10) คือ:

  1. หาก X อยู่ระหว่าง 0 ถึง 9: 0 … 9
  2. หาก X อยู่ระหว่าง 10 ถึง 15: 0 … 5

นี่คือภาพประกอบ:

ผลลัพธ์การทอยลูกเต๋าแต่ละแบบตั้งแต่ 0 ถึง 5 สามารถเกิดขึ้นได้จากการสร้าง X ที่ต่างกันสองแบบ ในขณะที่ผลลัพธ์ 6-9 เกิดขึ้นได้จากแบบเดียวเท่านั้น นั่นหมายความว่าผลลัพธ์การทอย 0 ถึง 5 มีโอกาสเกิดขึ้นมากกว่าผลลัพธ์ 6-9 ถึงสองเท่า ซึ่งไม่ยุติธรรม:

สิ่งนี้เกิดขึ้นเพราะ 16 หารด้วย 10 ไม่ลงตัว นั่นเป็นเหตุผลที่ด้วย Rejection Sampling เราจะหาตัวเลขที่มากที่สุดที่หารด้วย 10 ลงตัว ด้วยตัวเลข 4 บิต ค่าสูงสุดที่ X จะเป็นได้คือ 15 และตัวคูณของ 10 ที่มากที่สุดที่อยู่ในช่วงค่านี้คือ 10 ดังนั้นเราจึงปฏิเสธตัวเลขสุ่มทั้งหมดที่มากกว่าหรือเท่ากับ 10 ซึ่งหมายความว่ามีเพียง 0 … 9 เท่านั้นที่เป็นค่าที่เป็นไปได้สำหรับ X หมายเหตุ: หากตัวเลขถูกปฏิเสธ ก็จะมีการสุ่มตัวเลขใหม่

หลังจากขั้นตอนการปฏิเสธ เราคำนวณ X modulo P เพื่อให้ได้ตัวเลขระหว่าง 0 ถึง P ซึ่งจะกำหนดว่าเราเลือกผลลัพธ์ใดจากโอกาส 1 ใน P

วิธีตรวจสอบผลลัพธ์เกมของคุณ

  1. ก่อนเล่น จดบันทึก Commitment และ Client Seed ของคุณไว้
  2. หลังจบรอบ Rotate Seed ของคุณเพื่อให้ Server Seed ที่ใช้ถูกเปิดเผย
  3. แฮช Server Seed ที่เปิดเผยแล้วด้วย SHA3-256 ควรตรงกับ Commitment ที่คุณบันทึกไว้ นี่ยืนยันว่า Seed ไม่ได้ถูกเปลี่ยนแปลงระหว่างเกม
  4. วาง Server Seed, Client Seed และ Nonce ของคุณลงในเครื่องมือคำนวณตรวจสอบด้านล่างนี้ มันจะสร้างผลลัพธ์ขึ้นใหม่จากศูนย์
  5. เปรียบเทียบกับสิ่งที่คุณเห็นในเกม หากตรงกันแสดงว่ารอบนั้นยุติธรรม หากไม่ตรงกันจะบ่งชี้ถึงการบิดเบือน (ซึ่งกับ Cloudbet จะไม่เกิดขึ้น)

คำถามที่พบบ่อย: คำตอบสำหรับคำถามเกี่ยวกับความยุติธรรมที่พิสูจน์ได้

1. ทำไม Seed ถึงยาวและดูสุ่มขนาดนี้

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

2. ฉันสามารถเปลี่ยน Client Seed ได้หรือไม่

ได้ ไปที่การตั้งค่าความยุติธรรมในเกมและใส่ Client Seed ของคุณเองได้ทุกเมื่อ คุณสามารถ Rotate มันได้บ่อยเท่าที่ต้องการ

3. จะเกิดอะไรขึ้นถ้า Server Seed ไม่ตรงกับแฮชต้นฉบับ

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

4. ฉันจำเป็นต้องเข้าใจเรื่องการเข้ารหัสเพื่อใช้งานเครื่องมือนี้หรือไม่

ไม่จำเป็น เครื่องมือนี้จัดการงานที่ยุ่งยากทั้งหมดให้คุณ คุณเพียงแค่คัดลอก วาง และตรวจสอบ

5. แฮชคืออะไรกันแน่

ลองคิดว่ามันเหมือนลายเซ็นดิจิทัล ถูกสร้างขึ้นโดยการสับเปลี่ยน Server Seed ด้วยอัลกอริทึมเข้ารหัส หากมีใครพยายามแก้ไข Seed ในภายหลัง แฮชจะไม่เหมือนเดิม และคุณจะจับได้ว่ามีการโกงเกิดขึ้น

6. ฉันสามารถใช้เครื่องมือของบุคคลที่สามเพื่อตรวจสอบผลลัพธ์ได้หรือไม่

ได้ ระบบของ Cloudbet เข้ากันได้กับเครื่องมือตรวจสอบอิสระ คุณจึงสามารถตรวจสอบผลลัพธ์ซ้ำได้แม้จะไม่ได้อยู่บนแพลตฟอร์มของเรา

7. ทำไมเรื่องนี้ถึงสำคัญในเมื่อเกมก็สนุกอยู่แล้ว

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

คำอธิบายเกมที่ยุติธรรมที่พิสูจน์ได้:

  1. ความยุติธรรมที่พิสูจน์ได้ใน Mines
  2. ความยุติธรรมที่พิสูจน์ได้ใน Pump
  3. ความยุติธรรมที่พิสูจน์ได้ใน Plinko
  4. ความยุติธรรมที่พิสูจน์ได้ใน Dice
  5. ความยุติธรรมที่พิสูจน์ได้ใน Dice: Golden Ticket
  6. ความยุติธรรมที่พิสูจน์ได้ใน Limbo
  7. ความยุติธรรมที่พิสูจน์ได้ใน Roulette