Soft Fork là gì? Giải thích về nâng cấp Blockchain

Soft Fork là gì? Giải thích về nâng cấp Blockchain

Các quy tắc blockchain trở nên chặt chẽ hơn chứ không phải lỏng lẻo hơn khi xảy ra soft fork. Các node cũ không nâng cấp thì sao? Chúng vẫn tiếp tục theo dõi các khối mới. Không có vấn đề gì, không có sự phân tách chuỗi. Có lẽ bạn đã từng bắt gặp thuật ngữ này gần các bản nâng cấp Bitcoin như SegWit hoặc Taproot, và tự hỏi điều gì thực sự phân biệt nó với hard fork.

Đây là phiên bản đơn giản, bỏ qua thuật ngữ chuyên ngành. Bạn đang nắm giữ tiền điện tử, vận hành một node, hay chỉ đơn giản là tò mò tại sao một số bản nâng cấp gây ra hỗn loạn trong khi những bản khác lại không được chú ý? Thông thường, tất cả đều quy về sự khác biệt này.

Soft fork trong Blockchain là gì?

Các bản phân nhánh mềm (soft fork) làm cho các quy tắc của blockchain trở nên chặt chẽ hơn, chứ không bao giờ nới lỏng. Một khối (block) được chấp nhận theo các quy tắc cũ có thể bị từ chối theo các quy tắc mới. Tuy nhiên, các khối tuân theo các quy tắc mới, chặt chẽ hơn thì sao? Phần mềm cũ vẫn cho phép chúng được chấp nhận.

Mấu chốt ở đây chính là khả năng tương thích một chiều đó. Các nút cũ không hiểu chi tiết các quy tắc mới, và thành thật mà nói, chúng không cần phải hiểu. Chúng chỉ thấy các khối trông có vẻ hợp lệ và tiếp tục hoạt động, không hề hay biết rằng một phần những gì từng được chấp nhận nay không còn được chấp nhận nữa.

Các hard fork đảo ngược điều này. Chúng nới lỏng hoặc viết lại hoàn toàn các quy tắc theo những cách mà các node cũ không thể xác thực. Siết chặt hay nới lỏng, sự khác biệt duy nhất đó quyết định liệu bản nâng cấp có giữ mọi người trên cùng một chuỗi hay chia mạng lưới làm đôi.

Hãy hình dung thế này: một bộ quy tắc đang thu hẹp lại, chứ không phải là được viết lại hoàn toàn. Trước khi phân nhánh, một phạm vi khối nhất định được coi là hợp lệ. Sau đó, phạm vi này thu hẹp lại một chút. Một số khối từng được chấp nhận giờ bị các node được nâng cấp từ chối. Tuy nhiên, điểm mấu chốt là, mọi khối được chấp nhận theo quy tắc mới đều đã được chấp nhận theo quy tắc cũ. Không có gì mới được chấp nhận. Cái cũ chỉ bị khóa lại. Đó là toàn bộ lý do tại sao phần mềm chưa được vá lỗi vẫn hoạt động như không có chuyện gì xảy ra.

Cơ chế hoạt động của Soft Fork là gì?

Cơ chế hoạt động xoay quanh hành vi của các nút và việc xác thực quy tắc. Nói một cách khái quát, quá trình diễn ra như sau:

  1. Các nhà phát triển đề xuất thay đổi nhằm thu hẹp tập hợp các giao dịch hoặc khối hợp lệ, thường là để khắc phục một hạn chế hoặc bổ sung một khả năng mới.
  2. Cộng đồng và các nhà điều hành nút mạng sẽ xem xét, thử nghiệm và tranh luận về đề xuất, thường thông qua một quy trình chính thức như Đề xuất Cải tiến Bitcoin (BIP).
  3. Các thợ đào hoặc người xác thực bắt đầu thể hiện sự ủng hộ đối với các quy tắc mới, thường thông qua một cơ chế được nhúng trong các khối mà họ tạo ra.
  4. Khi tín hiệu đạt đến ngưỡng kích hoạt, thường là khoảng 90–95% các khối gần đây, các quy tắc mới sẽ được thực thi bởi các nút đã được nâng cấp.
  5. Các node chưa được nâng cấp vẫn tiếp tục xác thực các khối bằng logic hiện có của chúng. Vì các quy tắc mới là một tập hợp con của các quy tắc cũ, nên các khối đáp ứng các quy tắc mới cũng đáp ứng các quy tắc cũ, do đó các node chưa được nâng cấp chấp nhận chúng mà không gặp vấn đề gì.
  6. Mạng lưới tiếp tục hoạt động như một chuỗi duy nhất, với các nút được nâng cấp thực thi các quy tắc nghiêm ngặt hơn và các nút chưa được nâng cấp âm thầm hưởng lợi từ chúng mà không cần thực thi chúng trên thực tế.

