TotalHash
VI
Mở trong Telegram

Hash là gì và vì sao blockchain cần hàm băm?

5 phút đọc

Hash là một chuỗi ký tự có độ dài cố định được tạo ra từ dữ liệu bất kỳ bằng một hàm băm. Có thể hình dung hash như dấu vân tay của dữ liệu: chỉ cần đổi một ký tự, dấu vân tay thay đổi hoàn toàn. Blockchain dùng hash để liên kết các khối, đào coin và nhận diện giao dịch. Bài viết này giải thích hash là gì, tính chất của một hàm băm tốt, SHA-256 và MD5, vai trò của hash trong Bitcoin, mã giao dịch TxID, và bạn có thể thử tạo mã hash ngay trên trang.

Bài viết mang tính giáo dục. Công cụ bên dưới tính hash ngay trong trình duyệt, dữ liệu không được gửi đi đâu.

Hash là gì: dấu vân tay của dữ liệu

Hàm băm nhận đầu vào có độ dài bất kỳ, từ một chữ cái đến cả bộ phim, và trả về kết quả có độ dài cố định. Ví dụ SHA-256 luôn cho ra 256 bit, thường được viết thành 64 ký tự thập lục phân. Hash không phải mã hóa: từ hash không thể khôi phục lại dữ liệu ban đầu. Nó chỉ dùng để kiểm tra dữ liệu có bị thay đổi hay không và để nhận diện dữ liệu một cách ngắn gọn.

Tính chất của một hàm băm tốt

  • Xác định: cùng một đầu vào luôn cho cùng một hash.
  • Nhanh: tính toán nhanh với dữ liệu bất kỳ.
  • Một chiều: không thể suy ngược từ hash ra dữ liệu.
  • Hiệu ứng tuyết lở: thay đổi nhỏ ở đầu vào làm hash đổi hoàn toàn.
  • Chống va chạm: gần như không thể tìm hai đầu vào khác nhau có cùng hash.

SHA-256, MD5 và các hàm băm phổ biến

Hàm bămĐộ dàiSử dụng hiện nay
MD5128 bitKiểm tra file, không còn an toàn cho bảo mật
SHA-1160 bitĐã bị phá va chạm, đang bị loại bỏ
SHA-256256 bitBitcoin, chứng chỉ SSL, chữ ký số
Keccak-256256 bitEthereum

Thử tạo mã riêng cho từng loại: tạo mã MD5 và tạo mã SHA-256.

Hash trong Bitcoin: khối, nonce và đào

Bitcoin dùng SHA-256 hai lần liên tiếp. Mỗi khối chứa hash của khối trước, nên nếu ai đó sửa một giao dịch cũ, hash của khối đó thay đổi và toàn bộ chuỗi phía sau bị phá vỡ. Đào coin là quá trình thay đổi một con số gọi là nonce trong tiêu đề khối, tính hash liên tục cho đến khi tìm được kết quả nhỏ hơn mục tiêu của mạng. Máy đào hiện đại tính hàng trăm nghìn tỷ hash mỗi giây. Chi tiết về nonce: nonce là gì. Tổng quan: đào coin và blockchain.

Transaction hash (TxID) dùng để tra giao dịch

Mỗi giao dịch trên blockchain có một mã hash riêng gọi là TxID hoặc transaction hash. Khi bạn rút tiền từ sàn hay nhận thưởng từ app, hãy lưu TxID. Dán mã này vào trình khám phá khối để xem giao dịch đã được xác nhận chưa, gửi đến địa chỉ nào và số lượng bao nhiêu. Khi liên hệ hỗ trợ vì giao dịch bị chậm, TxID là thông tin đầu tiên họ cần.

Thử tạo mã hash ngay trên trang

Nhập bất kỳ đoạn văn bản nào vào ô bên dưới và xem kết quả SHA-256. Sau đó thử đổi một ký tự, ví dụ thêm dấu chấm, để thấy hiệu ứng tuyết lở: hash mới không giống hash cũ chút nào.

Độ dài …
Mã băm đang tính…

Xem SHA-256 hoạt động trong game

TotalHash là game đào coin miễn phí trên Telegram. Thiết bị của bạn tính hash SHA-256 thật như một cơ chế trong game, còn nhiệm vụ gửi một lượng nhỏ USD₮ và GRAM vào ví TON. Không hứa hẹn thu nhập.

Game miễn phí trên Telegram.

Mở TotalHash

Trả lời nhanh

Hash là gì?

Chuỗi có độ dài cố định tạo từ dữ liệu bằng hàm băm, giống dấu vân tay của dữ liệu.

Hash có giải mã được không?

Không, hàm băm là một chiều, không thể suy ngược ra dữ liệu gốc.

Transaction hash là gì?

Mã định danh duy nhất của một giao dịch, dùng để tra cứu trên trình khám phá khối.

Bitcoin dùng hàm băm nào?

SHA-256, áp dụng hai lần liên tiếp.