Fork là gì? Fork sử dụng khi nào? Phân biệt hard fork và soft fork

Hard fork và Soft Fork là gì

Trong mạng Blockchain, Fork là thuật ngữ được nhắc đến khá thường xuyên. Vậy Fork là gì? Fork có vai trò như thế nào trong việc phát triển các ứng dụng trong mạng Blockchain. Hard fork và Soft Fork có điểm gì giống và khác nhau? Mời bạn cùng FCFChain tìm hiểu qua bài viết dưới đây.

Fork là gì? 

Để 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. 

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.

Phân biệt Hark Fork và Soft Fork 

Hard Fork

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 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.

Hark Fork là gì

Soft fork

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 là gì

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 .

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ũ, 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.

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.

Hi vọng với bài viết này, bạn đọc đã có thêm kiến thức và hard fork và soft fork. Hãy tiếp tục đồng hành cùng FCFChain để cập nhật những tin tức mới nhất về thị trường tiền điện tử và công nghệ Blockchain trong nước và quốc tế.

>> Xem thêm: IEO là gì? Bí quyết để lựa chọn đầu tư IEO thành công