Vitalik Buterin và Joseph Poon đưa ra giải pháp mở rộng Plasma

Satoshi Nakatomoon 18/08/2017

Follow Tiendientu on Telegram

Một bản đề xuất về framework Plasma sẽ tạo ra các code hợp đồng phân tán có khả năng tự mở rộng, cho phép tự cập nhật “hàng tỷ” trạng thái mỗi giây trên Blockchain Ethereum.

Dự thảo công việc của Plasma:( Scalable Autonomous Smart Contracts) – whitepaper được viết bởi nhà sáng lập Ethereum – Vitalik Buterin và đồng tác giả whitepaper về Lightning Network, ông Joseph Poon, được phát hành ngày 10.8. 2017. Tài liệu này đưa ra kế hoạch mở rộng số lượng giao dịch mỗi giây làm Blockchain Ethereum có khả năng xử lý tốt hơn.

Vitalik Buterin – Nhà sáng lập Ethereum

Bản đề xuất nền tảng Plasma có thể giúp khả năng thực hiện nhiều giao dịch hơn trên Blockchain Ethereum (hoặc bất kỳ Blockchain nào khác có sự tương thích). Để có thể thực hiện điều này, một số tính năng sẽ kết hợp lại với nhau, và chính bản thân giao thức cũng có sự tích hợp các công cụ như Proof-of-Stake (PoS), Nakamoto Consensus (gọi chung là Proof-of-work), một giải pháp mở rộng cluster được gọi là MapReduce, và một cấu trúc thúc đẩy nhằm ngăn chặn hành vi Bynantine từ những người tham gia. Khi kết hợp những thuộc tính này sẽ cho phép các smart contract, hoặc các hợp đồng code phân tán được mở rộng hơn. Fraud proof sử dụng để quản lý dữ liệu sẽ được ghi lại nhằm mục đích xác thực, giảm tải trên network. Theo bản đề xuất, “Vì chỉ những cam kết merkleized mới được phát đi theo định kỳ ở Blockchain gốc (tức là Ethereum) trong các trạng thái không bị lỗi, điều này có thể cho phép các giao dịch và việc tính toán chi phí thấp có thể mở rộng đáng kể. Plasma cho phép ứng dụng phi tập trung hoạt động liên tục ở quy mô lớn”.

Trong phần dưới đây sẽ phân tích chi tiết về một số tính năng riêng biệt và Plasma tương tác như thế nào ?

Joseph Poon – Đồng tác giả của whitepaper Lightning Network

Tính toán đa điểm (multiparty) đáp ứng được khả năng mở rộng

Việc thêm các Block vào Blockchain cần có sự xác nhận từ những người tham gia. Một số nỗ lực về khả năng mở rộng Block, chẳng hạn như trong trường hợp Lightning Network, sử dụng một thỏa thuận xác nhận/thách thức trước khi xác nhận tính hợp lệ, có một chu kỳ tranh chấp. Nếu một trạng thái được tìm thấy không chính xác trong chu kỳ tranh chấp, bên xác nhận yêu cầu xác nhận là đúng thì sẽ bị phạt bởi Blockchain. Cơ chế khuyến khích người tham gia chỉ thực thi các hình phạt trong trường hợp xác nhận có lỗi hoặc không chính xác.

Để giải quyết các vấn đề về niềm tin liên quan đến các cam kết multi-party ngoài chuỗi (off-chain), Buterin và Poon tìm cách “thiết kế một hệ thống mà theo đó việc tính toán có thể xảy ra trong off-Blockchain nhưng cuối cùng sẽ có hiệu lực trong chuỗi (on-chain)”. Bằng cách đó, các nhà nghiên cứu cho biết phương pháp “có khả năng mở rộng cho hàng tỷ phép tính mỗi giây với việc cập nhật tối thiểu trong chuỗi (on-chain)”. Những người xác nhận Proof-of-stake được khuyến khích hướng tới cách xử lý tốt bằng cách thi hành các fraud proof, cho phép tính toán và loại bỏ mối đe dọa.

Theo bài báo, Plasma sẽ làm việc tương tự như Lightning Network mà Poon đã giúp tạo ra, trong đó một loạt các code hợp đồng phân tán thực thi ( EDCCs) đang chạy trên một Blockchain hiện có. Điều này đảm bảo thực thi trong khi vẫn giữ các khoản tiền trong hợp đồng với một khoản thanh toán/gửi tiền dự kiến sẽ diễn ra ở một thời điểm cụ thể.

