Anyza Club
TạoĐăng nhập

← Hệ thống quay thưởng dựa trên hash Bitcoin

Cách hoạt động của quay số hash Bitcoin

Một chương trình quay thưởng thực sự công bằng không yêu cầu bạn tin tưởng bất kỳ ai. Đây là toàn bộ cơ chế — điều gì xảy ra, theo thứ tự nào và phép tính chính xác — để bất kỳ ai cũng có thể kiểm tra.

Chạy chương trình quay thưởng miễn phí
Linh vật Anyza với quả cầu quay thưởng và đồng bitcoin

Bước 1

Danh sách được đóng băng

Bước 2

Chúng tôi chọn một khối Bitcoin chưa tồn tại

Bước 3

Phép tính quyết định người thắng

1. Danh sách được đóng băng

When the organizer clicks “Draw”, the names are stored exactly in the order they were pasted, one per line: #1, #2, #3…

Cùng lúc đó, chúng tôi tính toán dấu vân tay của danh sách (SHA-256). Thay đổi duy nhất một chữ cái trong tên sẽ thay đổi toàn bộ dấu vân tay — đó là lý do nó xuất hiện trên trang: bất kỳ thay đổi nào sau này đều sẽ rõ ràng.

Dấu vân tay cũng được ghi lại trên Bitcoin bằng OpenTimestamps. Tệp .ots là bằng chứng rằng danh sách chính xác này đã tồn tại vào thời điểm đó.

2. Chúng tôi chọn một khối Bitcoin chưa tồn tại

Khi đóng băng, chúng tôi xem khối mới nhất của mạng (đỉnh) và ấn định khối đỉnh + 2 là khối sẽ quyết định kết quả.

Hash của một khối không thể đoán trước: hàng nghìn thợ đào trên khắp thế giới cạnh tranh để tạo ra nó, tiêu tốn năng lượng thực. Không ai — không phải tổ chức, không phải Anyza — biết hash trước khi khối xuất hiện.

Chúng tôi chờ block đã chọn xuất hiện và thêm một block nữa ở trên, để xác nhận. Trung bình mất khoảng 20 đến 30 phút.

3. Phép tính quyết định người thắng

Với block hash trong tay, mỗi người thắng được xác định từ một phép tính đơn giản, giống nhau cho mọi người:

  1. Tạo chuỗi văn bản: block hash + ":" + mã giveaway + ":" + k (k = 1 cho người thắng thứ nhất, 2 cho người thứ hai…).
  2. Tính SHA-256 của chuỗi đó và lấy 15 ký tự đầu tiên — đó là một số dạng thập lục phân.
  3. Chia số đó cho số lượng tên còn lại trong danh sách; số dư là vị trí (số dư 0 = vị trí đầu tiên).
  4. Tên ở vị trí đó thắng và rời khỏi danh sách — nên không ai thắng hai lần. Lặp lại cho k tiếp theo.
position = int( sha256(“block_hash:giveaway_id:k”)[0:15], 16 ) mod N

Một ví dụ với số thực tế

Một khối Bitcoin thật, một mã quà tặng mẫu và danh sách 40 tên:

Mã băm khối

00000000000000000000ba717add9e9ca88219ed055ab6a33fcb5a4a229036ef

Mã giveaway

5c033623-67a6-4a4c-bd5b-1d0721e0b6e6

Người thắng thứ nhất (k = 1, 40 tên)

sha256("…a229036ef:5c03…b6e6:1")

→ 3c13c940ddd9060 → 270564059204391008

→ 270564059204391008 mod 40 = 8

Số dư 8 → vị trí 8 đếm từ 0 = mục #9 trong danh sách thắng.

Người thắng thứ hai (k = 2, còn 39 tên)

sha256("…a229036ef:5c03…b6e6:2")

→ 0e74889ef2fd4a9 → 65100476880770217

→ 65100476880770217 mod 39 = 3

Số dư 3 trong danh sách 39 còn lại → ai ở vị trí đó sẽ thắng.

Mỗi giveaway có mã khác nhau: cùng một block tạo ra kết quả khác nhau ở các giveaway khác nhau — và không ai chọn mã sau khi thấy block, vì nó được tạo khi đóng băng.

Dòng thời gian chứng minh thứ tự

Trang của mỗi giveaway hiển thị bốn thời điểm, có ngày và giờ:

  1. Danh sách đã đóng băng và hash đã lưu

    Các tên và dấu vân tay đã cố định — trước khi block quyết định tồn tại.

  2. Danh sách đã ghi trên Bitcoin

    OpenTimestamps ghi dấu vân tay vào một khối: bằng chứng độc lập rằng danh sách đã tồn tại.

  3. Khối quyết định được khai thác

    Vài phút sau, khối được chọn xuất hiện, với thời gian được ghi trong chính khối đó.

  4. Kết quả được tính toán

    Với hash của khối, phép toán chỉ ra người chiến thắng — luôn giống nhau với bất kỳ ai làm lại.

