Đầu tháng này, lãnh đạo của nhóm Ethereum Foundation, Péter Szilágyi, đã xác nhận ngày nâng cấp mạng sắp tới, Istanbul. Hard fork tổng thể thứ tám của Ethereum và là lần thứ hai trong năm nay sẽ diễn ra vào ngày 4 tháng 12. Tuy nhiên, vào ngày 20 tháng 11, theo thông báo chính thức, ước tính rằng ngày đã được chuyển sang 7 tháng 12.
Istanbul sẽ giới thiệu một số cải tiến như khả năng tương tác với Zcash, giải pháp khả năng mở rộng lớp hai zero-knowledge rẻ hơn, và điều chỉnh giá gas cho một số hoạt động nhất định, đánh dấu một mốc quan trọng khác trên con đường tới Ethereum 2.0, phiên bản “tối thượng” được mong chờ của mạng. Chính xác thì Istanbul phù hợp thế nào khi xét tổng thể?
Fork, phát hành và các giai đoạn
Không có hệ thống nguồn mở phức tạp nào ở trạng thái cuối cùng – phần mềm luôn hoạt động, liên tục được cải tiến và cập nhật. Điều này đặc biệt đúng với Ethereum, thứ luôn hướng tới con đường trở thành một “máy tính thế giới” phân tán và nền tảng cho các ứng dụng phi tập trung, điều nó đã vạch ra khi bắt đầu, thành một chuỗi các cột mốc liên tiếp.
Mục tiêu hiện tại mà cộng đồng nhà phát triển Ethereum đang theo đuổi là một phiên bản nâng cao của mạng có tên Ethereum 2.0, Eth2 hoặc Serenity. Việc nâng cấp dự kiến sẽ chứng kiến một số sự phát triển mạnh mẽ, chẳng hạn như chuyển đổi từ proof-of-work sang thuật toán đồng thuận proof-of-stake tiết kiệm năng lượng hơn, hiện thực hóa một mô hình khả năng mở rộng mới gọi là sharding, và giới thiệu Máy ảo Ethereum hiệu quả hơn, có khả năng thực thi các hợp đồng thông minh hiệu suất cao. Nhà nghiên cứu Daniel Ryan đã xây dựng năm mục tiêu thiết kế bao trùm cho Ethereum 2.0: phi tập trung, khả năng phục hồi, bảo mật, đơn giản và tuổi thọ.
Sự khác biệt trong ngôn ngữ được sử dụng để mô tả các giai đoạn cập nhật mạng có thể gây nhầm lẫn: Có những hard fork được đặt tên theo các thành phố lớn trên thế giới, các giai đoạn được đánh số, các bản phát hành được biểu thị bằng mã phiên bản và các danh hiệu thơ mộng như là “serenity”. Tuy nhiên, cuối cùng nó cũng phụ thuộc vào một cấu trúc khá đơn giản.
Nguồn: eth.wiki
Sự cải tiến lớn nhất của quá trình phát triển được gọi là một bản phát hành. Một bản phát hành riêng lẻ có thể được ban hành bằng phương tiện của một hoặc một số hard fork – sự thay đổi của giao thức blockchain đánh dấu sự khởi đầu hoàn toàn so với phiên bản cũ của nó.
Cho đến nay, đã có ba bản phát hành – bản phát hành hiện tại có tên là Metropolis – đã được triển khai theo hai bước: hard fork Byzantium và Constantinople, với Istanbul vẫn là đích đến. Các hard fork tiếp theo, Berlin (dự kiến vào tháng 6 năm 2020) và London, sẽ đánh dấu sự ra đời của phiên bản thứ tư, Ethereum 2.0, hoặc, Serenity.
Các hard fork kích hoạt sự thay đổi đối với mainnet Ethereum hiện đang hoạt động. Tuy nhiên, lộ trình tới Ethereum 2.0 đặt điều kiện cho việc tạo ra các chuỗi mới riêng biệt – chẳng hạn như sự tồn tại cuối cùng của hai chuỗi Ethereum đang hoạt động với các cơ chế đồng thuận khác nhau. Việc triển khai chuỗi Ethereum 2.0 sẽ có một chuỗi các giai đoạn được chỉ định trong lộ trình.
Istanbul: cải tiến được chấp nhận
Phương tiện quản trị chính mà cộng đồng Ethereum dựa vào để thúc đẩy sự phát triển mạng là Đề xuất cải tiến Ethereum. Họ chỉ định các đề xuất liên quan đến các thay đổi trong giao thức cốt lõi, API khách (Giao diện lập trình ứng dụng) và các tiêu chuẩn hợp đồng thông minh.
Các tác giả thường tìm cách đề xuất thời gian cho lịch trình fork và nhắm mục tiêu tới các hard fork cụ thể được công bố trước. Hiện tại đang có một sự thúc đẩy trong cộng đồng để chuyển sang cách tiếp cận “tập trung vào EIP” trong việc nâng cấp hệ thống, nơi các fork thường xuyên hơn và nhỏ hơn có thể cho phép các đề xuất phát triển theo tốc độ của riêng chúng. Berlin, hard fork “được bổ nhiệm” sẽ theo sau Istanbul, dự kiến sẽ là thử nghiệm đầu tiên trong mô hình này.
Istanbul vẫn tuân theo cách tiếp cận “trung tâm vào Fork”, nơi có nhiều đề xuất ở các giai đoạn khác nhau trong vòng đời của chúng đã được đưa ra và xem xét trong các cuộc triệu tập của các nhà phát triển cốt lõi (All Core Devs). Các nhà phát triển đã phân loại EIP theo mong muốn và sẵn sàng tiến tới hard fork (được chấp nhận), mong muốn nhưng chưa sẵn sàng (được chấp nhận tạm thời, giả định sẽ tiến hành với hard fork tiếp theo) hoặc không mong muốn (bị từ chối vĩnh viễn). Trong số 38 EIP được trình bày, chỉ có sáu được chấp nhận, với tám EIP khác được chấp thuận cho hard fork Berlin. Dưới đây là một outline của các đề xuất được chấp nhận:
EIP-152 mang đến khả năng xác minh thuật toán PoW Equihash trong hợp đồng Ethereum, cho phép khả năng tương tác giữa các blockchain Zcash và Ethereum.
EIP-1108 giảm chi phí precompile gas, tạo ra một thế hệ non-interactive zero-knowledge proof, hoặc zk-SNARK, rẻ hơn. Đây là một tin tốt lành vì hai lý do. Một là, sự thay đổi sẽ tăng cường phát triển các ứng dụng tập trung vào quyền riêng tư sử dụng loại mật mã này.
Do đó, sử dụng zk-SNARKs như là một giải pháp lớp thứ hai có thể là công cụ giúp giảm bớt một số vấn đề về khả năng mở rộng Ethereum, bằng cách chuyển một số lượng đáng kể công việc tính toán ra khỏi chuỗi.
EIP-1344 thêm một mã opcode trả về mã định danh duy nhất của chuỗi hiện tại, giới thiệu cách thức để các hợp đồng theo dõi chuỗi Ethereum của chúng. Điều này sẽ cải thiện khả năng phục hồi của hệ thống để xem lại các cuộc tấn công vào các giao dịch đã ký.
EIP-1884 có lẽ là thứ gây tranh luận nhiều nhất trong các đề xuất được chấp nhận, gây ra tranh cãi kể từ ít nhất là tháng 8 năm nay. Được giới thiệu bởi Martin Holst Swende, một nhà lãnh đạo bảo mật tại Ethereum Foundation, đề xuất này nhằm mục đích định giá lại một số opcode (hướng dẫn được đưa ra cho Máy ảo Ethereum thực hiện hợp đồng thông minh) để có được sự cân bằng tốt giữa chi phí gas và tiêu thụ tài nguyên.
Vấn đề mà EIP-1884 được cho là phải giải quyết bắt nguồn từ một số hoạt động đang trở nên tốn nhiều tài nguyên hơn với việc mở rộng blockchain Ethereum. Hiện tại, các khối với các mức tiêu thụ gas tương tự phải mất rất nhiều thời gian để hoàn thành, đây không chỉ là vấn đề mà còn có thể là một nhân tố của một cuộc tấn công từ chối dịch vụ.
Friction xuất hiện trong cuộc triệu tập 69 nhà phát triển cốt lõi vào ngày 23 tháng 8, nơi Wei Tang của Parity Technologies bày tỏ lo ngại về khả năng thay đổi chi phí opcode sẽ phá vỡ một số hợp đồng đã được triển khai. Ông cho rằng cần phải bảo tồn tính tương thích ngược, cho phép các hợp đồng cũ hoạt động theo giá gốc.
Hudson Jameson, người liên kết cộng đồng của Ethereum Foundation, đã trả lời rằng có một “tiền lệ rằng giá OPCODE có thể và sẽ thay đổi để các hợp đồng của bạn không nên dựa vào giả định rằng chúng sẽ không thay đổi”, nói thêm rằng việc chuyển đổi sẽ giúp mọi người chuẩn bị tốt hơn cho thay đổi mạnh mẽ hơn sắp xảy ra.
EIP-1884 sẽ ảnh hưởng đến một số lượng hợp đồng trong nhiều dự án. Hubert Ritzdorf từ công ty bảo mật blockchain ChainSecurity đã đưa ra danh sách các hợp đồng mà có thể bị ảnh hưởng sâu rộng nhất.
EIP-2028 giảm chi phí gọi dữ liệu trong các giao dịch, có khả năng dẫn đến các khối lớn hơn và do đó cải thiện khả năng mở rộng của mạng. Điều này cũng sẽ làm cho các giải pháp khả năng mở rộng lớp hai (như zk-SNARKs) dễ tiếp cận hơn.
EIP-2200 thực hiện định lượng net gas, thay đổi cách tính chi phí lưu trữ trong EVM. Điều này sẽ kích hoạt các chức năng mới của lưu trữ hợp đồng và giảm một số chi phí quá mức.
Vẫn đang trong quá trình thực hiện
Một đề xuất nổi tiếng khác mà cộng đồng Ethereum đã cân nhắc trong quá trình tích hợp vào hard fork Istanbul là EIP-1057, đề xuất này tìm cách thay thế thuật toán khai thác Ethash hiện tại bằng một chức năng proof-of-work mới có tên ProgPoW, viết tắt của Programmatic Proof-of –Work. Các nhà phát triển cốt lõi đã tạm thời chấp nhận sáng kiến, chờ kết quả kiểm toán, để đưa vào hard fork Berlin.
Ý tưởng đằng sau bản cập nhật thuật toán này là điều chỉnh nó cho phần cứng hàng hóa sử dụng các đơn vị xử lý đồ họa, khiến việc khai thác trở nên khó khăn hơn đối với các thiết lập được trang bị chip Mạch tích hợp dành riêng cho ứng dụng.
Biện pháp này được thiết kế để khôi phục một số mức độ phi tập trung cho phân phối điện khai thác trong khi san bằng lĩnh vực bằng cách làm cho khai thác Ethereum hấp dẫn hơn đối với người dùng cá nhân và doanh nghiệp nhỏ không đầu tư vào phần cứng chuyên dụng. ASIC là một động lực chính đằng sau công nghiệp hóa khai thác trong vài năm qua, dẫn đến các cụm khai thác lớn, tập trung.
Đầu năm nay, lãnh đạo bảo mật Ethereum Foundation, Martin Holst Swende nói rằng việc giới thiệu ProgPoW sẽ giảm thiểu mức độ ASIC và các máy gia tốc phần cứng khác thống trị trên mạng. Ông nói thêm rằng một lý do khác cho sự thay đổi là vì lỗi bảo mật vốn có của Ethash.
Mặc dù dường như có sự thỏa thuận giữa các nhà phát triển cốt lõi liên quan đến tính “đáng khao khát” của ProgPoW, nhưng không phải ai trong cộng đồng cũng hài lòng về triển vọng của sự thay đổi thuật toán khai thác trước khi chuyển sang PoS trong Ethereum 2.0.
Thứ gây bất đồng chính kiến nhất từ trước đến nay là Aragon, một dự án quản lý các tổ chức tự trị phi tập trung, thứ mà đã bị cộng đồng bỏ phiếu vào ngày 2 tháng 11 để phản đối bất kỳ thay đổi nào đối với Ethash trước khi chuyển sang Ethereum 2.0.
Mặc dù tồn tại một số sự căng thẳng, không có dấu hiệu cho thấy một khối lượng người dùng Ethereum quan trọng phản đối gay gắt với thay đổi được đề xuất, cho thấy sự phát triển sẽ không dẫn đến sự rạn nứt nghiêm trọng.
Nếu kiểm toán độc lập chứng thực được sự mạnh mẽ của thuật toán mới, nó có thể sẽ được thực thi với hard fork Berlin, hiện đang được lên kế hoạch dự kiến vào tháng 6 năm 2020, khi Ethereum tiếp tục tiến tới phiên bản 2.0 của mạng.
- Nhà phân tích muốn mua mọi mức dip Ethereum khi hard fork Istanbul đến gần
- Sự xuất hiện sớm hard fork Istanbul của Ethereum gây ra sự chia rẽ Testnet
Thủy Tiên
Tạp chí Bitcoin | Cointelegraph