Giao thức Plasma

Plasma với mục đích thúc đẩy kinh tế tự quản lý các hoạt động trên chuỗi mà không cần đến người tạo ra hợp đồng. Theo cách đó, các node tự động kích hoạt để vận hành chuỗi. Các biện pháp trên nhằm tạo ra khả năng mở rộng hơn, các quỹ được giảm thiểu tới một bit trên một bitmap cho phép nhiều giao dịch có thể đại diện cho nhau. Cùng một khuôn khổ MapReduce, EDDC có thể đạt được hiệu quả tính toán và khả năng mở rộng.

Một thành viên bên ngoài có thể tổ chức các quỹ và thực hiện tính toán thay cho người khác trong khi Plasma chạy trên Blockchain hiện tại. Điều này loại bỏ nhu cầu tạo ra các giao dịch trong chuỗi cho mỗi lần cập nhật bằng cách tận dụng các cập nhật kết hợp bao gồm các bitmap mà trong đó các giao dịch được cấu tạo.

Hình ảnh trên cho thấy rõ chuỗi gốc, trong trường hợp này là chuỗi gốc là Ethereum, tương tác với các hợp đồng Plasma trên nó, chỉ thực hiện tính toán trong trường hợp proof-of-fraud được thiết lập. Ethereum sẽ tích hợp Plasma được xây dựng trên Ethereum Virtual Machine EDCCs , trong khi xử lý các cam kết nhỏ đại diện của một số lượng lớn các mục tính toán và sổ cái.

Theo Buterin và Poon, 5 thành phần kết hợp với nhau để thực hiện công việc này là:

1) Một lớp khuyến khích cho phép việc tính toán hợp đồng hiệu quả hơn.

2) Một khuôn khổ cho việc sắp xếp child-chain (chuỗi con) ở dạng cây nhằm tối đa hóa hiệu quả chi phí thấp và giải quyết các giao dịch trên network.

3) Tích hợp một khuôn khổ máy tính MapReduce để xây dựng quá trình chuyển đổi proof-of-state trong các chuỗi lồng nhau, nhằm cho phép tương thích với cấu trúc cây, trong khi sắp xếp lại các trạng thái chuyển tiếp cho khả năng mở rộng.

4) Một cơ chế đồng thuận, phụ thuộc vào Blockchain gốc, cố gắng tái tạo, khuyến khích đồng thuận Nakamoto (proof-of-work).

5) Một cấu trúc cam kết bitmap-UTXO đảm bảo quá trình chuyển đổi trạng thái chính xác khỏi Blockchain gốc, đồng thời giảm thiểu chi phí. Cho phép thu hồi khi không có Block hoặc nếu hành vi Byzantine khác ngăn cản khi ra khỏi chuỗi, là một trong những điểm thiết kế chính trong hoạt động của Plasma.

Blockchain Plasma; những kênh Multiparty bên ngoài

Buterin và Poon đang kêu gọi khuôn khổ đề xuất cho các kênh off-chain multiparty (ngoài chuỗi đa điểm) một Blockchain Plasma.

Hình trên cho thấy rõ chuỗi Plasma, một chuỗi trong Blockchain, sử dụng các faurd proof liên quan như một cơ chế thực thi. Plasma không tiết lộ nội dung của Blockchain Ethereum (chuỗi gốc trong trường hợp này), chứ không phải là block-header hash được đệ trình, trong trường hợp có proof-of-faurd, Block được cuộn lại và người tạo Block sẽ bị phạt. Điều này có thể được thể hiện trong một hash duy nhất kèm theo một lượng nhỏ dữ liệu liên quan. Trong ví dụ, số dư của Alice được duy trì trên chuỗi Plasma chứ không phải chuỗi Ethereum gốc. Các Block màu xám ở trên biểu thị các màu cũ, và màu đen là các block gần đây nhất.

Ví dụ tiếp theo cho thấy cách Plasma xử lý Block withholding(ngăn cản).

