Merkle Tree và Merkle Root trong Blockchain

Người mới bắt đầu11/21/2022, 8:44:13 AM
Cây merkle là một cấu trúc được sử dụng để xác minh và duy trì tính toàn vẹn của dữ liệu trong một tập hợp một cách hiệu quả và hiệu quả. Việc xác minh các giao dịch trên mạng sẽ cần nhiều không gian và sức mạnh xử lý. Bằng cách xây dựng một cây merkle và tạo ra một gốc merkle, các giao dịch có thể được xác minh mà không nhất thiết phải trải qua hàng nghìn giao dịch trên mạng.

Chuỗi khối là một sổ cái phi tập trung để ghi dữ liệu. Đó là công nghệ đằng sau tiền điện tử. Không giống như sổ cái thủ công, chuỗi khối là bất biến, mọi bản ghi trên chuỗi khối là cuối cùng và không thể bị hỏng. Trong số các tính năng góp phần tạo nên tính độc đáo của blockchain là cây merkle và gốc merkle.

Cây Merkle là một phần không thể thiếu của chuỗi khối. Nó giúp xác minh hiệu quả các giao dịch và duy trì tính toàn vẹn của thông tin được lưu trữ trên chuỗi khối. Trong một mạng phi tập trung như Bitcoin, nơi mọi người đều có một bản sao dữ liệu mạng, cần phải xác minh rằng dữ liệu đó là hợp lệ để đảm bảo tính nhất quán. Chúng ta hãy xem cách cây merkle và gốc merkle được áp dụng trong chuỗi khối.

Cây Merkle là gì?

Cây merkle là một cấu trúc được sử dụng để xác minh và duy trì tính toàn vẹn của dữ liệu trong một tập hợp một cách hiệu quả và hiệu quả. Nó bao gồm nhiều hàm băm giao dịch được sắp xếp theo cấu trúc dạng cây. Các hàm băm được sử dụng trong chuỗi khối để thể hiện chi tiết giao dịch một cách đơn giản và nhất quán. Nói cách khác, băm đang lấy đầu vào có độ dài bất kỳ và trả về đầu ra có độ dài cố định. Việc sử dụng các hàm băm để biểu diễn thông tin tạo điều kiện thuận lợi cho việc xử lý hiệu quả một lượng lớn thông tin.

Cây Merkle được phát triển vào năm 1980 bởi giáo sư Stanford, Ralph Merkle. Ông đã trình bày công nghệ này trong bài viết về chữ ký số có tiêu đề “Chữ ký số được chứng nhận” . Cây Merkle chủ yếu được sử dụng trong các mạng ngang hàng (P2P), nơi thông tin được chia sẻ và xác thực độc lập. Cây merkle được sử dụng rộng rãi trong các loại tiền điện tử như Bitcoin để xác minh tính hợp lệ của các giao dịch.

Chuỗi khối như tên của nó được tạo thành từ các khối được liên kết với nhau. Mỗi khối có khả năng lưu trữ hàng ngàn dữ liệu giao dịch. Việc xác minh các giao dịch trên mạng sẽ cần nhiều không gian và sức mạnh xử lý. Nhưng với sự trợ giúp của cây merkle, các giao dịch có thể được xác minh mà không nhất thiết phải trải qua hàng nghìn giao dịch trên mạng.

Các giao dịch được nhóm theo cặp và hàm băm của mỗi cặp được tìm thấy và lưu trữ trong nút cha. Các nút cha cũng được ghép nối và hàm băm của chúng được tìm thấy và lưu trữ ở cấp độ cao hơn. Xu hướng tiếp tục cho đến khi chúng ta tìm đến gốc của cây băm. Tóm lại, có ba loại nút trên cây merkle.

  1. Nút lá: Mỗi giao dịch đơn lẻ trong một khối đều có giá trị băm của nó. Giá trị băm này được lưu trữ trên nút lá.
  2. Nút không lá: Nút này được tạo thành từ các giá trị băm từ các nút lá khác nhau. Nó là trung gian giữa nút lá và nút gốc.
  3. Nút gốc: Đây là gốc của cây merkle và chứa một hàm băm duy nhất đại diện cho tất cả các giao dịch trong một khối được lưu trữ trong tiêu đề khối.

