Tài sản mã hóaiCapitalBài 038 phút đọc

Blockchain là gì? Cơ chế sổ cái phân tán

Nội dung giáo dục và nghiên cứu, không phải tư vấn đầu tư cá nhân.

Minh họa nhiều nút mạng duy trì các bản sao của một lịch sử giao dịch chung.

Blockchain là công nghệ sổ cái đứng sau Bitcoin và nhiều tài sản mã hóa khác. Bài này giải thích blockchain gồm những thành phần nào — hash, block, Merkle tree, node và cơ chế đồng thuận —, chúng phối hợp ra sao để nhiều bên cùng giữ một lịch sử giao dịch, và vì sao “không thể sửa” luôn đi kèm điều kiện.

Nếu nhiều tổ chức cùng giữ một cuốn sổ giao dịch, câu hỏi khó không phải là sao chép cuốn sổ. Câu hỏi khó là làm sao để các bản sao thống nhất: giao dịch nào hợp lệ, giao dịch nào đến trước và phải xử lý thế nào khi hai bản lịch sử xung đột.

Blockchain là một cách kết hợp cấu trúc dữ liệu, mạng máy tính và quy tắc đồng thuận để giải quyết bài toán này. Nó có thể làm cho việc sửa lịch sử trở nên dễ phát hiện và tốn kém, nhưng không tự bảo đảm dữ liệu đầu vào đúng, không loại bỏ quản trị và không tạo ra tính “bất biến tuyệt đối”.

Nội dung chính

Một blockchain thường có ba lớp cần tách biệt:

  1. Cấu trúc dữ liệu: giao dịch được gom vào block; mỗi block chứa thông tin liên kết tới block trước bằng hash.
  2. Mạng node: nhiều máy tính nhận, kiểm tra, lưu và truyền dữ liệu theo một bộ quy tắc.
  3. Cơ chế đồng thuận: quy định cách mạng chọn lịch sử được tiếp tục khi có nhiều đề xuất cạnh tranh.

Bitcoin là ví dụ dùng xuyên suốt bài này. Các blockchain khác có thể dùng cách tổ chức dữ liệu, phân quyền và đồng thuận khác đáng kể.

Blockchain khác cơ sở dữ liệu truyền thống ở đâu

Cơ sở dữ liệu truyền thống thường có một tổ chức cấp quyền, sửa lỗi và quyết định phiên bản chính thức. Blockchain phù hợp với bài toán nhiều bên cần chia sẻ lịch sử nhưng không muốn trao toàn quyền cập nhật cho một bên. Đổi lại, mạng phân tán thường chậm, phức tạp và khó sửa sai hơn; nó không mặc nhiên tốt hơn cơ sở dữ liệu thông thường.

Hàm băm và SHA-256: dấu vân tay của dữ liệu

Hàm băm mật mã nhận dữ liệu có độ dài bất kỳ và tạo ra một chuỗi đầu ra có độ dài cố định, gọi là digest hoặc hash. Với một hàm băm được thiết kế tốt, thay đổi rất nhỏ ở dữ liệu đầu vào thường tạo ra đầu ra khác đáng kể. NIST xếp SHA-256 trong họ SHA-2 và quy định thuật toán này trong Secure Hash Standard. Nguồn: NIST FIPS 180-4.

Hash hữu ích để kiểm tra tính toàn vẹn: nếu dữ liệu thay đổi, hash không còn khớp. Nhưng hash không phải mã hóa. Nó không che giấu dữ liệu và không tự chứng minh dữ liệu ban đầu là đúng. Nếu thông tin sai được đưa vào hệ thống, blockchain có thể ghi lại một cách nhất quán rằng thông tin sai đó đã được gửi.

Hai digest là kết quả SHA-256 thật của “abc” và “abd” trong ví dụ của bài. Đổi một ký tự, digest đổi hoàn toàn.

Block, block header và Merkle tree

Trong Bitcoin, các giao dịch được gom vào một block. Phần block header chứa các trường tóm tắt quan trọng, gồm hash của block trước, Merkle root đại diện cho tập giao dịch, thời gian, target và nonce. Việc đưa hash của block trước vào header tạo ra chuỗi liên kết: sửa một block cũ làm thay đổi hash và phá vỡ liên kết với các block sau.

Merkle tree gom nhiều transaction hash thành một Merkle root. Mỗi cặp hash được băm tiếp theo từng tầng cho đến khi còn một giá trị gốc. Cấu trúc này cho phép tạo Merkle proof để kiểm tra rằng một giao dịch thuộc tập giao dịch đã cam kết bởi root mà không cần đưa toàn bộ tập vào bằng chứng.

Bitcoin whitepaper sử dụng Merkle tree trong mô tả block và Simplified Payment Verification. Tuy vậy, Merkle proof chỉ chứng minh membership tương ứng với một root; nó không tự chứng minh block hợp lệ hay chain đang xét là lịch sử có nhiều công sức nhất. Nguồn: Bitcoin whitepaper.

Giao dịch được ghép từng cặp lên thành Merkle root nằm trong block header. Để chứng minh C có trong khối, chỉ cần D và AB (khung xanh lá) thay vì cả bốn giao dịch.

Node làm gì

Node có thể nhận giao dịch, kiểm tra quy tắc, relay dữ liệu và lưu chain. Full node tự xác thực block và giao dịch theo consensus rules nó đang chạy. Khi nhận block, node kiểm tra cả Proof of Work, cấu trúc, giao dịch, chữ ký, UTXO và subsidy; hash hợp lệ không cứu được block sai rules.

