provably fairdiceguide
Bạn kiểm chứng xúc xắc backgammon bằng một lời hứa lập trước ván và kiểm sau ván. Orion công bố cam kết SHA-256 trên một hạt giống bí mật trước cú gieo đầu tiên của bạn, công bố hạt giống khi ván kết thúc, và để trình duyệt của bạn tính lại từng cú gieo tại orion.arthea.ai/verify chỉ với mã ván. Nếu mọi thứ khớp, xúc xắc đã được cố định trước khi ván bắt đầu và không ai, kể cả chúng tôi, điều khiển chúng.
Người chơi trực tuyến nào cũng biết cảm giác đó. Bạn kẹt ở cầu ba lượt. Đối thủ tìm đúng con số vừa đập trúng vừa che chắn. Trên bàn gỗ bạn sẽ nhún vai, vì bạn đã thấy xúc xắc rời khỏi ống. Trên mạng, người ta bảo bạn tin một con số mà bạn chưa từng thấy nó được tạo ra. Chúng tôi không muốn xin niềm tin ấy. Chúng tôi muốn biến nó thành thứ kiểm được.
Commit-reveal thật ra nghĩa là gì?
Hãy hình dung một phong bì dán kín. Trước khi bạn ngồi xuống, nhà cái viết toàn bộ xúc xắc của buổi tối vào trong, dán lại, và đưa bạn một tấm ảnh chụp con dấu. Khi chơi xong, phong bì được mở. Nếu nội dung khớp con dấu, nghĩa là các cú gieo đã tồn tại trước cả ván cờ, và không gì có thể được chọn giữa chừng để hại bạn. Commit-reveal chính là chiếc phong bì đó, dựng bằng số học. Con dấu là mã băm SHA-256, và không ai tạo được hạt giống khác khớp với nó. Bốn bước mang bằng chứng từ máy chủ của chúng tôi tới trình duyệt của bạn.
Trước ván. Máy chủ rút một hạt giống ngẫu nhiên bí mật và băm nó bằng SHA-256. Mã băm đó là cam kết, và nó được gắn vào ván của bạn trước cú gieo đầu tiên. Từ giây phút ấy, toàn bộ xúc xắc của ván đã được định đoạt. Máy chủ đã công bố một lời hứa mà nó không còn sửa được nữa.
Trong ván. Mỗi cú gieo được suy ra từ hạt giống bằng HMAC-SHA256: đầu vào là hạt giống và số thứ tự cú gieo, đầu ra là hai con xúc xắc. Thế cờ, tỉ số, khối nhân đôi, ai sắp thắng: không thứ nào lọt vào phép tính. Máy chủ không chọn cú gieo. Nó đọc lại một danh sách nó đã cam kết trước khi bạn chơi.
Khi ván kết thúc. Hạt giống được công bố và lưu cùng bản ghi ván đấu. Đây là lúc mở phong bì. Ai cũng có thể băm hạt giống đã công bố và so với cam kết đã đăng trước nước đi đầu tiên, và hai thứ phải giống hệt nhau.
Tự kiểm chứng. Mở orion.arthea.ai/verify bằng trình duyệt bất kỳ và nhập mã ván. Trang sẽ tính lại mọi thứ ngay tại máy bằng Web Crypto, phần mật mã dựng sẵn trong chính trình duyệt: trước hết là SHA-256 của hạt giống đã công bố đối chiếu với cam kết ban đầu, rồi tới từng cú gieo của ván, từng con một. Không tài khoản, không ứng dụng, khoảng một phút.
Khớp hoàn toàn xác lập ba sự thật cùng lúc:
- Hạt giống đã công bố băm ra đúng cam kết đã đăng trước cú gieo đầu tiên
- Mọi cú gieo trong ván đều suy ra từ hạt giống ấy bằng HMAC-SHA256, nên không có gì bị gieo lại hay tráo đổi
- Xúc xắc chưa bao giờ được chỉnh theo thế cờ, theo tỉ số hay theo người chơi
Nếu không khớp thì điều đó chứng minh gì?
Không khớp không phải lỗi hiển thị. Đó là bằng chứng. Nếu hạt giống công bố không băm ra đúng cam kết, xúc xắc đã bị đổi sau khi ván bắt đầu. Nếu chỉ một cú gieo trượt phép kiểm HMAC, xúc xắc bạn thấy không phải xúc xắc đã cam kết. Cả hai kiểu thất bại đều là bằng chứng can thiệp mà bất kỳ ai cũng tái lập được từ chính bản ghi đó, trên bất kỳ máy nào, mãi mãi.
Và cũng chính vì thế bạn lẽ ra không bao giờ thấy nó. Cam kết được công bố trước tiên, trước khi một quân cờ nào nhúc nhích. Một nhà cái muốn dàn xếp ván này sẽ phải công bố bằng chứng gian lận của chính mình từ trước, rồi trao cho mọi người chơi công cụ để tìm ra nó. Chúng tôi không xin bạn tin rằng chúng tôi trung thực. Chúng tôi dựng hệ thống sao cho bạn không cần phải tin.
Không ai nhắm được một cú gieo đã bị niêm phong trước khi ván bắt đầu.
Nếu xúc xắc chứng minh được là công bằng, sao tôi vẫn gieo xấu?
Vì xúc xắc công bằng thì vẫn là xúc xắc. Bạn sẽ bị bịt kín ở cầu. Bạn cần bất cứ gì trừ 2-1 và sẽ ra 2-1. Qua hàng nghìn ván, các con số san phẳng về phân phối thật, nhưng một buổi tối chẳng hứa hẹn gì. Thứ mà kiểm chứng loại bỏ là câu hỏi nằm dưới cơn ức chế. Cú gieo thần kỳ ấy đã được cố định trước khi hai bên chạm vào quân cờ, và nó không nhắm vào bạn. Biết vậy không làm cú gieo dịu đi. Nhưng nó cho phép bạn thôi truy xét vũ trụ và quay lại chơi thế cờ.
Xúc xắc là mối ngờ ồn ào nhất, nhưng không phải duy nhất. Chính máy chủ cam kết cho các cú gieo của bạn cũng xác thực từng nước đi ngay tại nguồn, nên một ứng dụng bị sửa không thể luồn một quân cờ tới nơi luật không cho phép. Cú gieo công bằng và nước đi hợp lệ đến từ cùng một thẩm quyền.
Tôi thử trang kiểm chứng ngay được không?
Được. Trang kiểm chứng đã hoạt động hôm nay tại orion.arthea.ai/verify, và có sẵn một bản phát lại mẫu, nên bạn có thể xem toàn bộ quá trình kiểm chạy trên một ván ví dụ, không cần cài gì và không cần tạo tài khoản. Cánh cửa tại orion.arthea.ai/go mang liên kết App Store và Google Play, luôn cho thấy thứ đang có ngay lúc này.