Với cấu trúc trên, việc xác minh sẽ chỉ yêu cầu kiểm tra tiêu đề khối chứ không phải toàn bộ hệ thống. Cây merkle được cho là nhị phân. Điều này có nghĩa là để xây dựng đúng cây merkle, số nút lá phải bằng nhau. Nhưng trong trường hợp chúng ta có số nút lá lẻ, nút cuối cùng được nhân đôi để làm cho nó chẵn.

Rễ Merkle là gì?

Gốc merkle là hàm băm của tất cả các hàm băm của các giao dịch trong cây merkle. Khi các giao dịch đã được ghép nối và băm thành công, kết quả là gốc merkle. Một thay đổi trong bất kỳ dữ liệu nào sẽ dẫn đến thay đổi trong gốc merkle. Vì vậy, merkle root đảm bảo rằng không có dữ liệu nào trên mạng bị thay đổi.

Cây Merkle hoạt động như thế nào?

Cây merkle chia dữ liệu số lượng lớn thành các đơn vị nhỏ hơn để có thể dễ dàng xử lý. Nó kết hợp tất cả dữ liệu giao dịch trong một khối để tạo ra một dấu vân tay kỹ thuật số duy nhất. Do đó việc xác minh giao dịch trở nên dễ dàng và nhanh chóng hơn.

Cây Merkle được hình thành bằng cách kết hợp và băm các cặp nút khác nhau. Kết quả là gốc merkle. Cấu trúc của cây merkle chạy từ dưới lên (gốc đến lá). Các giao dịch khác nhau từ các nút lá được ghép nối để tạo thành các nút không phải lá cho đến khi chúng ta đến nút gốc.

Để hiểu rõ hơn về cây merkle, hãy xem xét một khối có 8 giao dịch khác nhau, T1, T2, T3, T4, T5, T6, T7 và T8. Mỗi giao dịch được băm để tạo ra H1, H2, H3, H4, H5, H6, H7 và H8. Các giá trị băm sau đó được ghép nối và băm lại để cho H(12), H(34), H(56) và (H78). Kết quả được ghép nối một lần nữa và được băm để cho H(1234) và H(5678). Một bước nữa sẽ mang lại H(12345678) làm gốc merkle. Sơ đồ bên dưới biểu thị một cây merkle được xây dựng từ 8 giao dịch khác nhau trong một khối.

Phần giải thích trên cho bạn một cái nhìn sâu sắc về khái niệm cây merkle, mặc dù nó phức tạp hơn những gì chúng ta có. Gốc merkle được tạo cuối cùng được lưu trữ trong tiêu đề khối và được sử dụng trong quá trình khai thác. Ví dụ: trong mạng Bitcoin, tiêu đề khối được băm thay vì xử lý các giao dịch riêng biệt. Với gốc merkle có trong tiêu đề khối, mọi thay đổi trong dữ liệu ban đầu sẽ dễ dàng được phát hiện. Điều này làm cho toàn bộ hệ thống chống giả mạo.

Ưu điểm của cây Merkle

Sử dụng cây merkle và rễ merkle trong chuỗi khối mang lại rất nhiều lợi thế. Nổi bật trong số đó là:

Quy trình xác minh dữ liệu hiệu quả

Cây Merkle cung cấp một phương tiện hiệu quả để xác minh các giao dịch mà không tiêu tốn nhiều sức mạnh xử lý.

Dung lượng bộ nhớ ít hơn

Xác minh giao dịch bằng cây merkle không yêu cầu tải xuống toàn bộ chuỗi khối. Do đó tính toán yêu cầu ít không gian hơn so với các cấu trúc dữ liệu khác.

Giao dịch nhanh

Khi các giao dịch được ghép nối và một hàm băm duy nhất được tạo ra, việc truyền thông tin qua mạng trở nên nhanh hơn. Đó là một trong những lý do chính khiến việc chuyển tiền điện tử diễn ra rất nhanh.

phát hiện giả mạo

