Bằng chứng dự trữ là gì và tại sao nó quan trọng?
Cập nhật ngày 2026/09/16

Cây Merkle là gì?

Cây Merkle là một loại cấu trúc thường được dùng để nhanh chóng xác minh tính toàn vẹn của dữ liệu, chủ yếu trong một tập dữ liệu. Cây này còn được gọi là cây băm, trong hầu hết trường hợp được triển khai theo dạng nhị phân, với mỗi nút thường có hai “nút con”. Trong thế giới tiền mã hóa, cấu trúc này được dùng để mã hóa dữ liệu blockchain hiệu quả và an toàn hơn, nhưng chúng ta sẽ tìm hiểu kỹ hơn về điều đó sau.
Cây Merkle là một phương thức xác minh nội dung nhanh chóng và an toàn trên các tập dữ liệu lớn. Nó cũng giúp xác minh tính nhất quán và nội dung của dữ liệu. Cây Merkle là một cấu trúc dữ liệu toán học được tạo thành từ các giá trị băm của nhiều khối khác nhau. Các giá trị băm này tóm tắt mọi giao dịch trong khối nhất định, nhờ đó Cây Merkle thường được sử dụng trong mật mã học.
Cây Merkle có ba loại nút có thể được tìm thấy bên trong. Bao gồm:
Nút gốc: được lưu trực tiếp trong phần đầu khối và còn được gọi là gốc Merkle.
Nút lá: bao gồm các giá trị băm của dữ liệu giao dịch. Dữ liệu của mỗi giao dịch trong khối được băm, tạo ra giao dịch ID, sau đó được lưu trong các nút lá.
Nút không phải lá: cuối cùng, Cây Merkle còn có nút không phải lá, chứa các giá trị băm của “các nút con”. Được gọi là các nút trung gian, về cơ bản chúng là các giá trị băm được sử dụng cho đến khi quá trình đạt đến gốc cây.
Bản chất của Cây Merkle là cho phép xác minh giao dịch mà không cần sử dụng nhiều dữ liệu. Điều này giúp giảm quá trình xử lý CPI, đồng thời duy trì tính bảo mật cao hơn; cả hai đều cần thiết.
Cây Merkle có tất cả giao dịch được nhóm thành từng cặp, để mỗi cặp có một giá trị băm được tính toán và lưu trực tiếp trong nút cha phía trên cặp đó. Điều này cũng áp dụng cho các nút phía trên chúng, rồi các nút phía trên nữa, cho đến khi đạt được gốc Merkle.
Ví dụ về Cây Merkle với gốc Merkle, nút không phải lá và nút lá, Nguồn: geeksforgeeks.org
 
Hãy xem một ví dụ đơn giản. Trong biểu đồ bên dưới, chúng ta có 4 giao dịch khác nhau, được ký hiệu là A, B, C, D. Mỗi giao dịch trước tiên được băm, tạo thành Hash A, Hash B, v.v. Bốn giá trị băm được tạo ra và ghép vào một nút lá, dẫn đến việc tạo ra các nút không phải lá. Trong trường hợp này, đó là hash AB và hash CD, là kết quả của hash con A và hash con B; còn hash AB là từ hash C và hash D, tạo thành hash CD.
Hai giá trị băm mới này, là các giá trị băm cha của bốn giao dịch ban đầu, sau đó lại được băm. Điều này tạo ra hash ABCD và một gốc của Cây Merkle. Gốc Merkle sau đó chịu trách nhiệm tóm tắt dữ liệu mà các giao dịch ban đầu chứa. Thông tin này được lưu trong phần đầu khối.

Lợi ích của Cây Merkle

