Đường đến Neo3: Vấn đề Độ lưu trạng thái & Niềm tin máy khách nhẹ

TIN TỨC NEO
2020-02-22



Trong bài hôm nay trong chuỗi Đường đến Neo3, chúng ta sẽ bắt đầu xem xét một cải tiến khác đang được phát triển cho Neo3; xác định trạng thái toàn cầu bằng cách duy trì hash root (hàm băm gốc) trạng thái. Việc cung cấp trạng thái được thống nhất trên toàn cầu sẽ giúp giải quyết các vấn đề về niềm tin bằng ví nhẹ, đảm bảo thông tin lưu trữ nhất quán giữa các node và có thể dẫn đến hiệu suất đạt được bằng cách tách biệt khối và độ lưu trạng thái.


Xem các bài trong chuỗi bài Đường đến Neo3 tại đây.


Trạng thái node

Trạng thái của một node có thể được coi là ảnh chụp nhanh của tất cả các giá trị được lưu trữ tại một thời điểm nhất định. Ví dụ: trạng thái của bộ lưu trữ hợp đồng NEP-5 chủ yếu bao gồm số dư token của người dùng. Trạng thái của một bộ lưu trữ node sẽ lần lượt là một bản tóm tắt của tất cả dữ liệu được lưu trữ trong tất cả các hợp đồng.


Hiện tại trên Neo2, các node trên mạng không có trạng thái toàn cầu được đồng ý. Thay vào đó, mỗi node tính toán trạng thái của nó cục bộ, xảy ra bất cứ khi nào một khối được xử lý. Điều này có thể đem đến các vấn đề trong đó mặc dù tất cả các node trên mạng chia sẻ cùng một thông tin khối chính xác (được xác thực bởi các node đồng thuận), trạng thái xác định cục bộ của một node có thể khác với trạng thái khác do cách hiểu dữ liệu khối đó.


Vấn đề này, có thể xuất phát từ sự khác biệt trong phiên bản VM hoặc loại node, có thể nhanh chóng được xác định nếu có sự đồng thuận về một gốc trạng thái liên tục. Các cuộc thảo luận về độ lưu của trạng thái lần đầu tiên được mở ra bởi Erik Zhang, người đã lưu ý rằng các cải tiến hiệu suất có thể phát sinh nếu độ lưu của khối và trạng thái được tách rời:


“Nếu chúng ta tách độ lưu trạng thái khỏi độ lưu của khối, node đồng thuận có thể nhanh chóng xử lý các giao dịch mà không cần chờ viết trạng thái và thực hiện hợp đồng thông minh.”


Vì tính toán trạng thái được thực hiện trong khi các khối vẫn được duy trì, các node đồng thuận có thể được giữ lại việc hỗ trợ quá trình tạo khối giao dịch - đặt lệnh giao dịch, tính phí và tham gia xác thực khối. Do đó, việc đồng bộ hóa giữa tính toán trạng thái và độ lưu của khối có thể gây ra sự chậm trễ trong các khối mới được chuyển tiếp, có khả năng ảnh hưởng đến thông lượng của mạng.


Vấn đề niềm tin của máy khách nhẹ

Các cuộc thảo luận sơ bộ về vấn đề này đã tập trung vào việc cung cấp độ lưu của trạng thái ở dạng tách rời khỏi các khối, tuy nhiên một vấn đề bổ sung do thiếu trạng thái toàn cầu đã đem đến một cách tiếp cận khác. Do sự phụ thuộc của họ vào thông tin được truy xuất từ ​​các node của bên thứ ba, các máy khách nhẹ như ví di động hiện đang gặp phải tình huống khó xử về niềm tin.


Vì các máy khách nhẹ không lưu trữ toàn bộ blockchain mà chúng có thể xác minh trạng thái của số dư người dùng, nên chúng không có cách nào để đảm bảo rằng dữ liệu được truy xuất từ ​​node API hoặc RPC là chính xác. Giải pháp đề xuất cho vấn đề này phụ thuộc vào việc triển khai cấu trúc dữ liệu được xác thực bằng mật mã được gọi là Merkle Patricia trie (MPT).


MPT là sự kết hợp giữa một Patricia trie (một phiên bản đặc biệt của trie cơ số nhị phân), được sử dụng để tra cứu, chèn và xóa hiệu quả, và một cây Merkle, được sử dụng để cung cấp xác minh mật mã nhanh chóng cho toàn bộ cấu trúc dữ liệu thông qua một băm gốc duy nhất.


Sau khi MPT được triển khai, các node trên mạng có thể tiếp tục tính toán trạng thái cục bộ theo cách xác định, cập nhật gốc Merkle khi nó đi. Băm gốc này sau đó có thể được xác nhận cùng với khối trong quá trình đồng thuận, nơi nó có thể được duy trì và tham chiếu bởi các node khác để xác minh tính toàn vẹn của dữ liệu.