Cây merkle giúp phát hiện khi một giao dịch bị can thiệp. Khi một giao dịch được băm và lưu trữ trên chuỗi khối, một thay đổi trong thông tin ban đầu cũng sẽ gây ra sự thay đổi trong hàm băm. Điều này có thể được phát hiện bằng cách so sánh hàm băm hiện tại với hàm băm được lưu trữ trong tiêu đề khối.

Tại sao Merkle Trees và Merkle Roots lại cần thiết trong Blockchain

Chuỗi khối bao gồm các chuỗi khối. Một khối duy nhất có thể chứa tới hàng nghìn giao dịch khác nhau. Băm gốc thu được ở cuối cây merkle tổng hợp tất cả các giao dịch có trong khối đó. Điều này làm cho quá trình xác minh hiệu quả và mọi thay đổi sẽ dễ dàng được phát hiện.

Trong trường hợp cây merkle không được sử dụng, mọi nút trên mạng sẽ có bản sao sổ cái của nó. Việc xác thực các giao dịch trong một hệ thống như vậy sẽ yêu cầu xem qua tất cả các bản sao của nút và so sánh chúng. Việc so sánh các phiên bản khác nhau của sổ cái sẽ yêu cầu nhiều sức mạnh tính toán và dung lượng bộ nhớ. Nhưng với sự trợ giúp của cây merkle, quá trình này được bỏ qua và việc xác minh được thực hiện bằng cách sử dụng sức mạnh tính toán tối thiểu.

Các ứng dụng của Merkle Trees và Merkle Roots trong Blockchain

Cây Merkle và rễ Merkle rất quan trọng trong chuỗi khối. Trong mạng Bitcoin và các loại tiền điện tử khác, chúng rất cần thiết trong quá trình khai thác và xác minh.

Khai thác

Cây merkle là một phần không thể thiếu của mạng Bitcoin. Để xác minh các giao dịch và thêm các khối mới, các công cụ khai thác trên mạng được giao nhiệm vụ băm dữ liệu để tạo đầu ra tuân thủ các điều kiện cụ thể. Điều này có thể tiêu tốn hàng nghìn tỷ lần thử trước khi tìm thấy đầu ra hợp lệ. Để làm điều này, những người khai thác tiếp tục đoán các số ngẫu nhiên để có được kết quả.

Quá trình khai thác được thực hiện dễ dàng và hiệu quả hơn bằng cách sử dụng hàm băm gốc. Tất cả những gì cần thiết là xây dựng một cây merkle thích hợp bằng cách sử dụng các giao dịch khác nhau. Sau đó đặt hàm băm gốc vào tiêu đề khối. Vì vậy, trong quá trình khai thác, bạn chỉ cần băm tiêu đề khối thay vì toàn bộ khối.

xác minh

Khi chạy một nút trên thiết bị có sức mạnh xử lý hạn chế. Sẽ không thể tải xuống và băm tất cả các giao dịch trong một khối. Điều cần thiết ở đây là bằng chứng merkle (bằng chứng cho thấy một giao dịch cụ thể có trong một khối). Điều này làm giảm số lần băm được thực hiện do đó các giao dịch có thể được xác minh bằng thiết bị.

Phần kết luận

Cây Merkle và rễ Merkle được thiết kế để tăng cường xác minh dữ liệu trong chuỗi khối. Những công cụ này giúp đảm bảo tính hợp lệ của các giao dịch mà không cần tải xuống toàn bộ mạng. Chúng là bộ não đằng sau ví di động ngày nay. Người dùng có thể tương tác với chuỗi khối mà không cần phải có toàn bộ bản sao của sổ cái.

Tác giả: Unique
Thông dịch viên: Yuler
(Những) người đánh giá: Matheus, Edward, Joyce, Ashley
* Đầu tư có rủi ro, phải thận trọng khi tham gia thị trường. Thông tin không nhằm mục đích và không cấu thành lời khuyên tài chính hay bất kỳ đề xuất nào khác thuộc bất kỳ hình thức nào được cung cấp hoặc xác nhận bởi Gate.io.
* Không được phép sao chép, truyền tải hoặc đạo nhái bài viết này mà không có sự cho phép của Gate.io. Vi phạm là hành vi vi phạm Luật Bản quyền và có thể phải chịu sự xử lý theo pháp luật.

Merkle Tree và Merkle Root trong Blockchain