Alice muốn rút vốn của mình nhưng không được phép vì một cuộc tấn công withholding. Block màu đỏ trong hình được giữ lại, do đó, Alice phải thoát ra bằng cách thực hiện một proof-of-funds trên Blockchain Ethereum (gốc). Việc rút tiền của cô ấy sẽ được xử lý sau khi bị trì hoãn, điều này dẫn đến các cuộc tranh chấp.

Cây Plasma

Các con số trên thể hiện các chi nhánh khác nhau của Plasma. Các cam kết Block đi qua hệ thống phân cấp và đi đến chuỗi gốc.

Cơ chế của Plasma tương tự như một hệ thống phân cấp tư pháp, theo whitepaper. “Chúng tôi tạo ra một hệ thống cao hơn để giảm thiểu chi phí ở các trạng thái không phải là Byzantine”.

Như cách thể hiện trong hình trên, trong trường hợp sự thất bại của Byzantine, cam kết có thể được phát tới Block tiếp theo trong hệ thống phân cấp, hoặc Block cha mẹ. Người tham gia có thể di chuyển sang một Block khác trong trường hợp này.

Một con đường dẫn tới Proof-of-Stake

Buterin và Poon đề xuất một phương pháp PoS “theo đó một bên duy nhất có thể thi hành với một trạng thái bắt buộc, thường là trong khuôn khổ proof-of-stake đòi hỏi phải liên kết ETH hoặc liên kết trong một token (ví dụ ERC-20 )”. Một EDCC trong chuỗi thực thi cơ chế đồng thuận theo phương pháp này.

Buterin và Poon cho biết: họ có thể giảm bớt các cuộc tấn công Block-withholding bởi phần lớn các cartel (Trong kinh tế học, cartel là một thỏa thuận giữa các công ty cạnh tranh để kiểm soát giá hoặc loại trừ các sản phẩm của một đối thủ cạnh tranh mới trong thị trường) bằng cách cho phép các bên liên quan phát hành trên Blockchain gốc hoặc trong chuỗi cha mẹ Plasma có chứa một hash của Block mới.

Theo whitepaper:

Người xác nhận chỉ làm việc trên các Block được xác nhận đầy đủ. Họ có thể xây dựng dựa trên các Block song song (nhằm khuyến khích chia sẻ thông tin tối đa ). Chúng tôi [tạo ra] các ưu đãi cho các trình xác nhận để đại diện cho 100 Block trong tương lai phù hợp với tỷ lệ đồng thuận (tức là nếu một trong những đồng thuận chiếm 3% trong số coin, họ phải có 3% trong số 100 Block đó), bằng cách thưởng thêm nhiều khoản phí giao dịch hơn. Trong tương lai, phí thừa (do hành vi tối ưu của các đồng thuận) sẽ được dẫn đến một pool để trả phí. Một cam kết tồn tại trong mỗi Block bao gồm các dữ liệu từ 100 Block trước đó (với một nonce). Các chuỗi chính xác là chuỗi có tổng các khoản phí cao nhất, sau một thời gian các Block được hoàn thành”.

Theo cả Buterin và Poon, điều này sẽ khuyến khích các nhà xác nhận tham gia khi mô phỏng tấn công 51% có trong mô hình đồng thuận proof-of-work. Nếu chuỗi bị tấn công bằng Block withholding hoặc hành vi Byzantine khác, những người tham gia không phải là Byzantine có thể di chuyển hàng loạt Block thông qua việc thỏa thuận rút coin trên Blockchain gốc hoặc Blockchain cha mẹ. Sự xuất hiện của một lượng lớn như vậy có thể sẽ làm giảm giá trị token nào gắn liền với chuỗi Plasma có bậc cao nhất, làm giảm sự tấn công.

Chức năng MapReduce

Sự hình thành MapReduce là không thể thiếu đối với khả năng mở rộng trên nhiều node hoạt động. Các giao dịch thể hiện dưới dạng bit trên một bitmap có thể được thực thi thông qua các fraud proof trong một merkleized, làm giảm đáng kể những mỗi lo ngại trong chuỗi. Hơn nữa, quá trình chuyển đổi zero-knowledge-proof-of-stake (với zk-SNARKS) tương thích với phương pháp này.

Buterin và Poon giải thích: sự tích hợp MapReduce cho phép:

