Acala và Phala cùng phát hành trường hợp sử dụng chuỗi chéo bảo mật đầu tiên
Phala可信网络
2020-12-23 03:19
本文约3463字,阅读全文需要约14分钟
Bản demo chuỗi chéo bảo mật đầu tiên dựa trên Rococo đã được phát hành và Phala & Acala đã nhận ra việc chuyển giao tài sản DeFi giữa các chuỗi.

Tại sao chúng ta cần chuỗi chéo?

Trong tương lai gần, các parachains sẽ phá vỡ tất cả các công nghệ chuỗi khối hiện có.

Parachain không chỉ có lợi thế về quyền tự chủ, bảo mật nội sinh và tính chuyên nghiệp của chuỗi khối Layer1 và hợp đồng thông minh, mà còn có khả năng tương tác mà Ethereum Layer2 hiện không có.

Nếu bạn nộp đơn yêu cầu bồi thường bảo hiểm trễ chuyến bay, trước khi bồi thường chính thức, công ty bảo hiểm sẽ lấy dữ liệu từ hãng hàng không xem chuyến bay có bị hoãn hay không và lấy dữ liệu từ sân bay để xác minh xem bạn có đến sân bay đúng giờ hay không. Nếu thỏa mãn hai điều kiện trên, công ty bảo hiểm sẽ chuyển số tiền bồi thường vào tài khoản ngân hàng của bạn.

Nếu bạn nộp đơn yêu cầu bồi thường bảo hiểm trễ chuyến bay, trước khi bồi thường chính thức, công ty bảo hiểm sẽ lấy dữ liệu từ hãng hàng không xem chuyến bay có bị hoãn hay không và lấy dữ liệu từ sân bay để xác minh xem bạn có đến sân bay đúng giờ hay không. Nếu thỏa mãn hai điều kiện trên, công ty bảo hiểm sẽ chuyển số tiền bồi thường vào tài khoản ngân hàng của bạn.

Trong kịch bản này, việc gọi dữ liệu của công ty bảo hiểm thể hiện đầy đủ các đặc điểm của khả năng tương tác.

Hiện tại, parachains đã phát triển rất đa dạng về chủng loại như: parachains có coin, parachains không có coin, parachains vuông góc với một lĩnh vực nhất định, chuỗi trung tâm phục vụ một cộng đồng nhất định...

Lấy parachains làm ví dụ, chúng ta có thể đạt được loại trường hợp sử dụng nào bằng cách sử dụng công nghệ chuỗi chéo của Polkadot/Kusama?

trình soạn thảo mdnice

  • Trước hết, chúng ta có thể giả định rằng hiện tại có hai giao thức và dịch vụ chuỗi khối được sử dụng phổ biến nhất:
  • Phala Network là một giao thức bảo mật blockchain. Phala thực hiện hợp đồng bảo mật hoàn chỉnh của Turing thông qua công nghệ điện toán đáng tin cậy + chuỗi khối, không chỉ đảm bảo việc thực thi hợp đồng thông minh một cách đáng tin cậy mà còn không cần tiết lộ dữ liệu nhạy cảm.
  • trình soạn thảo mdnice

  • Với điều kiện này, chúng tôi muốn:
  • Nhận tài sản riêng trên Phala từ Acala

Rõ ràng, theo bất kỳ giao thức không phải Polkadot/Kusama nào, cho dù đó là Acala hay Phala, nó sẽ tiêu tốn rất nhiều tài nguyên và năng lượng của nhà phát triển.Tuy nhiên, nếu chúng tôi áp dụng giao thức chuỗi chéo Polkadot/Kusama, chúng tôi có thể đạt được điều này mà không cần thay đổi một dòng nào trường hợp sử dụng mã!

trình soạn thảo mdnice

Demo Video:https://www.odaily.com/video/3151

Github:https://github.com/Phala-Network/phala-blockchain/tree/rococo

