DApps hay DAPI giải pháp nào cho các ứng dụng phi tập trung? - DashVN

Latest

Đầu tư & Công nghệ

Thursday, February 9, 2017

DApps hay DAPI giải pháp nào cho các ứng dụng phi tập trung?

Công nghệ blockchain với sự khởi đầu của Bitcoin đang có những bước phát triển khá hấp dẫn và mở ra nhiều hướng làm nền tảng cho sự phát triển của Internet 2.0. Trong hai xu hướng có lẽ được coi là hấp dẫn nhất hiện nay đó là DApps (Decentralized Apps) và DAPI (Decentralized API) là hai hướng tiếp cận khác nhau cho cùng một vấn đề cần xử lý, đó là giải pháp tính toán phi tập trung dựa trên các blockchain.


DApps được khởi xướng bởi nhóm Ethereum với mô hình cho phép các giao dịch có chứa kịch bản xử lý tình huống với độ phức tạp cao tương đương với một ngôn ngữ lập trình hoàn thiện và có thể xử lý như là một bản hợp đồng thông minh và thực thi tự động (smart contract). Với cách tiếp cận này hai bên có thể lập trình cho một bản hợp đồng với mức độ logic rất phức tạp để có thể xử lý theo các tình huống khác nhau chẳng kém một phần mềm và nó được xử lý tự động trong mạng lưới của Ethereum. Với cách tiếp cận này, các kịch bản sẽ được lưu hết trên blockchain khiến cho database này trở nên vô cùng nặng nề, và nếu nó được đồng bộ khắp mạng lưới thì sẽ làm cho hệ thống ngốn cực kỳ nhiều băng thông cũng như không gian lưu trữ. Và vì phải mất thời gian lớn để đồng bộ nên chắc chắn sẽ ảnh hưởng đến thời gian thực thi.

Một xu hướng khác được nhóm Dash đưa ra gọi là DAPI, tức là mạng lưới hạ tầng của Dash sẽ cung cấp một hệ thống API phi tập trung để cung cấp dịch vụ cho các ứng dụng phi tập trung. Hiện thời Dash chưa cung cấp khả năng cho phép kịch bản của Dash có thể xử lý với độ phức tạp như một ngôn ngữ lập trình hoàn thiện mà chỉ ở dạng rất đơn giản như của Bitcoin (vì Dash được phát triển dựa trên Bitcoin). Với cách tiếp cận này hạ tầng của Dash sẽ được phân ra thành những lớp như các mô đun giúp cho hệ thống của Dash trở nên linh hoạt và dễ phát triển hơn trong tương lai. Rất có thể về sau Dash cũng sẽ cung cấp khả năng xử lý chương trình với ngôn ngữ lập trình đầy đủ nhưng có lẽ nó sẽ không tìm cách lưu trữ trên blockchain mà thay vào đó, nó có thể dùng cách lưu trữ khác gọi là Dash Drive, với Dash Drive thì việc lưu trữ các script không nhất thiết phải đồng bộ đồng thời với blockchain nên tốc độ nhân bản nhanh hơn, khả năng lưu trữ tốt hơn, tiết kiệm băng thông và cho phép các chương trình không cần phải nằm trên blockchain mà vẫn tương tác được với hệ thống.

Nếu không lưu trữ script đồng thời với blockchain thì làm thế nào để đảm bảo tính nhất quán và không bị giả mạo? Điều này có thể thực hiện một cách đơn giản bằng việc chỉ cần lưu trữ trên blockchain đoạn mã hash của script là đủ.

Ngoài ra, một vấn đề quan trọng của một hệ thống tự động phi tập trung, ngoài khả năng thực thi các script với khả năng của một ngôn ngữ lập trình đầy đủ thì nó còn phụ thuộc vào việc nhận dạng và tạo ra các sự kiện một cách phi tập trung. Còn nếu chương trình phi tập trung mà vẫn phụ thuộc vào các sự kiện được cung cấp một bên thứ 3 nào khác thì smart contract cũng không thực sự có ý nghĩa vì chúng ta vẫn phải đặt niềm tin vào một bên thẩm quyền nào đó. Hiện tại DApps chưa có khả năng này còn giải pháp DAPI của Dash thì đã có khả năng gọi là Decentralized Oracle được lập bởi một quorum ngẫu nhiên các masternode và chúng có thể cùng bỏ phiếu để truy vấn sự kiện hoặc tạo ra sự kiện. Chính khả năng Decentralized Oracle của Dash sẽ làm cho việc biến mạng lưới Dash trở thành một cỗ máy tự động phi tập trung với hạ tầng và năng lực đủ mạnh mẽ cho các ứng dụng phi tập trung.


Tương lai không biết bên nào thắng bên nào vì có hai hướng tiếp cận khác nhau một bên đã sẵn sàng  script với khả năng của một ngôn ngữ lập trình hoàn chỉnh nhưng chưa có khả năng Decentralized Oracle, còn một bên đã sẵn sàng hạ tầng, có sẵn sàng Decentralized Oracle, và chỉ còn thiếu khả năng thực thi script với khả năng của một ngôn ngữ lập trình hoàn chỉnh. Bên nào sẽ đến đích trước và có nền tảng tốt hơn cho các ứng dụng phi tập trung? Chúng ta hãy chờ xem.

No comments:

Post a Comment