Kết quả: một bản nâng cấp trực tiếp không cần tất cả người tham gia phải hành động cùng một lúc. Đó chính là lý do tại sao soft fork là công cụ được lựa chọn cho hầu hết các cải tiến blockchain thông thường. Một điều đáng nhấn mạnh là, các node chưa được nâng cấp không chủ động thực thi các quy tắc mới. Chúng chỉ đang tận dụng sức mạnh băm (hash power) chiếm ưu thế của mạng lưới để thực thi các quy tắc đó cho tất cả mọi người. Đó là một phần lý do tại sao việc chấp nhận của người khai thác lại quan trọng đến tốc độ và độ an toàn của việc soft fork được áp dụng.

Soft Fork là gì? Giải thích về nâng cấp Blockchain

Phuộc mềm so với phuộc cứng: Sự khác biệt thực sự là gì?

Câu hỏi về soft fork so với hard fork thường xuyên được đặt ra, và câu trả lời ngắn gọn là về khả năng tương thích. Soft fork thu hẹp các quy tắc theo cách mà phần mềm cũ vẫn chấp nhận được. Hard fork thay đổi các quy tắc theo cách mà phần mềm cũ hoàn toàn bác bỏ.

Diện mạo Nĩa mềm Rẽ cứng
Hướng quy tắc Các khối hợp lệ được thu hẹp, nghiêm ngặt hơn. Lỏng lẻo hơn hoặc thay đổi về cơ bản
Tương thích ngược? Đúng vậy, các nút cũ vẫn chấp nhận các khối mới. Không, các nút cũ sẽ từ chối các khối mới.
Cần nâng cấp toàn hệ thống? KHÔNG Đúng vậy, nếu không chuỗi sẽ bị tách ra.
Nguy cơ tách chuỗi Thấp Mức độ rủi ro cao nếu không đạt được sự đồng thuận tuyệt đối.
Cần có sự phối hợp Tín hiệu của người khai thác/người xác thực Thỏa thuận mạng đầy đủ
Ví dụ SegWit, Taproot Bitcoin Cash tách ra từ Bitcoin.

Soft fork thường là lựa chọn ít gây tranh cãi hơn vì mạng lưới không cần phải nhất trí ngay lập tức. Hard fork mang tính chất gây xáo trộn hơn, vì bất kỳ ai không nâng cấp kịp thời sẽ bị mắc kẹt trên một blockchain khác, không tương thích.

Đó cũng là lý do tại sao các hard fork thường thu hút sự chú ý của dư luận trong khi soft fork thì hiếm khi. Một hard fork thường đi kèm với một mã giao dịch mới, một sàn giao dịch mới và một cuộc tranh luận công khai về việc chuỗi nào đại diện cho dự án "thực sự". Một soft fork thường chỉ xuất hiện dưới dạng việc tăng số phiên bản trong phần mềm ví của bạn, và hầu hết người dùng thậm chí không nhận thấy các quy tắc bên dưới đã thay đổi.

Ví dụ thực tế về Soft Fork trong Bitcoin và hơn thế nữa

Soft fork không phải là một khái niệm lý thuyết. Bitcoin đã sử dụng chúng nhiều lần để bổ sung chức năng mà không cần phải chia tách mạng lưới một cách cưỡng bức.

  • SegWit (2017): Segregated Witness đã tái cấu trúc cách tính toán dữ liệu giao dịch vào kích thước khối, sửa lỗi gọi là tính dễ bị thay đổi của giao dịch và đặt nền móng cho Mạng Lightning. Nó vẫn là ví dụ về soft fork được trích dẫn nhiều nhất trong lịch sử Bitcoin.
  • Taproot (2021): Giới thiệu chữ ký Schnorr và cải thiện tính bảo mật cũng như hiệu quả cho các giao dịch phức tạp, đồng thời vẫn tương thích với các node chưa được nâng cấp.
  • P2SH (2012): Pay-to-Script-Hash đã đơn giản hóa cách thức thể hiện các ví đa chữ ký và các kịch bản giống như hợp đồng thông minh trên chuỗi, mà không cần phải chia tách mạng.
  • BIP66 (2015): Bắt buộc mã hóa DER nghiêm ngặt cho chữ ký số, khắc phục một lỗ hổng kỹ thuật có thể gây ra sự không nhất quán trong quá trình xác thực.