Chúng ta sẽ cùng khám phá Merkle Patricia tries và triển khai Neo3 chi tiết hơn trong phần sau.


Root trạng thái trong tiêu đề khối

Để giải quyết các vấn đề về niềm tin này và cung cấp trạng thái toàn cầu, việc bổ sung gốc trạng thái cho các tiêu đề khối đã được đề xuất. Điều này sẽ cho phép các máy khách nhẹ chỉ lưu trữ các tiêu đề khối, sử dụng chúng để chứng minh trạng thái để kiểm tra tính xác thực của dữ liệu được cung cấp bởi các node RPC. Cho phép xác minh theo cách này giải quyết vấn đề niềm tin với các máy khách nhẹ, cho phép thông tin được xác nhận mà không yêu cầu bản sao đầy đủ của blockchain.


Hơn nữa, việc đưa vào một tiêu đề khối đảm bảo rằng mọi node trên mạng đều phù hợp với trạng thái toàn cầu. Điều này đảm bảo rằng tất cả các node có cùng quan điểm về lưu trữ hợp đồng, loại bỏ các vấn đề về tính nhất quán bằng cách cung cấp một phương thức cho các node để kiểm tra xem chúng có phù hợp với các node đồng thuận hay không.


Mặc dù là một giải pháp hữu ích theo cách riêng của mình, phương pháp này đi kèm với một số nhược điểm. Trong bài viết tiếp theo, chúng ta sẽ theo dõi các cuộc thảo luận của nhà phát triển về chủ đề này và nêu bật các khả năng sửa lỗi độc đáo của Neo mà các nhà phát triển cốt lõi nhắm đến để bảo tồn trong quá trình thực thi root trạng thái.


TINTUCNEO – Tham gia các cộng đồng Tin tức NEO tại:

Website tin tức

Medium tin tức

Telegram tin tức

Telegram Thảo luận

Fanpage tin tức

Kênh Youtube




0 bình luận. Để lại câu hỏi & nhận trả lời nhanh qua email.




Bài cùng chủ đề
Tổng quan về AMA của Novem trên Reddit Neo và diễn đàn Cộng đồng Nash
Vào ngày 3/7, Nash đã niêm yết token NNN backed bởi vàng của Novem để giao dịch với USDC. Để quảng bá việc niêm yết, Nash đã tổ chức AMA trên diễn đàn cộng đồng của họ với đại diện từ nhóm Novem. Ngoài ra, vào ngày 6/7, Novem đã tham gia AMA trên sub-Reddit Neo. Novem đã trả lời các câu hỏi liên quan đến lợi ích của việc nắm giữ tài sản được hỗ trợ bằng vàng, việc tuân thủ quy định, xác minh quyền sở hữu vàng, công ty của họ tại Liechtenstein, đổi token NNN lấy vàng vật chất, v.v.

2020-07-08

Bản tin tuần TINTUCNEO: 29/06 - 05/07
Nhà đồng sáng lập Neo, Da Hongfei, đã xuất bản một bản op-ed trên Coin Telegraph, trong đó nêu rõ cách ông tin rằng USDT stablecoin đã tác động đến địa chính trị và sự phát triển của các loại tiền mã hóa có chủ quyền trong tương lai.

2020-07-07

Paul diMarzio của IWA: “Sau 36 năm trong ngành, tôi lại cảm thấy mình như một đứa trẻ."
Sau gần 33 năm làm việc tại IBM, Paul diMarzio được tiếp thêm năng lượng với vai trò là giám đốc marketing cho Liên minh InterWork (IWA) và công việc mà anh ấy làm để phát triển hệ sinh thái. “Sau 36 năm trong ngành, tôi lại cảm thấy như một đứa trẻ. Điều này rất thú vị, đó là một nơi tuyệt vời,” anh ấy nói. NNT đã nói chuyện với diMarzio cho tập 34 của podcast Neo News Today.

2020-07-07

Ví Beta O3 đã sẵn sàng tải xuống cho Windows, Mac, Linux, iOS và Android
O3 Labs đã công bố bản khởi chạy lại beta của ứng dụng ví máy tính để bàn dành cho Windows, Mac và Linux và các ứng dụng ví di động cho iOS và Android. Cùng với thông báo, O3 Labs đã phát hành một hướng dẫn từng bước để tải xuống ví của mình trên các hệ điều hành và hướng dẫn kết nối Ví O3 với Ledger Nano S, Switcheo và Staketology.

2020-07-06

Tham gia Cộng đồng NEO Việt Nam - TINTUCNEO
NEO-based projects? Contact us at [email protected] for collaborations in the Vietnam market