Tính toàn vẹn
Tự xác minh kho lưu trữ này.
Mỗi tệp đi kèm kho lưu trữ này đều có một mã băm SHA-256 được công bố. Trang này tính lại các mã băm đó ngay trong trình duyệt của bạn — dùng Web Crypto API vốn đã có sẵn trong trình duyệt — rồi đối chiếu với bản kê khai. Không có điểm cuối máy chủ kakao.io nào được tin cậy trong vòng kiểm tra. Nếu có bất kỳ thứ gì bị can thiệp giữa kho mã nguồn và màn hình của bạn, phép kiểm tra sẽ thất bại một cách rõ ràng.
Kiểm tra cacao-origins.json
Kiểm tra tất cả các tệp nguồn
Kiểm tra một bản ghi xuất xứ cụ thể
Xác minh mã băm tập dữ liệu từ dòng lệnh
Nếu bạn không muốn phụ thuộc vào mã chạy trong trình duyệt, cùng phép kiểm tra đó có thể thực hiện dễ dàng bằng các công cụ Unix tiêu chuẩn.
# Verify the dataset hash matches:
curl -s https://kakao.io/data/cacao-origins.json | shasum -a 256
# Compare against the hash in:
curl -s https://kakao.io/.well-known/source-manifest.json \
| jq '.files["data/cacao-origins.json"]'
Xác minh cục bộ các chứng cứ OpenTimestamps
Mỗi bản ghi xuất xứ cũng được đóng dấu thời gian bằng OpenTimestamps — một giao thức đóng dấu thời gian miễn phí, neo vào Bitcoin. Chứng cứ này gói mã SHA-256 của bản ghi vào tiêu đề của một khối Bitcoin đã công bố, nhờ vậy sự tồn tại của bản ghi tại thời điểm của khối đó có thể được chứng thực bằng mật mã mà không cần tin tưởng chúng tôi hay bất kỳ cơ quan đóng dấu thời gian nào.
# Install the OpenTimestamps client:
pip3 install opentimestamps-client
# Download an origin record and its proof:
curl -O https://kakao.io/data/ots/records/ve-chuao.json
curl -O https://kakao.io/data/ots/records/ve-chuao.json.ots
# Verify — folds the Bitcoin block hash into a verification chain:
ots verify ve-chuao.json.ots
Cơ chế hoạt động
SHA-256 được tính trong trình duyệt của bạn qua window.crypto.subtle.digest — cùng một nguyên thuỷ mật mã được TLS và HTTPS sử dụng, có sẵn trên mọi trình duyệt hiện đại mà không cần polyfill. Bản kê khai là một tệp JSON nhỏ liệt kê mã băm dự kiến cho từng tệp đi kèm. Các chứng cứ OpenTimestamps được gửi tới các máy chủ lịch công cộng và được tổng hợp vào chuỗi khối Bitcoin — không có tài khoản, không có phí, không có cơ quan trung tâm nào phải tin cậy. Cả ba phép kiểm tra ở trên đều là tính toán thuần phía máy khách.