Hard forks & Soft forks

05.12.2018

Bất cứ phần mềm nào cũng cần có những bản cập nhật thường xuyên nhằm sửa chữa các vấn đề hoặc cải thiện hiệu suất. Trong thế giới crypto, các bản cập nhật như vậy được gọi là các “fork”.

Các loại tiền mã hóa bản chất là các mạng lưới phi tập trung, do đó tất cả các bên tham gia vào mạng lưới - còn được gọi là các “node” - cần phải tuân theo một số quy tắc để có thể cùng làm việc một cách hài hòa với nhau. Bộ các quy tắc như vậy được gọi là “giao thức” (protocol).

Các quy tắc cơ bản trong một giao thức bao gồm: kích thước khối (block) trên một chuỗi khối (blockchain), các phần thưởng mà các thợ mỏ (miner) nhận được khi “đào” (mining) được một khối mới, và một số vấn đề khác.

Có 2 dạng fork trong lĩnh vực tiền mã hóa: soft fork và hard fork. Cả 2 dạng này về cơ bản đều làm thay đổi cách vận hành của giao thức của tiền mã hóa.


Soft Fork

Một Soft Fork là một thay đổi trong giao thức tiền mã hóa tương thích ngược (backward-compatible). Điều này có nghĩa là các node chưa cập nhật sẽ vẫn có thể xử lý các giao dịch và đẩy các block mới lên blockchain, miễn là không vi phạm vào các quy tắc của giao thức mới.

Ví dụ, một soft fork đưa ra quy tắc mới là giảm kích thước block từ 3mb xuống còn 2mb. Khi đó, các node cũ sẽ vẫn có khả năng xử lý giao dịch và đẩy các block mới có kích thước 2mb đổ lại. Nhưng nếu các node cũ này cố gắng đẩy block lớn hơn 2mb lên mạng lưới, các node mới sẽ từ chối block do vi phạm quy tắc. Vấn đề này sẽ thúc để các node cũ phải cập nhật giao thức mới, vì nếu không, chúng sẽ không có được độ hiệu quả như các node đã cập nhật.


Hard Fork

Một Hard Fork là một sự thay đổi của giao thức tiền mã hóa không tương thích với các phiên bản trước, có nghĩa là các node không cập nhật phiên bản mới sẽ không thể xử lý giao dịch hay đẩy các block mới lên blockchain. Hard forks được dùng để thay đổi hoặc cải thiện giao thức hiện tại, hoặc có thể tạo ra một giao thức và blockchain mới, độc lập.

Ví dụ, khi một giao thức có sự thay đổi về việc tăng kích thước block từ 2mb lên 4mb. Nếu một node đã cập nhật thực hiện về đẩy một block 3mb lên blockchain, thì khi đó các node cũ, chưa cập nhật sẽ cho rằng đó là một block không hợp lệ và sẽ từ chối block đó.

Tùy thuộc từng tình huống, các hard fork có thể được lập kế hoạch, hoặc gây ra nhiều tranh cãi. Với một fork được lên kế hoạch, các bên tham gia sẽ tự nguyện nâng cấp phần mềm của họ nhằm đáp ứng các quy tắc mới, bỏ đi các phiên bản cũ. Các node không cập nhật sẽ tiếp tục quá trình mining trên blockchain cũ với rất ít người dùng.

Tuy nhiên, nếu fork đó không có tỷ lệ đồng thuận cao, tức là làm dấy lên nhiều bất đồng về vấn đề nâng cấp trong cộng đồng, thường giao thức sẽ bị chia làm 2 blockchain riêng biệt không tương thích với nhau -- đồng nghĩa với việc xuất hiện 2 loại tiền mã hóa khác nhau. Cả 2 blockchain này sẽ có cộng đồng riêng cho mỗi bên, các nhà phát triển sẽ tiếp tục xây dựng theo cách mà họ nghĩ là tốt nhất.

Mỗi fork sẽ được dựa trên một blockchain ban đầu, do đó toàn bộ các giao dịch từ blockchain đó cũng sẽ được sao chép y nguyên sang fork mới này. Ví dụ, nếu bạn nắm giữ 100 đồng tiền mã hóa A, và một hard fork được trên đồng tiền đó sẽ tạo ra một đồng tiền mã hóa mới gọi là đồng B, thì bạn cũng sẽ nhận được 100 đồng B.

Vì tiền mã hóa mang bản chất tự nhiên của nó là mã nguồn mở và khi càng nhiều cá nhân hay tổ chức với nhiều mục đích khác nhau tham gia vào ngành công nghệ này, các fork sẽ vẫn tiếp tục giữ một vai trò không thể thay thế cho sự phát triển của loại hình tiền số. 

Vui lòng theo dõi để cập nhật các nội dung tiếp theo của chúng tôi, và đừng quên khám phá các video khác đăng tải trên Binance Academy. 

Loading