Mỗi một trong số đó đều thắt chặt các quy tắc của Bitcoin theo một cách cụ thể và có chủ đích, và mỗi một đều được thực hiện mà không chia rẽ cộng đồng thành hai loại tiền điện tử cạnh tranh nhau.

Vì sao các nhà phát triển chọn Soft Fork thay vì Hard Fork?

Nếu được lựa chọn, hầu hết các nhà phát triển cốt lõi của Bitcoin và Ethereum đều ưu tiên soft fork trước, và không chỉ vì sở thích kỹ thuật. Lý do khá thực tế.

Thứ nhất, không ai bị ép buộc phải nâng cấp cùng một ngày. Ví điện tử, sàn giao dịch, nhóm khai thác, tất cả đều có thể chuyển đổi theo lịch trình riêng của họ thay vì phải chạy đua với một thời hạn nghiêm ngặt. Ở quy mô lớn, sự linh hoạt đó rất quan trọng, vì việc điều phối hàng nghìn nhà điều hành độc lập để nâng cấp đồng thời thực sự rất khó khăn.

Rồi còn yếu tố thống nhất nữa. Một cú phân nhánh mềm (soft fork) giúp giữ cho mạng lưới và đồng tiền điện tử được nguyên vẹn. Không có token cạnh tranh nào xuất hiện. Không sàn giao dịch nào phải chọn chuỗi nào là "thật". Cộng đồng không bị chia rẽ thành các phe phái tranh cãi về tính hợp pháp. Đặc biệt đối với một mạng lưới thanh toán, sự ổn định như vậy có giá trị rất lớn.

Khả năng đảo ngược cũng rất quan trọng. Vì các node cũ không bao giờ hoàn toàn cam kết thực thi các quy tắc mới một cách tự nguyện, nên một soft fork bị lỗi đôi khi có thể được hoàn tác với ít rắc rối hơn nhiều so với việc hoàn tác một hard fork đã tạo ra một đồng tiền thứ hai, được giao dịch độc lập.

Những rủi ro và hạn chế của Soft Fork

Các nhánh mềm (soft fork) không phải là không có rủi ro, mặc dù chúng thường được coi là con đường an toàn hơn. Có một vài hạn chế thực sự đáng để bạn biết.

  • Các node chưa được nâng cấp vẫn xác thực các khối theo các quy tắc cũ, nghĩa là chúng không thể tự mình xác minh xem các điều kiện cụ thể theo quy tắc mới có thực sự được thực thi chính xác hay không, mà chỉ tin tưởng vào số đông.
  • Nếu một bộ phận thiểu số đủ lớn các thợ mỏ từ chối nâng cấp và tiếp tục sản xuất khối theo các quy tắc cũ, các tình huống tranh chấp vẫn có thể phát sinh, đôi khi dẫn đến sự chia rẽ trên thực tế mặc dù về mặt kỹ thuật, sự phân nhánh này là "mềm".
  • Việc phụ thuộc quá nhiều vào tín hiệu từ thợ đào có nghĩa là việc kích hoạt soft fork có thể bị ảnh hưởng bởi sự tập trung của các nhóm khai thác, điều này đặt ra những câu hỏi chính đáng về mức độ phi tập trung thực sự của quy trình trong thực tế.
  • Một số soft fork phức tạp hơn khi triển khai một cách an toàn so với vẻ ngoài của chúng, vì các nhà phát triển phải đảm bảo rằng các quy tắc mới thực sự là một tập hợp con nghiêm ngặt của các quy tắc cũ; bất kỳ sai sót nào ở đó đều có thể tạo ra những lỗ hổng xác thực không mong muốn.

Tất cả những điều này không làm cho việc phân nhánh mềm trở nên nguy hiểm. Nó chỉ có nghĩa là "tương thích ngược" không đồng nghĩa với "không rủi ro", và sự phối hợp vẫn rất quan trọng ngay cả khi không thể thực hiện phân nhánh cứng.

Soft Fork là gì? Giải thích về nâng cấp Blockchain

Quá trình kích hoạt Soft Fork trên Blockchain

Việc chỉ thêm mã mới thôi thì chưa đủ để đưa soft fork vào hoạt động. Cần có người xác nhận xem mạng lưới đã thực sự sẵn sàng hay chưa, và đó là công việc phối hợp.

Bitcoin đã thử qua một vài phương pháp cho việc này. Phương pháp báo hiệu kiểu BIP9 là phương pháp kinh điển: thợ đào thả một dấu hiệu nhỏ vào các khối họ khai thác, về cơ bản là giơ tay lên. "Sẵn sàng." Khi đủ số lượng khối gần đây, thường là khoảng 95%, giơ tay lên trong một khoảng thời gian nhất định, các quy tắc mới sẽ được áp dụng. Việc thực thi sẽ được tiến hành sau đó.