Người mới bắt đầu11/21/2022, 8:44:13 AM
Cây merkle là một cấu trúc được sử dụng để xác minh và duy trì tính toàn vẹn của dữ liệu trong một tập hợp một cách hiệu quả và hiệu quả. Việc xác minh các giao dịch trên mạng sẽ cần nhiều không gian và sức mạnh xử lý. Bằng cách xây dựng một cây merkle và tạo ra một gốc merkle, các giao dịch có thể được xác minh mà không nhất thiết phải trải qua hàng nghìn giao dịch trên mạng.

Chuỗi khối là một sổ cái phi tập trung để ghi dữ liệu. Đó là công nghệ đằng sau tiền điện tử. Không giống như sổ cái thủ công, chuỗi khối là bất biến, mọi bản ghi trên chuỗi khối là cuối cùng và không thể bị hỏng. Trong số các tính năng góp phần tạo nên tính độc đáo của blockchain là cây merkle và gốc merkle.

Cây Merkle là một phần không thể thiếu của chuỗi khối. Nó giúp xác minh hiệu quả các giao dịch và duy trì tính toàn vẹn của thông tin được lưu trữ trên chuỗi khối. Trong một mạng phi tập trung như Bitcoin, nơi mọi người đều có một bản sao dữ liệu mạng, cần phải xác minh rằng dữ liệu đó là hợp lệ để đảm bảo tính nhất quán. Chúng ta hãy xem cách cây merkle và gốc merkle được áp dụng trong chuỗi khối.

Cây Merkle là gì?

Cây merkle là một cấu trúc được sử dụng để xác minh và duy trì tính toàn vẹn của dữ liệu trong một tập hợp một cách hiệu quả và hiệu quả. Nó bao gồm nhiều hàm băm giao dịch được sắp xếp theo cấu trúc dạng cây. Các hàm băm được sử dụng trong chuỗi khối để thể hiện chi tiết giao dịch một cách đơn giản và nhất quán. Nói cách khác, băm đang lấy đầu vào có độ dài bất kỳ và trả về đầu ra có độ dài cố định. Việc sử dụng các hàm băm để biểu diễn thông tin tạo điều kiện thuận lợi cho việc xử lý hiệu quả một lượng lớn thông tin.

Cây Merkle được phát triển vào năm 1980 bởi giáo sư Stanford, Ralph Merkle. Ông đã trình bày công nghệ này trong bài viết về chữ ký số có tiêu đề “Chữ ký số được chứng nhận” . Cây Merkle chủ yếu được sử dụng trong các mạng ngang hàng (P2P), nơi thông tin được chia sẻ và xác thực độc lập. Cây merkle được sử dụng rộng rãi trong các loại tiền điện tử như Bitcoin để xác minh tính hợp lệ của các giao dịch.

Chuỗi khối như tên của nó được tạo thành từ các khối được liên kết với nhau. Mỗi khối có khả năng lưu trữ hàng ngàn dữ liệu giao dịch. Việc xác minh các giao dịch trên mạng sẽ cần nhiều không gian và sức mạnh xử lý. Nhưng với sự trợ giúp của cây merkle, các giao dịch có thể được xác minh mà không nhất thiết phải trải qua hàng nghìn giao dịch trên mạng.

Các giao dịch được nhóm theo cặp và hàm băm của mỗi cặp được tìm thấy và lưu trữ trong nút cha. Các nút cha cũng được ghép nối và hàm băm của chúng được tìm thấy và lưu trữ ở cấp độ cao hơn. Xu hướng tiếp tục cho đến khi chúng ta tìm đến gốc của cây băm. Tóm lại, có ba loại nút trên cây merkle.

  1. Nút lá: Mỗi giao dịch đơn lẻ trong một khối đều có giá trị băm của nó. Giá trị băm này được lưu trữ trên nút lá.
  2. Nút không lá: Nút này được tạo thành từ các giá trị băm từ các nút lá khác nhau. Nó là trung gian giữa nút lá và nút gốc.
  3. Nút gốc: Đây là gốc của cây merkle và chứa một hàm băm duy nhất đại diện cho tất cả các giao dịch trong một khối được lưu trữ trong tiêu đề khối.

