Để cải thiện hiệu suất của 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 đề. Trong mạng lưới của blockchain, các bản cập nhật như vậy được gọi là các “fork”. Có 2 dạng fork  đó là 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ùng tìm hiểu Fork là gì ? Điểm khác nhau giữa hard fork và soft fork qua bài viết sau đây.

Fork là gì

Sự thay đổi của một mạng lưới Blockchain, mỗi thay đổi phải được sự đồng thuận của người dùng. Nếu đủ số người dùng chấp nhận việc nâng cấp hoặc thay đổi mã code, Fork sẽ được triển khai trên toàn hệ thống. Một thay đổi mà vẫn hỗ trợ các phiên bản cũ của mạng, được gọi là Soft Fork. Một thay đổi không tương thích ngược lại, được gọi là Hard Fork. Đôi lúc, sự chia rẽ trong cộng đồng liên quan đến một Hard Fork có thể xuất hiện một mạng lưới Blockchain hoàn toàn mới, song song được tạo ra.

Điểm khác nhau giữa hard fork và soft fork

 Hard Fork 

hard fork là gì

Là một thay đổi căn bản đối với giao thức của mạng làm cho các khối và giao dịch không hợp lệ trước đó trở nên hợp lệ hoặc ngược lại. Một hard fork yêu cầu tất cả các nút hoặc người dùng nâng cấp lên phiên bản mới nhất của phần mềm giao thức.

 Hard Fork được sử dụng khi nào

Hard fork được sử dụng là khi các nút của phiên bản mới nhất của blockchain không còn chấp nhận phiên bản cũ của blockchain; tạo ra sự phân chia vĩnh viễn từ phiên bản trước của blockchain.

Việc thêm một quy tắc mới vào mã về cơ bản sẽ tạo ra một fork trong blockchain: một đường dẫn đi theo blockchain mới, được nâng cấp và đường dẫn khác tiếp tục dọc theo đường dẫn cũ. Thông thường, sau một thời gian ngắn, những người trong chuỗi cũ sẽ nhận ra rằng phiên bản blockchain của họ đã lỗi thời hoặc không liên quan và nhanh chóng nâng cấp lên phiên bản mới nhất.

Soft fork 

soft fork là gì

Về mặt công nghệ blockchain, Soft fork là một thay đổi đối với giao thức phần mềm trong đó chỉ các khối  giao dịch hợp lệ trước đó được thực hiện không hợp lệ. Vì các nút cũ sẽ nhận ra các khối mới là hợp lệ, một soft fork tương thích ngược. Loại fork này chỉ yêu cầu phần lớn các thợ mỏ nâng cấp để thực thi các quy tắc mới, trái ngược với một hard fork đòi hỏi tất cả các nút phải nâng cấp và đồng ý về phiên bản mới.

Soft Fork được sử dụng khi nào

Các loại giao dịch mới thường có thể được thêm dưới dạng các nhánh mềm, chỉ yêu cầu người tham gia (ví dụ người gửi và người nhận) và người khai thác hiểu loại giao dịch mới. Điều này được thực hiện bằng cách giao dịch mới xuất hiện cho các khách hàng cũ dưới dạng giao dịch “trả tiền cho bất kỳ ai”  và khiến các thợ mỏ đồng ý từ chối các khối bao gồm các giao dịch này trừ khi giao dịch xác thực theo quy tắc mới. Đây là cách trả tiền cho mã băm (P2SH) đã được thêm vào Bitcoin .

Một ngã ba mềm cũng có thể xảy ra đôi khi do sự phân chia tạm thời trong blockchain khi các công cụ khai thác sử dụng các nút không được nâng cấp vi phạm quy tắc đồng thuận mới mà các nút của họ không biết. 

Các soft fork không yêu cầu bất kỳ nút nào để nâng cấp để duy trì sự đồng thuận vì tất cả các khối với phần mềm mới được xử lý theo quy tắc cũng tuân theo các quy tắc cũ, do đó khách hàng cũ chấp nhận chúng. 

Các soft fork không thể đảo ngược mà không có hard fork, vì theo định nghĩa của soft fork chỉ cho phép tập hợp các khối hợp lệ trở thành một tập hợp con chính xác của phần trước fork hợp lệ. Nếu người dùng nâng cấp lên ứng dụng vì một lý do nào đó, phần lớn các công cụ khai thác chuyển trở lại máy khách pre-softfork, phá vỡ sự đồng thuận ngay khi một khối không đi theo khách hàng của họ .

Để một phần mềm hoạt động, phần lớn năng lượng khai thác cần phải chạy một khách hàng nhận ra fork. Càng nhiều công cụ khai thác chấp nhận các quy tắc mới, mạng càng an toàn hơn sau khi kết thúc. Nếu bạn có 3/4 thợ mỏ nhận ra fork, 1/4 khối được tạo không đảm bảo tuân theo các quy tắc mới. Các khối 1/4 này sẽ hợp lệ đối với các nút cũ không biết các quy tắc mới, nhưng chúng sẽ bị các nút mới bỏ qua.

Các soft fork đã được sử dụng trên các blockchain Bitcoin và Ethereum , trong số những loại khác, để thực hiện các chức năng mới và được nâng cấp tương thích ngược. 

hard fork và soft fork

điểm khác nhau của hard fork và soft fork

Các hard fork và soft fork về cơ bản giống nhau theo nghĩa là khi mã hiện tại của nền tảng tiền điện tử được thay đổi, một phiên bản cũ vẫn còn trên mạng trong khi phiên bản mới được tạo. Với một soft fork, chỉ một blockchain sẽ vẫn còn hiệu lực khi người dùng chấp nhận bản cập nhật. Trong khi với một hard fork, cả blockchain cũ và mới đều tồn tại cạnh nhau, điều đó có nghĩa là phần mềm phải được cập nhật để hoạt động theo các quy tắc mới. Cả hai đều tạo ra sự phân tách, nhưng một hard fork tạo ra hai khối và một soft fork tạo ra một khối.

Xem xét sự khác biệt về bảo mật giữa các hard fork và soft fork, hầu như tất cả người dùng và nhà phát triển đều yêu cầu một hard fork, ngay cả khi một fork mềm có vẻ như có thể thực hiện công việc. Việc đại tu các khối trong một blockchain đòi hỏi một sức mạnh tính toán khổng lồ, nhưng sự riêng tư có được từ một hard fork có ý nghĩa hơn so với sử dụng một fork mềm.

Xem thêm: Full Node (nút đầy đủ) là gì? Tại sao nên chọn ví SPV

Pin It on Pinterest

Share This