Hiển thị trường hợp sử dụng chuỗi chéohttps://rococo-demo.phala.network/#/settings
Acala:https://rococo-demo-acala.phala.network/#/explorer
Phala:https://rococo-demo-phala.phala.network/legacy.html#/explorer
Chuỗi chuyển tiếp Rococo:https://acala-dapp-4higttopf.vercel.app/#/wallet
Ví tối phala:https://rococo-demo-phala.phala.network

tiêu đề cấp đầu tiên

Nguyên tắc chuỗi chéo bao gồm giao thức XCMP giữa chuỗi chuyển tiếp, chuỗi song song và chuỗi kết nối. Các giao dịch xuyên chuỗi được giải quyết thông qua cơ chế xếp hàng dựa trên cây Merkle đơn giản để đảm bảo độ chính xác. Nhiệm vụ của trình xác thực chuỗi chuyển tiếp là di chuyển các giao dịch trên hàng đợi đầu ra của một parachain sang hàng đợi đầu vào của parachain mục tiêu. Tuy nhiên, chỉ siêu dữ liệu được liên kết được lưu trữ dưới dạng hàm băm trong bộ nhớ Chuỗi chuyển tiếp.

Trước tiên, một hàng đợi XCMP phải được bắt đầu bằng cách mở một kênh giữa hai chuỗi dù. Một kênh được xác định bởi các parachain của người gửi và người nhận, có nghĩa là đó là kênh một chiều. Có thể có tối đa hai kênh giữa một cặp dù chuỗi, một kênh để gửi tin nhắn đến chuỗi kia và một kênh để nhận tin nhắn.

trình soạn thảo mdnice

  • Giao thức XCMP có thể được chia thành:
  • VMP: Giao tiếp chuỗi chuyển tiếp chuỗi song song
  • XCMP: Giao tiếp trực tiếp chuỗi song song-chuỗi song song

Hiện tại, VMP và HRMP được triển khai trên Rococo v0, nhưng Rococo v1 vẫn đang được phát triển, vì vậy chúng tôi đã triển khai trường hợp sử dụng chuỗi chéo giữa Phala-Acala trên v0.

Architecture

trình soạn thảo mdnice
  • Như đã đề cập ở trên, việc triển khai chuỗi chéo Acala-Phala dựa trên Polkadot XCM bao gồm ba phần:
  • Chuỗi: Chuỗi chuyển tiếp Rococo, hai chuỗi song song: Acala, Phala
  • Hộp đen bảo mật: Tất cả các giao dịch riêng tư trên Phala diễn ra trong các hợp đồng bí mật chạy trong TEE và trạng thái của tất cả dữ liệu được mã hóa là vô hình đối với thế giới bên ngoài, do đó đạt được hiệu quả bảo mật

Bắt đầu chuyển từ Acala sang Phala

Trong thế giới của Polkadot, ngoài các tài khoản do cá nhân kiểm soát, còn có khái niệm "tài khoản có chủ quyền". Ví dụ: mô-đun Pallet (hoặc hợp đồng thông minh) trên Substrate có thể chứa một số tài sản nhất định. Và khi một parachain vào Polkadot, nó cũng có thể có được tài khoản của riêng mình trên các parachain khác. Tài khoản chủ quyền được kiểm soát bởi parachain tương ứng. Mỗi parachain có một ID duy nhất, ID này sẽ được ánh xạ tới tài khoản chủ quyền tương ứng của nó.

trình soạn thảo mdnice

  • Khi Alice bắt đầu một giao dịch chuyển tiền từ Acala sang Phala, chẳng hạn như chuyển 1000 ACA vào tài khoản Bob của Phala, những sự kiện này đã xảy ra sau hậu trường:
  • Đầu tiên, trên chuỗi Acala, (Rút tiền) 1000 ACA sẽ được rút từ tài khoản của Alice và gửi vào (Gửi tiền) tài khoản có chủ quyền của Phala
  • Sau khi chuỗi chuyển tiếp nhận được tin nhắn, nó sẽ phân tích người nhận tin nhắn theo ID parachain là Phala và nó sẽ chuyển tiếp tin nhắn đến Phala. Đây là VMP DownwardMessage