Với cấu trúc trên, việc xác minh sẽ chỉ yêu cầu kiểm tra tiêu đề khối chứ không phải toàn bộ hệ thống. Cây merkle được cho là nhị phân. Điều này có nghĩa là để xây dựng đúng cây merkle, số nút lá phải bằng nhau. Nhưng trong trường hợp chúng ta có số nút lá lẻ, nút cuối cùng được nhân đôi để làm cho nó chẵn.

Rễ Merkle là gì?

Gốc merkle là hàm băm của tất cả các hàm băm của các giao dịch trong cây merkle. Khi các giao dịch đã được ghép nối và băm thành công, kết quả là gốc merkle. Một thay đổi trong bất kỳ dữ liệu nào sẽ dẫn đến thay đổi trong gốc merkle. Vì vậy, merkle root đảm bảo rằng không có dữ liệu nào trên mạng bị thay đổi.

Cây Merkle hoạt động như thế nào?

Cây merkle chia dữ liệu số lượng lớn thành các đơn vị nhỏ hơn để có thể dễ dàng xử lý. Nó kết hợp tất cả dữ liệu giao dịch trong một khối để tạo ra một dấu vân tay kỹ thuật số duy nhất. Do đó việc xác minh giao dịch trở nên dễ dàng và nhanh chóng hơn.

Cây Merkle được hình thành bằng cách kết hợp và băm các cặp nút khác nhau. Kết quả là gốc merkle. Cấu trúc của cây merkle chạy từ dưới lên (gốc đến lá). Các giao dịch khác nhau từ các nút lá được ghép nối để tạo thành các nút không phải lá cho đến khi chúng ta đến nút gốc.

Để hiểu rõ hơn về cây merkle, hãy xem xét một khối có 8 giao dịch khác nhau, T1, T2, T3, T4, T5, T6, T7 và T8. Mỗi giao dịch được băm để tạo ra H1, H2, H3, H4, H5, H6, H7 và H8. Các giá trị băm sau đó được ghép nối và băm lại để cho H(12), H(34), H(56) và (H78). Kết quả được ghép nối một lần nữa và được băm để cho H(1234) và H(5678). Một bước nữa sẽ mang lại H(12345678) làm gốc merkle. Sơ đồ bên dưới biểu thị một cây merkle được xây dựng từ 8 giao dịch khác nhau trong một khối.

Phần giải thích trên cho bạn một cái nhìn sâu sắc về khái niệm cây merkle, mặc dù nó phức tạp hơn những gì chúng ta có. Gốc merkle được tạo cuối cùng được lưu trữ trong tiêu đề khối và được sử dụng trong quá trình khai thác. Ví dụ: trong mạng Bitcoin, tiêu đề khối được băm thay vì xử lý các giao dịch riêng biệt. Với gốc merkle có trong tiêu đề khối, mọi thay đổi trong dữ liệu ban đầu sẽ dễ dàng được phát hiện. Điều này làm cho toàn bộ hệ thống chống giả mạo.

Ưu điểm của cây Merkle

Sử dụng cây merkle và rễ merkle trong chuỗi khối mang lại rất nhiều lợi thế. Nổi bật trong số đó là:

Quy trình xác minh dữ liệu hiệu quả

Cây Merkle cung cấp một phương tiện hiệu quả để xác minh các giao dịch mà không tiêu tốn nhiều sức mạnh xử lý.

Dung lượng bộ nhớ ít hơn

Xác minh giao dịch bằng cây merkle không yêu cầu tải xuống toàn bộ chuỗi khối. Do đó tính toán yêu cầu ít không gian hơn so với các cấu trúc dữ liệu khác.

Giao dịch nhanh

Khi các giao dịch được ghép nối và một hàm băm duy nhất được tạo ra, việc truyền thông tin qua mạng trở nên nhanh hơn. Đó là một trong những lý do chính khiến việc chuyển tiền điện tử diễn ra rất nhanh.

phát hiện giả mạo

Cây merkle giúp phát hiện khi một giao dịch bị can thiệp. Khi một giao dịch được băm và lưu trữ trên chuỗi khối, một thay đổi trong thông tin ban đầu cũng sẽ gây ra sự thay đổi trong hàm băm. Điều này có thể được phát hiện bằng cách so sánh hàm băm hiện tại với hàm băm được lưu trữ trong tiêu đề khối.

