Trở lại với việc khai thác bằng chứng công việc, một blockchain được xây dựng để có khả năng chống phân nhánh và cơ hội phát triển bằng nhiều ngôn ngữ lập trình. Bài học từ lịch sử – và tầm nhìn về tương lai.
Cointelegraph đang theo dõi sự phát triển của một chuỗi khối hoàn toàn mới từ khi thành lập đến mạng chính và hơn thế nữa thông qua loạt bài của nó, Inside the Blockchain Developer’s Mind. Trong Phần thứ tư, Andrew Levine của Koinos Group thảo luận về một số thách thức mà nhóm phải đối mặt kể từ khi xác định các vấn đề chính mà họ định giải quyết.
Trước đó trong loạt bài này, tôi đã phác thảo ba “cuộc khủng hoảng” đang cản trở việc áp dụng blockchain; khả năng nâng cấp, khả năng mở rộng và quản trị.
Trong bài đăng này, tôi sẽ tóm tắt các giải pháp mà chúng tôi đã phát triển cho những vấn đề này, mà chúng tôi sẽ giới thiệu trong testnet Koinos sắp tới được lên kế hoạch cho quý 2 năm 2021.
Kể từ loạt bài đó, Koinos Group đã khởi chạy thành công mã thông báo, KOIN, như một bằng chứng về mã thông báo có thể khai thác được trên Ethereum. Bằng cách sử dụng bằng chứng công việc để phân phối nguồn cung cấp mã thông báo ban đầu, chúng tôi có thể làm cho mã thông báo có thể truy cập được đối với những người chấp nhận sớm và từ bỏ ICO.
Đánh giá mô hình ICO
ICO và các công cụ bán mã thông báo tương tự, mặc dù không phải không có trường hợp sử dụng của chúng, nhưng đã tạo ra cuộc khủng hoảng của riêng chúng trong không gian bằng cách sắp xếp sai các ưu đãi trước khi bắt đầu phát triển. Vấn đề không phải là ICO như một công cụ, mà là điều gì sẽ xảy ra khi một nhóm được thưởng về tài chính trước khi họ xuất xưởng sản phẩm.
Trong khi rất nhiều dự án đã theo bước chân của Bitcoin, thật đáng ngạc nhiên là có rất ít dự án sao chép lại khía cạnh được cho là thành công nhất khi ra mắt nó; phân phối mã thông báo độc quyền thông qua bằng chứng công việc.
Lợi ích của phương pháp này là nó đảm bảo chắc chắn về mặt thuật toán rằng những người đứng sau blockchain không có lợi thế trong việc mua lại mã thông báo. Tóm lại, tất cả mọi người, bất kể họ là ai, đều phải hy sinh tài chính để có được mã thông báo đó và quy mô của sự hy sinh đó được xác định bởi một số bên thứ ba trung lập. Trong trường hợp bằng chứng công việc, bên thứ ba trung lập đó là nhà sản xuất phần cứng.
Đối với Koinos Group, điều đó có nghĩa là chúng tôi đã phải chi tiền để có được mã thông báo của mình giống như những người khác. Trên thực tế, vì chúng tôi phải dành phần lớn thời gian để phát triển sản phẩm, chúng tôi thậm chí còn gặp bất lợi so với các thợ đào chuyên nghiệp. Vì vậy, chúng tôi phải tiếp tục làm việc để tăng giá trị cho giao thức nếu chúng tôi muốn nhận được lợi tức từ khoản đầu tư của mình.
Các thuật toán Proof of Work không phải là không có vấn đề, nhưng chúng tôi đã giảm thiểu chúng theo một vài cách.
- Đầu tiên, mạng chính sẽ được điều chỉnh bởi một thuật toán đồng thuận hoàn toàn khác, không phải là bằng chứng công việc hoặc bằng chứng cổ phần, vì vậy bất kỳ nỗ lực nào để phát triển một ASIC sẽ là lãng phí tài nguyên.
- Thứ hai, chúng tôi đã tạo ra khả năng chống lại thuật toán GPU.
- Thứ ba, chúng tôi đã phát hành mã thông báo này rất lâu trước khi phát hành mạng chính của mình. Trên thực tế, chúng tôi đã phát hành mã thông báo từ rất lâu trước khi chúng tôi hoàn thành việc phát triển khuôn khổ của mình. Không có sản phẩm chức năng, mã thông báo này sẽ trở thành một cách để những người tin tưởng vào nhóm của chúng tôi và những người chia sẻ tầm nhìn của chúng tôi về một nền tảng hợp đồng thông minh không mất phí để có được mã thông báo với chi phí hợp lý.
Tốc độ cải thiện nhanh chóng
Một phần làm cho chiến lược ra mắt này hoạt động là do bộ tài sản sáng tạo của Koinos. Chúng tôi đã xây dựng Koinos hoàn toàn từ đầu, không xoay quanh bất kỳ tính năng đơn lẻ nào như giao dịch mỗi giây hoặc sharding, mà với mục tiêu tạo ra một chuỗi khối cải thiện với tốc độ nhanh hơn nhiều hơn bất kỳ blockchain nào khác ngoài kia.
Theo kinh nghiệm của chúng tôi khi phát triển chuỗi khối Steem, nhu cầu thực thi hard fork là yếu tố lớn nhất kìm hãm tiến trình. Nếu chúng tôi muốn loại bỏ nút thắt cổ chai đó, chúng tôi lập luận rằng, chuyển càng nhiều mã hệ thống càng tốt vào các hợp đồng thông minh có thể được nâng cấp trong băng sẽ thực hiện được mẹo.
Đó là lý do tại sao khung công tác blockchain Koinos chỉ chứa các tính năng cơ bản nhất của blockchain (được gọi là “thunks”) như nhập / nhập hợp đồng, nhận các tham số và ghi vào cơ sở dữ liệu. Tất cả các tính năng phức tạp hơn mà mọi người quen thuộc hơn (thuật toán đồng thuận, tài khoản, quản lý tài nguyên, quản trị, v.v.) đã được chuyển vào hợp đồng thông minh WASM mô-đun chạy trong máy ảo có thể được nâng cấp mà không cần hard fork.
Bởi vì tất cả các hành vi hiện được mã hóa trong các “mô-đun” riêng biệt có thể được “nâng cấp” riêng lẻ nên chúng tôi gọi đây là tính năng có thể nâng cấp theo mô-đun.
Do khả năng nâng cấp theo mô-đun, bất kỳ hành vi nào cũng có thể được thêm vào blockchain mà không cần hard fork bởi vì các nâng cấp riêng lẻ có thể được phân phối trong các khối và giao dịch được đẩy lên mạng giống như một bản vá hệ điều hành, nhưng với lợi ích bổ sung là bật Bản ghi chuỗi của toàn bộ đường dẫn nâng cấp.
Bằng cách chuyển gần như tất cả mã hệ thống của blockchain sang các mô-đun hợp đồng thông minh có thể được nâng cấp mà không cần hard fork, chúng tôi đã biến Koinos thành một blockchain phát huy sức mạnh của nó không phải từ các tính năng mà nó được sinh ra, mà dựa trên khả năng nhanh chóng có được các tính năng mới và tốt hơn nhanh hơn bất kỳ thứ gì khác ngoài kia.
Đây là lý do tại sao chúng tôi gọi Koinos là blockchain đầu tiên có khả năng tiến hóa.
Microservices
Khả năng nâng cấp mô-đun chỉ là cải tiến kỹ thuật lớn đầu tiên mà chúng tôi phát triển để làm cho Koinos ít nguyên khối hơn và có thể nâng cấp một thứ tự lớn hơn. Cũng giống như có mã không cần phải được triển khai nguyên bản (trong chính chuỗi khối) nhưng có thể được thực hiện dưới dạng hợp đồng thông minh (hầu hết trong số đó trên thực tế), có rất nhiều mã không cần phải được triển khai nguyên bản hoặc dưới dạng các hợp đồng thông minh và thay vào đó có thể được triển khai dưới dạng microservices.
Kiến trúc microservice có nhiều lợi ích, đó là lý do tại sao điều này đã trở thành tiêu chuẩn công nghiệp cho phát triển phần mềm hiện đại, nhưng một lợi ích chính là khả năng mở rộng vì các dịch vụ riêng lẻ có thể được mở rộng mà không cần phải mở rộng toàn bộ hệ thống. Điều này có thể làm giảm đáng kể chi phí vận hành một mạng đồng thời cải thiện cả tốc độ và chất lượng của các cải tiến cho mạng đó. Do hậu quả của các tai nạn lịch sử, các ngăn xếp blockchain dường như là nơi cuối cùng áp dụng tiêu chuẩn mới này vì Koinos sẽ là blockchain đầu tiên được xây dựng trên kiến trúc microservice.
Điều này tạo ra những cơ hội mới tuyệt vời cho các nhà phát triển, những người sẽ có thể xây dựng các dịch vụ vi mô ứng dụng cụ thể cho Koinos để giúp họ chạy các nút và ứng dụng của họ, hiệu quả hơn; và kết quả là mang lại trải nghiệm người dùng tốt hơn. Hơn hết, điều này sẽ giúp hoạt động của nút Koinos dễ tiếp cận hơn, do đó cải thiện sự phân cấp và cho phép toàn bộ mạng hoạt động hiệu quả hơn để các nhà phát triển và người dùng cuối của họ có thể tận dụng nhiều hơn các ứng dụng phi tập trung của họ.
Hỗ trợ đa ngôn ngữ
Một lợi ích khác của kiến trúc microservice là các microservice riêng lẻ (về cơ bản là các chương trình nhỏ) có thể được viết bằng ngôn ngữ lập trình tốt nhất (nhanh nhất, an toàn nhất, thư viện tốt nhất, v.v.) cho công việc, một khả năng chúng tôi cũng muốn cung cấp cho các nhà phát triển hợp đồng thông minh . Nhưng để tận dụng đặc điểm này, chúng tôi cần phát triển một cách để các chương trình nhỏ này được viết bằng các ngôn ngữ khác nhau có thể “nói chuyện” với nhau theo cách phù hợp với nhu cầu riêng của một mạng phi tập trung. Để giải quyết vấn đề này, chúng tôi đã tạo một khuôn khổ tuần tự hóa đa ngôn ngữ có tên là Koinos Types.
Các loại Koinos giống như Đá Rosetta cho các cấu trúc dữ liệu blockchain. Nó cho phép các chương trình được viết bằng các ngôn ngữ khác nhau giao tiếp với nhau một cách đơn giản và thống nhất bằng cách cấp cho chúng quyền truy cập vào các đối tượng giống nhau (“khối xây dựng” của các ngôn ngữ lập trình hiện đại). Các loại Koinos cho phép giải thích cấu trúc dữ liệu Koinos (tức là blockchain) trên thực tế bằng bất kỳ ngôn ngữ lập trình nào sẽ cực kỳ hữu ích cho sự phát triển của các microservices, client và hợp đồng thông minh liên quan đến blockchain.
Các loại Koinos giải quyết một số vấn đề. Nó giúp chúng tôi thêm hỗ trợ đa ngôn ngữ cho Koinos nói chung (bao gồm cả hợp đồng thông minh), cho phép các microservices giao tiếp với nhau và giúp việc phát triển và cập nhật các thư viện khách hàng dễ dàng hơn nhiều. Trong khi khả năng nâng cấp theo mô-đun và kiến trúc microservices chỉ làm cho Koinos dễ nâng cấp hơn nhiều so với bất kỳ blockchain nào khác, Koinos Loại đưa khả năng nâng cấp đó lên một cấp độ khác. Đó là lý do tại sao chúng tôi rất vui mừng được biến Koinos Types trở thành phần đầu tiên của Koinos mà chúng tôi mở nguồn.
Như bạn có thể thấy, việc đảm bảo rằng Koinos có thể cải thiện với tốc độ nhanh hơn bất kỳ blockchain nào khác không phải về bất kỳ tính năng nào.
- Đó là về việc nhận được các ưu đãi ngay từ đầu.
- Đó là về việc đảm bảo rằng blockchain có khả năng nâng cấp theo mô-đun.
- Đó là về việc mô-đun hóa chính kiến trúc thành microservices.
- Và đó là đảm bảo rằng các nhà phát triển hoạt động ở mọi cấp của ngăn xếp (không chỉ hợp đồng thông minh) có thể sử dụng các ngôn ngữ lập trình mà họ đã biết và yêu thích.
Các quan điểm và ý kiến được trình bày ở đây chỉ là của tác giả và không nhất thiết phản ánh quan điểm của Cointelegraph.com. Mọi động thái đầu tư và giao dịch đều có rủi ro, bạn nên tự nghiên cứu khi đưa ra quyết định.
.