Nếu danh sách bị thay đổi sau khối, dấu vân tay sẽ không khớp với dấu đã ghi trên Bitcoin. Nếu khối đã tồn tại trước danh sách, chiều cao sẽ lộ ra: nó được chọn là tip + 2 khi đóng băng.

Cách mọi người có thể kiểm tra

  • Tính toán lại

    On the giveaway page, the “Redo the math here” button calculates everything in your browser: the list’s fingerprint and each winner.

  • Kiểm tra khối

    Hash và thời gian của khối được công khai trên bất kỳ trình duyệt Bitcoin nào, chẳng hạn như mempool.space.

  • Tải lên tệp .ots

    The “Upload the .ots file” button (or opentimestamps.org) checks which block the list was recorded in.

Rút thăm tự động trong cộng đồng Anyza Club

Trong cộng đồng, công thức giống hệt — danh sách là những người tham gia đáp ứng điều kiện (thành viên, người theo dõi, người tham dự sự kiện, hoàn thành bài học hoặc đăng bài), đóng băng tại thời điểm kết thúc. Hai chế độ:

  • Chế độ nhanh: khối cao nhất + 2 tại thời điểm kết thúc, như trong quay thưởng công khai.
  • Bằng chứng tối đa: khối đầu tiên sau khi bản ghi Bitcoin của danh sách được xác nhận — danh sách có thể chứng minh là đã tồn tại trước khối quyết định.
Tạo cộng đồng của tôi miễn phí

Câu hỏi thường gặp

Có thể dự đoán hash của block tiếp theo không?

Không. Hash phụ thuộc vào các giao dịch và một con số mà các thợ đào tìm kiếm bằng cách thử và sai, hàng tỷ lần mỗi giây. Nếu có thể dự đoán được, việc đào Bitcoin sẽ không hoạt động.

Anyza hoặc người tổ chức có thể gian lận không?

Không thể mà không để lại dấu vết. Danh sách và dấu vân tay được cố định trước block, block được chọn cùng lúc đó và phép tính là công khai. Bất kỳ thay đổi nào cũng sẽ khiến dấu vân tay hoặc kết quả không vượt qua kiểm tra.

Điều gì xảy ra nếu ai đó tổ chức nhiều lần quay số cho đến khi có kết quả họ muốn?

Mỗi đợt quay số có trang và liên kết riêng, với ngày tạo. Vì vậy người tổ chức nên công bố liên kết trước khi có kết quả: một đợt quay số không được công bố trước không chứng minh được gì.

Điều gì xảy ra nếu mạng Bitcoin tổ chức lại khối?

Chúng tôi chờ một lần xác nhận (một khối ở trên) trước khi quay. Việc tổ chức lại hai khối cực kỳ hiếm; và hash được sử dụng được ghi lại trên trang, nên phép tính luôn có thể được làm lại.

Phần dư có thiên vị ai không?

Trên thực tế, không. 15 ký tự tạo thành một số lên đến 60 bit; với tối đa 5.000 tên, sự chênh lệch về cơ hội giữa các vị trí nhỏ hơn một phần nghìn tỷ.

Thứ tự tên có thay đổi gì không?

Thứ tự được cố định khi đóng băng và là một phần của dấu vân tay. Vì hash khối không thể đoán trước, không có vị trí nào có lợi thế.

Sẵn sàng tổ chức của bạn chưa?

Miễn phí, không cần đăng ký, với liên kết để chia sẻ và kết quả qua email.

Chạy chương trình quay thưởng miễn phí

Cộng đồng nổi bật trên Anyza Club

Xem tất cả

Mới trên Anyza Market — thanh toán bằng crypto

Xem tất cả

Thêm công cụ miễn phí từ Anyza

Máy tính miễn phí: xem phí nền tảng lấy bao nhiêu từ cộng đồng của bạn
Anyza Classificados

Rao vặt dành cho người thanh toán bằng crypto

Xe hơi, đồng hồ, xe máy, căn hộ, dịch vụ — người bán có tài khoản Anyza và giá bằng stablecoin, giao dịch trực tiếp giữa bạn và người kia.

Mở Rao vặt
Anyza Radar

Nơi đã chấp nhận bitcoin

Bản đồ các cửa hàng, quán cà phê và dịch vụ chấp nhận bitcoin, bằng 11 ngôn ngữ — xây dựng từ BTC Map và OpenStreetMap.

Mở Radar
Anyza Events

Vé với mã QR và check-in tại cửa

Gặp mặt, hội nghị và sự kiện trực tuyến. Người mua thanh toán cho ban tổ chức; cửa hoạt động ngoại tuyến trên mọi điện thoại.

Mở Events