Tại sao Merkle Trees và Merkle Roots lại cần thiết trong Blockchain

Chuỗi khối bao gồm các chuỗi khối. Một khối duy nhất có thể chứa tới hàng nghìn giao dịch khác nhau. Băm gốc thu được ở cuối cây merkle tổng hợp tất cả các giao dịch có trong khối đó. Điều này làm cho quá trình xác minh hiệu quả và mọi thay đổi sẽ dễ dàng được phát hiện.

Trong trường hợp cây merkle không được sử dụng, mọi nút trên mạng sẽ có bản sao sổ cái của nó. Việc xác thực các giao dịch trong một hệ thống như vậy sẽ yêu cầu xem qua tất cả các bản sao của nút và so sánh chúng. Việc so sánh các phiên bản khác nhau của sổ cái sẽ yêu cầu nhiều sức mạnh tính toán và dung lượng bộ nhớ. Nhưng với sự trợ giúp của cây merkle, quá trình này được bỏ qua và việc xác minh được thực hiện bằng cách sử dụng sức mạnh tính toán tối thiểu.

Các ứng dụng của Merkle Trees và Merkle Roots trong Blockchain

Cây Merkle và rễ Merkle rất quan trọng trong chuỗi khối. Trong mạng Bitcoin và các loại tiền điện tử khác, chúng rất cần thiết trong quá trình khai thác và xác minh.

Khai thác

Cây merkle là một phần không thể thiếu của mạng Bitcoin. Để xác minh các giao dịch và thêm các khối mới, các công cụ khai thác trên mạng được giao nhiệm vụ băm dữ liệu để tạo đầu ra tuân thủ các điều kiện cụ thể. Điều này có thể tiêu tốn hàng nghìn tỷ lần thử trước khi tìm thấy đầu ra hợp lệ. Để làm điều này, những người khai thác tiếp tục đoán các số ngẫu nhiên để có được kết quả.

Quá trình khai thác được thực hiện dễ dàng và hiệu quả hơn bằng cách sử dụng hàm băm gốc. Tất cả những gì cần thiết là xây dựng một cây merkle thích hợp bằng cách sử dụng các giao dịch khác nhau. Sau đó đặt hàm băm gốc vào tiêu đề khối. Vì vậy, trong quá trình khai thác, bạn chỉ cần băm tiêu đề khối thay vì toàn bộ khối.

xác minh

Khi chạy một nút trên thiết bị có sức mạnh xử lý hạn chế. Sẽ không thể tải xuống và băm tất cả các giao dịch trong một khối. Điều cần thiết ở đây là bằng chứng merkle (bằng chứng cho thấy một giao dịch cụ thể có trong một khối). Điều này làm giảm số lần băm được thực hiện do đó các giao dịch có thể được xác minh bằng thiết bị.

Phần kết luận

Cây Merkle và rễ Merkle được thiết kế để tăng cường xác minh dữ liệu trong chuỗi khối. Những công cụ này giúp đảm bảo tính hợp lệ của các giao dịch mà không cần tải xuống toàn bộ mạng. Chúng là bộ não đằng sau ví di động ngày nay. Người dùng có thể tương tác với chuỗi khối mà không cần phải có toàn bộ bản sao của sổ cái.

Tác giả: Unique
Thông dịch viên: Yuler
(Những) người đánh giá: Matheus, Edward, Joyce, Ashley
* Đầu tư có rủi ro, phải thận trọng khi tham gia thị trường. Thông tin không nhằm mục đích và không cấu thành lời khuyên tài chính hay bất kỳ đề xuất nào khác thuộc bất kỳ hình thức nào được cung cấp hoặc xác nhận bởi Gate.io.
* Không được phép sao chép, truyền tải hoặc đạo nhái bài viết này mà không có sự cho phép của Gate.io. Vi phạm là hành vi vi phạm Luật Bản quyền và có thể phải chịu sự xử lý theo pháp luật.
Bắt đầu giao dịch
Đăng ký và giao dịch để nhận phần thưởng USDTEST trị giá
$100
$5500