“Tính toán quy mô lớn, với sự cân bằng về thời gian hoặc tốc độ. Những cân bằng này tạo ra một network mà các node xác định tính toán và người tham gia chịu trách nhiệm xác minh chúng. Điều này không tạo ra một hệ thống mà theo đó người ta có thể hoàn toàn tính toán bên ngoài mà không cần đến sự tin tưởng. Nó cho phép nén các phép tính thành các bonded proof. Những bonded proof này khuyến khích người tham gia chứng thực một cách trung thực”.

Điều này khép lại giả định: “nếu không ai xem/thi hành tính toán, thì giả định này là chính xác, hoặc đơn giản hơn là không có vấn đề gì cho dù kết quả là gì”. Khả năng mở rộng trở nên khả thi vì những người tham gia sẽ theo sát các chuỗi mà họ có ảnh hưởng về mặt kinh tế hơn là quan sát tất cả các chuỗi. Một người theo dõi chuỗi muốn củng cố hành động thích hợp và trừng phạt những người có hành vi xấu. Do đó, hành vi trong các chuỗi Plasma khác có thể được kết hợp để giảm thiểu tình trạng tính toán ảnh hưởng đến mỗi chuỗi.

Hình trên cho thấy màu xám là hoạt động kinh tế hay tính toán mà không cần thiết so với các quy trình của chuỗi màu xanh đậm, gồm các chuỗi ảnh hưởng đến cam kết.

Tokenized thúc đẩy Proof-of-stake

Các chuỗi Plasma được biểu diễn bởi các bộ EDCCs. Trong một nỗ lực để ngăn chặn các lỗi và hành vi Byzantine trên network, một token có thể được đồng thuận trong các hợp đồng này. Token sẽ đại diện cho sự tương tác của network với hoạt động của EDCC, do đó khuyến khích sự bảo mật của EDCC đối với các bên liên quan. Trong hệ thống PoS, những người tham gia bỏ phiếu không hề muốn giá trị token bị giảm đi và do đó ít có khả năng gây ra những lỗi có thể làm hỏng giá trị của token, như đã xảy ra trong trường hợp rút coin hàng loạt.

Các chủ sở hữu vốn, cho dù đặt token ERC20 hoặc Ether, sẽ muốn nhận được các khoản phí giao dịch mà họ có đủ điều kiện để nhận nhằm vận hành network làm network an toàn hơn.

Một cách tiếp cận để Sharding

Ba chiến lược được đề xuất trong whitepaper nhằm giải quyết các vấn đề xung quanh bộ dữ liệu bị mất, trong đó một rủi ro đáng kể tồn tại nếu các shard riêng lẻ từ chối tiết lộ dữ liệu, sẽ không thể tạo ra các faurd proof:

1) Một cơ chế PoS mới nhằm khuyến khích việc nhân rộng Block, làm giảm hành vi lỗi.

2) Sự trì hoãn thu hồi cho phép có bằng chứng thu hồi chính xác. Kể cả khi gian lận có thể được ngăn chặn trên Blockchain gốc từ bất kỳ ai trên cùng một chuỗi Plasma, cá nhân không cần phải thường xuyên kiểm tra Blockchain của mình.

3) Tạo các chuỗi con để giao dịch có thể được truyền đi trong bất kỳ chuỗi cha mẹ nào. Những người tham gia vào các network sẽ tìm cách tương tác với các chuỗi con, tạo ra hiệu quả kinh tế đối với số dư trong tài khoản nhỏ hơn trong trường hợp thiếu tiền để trả phí cao trong giao dịch; di chuyển các quỹ có thể đạt được với rất nhiều tài khoản nhỏ khác. Người tham gia được khuyến khích lưu trữ giá trị trong các chuỗi con lồng nhau.

Phần kết luận

Có rất nhiều các giao thức vẫn còn nằm trong một dự thảo mẫu, và cần được thử nghiệm và phát triển hơn nữa. Cần rất nhiều thời gian, nỗ lực, và viết mã để tích hợp nền tảng Plasma trên các giao thức Blockchain hiện có. Một khi trở ngại cho mở rộng Ethereum tới hàng tỷ các giao dịch không còn, thì không thể nói trước được giá trị lợi nhuận sẽ được thừa hưởng cho hệ sinh thái.

Video đề xuất:

Xem thêm:

HeoQ – tiendientu.org

ethnews – 14.8.2017

Follow Tiendientu on Telegram