Mục đích
Bài viết này cung cấp mô tả chuyên sâu hơn về cách hàm hashes liên kết các khối với nhau và được sử dụng để chứng minh tính hợp pháp của các giao dịch.
Các giả định được thực hiện
Bài viết này giả định người đọc hiểu thông tin trong các bài viết sau:
Kiến thức cơ bản về Blockchain(TODO: Check URL!)
Khối(TODO: Check URL!)
Tóm tắt
Để các khối được liên kết với nhau trong một chuỗi khối, phải có một số nhận dạng liên kết không thể chối cãi giữa khối tiếp theo với khối trước nó. Số thực hiện được điều này được gọi là "hash". Có các hash "tiếp theo" và có các hash "trước". Mỗi hàm hash "tiếp theo" sẽ tính đến số hash, giao dịch và hash "trước đó" của khối hiện tại và sau đó chạy tất cả chúng thông qua một thuật toán để tạo ra một số rất dài đại diện cho sự tích lũy dữ liệu đó. Hàm hash có thể được coi là một dạng tóm tắt dữ liệu của khối ở dạng số phức. Hàm hash trước của khối hiện tại giống với hàm hash tiếp theo của khối trước đó.
Điều này tạo ra một hệ thống trong đó tóm tắt của một khối (hash tiếp theo) là phần bắt đầu của khối tiếp theo và được viết dưới dạng hash “trước đó”. Bằng cách sử dụng hệ thống này, không có thay đổi nào có thể được thực hiện đối với bất kỳ phần nào của khối sau khi nó được viết. Ngay cả khi thay đổi một giao dịch từ +1.00 thành +1.01 sẽ thay đổi hoàn toàn hàm hash “tiếp theo” của khối hiện tại, khiến nó không còn khớp với hàm hash “trước đó” của khối tiếp theo. Các blockchain sử dụng thiết kế này để giữ nguyên hoàn toàn bất biến và cho phép các mạng xác nhận tính hợp pháp của các khối trước khi tải chúng lên chuỗi. Hàm hash cũng có thể được coi là “có dấu” có nghĩa là chúng bắt đầu bằng một chuỗi số cụ thể chẳng hạn như 0x0000… Để thực hiện điều này, một loại nonce khác phải được tính toán để tạo ra một hàm hash “tiếp theo” bắt đầu bằng chuỗi đã chỉ định. Điều này được giải thích rõ hơn trong phần tiếp theo của loạt bài này: Nonces(TODO: Check URL!).