Các phương pháp kích hoạt mới hơn, như Speedy Trial và nhiều hình thức soft fork do người dùng kích hoạt, đã xuất hiện một phần vì việc chỉ dựa vào tín hiệu từ thợ đào có thể bị đình trệ nếu các nhóm khai thác phản hồi chậm hoặc do dự về mặt chính trị. Các cơ chế thay thế này cho phép các nhà điều hành nút và cộng đồng rộng lớn hơn có ảnh hưởng trực tiếp hơn đến việc liệu bản nâng cấp có thực sự diễn ra hay không, thay vì để quyết định hoàn toàn thuộc về thợ đào.

Việc kích hoạt Taproot vào năm 2021 là một minh họa tốt về cách các phương pháp này có thể hoạt động cùng nhau. Nó đã sử dụng một quy trình báo hiệu được sửa đổi gọi là Thử nghiệm nhanh (Speedy Trial), thiết lập một khung thời gian ngắn hơn, được xác định rõ ràng để các thợ đào báo hiệu sự sẵn sàng, với một lộ trình dự phòng cho phép cộng đồng kích hoạt bản nâng cấp ngay cả khi không có sự hỗ trợ đầy đủ từ thợ đào. Lộ trình dự phòng đó ít quan trọng trong thực tế, vì quá trình báo hiệu diễn ra suôn sẻ, nhưng sự tồn tại của nó cho thấy thiết kế kích hoạt đã tiến bộ như thế nào kể từ các soft fork ban đầu của Bitcoin, vốn chỉ do thợ đào điều khiển.

Lời kết

Âm thầm, từng bước một, không tự phá vỡ cấu trúc, đó là cách hầu hết các mạng blockchain thực sự phát triển. Siết chặt các quy tắc thay vì nới lỏng chúng và một mạng lưới có thể thêm các tính năng, sửa lỗi, hoạt động hiệu quả hơn, đồng thời vẫn có thể sử dụng được cho những người chưa nâng cấp. Các doanh nghiệp lựa chọn cơ sở hạ tầng tiền điện tử cũng nên hướng đến điều tương tự. Những cải tiến được xây dựng trên nền tảng ổn định, thống nhất, chứ không phải những thay đổi đột phá. Plisio cũng đi theo hướng đó: ổn định, tương thích, được xây dựng để tiếp tục hoạt động trong khi các mạng lưới bên dưới nó liên tục thay đổi hình dạng.

Bất kỳ câu hỏi?

Bản nâng cấp tương thích ngược. Nó siết chặt các tiêu chí để xác định giao dịch hoặc khối hợp lệ, nhưng các node chưa từng nâng cấp vẫn nhận diện được các khối mới một cách bình thường. Một chuỗi duy nhất, không phân tách.

Soft fork thu hẹp các quy tắc, phần mềm cũ thậm chí không nhận ra. Hard fork thì loại bỏ hoàn toàn các khối định dạng cũ, và nếu mọi người không cùng nhau hành động, bạn sẽ có hai chuỗi riêng biệt vĩnh viễn.

SegWit, không cần bàn cãi. Được đưa vào Bitcoin năm 2017, đã thay đổi cách tính toán dữ liệu giao dịch, khắc phục vấn đề nan giải gọi là tính dễ bị thay đổi của giao dịch. Không cần phải chia tách. Taproot từ năm 2021 cũng được nhắc đến thường xuyên không kém.

Thông thường là vậy. Không có việc chia tách chuỗi bắt buộc, mọi người nâng cấp bất cứ khi nào họ sẵn sàng. Nhưng đừng gọi đó là không rủi ro, sự tập trung của nhóm khai thác vẫn định hình cách thức kích hoạt diễn ra trong thực tế.

Thực ra là có nhiều. SegWit, Taproot, P2SH, BIP66. Tất cả đều là thật, tất cả đều được phát hành mà không tạo ra một đồng tiền cạnh tranh nào khác.

Thông thường thì không. Hầu hết các bản phân nhánh (fork) chỉ là để bảo trì hoặc cập nhật tính năng theo lịch trình. Chỉ những bản phân nhánh phức tạp, gây tranh cãi, những bản phát sinh từ các mâu thuẫn chưa được giải quyết, mới thực sự là dấu hiệu của rắc rối.

Ready to Get Started?

Create an account and start accepting payments – no contracts or KYC required. Or, contact us to design a custom package for your business.

Make first step

Always know what you pay

Integrated per-transaction pricing with no hidden fees

Start your integration

Set up Plisio swiftly in just 10 minutes.