Fork blockchain có thể hiểu là một phương thức nâng cấp phiên bản đặc trưng của mạng lưới blockchain. Các ứng dụng như WeChat hay Taobao mà chúng ta sử dụng hàng ngày thực chất đều là ứng dụng tập trung. Định kỳ, các nhà phát triển như Tencent hay Alibaba sẽ nâng cấp phần mềm để thêm tính năng mới hoặc sửa lỗi.
Khi những ứng dụng tập trung này nâng cấp, các đội ngũ như Alibaba hay Tencent sẽ hoàn thiện mã code, triển khai lên hệ thống backend, nâng cấp máy chủ trước, sau đó người dùng mới có thể cập nhật ứng dụng trên thiết bị cuối (client). Nhưng cuối cùng, nội dung nâng cấp là đồng nhất, do công ty tập trung quyết định, và người dùng đồng loạt cập nhật.
Trong khi đó, hệ thống blockchain là một cơ sở dữ liệu mà ai cũng có thể tham gia, mã nguồn mở, và mạng lưới phi tập trung. Điều này có nghĩa là không có công ty tập trung nào quyết định việc nâng cấp hay xác định nội dung thay đổi, thậm chí không có máy chủ trung tâm.
Vì vậy, khi blockchain tiến hành nâng cấp phiên bản, nó cần một phương thức hoàn toàn khác so với sản phẩm tập trung. Và từ đó, fork ra đời.
Blockchain không có công ty tập trung bảo trì hay máy chủ trung tâm, nhưng bất kỳ ai cũng có thể tham gia. Điều này khiến việc nâng cấp phiên bản blockchain do các thợ đào (miner) cùng quyết định, thậm chí có thể dẫn đến nhiều phiên bản khác nhau do bất đồng giữa họ—không giống như Internet, nơi một công ty độc quyền quyết định mà không có lựa chọn thay thế.
Ngoài ra, blockchain cũng có các node (thiết bị cuối), mỗi node kết nối với cơ sở dữ liệu phân tán lớn này. Dữ liệu được đóng gói thành các khối (block) và liên kết thành cấu trúc chuỗi.
Nguyên lý hoạt động như sau: Khi blockchain nâng cấp phiên bản, quá trình bắt đầu từ các node. Người dùng có thể tải về, cài đặt và nâng cấp trong cộng đồng của mình. Các node sau khi nâng cấp sẽ kết nối lại với mạng lưới blockchain để xử lý và chia sẻ dữ liệu.
Trong quá trình nâng cấp, chắc chắn sẽ có giai đoạn phiên bản cũ và mới cùng tồn tại. Khi hai phiên bản xử lý dữ liệu, blockchain hiện tại sẽ bị phân tách—từ một khối cụ thể, nó kết nối với hai khối được xử lý bởi hai phiên bản khác nhau, sau đó mỗi khối lại liên kết với các khối mới, hình thành hai chuỗi riêng biệt. Giống như cành cây, chúng dùng chung một thân (dữ liệu trước khi phân nhánh) nhưng sau đó tách ra.