HRMP là một phương thức nhắn tin liên chuỗi đơn giản đã được hỗ trợ bởi Rococo v0. Nguyên tắc của nó là chuỗi A khởi tạo UpwardMessage tới chuỗi chuyển tiếp, sau đó chuỗi chuyển tiếp khởi tạo DownwardMessage để chuyển thông báo tới chuỗi B. Do đó, HRMP được thực hiện bằng cách kết hợp hai VMP.

Ví tối Phala chấp nhận chuyển khoản và chuyển đổi thành tiền riêng tư

Phala có một điểm khác biệt lớn so với các chuỗi khác. Thông thường, một parachain sẽ áp dụng triển khai tiêu chuẩn do Polkadot cung cấp để chấp nhận chuyển khoản bên ngoài và giải quyết cho người dùng. Tuy nhiên, Phala là một lớp bảo vệ quyền riêng tư chung và điều rất quan trọng là chuỗi chính phải giữ tính trung lập với ứng dụng. hợp đồng bí mật.

Về phía Phala, sau khi thông báo chuyển chuỗi chéo được chấp nhận bởi chuỗi chính, nó sẽ được chuyển trực tiếp đến hợp đồng ví riêng (Private Wallet) trong TEE. Khi hợp đồng bảo mật nhận được tin nhắn, nó sẽ thêm 1000 ACA vào tài khoản Bob.

Chuyển khoản trong Hợp đồng bí mật được mã hóa nối đầu. Mặc dù có thể nhìn thấy từ bên ngoài rằng Bob đã nhận được 1000 ACA, nhưng anh ấy có thể bắt đầu chuyển khoản riêng tư và chuyển lại cho Charlie.Là một tài sản tối, tất cả các giao dịch tiếp theo của Bob đều vô hình và không thể theo dõi được trên chuỗi, do đó đảm bảo quyền riêng tư.

Do đó, trong bản demo, chúng tôi chứng minh giao dịch riêng tư (Giao dịch được bảo vệ) giữa hai ví tối. Giao dịch quyền riêng tư được mã hóa nối đầu và chỉ có thể nhìn thấy bản mã trên chuỗi, vì vậy chi tiết của giao dịch (chẳng hạn như địa chỉ gửi, địa chỉ nhận, số tiền) không hiển thị trên chuỗi.

Bắt đầu chuyển từ Phala sang Acala

Cuối cùng, thông qua ví tối của Phala, chuyển khoản liên chuỗi có thể được bắt đầu tới Acala để thực hiện rút tiền.

trình soạn thảo mdnice

  • Ví dụ: sau khi nhận được 1000 ACA từ Bob thông qua chuyển khoản cá nhân, Charlie có thể bắt đầu yêu cầu phía Phala gửi 500 ACA đến tài khoản Alice của Acala và những điều này diễn ra ở hậu trường:
  • TEE nhận lệnh chuyển, giảm 500 ACA trong tài khoản của Charlie và bắt đầu giao dịch chuyển giữa các chuỗi sang chuỗi Phala
  • Sau khi chuỗi chính Phala nhận được yêu cầu chuyển chuỗi chéo, nó sẽ trực tiếp gửi thông báo chuyển đến chuỗi chuyển tiếp, đó là VMP UpwardMessage
  • phần kết

phần kết

Trong các chuỗi khối hiện có như Ethereum, sự kết hợp giữa Defi và quyền riêng tư Lớp 2 cần được xác nhận lẫn nhau thông qua Ethereum và giao thức Lớp 2 không thể tương tác với một giao thức Lớp 2 khác. Do đó, người dùng không thể sử dụng giao thức Loopring để gọi trực tiếp Tonado Cash hoặc sử dụng Aragon để gọi trực tiếp cho Aztec.

Nhưng trên Polkadot, giao thức XCMP cho phép các parachain có khả năng tùy chỉnh mạnh mẽ đạt được khả năng tương tác xuyên chuỗi thuận tiện với rất ít khối lượng công việc. Khả năng kết hợp đạt được thông qua XCMP cho phép các nhà phát triển xây dựng các trường hợp ứng dụng phong phú như xây dựng các khối Lego.

trình soạn thảo mdnice

Phala可信网络
作者文库