Cây Merkle, với tư cách là một cấu trúc, mang lại một số lợi ích cũng được khai thác trong công nghệ tiền mã hóa và blockchain. Trước khi xem các lợi ích này được sử dụng như thế nào, trước tiên hãy tìm hiểu chúng là gì.
Không có độ trễ: khi sử dụng Cây Merkle, dữ liệu có thể được truyền qua mạng mà không có bất kỳ độ trễ nào. Nếu không sử dụng Cây Merkle, điều này là không thể vì toàn bộ dữ liệu phải được truyền đi khắp mạng để xác minh, gây ra độ trễ.
Quy trình xác minh hiệu quả: cần sử dụng rất ít bộ nhớ trong quá trình xác minh nhờ cách dữ liệu được cấu trúc. Điều này có nghĩa là tính hợp lệ và tính toàn vẹn của giao dịch có thể được xác minh gần như ngay lập tức. Ngoài ra, nhờ đó, chỉ cần gửi một lượng dữ liệu nhỏ so với kích thước của tập dữ liệu.
Ít dung lượng đĩa: song hành với lợi ích nêu trên là dung lượng đĩa mà Cây Merkle chiếm dụng, nhỏ đáng kể so với các cấu trúc dữ liệu khác. Điều này cho phép xác minh giao dịch với băng thông và năng lực tính toán phù hợp.
Phát hiện hành vi can thiệp: mọi giao dịch đều được lưu trữ trong Merkle Tree. Điều này có nghĩa là bất kỳ nỗ lực nào nhằm thay đổi một giao dịch đều sẽ dẫn đến Merkle root và chứa thông tin trong block header. Do đó, có thể dễ dàng so sánh dữ liệu hiện tại với phiên bản đã bị can thiệp và nhanh chóng phát hiện mọi hành vi gian lận.
Merkle Tree và tiền mã hóa
Mặc dù không nhiều người không chuyên về kỹ thuật chú ý đến Merkle Tree trong cộng đồng tiền mã hóa, nhưng các cypherpunk hoặc những người ủng hộ tiền mã hóa có kiến thức kỹ thuật chuyên sâu hiểu rõ giá trị của Merkle Tree trong lĩnh vực này. Merkle Tree thiết yếu đối với công nghệ blockchain vì chúng hỗ trợ xác minh nhanh chóng và dễ dàng. Trên thực tế, loại hình xác minh này không thể thực hiện bằng bất kỳ kỹ thuật hay cấu trúc nào khác.
Merkle Tree mang lại khả năng xử lý các tập dữ liệu khổng lồ cho nhà phát triển, những người có thể nén chúng hiệu quả bằng cách loại bỏ toàn bộ dữ liệu không cần thiết, rồi sau đó chuyển thành các hash. Trong thế giới tiền mã hóa, lợi ích này có thể thể hiện qua hiệu quả sử dụng tài nguyên, khả năng mở rộng hiệu quả, xác thực thanh toán cơ bản, xác minh giao dịch hoặc cấu trúc nhẹ.
Merkle Tree chia dữ liệu thành các phần thông tin nhỏ, Nguồn: simplilearn.com
 
Merkle Tree trong crypto – Bitcoin và Ethereum
Sau khi tìm hiểu ngắn gọn Merkle Tree là gì và cách chúng được sử dụng trong lĩnh vực tiền mã hóa, hãy cùng đi sâu vào các ví dụ cụ thể hơn về trường hợp sử dụng của chúng.
 
Bitcoin
Có lẽ nhiều bạn đã đoán được, nhưng Bitcoin sử dụng Merkle Tree trong nhiều trường hợp. Rõ ràng nhất là việc sử dụng chúng trong Bitcoin block header, vì hash của mọi giao dịch có trong block đều được đặt tại đó.
Tuy nhiên, đó chưa phải là tất cả. Cấu trúc Merkle Tree cũng được dùng trong đào coin hoặc xác minh. Đối với miner, Merkle root đóng vai trò then chốt trong việc nâng cao hiệu quả của toàn bộ quy trình. Nhờ cấu trúc này và các đặc tính vốn có của nó, miner chỉ cần kiểm tra block header sau khi chúng được tạo thành Merkle Tree. Vì vậy, kiểm tra Merkle root hiệu quả hơn nhiều so với kiểm tra toàn bộ block.
Cấu trúc này cũng được dùng để xác minh, cụ thể hơn là khi một node được vận hành trên thiết bị tương đối yếu. Nếu thiết bị có tài nguyên hạn chế, thay vì tải xuống mọi hash và block, nó sẽ sử dụng Merkle proof, trong đó xác nhận rằng một giao dịch có mặt trong block. Điều này làm giảm số lượng hash và cho phép xác minh mà không cần nhiều tài nguyên năng lượng.
 
Ethereum
Tiền mã hóa lớn thứ hai, Ethereum, dựa trên Merkle Patricia Tree, một phiên bản sửa đổi của Merkle Tree. Điều này có nghĩa là mỗi block trong blockchain này không gồm một mà gồm ba Merkle Tree, trong đó mỗi root có mục đích riêng.
Root đầu tiên dành cho mọi giao dịch. Root thứ hai thể hiện trạng thái của giao dịch. Root cuối cùng là biên nhận của toàn bộ giao dịch. Nhờ Merkle Tree, bất kỳ ai cũng có thể xem Merkle root và biết giao dịch có nằm trong một block cụ thể hay không, liệu giao dịch đã được phê duyệt và gửi đi chưa, cũng như số dư của giao dịch là bao nhiêu.
 
Kết luận
Cấu trúc Merkle Tree ngày càng trở nên quan trọng trong phong trào mật mã học kể từ khi tiền mã hóa ra đời. Khi Bitcoin, đồng tiền mã hóa đầu tiên, sử dụng Merkle Tree trong nhiều khía cạnh, loại cấu trúc này cũng lan rộng sang các tiền mã hóa khác nhờ những lợi ích mà nó mang lại cho các dự án nền tảng.
 
 
OrangeX.com team