Fork, Hard fork và Soft fork là gì? Giống và khác nhau như thế nào?

Qua sự kiện ngày 1/8/2017 khi Bitcoin bị chia tách thành hai đồng tiền khác nhau là Bitcoin và Bitcoin Cash, chắc hẳn bạn đã nghe rất nhiều về các thuật ngữ như Fork, Hardfork, Softfork.
Vậy:
- Fork là gì?
- Hard fork là gì?
- SoftFork là gì?
Bài viết này Coin24h sẽ giải thích cho các bạn về Hard fork, SoftFork là gì để các bạn nắm được khỏi phải tò mò nhé.
Đầu tiên các bạn cần phải biết khái niệm Fork là gì? Tiếp theo sẽ hiểu rõ hơn về Hard Fork và Soft Fork là gì?
Fork là gì?
Fork là một từ kỹ thuật thường được dùng bởi các nhà phát triển (developers) của Bitcoin nói riêng hay trong giới lập trình nói chung mà cụ thể là trong các dự án mã nguồn mở. Nó đơn giản chỉ là “cập nhật phần mềm“ hay “sửa lỗi”. Ví dụ khi bạn cập nhật một ứng dụng trên chiếc smartphone (mobile app) thì bạn đã có được một bản Fork từ phiên bản cũ, thì khái niệm “Fork” trong Bitcoin cũng tương tự như vậy.

Fork là một khái niệm được sử dụng nhiều trong ứng dụng, phần mềm và cụ thể là trong các dự án mã nguồn mở. Nó được hiểu đơn giản là cập nhật phần mềm hay sửa lỗi.
Khi bạn cập nhật một phần mềm nào đó trên máy tính tức bạn đã sử hữu được một phiên bản Fork từ phiên bản cũ. Fork trong tiền điện tử cũng vậy.
Đối với Bitcoin sẽ có hai khái niệm Fork khác nhau là: HardFork và SoftFork
Hard fork là gì?
Hard Fork là phiên bản cập nhật phần mềm mới, mang nhiều thay đổi và bắt buộc thay thế phiên bản cũ tránh trường hợp phần mềm lỗi không mong muốn, không thể truy cập.
Ví dụ từ phiên bản cũ 2.0 thay thế bằng phiên bản mới 3.0. Bạn đang sử dụng chương trình bình thường nhưng bỗng có một lỗi quan trọng trong phần mềm, bạn muốn sử dụng tiếp thì không còn cách nào khác là bạn bắt buộc phải cập nhật phần mềm.
Và sẽ không có cách nào khác kể cả là đảo ngược một Hardfork, trừ trường hợp có một lỗi không mong đợi hay các vấn đề đi kèm. Đó là trường hợp bạn phải làm thêm một Hardfork và trở lại với phiên bản cũ.
Hard Fork là một sự phân kì vĩnh viễn trên Blockchain, xảy ra khi các node không được nâng cấp không thể xác nhận các Block được tạo ra bởi các node được cập nhật đang theo sát các quy định xác thực dành cho Block mới.
Điều này xảy ra do sự thay đổi trong giao thức Blockchain, từ đó khiến các block/giao dịch không được xác thực. Điều này bắt buộc tất cả các node của người dùng phải nâng cấp đến phiên bản mới nhất trên giao thức.
Đây là điều tất yếu để tạo ra fork trên Blockchain, một hướng sẽ đi theo con đường mới, nâng cấp Blockchain, và một hướng còn lại sẽ tiếp tục đi con đường cũ.
Nói chung, sau một khoảng thời gian ngắn, những người lựa chọn con đường cũ sẽ nhận ra rằng phiên bản Blockchain của mình đang lỗi thời hoặc không liên quan, họ cũng sẽ nâng cấp lên phiên bản mới nhất.
Hard fork là copy code cũ của phần mềm và được sửa chữa tạo thành một cái mới, cái mới thay đổi mạnh và tất cả không chấp nhận cái cũ nữa thì được gọi là Hardfork. Trong quá khứ BTC đã được hard fork thành công và sinh ra thêm một đồng tiền khác riêng biệt đó là Ethereum Classic (ETC).
Trường hợp tất cả mọi người đồng ý với phiên bản cũ thì không thể có hark fork được thực hiện.
Soft Fork là gì?
SoftFork là một bản cập nhật phần mềm không gây xung đột với phiên bản cũ hơn, nó không bắt buộc và cho phép mạng điều chỉnh thêm các tính năng mới trong khi đang xử lý. Mặc dù một SoftFork đang cài đặt ngay cả khi máy tính chạy với chương trình cũ thì vẫn có thể sử dụng.
Nếu SoftFork không hoạt động, có lỗi hay mọi người không chấp nhận nó thì nó hoàn toàn có thể đảo ngược và có thể trở lại với phiên bản cũ. Hầu hết các phần mềm bạn sử dụng ngày nay đều được kiểm soát bởi một thực thể duy nhất. Vì vậy, bất kỳ khi nào họ muốn “Fork” từ chương trình gốc thì chỉ cần cập nhật dưới hình thức một SoftFork.

Lời kết
Trên đây là bài viết “Fork, HardFork và SoftFork là gì? hi vọng sẽ giúp bạn hiểu hơn về các khái niệm xung quanh Bitcoin thường gặp phải. Với những người mới tìm hiểu các thuật ngữ này sẽ khá là khó hiểu, chỉ những người đã có kinh nghiệm trong thị trường cryptocurrency và đào bitcoin mới hiểu rõ được vấn đề, vì thế mình nghĩ bạn cứ tìm hiểu dần nhé. Nếu còn thắc mắc gì hãy để lại cưới phần bình luận dưới, mình sẽ hỗ trợ. Chúc bạn may mắn.