BTC
ETH
HTX
SOL
BNB
Xem thị trường
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Một bài tìm hiểu khái niệm và thành phần của cây Merkle

Umbrella Network
特邀专栏作者
2021-05-07 06:25
Bài viết này có khoảng 1794 từ, đọc toàn bộ bài viết mất khoảng 3 phút
Triển khai cây Merkle để chia sẻ và xác minh dữ liệu trong một hệ thống dựa trên web phi tập trung.
Tóm tắt AI
Mở rộng
Triển khai cây Merkle để chia sẻ và xác minh dữ liệu trong một hệ thống dựa trên web phi tập trung.

câu hỏi:

Trong một mạng tập trung, dữ liệu thường chỉ có thể truy cập được thông qua một nguồn duy nhất, vì vậy việc tổ chức một bản sao dữ liệu không tốn nhiều công sức và không có lựa chọn nào khác ngoài việc tin tưởng vào hệ thống.

Tuy nhiên, trong một mạng phi tập trung có nhiều nút, điều quan trọng là tổ chức dữ liệu hiệu quả. Trong một chuỗi khối phân phối dữ liệu, thách thức đầu tiên là truy cập dữ liệu một cách hiệu quả và thứ hai là xác minh và phân phối các bản sao chính xác của dữ liệu trên tất cả các nút.

Triển khai cây Merkle để chia sẻ và xác minh dữ liệu trong một hệ thống dựa trên web phi tập trung.

Triển khai cây Merkle để chia sẻ và xác minh dữ liệu trong một hệ thống dựa trên web phi tập trung.

Cây Merkle giảm chi phí bằng cách:

  • Tổ chức dữ liệu theo cách chia sẻ dữ liệu và xác thực dữ liệu không yêu cầu sức mạnh xử lý.

  • tiêu đề phụ

Khái niệm về cây Merkle

Trong số các triển khai của Bitcoin, Ethereum, IPFS, Git, Apache Cassandra và BitTorrent, mẫu số chung là công nghệ lưu trữ dữ liệu của họ, cây Merkle, là thành phần cơ bản của chuỗi khối và có thể Xác thực cấu trúc dữ liệu lớn một cách hiệu quả và an toàn.

Mô tả hình ảnh

cây băm nhị phân

Cây Merkle là cây băm nhị phân trong đó giá trị của một nút bên trong là hàm băm của nút lá của nó. Tại gốc của cây Merkle, chúng ta có các giá trị băm của các giao dịch, được ký hiệu là H[A], H[B], H[C] và H[D] trong sơ đồ trên, được gọi là nút lá hoặc nút con . Ở cây bên trái, H[A] và H[B] lần lượt là giá trị băm của khối dữ liệu L1 và L2, còn ở cây bên phải, H[C] và H[D] là giá trị băm của L3 và L4, tương ứng. Nút trong H[AB] là phép nối của nút lá H[A] và H[B], tương tự H[CD] là phép nối của H[C] và H[D].

Mỗi lá/con của cây Merkle chứa một hàm băm của giao dịch, theo sau là một hàm băm chứa "hàm băm kết hợp" của lá/con (nút giữa "H[AB]" và "H[CD]"), sau đó nút gốc, chứa hàm băm kết hợp (được gọi là gốc Merkle) của các cây bên trái và bên phải của nó (H[ABCD]), như được mô tả ở trên.

Thật thú vị, nếu chúng ta muốn thực hiện bất kỳ thay đổi nào trong một giao dịch nhất định, hàm băm nút trung gian sẽ thay đổi, khiến hàm băm gốc cũng thay đổi theo. Điều này có nghĩa là nếu ai đó cố gắng thay đổi một giao dịch cụ thể, hàm băm gốc sẽ bị thay đổi và một khi hàm băm gốc bị thay đổi, tất cả các hàm băm tiếp theo của tất cả các khối tồn tại sẽ bị thay đổi do chúng được liên kết với nhau. Bằng cách này, kẻ tấn công không thể cố gắng thao túng dữ liệu, bởi vì để làm như vậy, anh ta sẽ phải thực sự thay đổi dữ liệu giao dịch của toàn bộ chuỗi, tất nhiên đây là một nhiệm vụ bất khả thi. Đây là vẻ đẹp của thiết kế cây Merkle, làm cho nó trở thành một cấu trúc dữ liệu chống giả mạo.

Cây Merkle chịu trách nhiệm về tính toàn vẹn của dữ liệu, vì vậy bạn không cần phải xem qua toàn bộ giao dịch để xem khả năng xác minh của nó. Cây có thể được chia thành các khối dữ liệu nhỏ có thể được sử dụng để xác thực các giao dịch trên mạng. Khái niệm này được gọi là Bằng chứng Merkle và rất hữu ích trong các hệ thống phi tập trung. Merkle Proofs không cần xác minh tất cả thông tin trong toàn bộ cây, chỉ cần đủ sức mạnh tính toán để xác minh một lượng nhỏ dữ liệu để xem nó có đúng không.

trường ứng dụng

  • Cây Merkle được sử dụng để đồng bộ hóa dữ liệu trong các hệ thống phi tập trung và phân tán, nơi cùng một dữ liệu sẽ tồn tại ở nhiều vị trí.

  • Chúng cũng được sử dụng để kiểm tra sự không nhất quán trong dữ liệu và phát hiện sự không nhất quán giữa các bản sao của cơ sở dữ liệu.

lợi ích chính

  • Cây Merkle có thể chia dữ liệu thành các phần khác nhau, giúp cải thiện khả năng mở rộng quy mô lớn, bởi vì cây Merkle có thể được chia thành các khối thông tin nhỏ để xác minh.

  • Nó có hiệu quả xác minh tính toàn vẹn của dữ liệu.

  • Bất kỳ lượng dữ liệu nào cũng có thể được lưu trữ trong cây Merkle, cây này sẽ luôn kết thúc bằng hàm băm gốc ở trên cùng.

  • Nó cung cấp dữ liệu nâng cao và xác nhận tính nhất quán.

  • tiêu đề phụ

Merkle Trees mang lại lợi ích như thế nào cho mạng lưới Umbrella

Vì cây Merkle giúp tổ chức dữ liệu hiệu quả để quá trình xác minh sử dụng ít sức mạnh tính toán hơn, nên Umbrella Network sử dụng nó để đưa hàng nghìn điểm dữ liệu trong thế giới thực vào chuỗi với chi phí thấp mà không ảnh hưởng đến tính bảo mật và tính toàn vẹn của dữ liệu.

Trong hệ thống của Umbrella Network, mỗi lá trên cây Merkle đại diện cho một điểm dữ liệu cho một lời tiên tri. Băm gốc Merkle là mã định danh duy nhất cho toàn bộ khối giao dịch trong cây Merkle. Sự đồng thuận "bằng chứng cổ phần" được thực hiện trên hàm băm gốc Merkle đại diện cho tất cả dữ liệu trong cây và bộ giao dịch được xác minh cuối cùng được ghi trên chuỗi với chi phí giao dịch.

Liên kết gốc:

Liên kết gốc:

https://medium.com/umbrella-network/merkle-trees-an-introduction-to-concepts-and-components-5d2ff2b939e2

Tác giả: Shubhi Tiwari

Bản dịch: Vane


UmbrellaNetwork
Chào mừng tham gia cộng đồng chính thức của Odaily
Nhóm đăng ký
https://t.me/Odaily_News
Nhóm trò chuyện
https://t.me/Odaily_CryptoPunk
Tài khoản chính thức
https://twitter.com/OdailyChina
Nhóm trò chuyện
https://t.me/Odaily_CryptoPunk