Bản rebase mã hard fork proof-of-work trên Bitcoin Knots: tín hiệu bảo trì hay lời hứa?
Người ta có xu hướng nhìn hard fork như một cánh cửa mở ra tài sản mới. Tôi nhìn hard fork như một quyết định bảo trì phần mềm với rủi ro phân tán quyền lực. Khi Chris Guida vừa rebase mã hard fork proof-of-work cho Bitcoin Knots, thị trường gần như không có phản ứng gì. Nhưng đối với một người làm giáo dục blockchain, tôi không coi đây là tin thừa. Một bản rebase là một thao tác kỹ thuật, và bất kỳ thao tác nào nằm trên tầng đồng thuận đều cần được đọc kỹ. Bản tin gốc rất ngắn. Nó thiếu địa chỉ kho mã, thiếu dữ liệu testnet, thiếu tuyên bố từ thợ mỏ, thiếu báo cáo kiểm toán. Nhiều ô trong bảng phân tích được đánh dấu N/A, thông tin không đủ. Nhưng chính khoảng trống đó mới là thông tin. Trong một mùa thị trường tăng, các khoảng trống dễ bị lấp đầy bởi câu chuyện. Tôi muốn viết bài này như một cách nhắc nhở: hãy đọc code trước khi nghe kể chuyện.
Bitcoin Knots là một node client của Bitcoin, nằm trong hệ sinh thái mã nguồn mở nhưng không được phần lớn thợ mỏ sử dụng. Nó do Luke Dashjr duy trì, và thường là nơi để những ý tưởng chính sách không có chỗ trong Bitcoin Core được thử nghiệm. Vì vậy, khi một bản vá liên quan đến hard fork được rebase vào Bitcoin Knots, tôi không đọc nó như một sản phẩm thương mại. Tôi đọc nó như một thông điệp gửi đến cộng đồng: có một nhóm người vẫn muốn làm theo cách riêng. Hard fork nghĩa là gì? Nó là một thay đổi không tương thích ngược trong giao thức. Một node chạy mã mới sẽ không công nhận một khối do node cũ tạo ra. Điều này khác với soft fork. Soft fork vẫn giữ được khả năng tương thích nhờ các quy tắc chặt hơn. Hard fork cắt dây. Với một tài sản như Bitcoin, ai có quyền cắt dây? Câu trả lời nằm ở khả năng tập hợp hash rate, cộng đồng và thanh khoản. Một dòng code tự nó không cắt dây được. Nó chỉ vẽ ra đường cắt.
Tại sao lại nhấn mạnh proof-of-work? Vì cơ chế đồng thuận đang là mặt trận tranh luận lớn. Trong khi nhiều mạng chuyển sang proof-of-stake để tiết kiệm năng lượng, một hard fork giữ proof-of-work tuyên bố rằng khai thác bằng sức mạnh tính toán vẫn là phương cách đáng tin cậy. Điều đó có thể thu hút những thợ mỏ không muốn rời bỏ mô hình cũ. Nhưng nó cũng thu hút sự chú ý của những người lo ngại về tiêu thụ điện. Một lựa chọn kỹ thuật luôn mang theo một lựa chọn giá trị. Vậy rebase có gì quan trọng? Trong Git, rebase lấy các commit từ một nhánh và đặt lên nền của một nhánh khác. Mục tiêu là giữ lịch sử tuyến tính. Nếu người dùng chỉ muốn tạo một bản fork một lần, họ có thể copy mã và không cần quan tâm đến thượng nguồn. Nhưng khi họ rebase, họ chấp nhận sống chung với thượng nguồn, cập nhật thay đổi từ thượng nguồn, giải quyết xung đột mỗi lần nâng cấp. Điều đó cho thấy một cam kết bảo trì dài hạn.
Điều đó cũng có nghĩa là rủi ro nằm ở những xung đột merge. Mỗi lần rebase, lập trình viên phải tự quyết định giữ phần nào, bỏ phần nào. Với mã đồng thuận, một quyết định sai không tạo ra một bug thông thường. Nó tạo ra một chuỗi khối rẽ nhánh, hoặc một lỗ hổng cho phép kẻ tấn công chi tiêu hai lần. Tôi từng chứng kiến các dự án nhỏ đánh mất hàng triệu đô chỉ vì một thao tác cập nhật tham số. Bản rebase của Chris Guida, nếu không có kiểm thử, có thể mang theo rủi ro tương tự. Mỗi dòng code trong bản rebase không chỉ là toán học, nó là tuyên ngôn về hướng đi của một cộng đồng. Vì vậy, tôi cần nhìn thấy một testnet công khai, một bộ kiểm thử tự động, và một quy trình review từ nhiều phía trước khi xem đây là một sự kiện kỹ thuật đáng tin cậy.
Thông thường, một hard fork proof-of-work sẽ tạo ra một blockchain với genesis block mới hoặc một lịch sử tách ra từ một độ cao nhất định. Các node phải chấp nhận bộ quy tắc mới. Điều đó có nghĩa là việc duy trì mã chính là việc duy trì quyền lực. Nếu một bản hard fork không được nâng cấp kịp thời, nó có thể bị bỏ lại phía sau. Vì thế, hành động rebase không phải là dấu chấm hết, mà là dấu phẩy. Nó nói rằng tác giả vẫn còn ở đây, vẫn muốn theo dõi sự phát triển của Bitcoin Knots, và vẫn muốn đưa tham vọng hard fork tiến thêm một bước. Nhưng một mình cam kết bảo trì không đủ để tạo ra một mạng lưới.
Phân tích giai đoạn hai trong nguồn tin đánh giá mức độ đổi mới ở mức micro-innovation và nhấn mạnh khả năng bảo trì code. Tôi đồng ý với khung đánh giá đó. Một bản rebase không tạo ra một giao thức mới từ con số không. Nó củng cố một hướng đi đã được vạch ra. Chúng ta không nên kỳ vọng một cuộc cách mạng kỹ thuật từ một thao tác rebase. Chúng ta nên chờ xem những commit tiếp theo xuất hiện với tần suất nào, ai review chúng, và chúng có được đưa vào một testnet công khai hay không. Mỗi commit trong kho mã nguồn không chỉ là thay đổi logic, nó là giấy thông hành của một nhóm người tin rằng Bitcoin cần phải khác đi.
Điều tôi thấy ở đây là khoảng trống dữ liệu. Không có nguồn code công khai được đính kèm, không có bằng chứng rằng mã đã chạy trên testnet, không có tuyên bố từ các thợ mỏ về việc họ sẽ chuyển hash rate sang chuỗi mới. Nếu một thay đổi đồng thuận không có những mảng dữ liệu này, tôi không thể gọi nó là một bản nâng cấp có thể vận hành. Tôi chỉ có thể gọi nó là một bản vá đang được viết. Mùa thị trường tăng làm cho việc thiếu dữ liệu trở nên nguy hiểm hơn. Khi mọi thứ đều tăng, các nhà đầu tư có xu hướng tìm kiếm lý do để mua, thay vì lý do để dừng lại. Một từ khóa hard fork có thể dễ dàng trở thành một chiến dịch truyền thông. Nhưng blockchain không vận hành bằng truyền thông. Nó vận hành bằng sự đồng thuận giữa các node, bằng bằng chứng công việc từ thợ mỏ, và bằng khả năng thanh khoản của sàn giao dịch. Thiếu bất kỳ thành phần nào, chuỗi mới sẽ không bao giờ thành hình.
Giờ tôi muốn nói điều phản trực giác. Trong thế giới crypto, hard fork thường được tôn vinh như biểu tượng của tự do. Nhưng tôi cho rằng hard fork không phải là con đường giải phóng duy nhất. Một hard fork có thể làm loãng bảo mật của mạng gốc. Khi một phần thợ mỏ rời đi, mạng gốc mất đi một phần hash rate. Khi một phần cộng đồng rời đi, mạng gốc mất đi một phần mạng lưới xã hội. Nếu cuộc chia tay không được chuẩn bị kỹ lưỡng, cả hai chuỗi đều có thể chịu tổn thương. Vì vậy, tôi không vỗ tay ngay khi thấy một bản rebase hard fork. Tôi đặt câu hỏi: ai sẽ đào khối đầu tiên? Chi phí để đưa một khối vào chuỗi mới là bao nhiêu? Một hard fork thành công từng có sự hậu thuẫn của các công ty khai thác, sàn giao dịch, ví. Nếu không có hậu thuẫn đó, code chỉ là một đồ vật trưng bày.
Điều phản trực giác thứ hai: thị trường tăng che giấu lỗi kỹ thuật. Khi giá token tăng, người ta ít review code. Khi cộng đồng xôn xao, người ta ít chú ý đến việc thiếu audit. Nhưng lỗi kỹ thuật không biến mất vì giá tăng. Nó ngủ yên và chờ một ngày bùng nổ. Tôi đã dạy nhiều học viên rằng cách kiểm tra một dự án không phải là đọc whitepaper, mà là đọc lịch sử commit, kiểm tra xem có ai thực sự sửa bug, và xem bảo mật được xử lý như thế nào. Một dự án hard fork lại càng cần phải làm vậy, vì nó đang đòi hỏi người dùng rời bỏ một mạng lưới ổn định. Lời đề nghị đó phải dựa trên bằng chứng, không phải dựa trên lời hứa.
Tôi nhớ hồi còn nghiên cứu cơ chế đồng thuận, tôi thường nói với các học viên rằng mỗi hard fork chính là một cuộc bỏ phiếu. Nhưng lá phiếu không được bỏ trong hòm phiếu. Lá phiếu nằm ở nơi một người chạy node, một thợ mỏ cắm điện, một sàn giao dịch niêm yết token. Nếu tất cả những đội ngũ đó không tham gia, mã nguồn chỉ là văn bản chết. Bản rebase của Chris Guida mới chỉ cho thấy một nhóm người muốn tham gia. Phần còn lại của cuộc bỏ phiếu vẫn chưa diễn ra. Nếu bạn hỏi tôi rằng Chris Guida rebase mã hard fork proof-of-work cho Bitcoin Knots có đáng tin hay không, tôi sẽ trả lời rằng câu hỏi chưa đủ thông tin. Một kho mã không có nguồn công khai, một testnet không rõ ràng, và một cộng đồng thợ mỏ chưa lên tiếng, tất cả khiến tôi giữ thái độ chờ. Không phải vì tôi nghi ngờ tài năng của tác giả. Mà vì blockchain vận hành bằng sự xác minh. Khối tiếp theo sẽ đến từ dữ liệu, không đến từ cảm xúc. Tôi sẽ để mắt tới kho mã này. Nếu các commit tiếp theo xuất hiện, nếu một testnet được công khai, nếu thợ mỏ bắt đầu nói về nó, tôi sẽ phân tích kỹ hơn. Còn hiện tại, một bản rebase chỉ là một bản rebase. Mỗi quyết định hard fork không chỉ là kỹ thuật, nó là phép thử cho câu hỏi ai thực sự sở hữu mạng lưới.