Điểm này sửa một ngộ nhận phổ biến: miner đề xuất và sắp xếp giao dịch trong block candidate, nhưng không có quyền đơn phương bắt các node chấp nhận một block vi phạm rules. Bitcoin Core triển khai logic xác thực và quản lý chain state trong phần mềm node; các claim kỹ thuật cụ thể phải được đối chiếu với phiên bản source được khóa khi xuất bản. Nguồn tham khảo hiện hành: Bitcoin Core validation source.

Đồng thuận và fork

Mạng có thể tạm thời nhận hai block hợp lệ cùng xây trên một block cha. Bitcoin chọn chain theo accumulated proof of work, không chỉ đếm block. Khi một nhánh vượt lên, giao dịch ở nhánh còn lại có thể quay về trạng thái chưa xác nhận. “Fork” cũng có thể chỉ thay đổi phần mềm hoặc rules; chi tiết soft/hard fork nằm ngoài bài.

Đồng thuận giao thức không đồng nghĩa mọi người tham gia đồng ý về mọi vấn đề. Nó chỉ cho phép các node đang chạy rules tương thích hội tụ quanh một lịch sử theo cơ chế đã định. Việc cộng đồng chấp nhận thay đổi rules là một quá trình xã hội và quản trị khác.

Hai khối hợp lệ có thể xuất hiện gần cùng lúc. Khi một nhánh có thêm khối, các nút theo chuỗi tích lũy nhiều công việc hơn; nhánh còn lại bị bỏ.

Immutability có điều kiện

Blockchain thường được gọi là “bất biến”, nhưng cách nói chính xác hơn là lịch sử có khả năng chống sửa đổi trong các điều kiện nhất định.

Hash làm thay đổi có thể phát hiện; liên kết block buộc bên sửa lịch sử phải tính lại phần sau. Proof of Work làm lịch sử thay thế tốn tài nguyên. Nhưng giao dịch vẫn có thể bị đảo ngược nếu chain cạnh tranh vượt lên; dữ liệu ngoài chuỗi vẫn có thể sai, và mức chống sửa đổi còn phụ thuộc hashrate, miner và rules của node.

Mỗi block giữ hash của block trước, nên sửa một block làm lộ ra ở mọi mắt xích phía sau.

Confirmation và finality

Một giao dịch Bitcoin có confirmation đầu tiên khi được đưa vào một block thuộc active chain. Mỗi block tiếp theo làm tăng depth của giao dịch và tăng công sức mà bên muốn thay lịch sử phải vượt qua. Đây thường được gọi là probabilistic finality: xác suất đảo ngược có thể giảm nhưng không trở thành bằng không theo một số block chung cho mọi tình huống.

Khái niệm này khác final settlement trong hạ tầng tài chính. CPMI định nghĩa final settlement gắn với việc chuyển giao không thể hủy ngang và vô điều kiện theo hợp đồng hoặc quy tắc pháp lý của hệ thống. Vì vậy, không nên dịch một số confirmation thành kết luận pháp lý rằng mọi nghĩa vụ đã hoàn tất. Nguồn: CPMI Glossary.

Mỗi khối mới phía sau thêm một xác nhận. Càng sâu càng khó đảo ngược, nhưng “chắc chắn” vẫn là mức xác suất có điều kiện.

Ba ngộ nhận cần tránh

Blockchain lưu dữ liệu nên dữ liệu chắc chắn đúng. Hệ thống có thể kiểm tra format, chữ ký và rules; nó không biết một thông tin về thế giới bên ngoài có trung thực hay không nếu không có cơ chế oracle và quản trị phù hợp.

Blockchain không thể thay đổi. Lịch sử có khả năng chống sửa đổi theo thiết kế và giả định; fork, reorganisation, lỗi hoặc thay đổi đồng thuận vẫn có thể xảy ra.

Có nhiều node đồng nghĩa quyền lực được phân tán. Số node chỉ là một chiều. Còn phải xét phần mềm, hosting, mining/validation, token distribution, governance và khả năng người dùng tự xác minh.

Khi đánh giá một blockchain nên hỏi gì

Ai xác thực và sắp xếp giao dịch; node kiểm tra rules nào; mạng xử lý hai lịch sử cạnh tranh ra sao; ai có thể nâng cấp rules; và dữ liệu ngoài chuỗi đi vào bằng cách nào?

Kết luận

Blockchain là sự kết hợp của ba lớp: dữ liệu được liên kết bằng hash, mạng node tự kiểm tra và cơ chế đồng thuận chọn lịch sử chung. Nhờ đó, sửa lịch sử trở nên dễ phát hiện và tốn kém, nhưng không phải là không thể; và dữ liệu đầu vào sai vẫn có thể được ghi lại đúng quy tắc.

Những điểm cần nhớ:

  • Blockchain kết hợp cấu trúc block/hash, mạng node và cơ chế đồng thuận.
  • Hash giúp phát hiện thay đổi nhưng không chứng minh dữ liệu đầu vào đúng.
  • Merkle tree cho phép cam kết với tập giao dịch và tạo proof gọn hơn.
  • Miner đề xuất block; node độc lập xác thực theo rules.
  • Immutability và finality đều có điều kiện, không phải bảo đảm tuyệt đối.

Đọc tiếp

Lưu ýBài viết nhằm mục đích cung cấp thông tin và giáo dục, không phải tư vấn đầu tư, pháp lý hay thuế và không phải khuyến nghị mua, bán hoặc nắm giữ bất kỳ tài sản mã hóa nào. Tài sản mã hóa có rủi ro cao, gồm biến động giá, mất quyền kiểm soát khóa và thay đổi pháp lý. Thông tin đúng tại ngày cập nhật ghi trên bài và có thể thay đổi sau đó.Cập nhật lần cuối: