Giới thiệu
Nếu một cửa sổ cập nhật ứng dụng bật lên trên điện thoại thông minh của chúng tôi, chúng tôi sẽ kích hoạt nó mà không do dự. Điện thoại có thể được cập nhật mà không cần thông báo cho người dùng. Xét cho cùng, cập nhật là cần thiết—nếu không cài đặt phần mềm mới nhất, bạn có nguy cơ làm gián đoạn các dịch vụ trên thiết bị của mình.
Trong tiền điện tử nguồn mở, mọi thứ lại khác. Để làm việc với Bitcoin, bạn không cần phải nghiên cứu chi tiết các dòng mã, nhưng vẫn có thể thực hiện được. Vì không có cơ quan quản lý nào có thể thực hiện cập nhật và thay đổi theo ý mình nên việc thêm các tính năng mới vào blockchain có thể khá khó khăn.
Trong bài viết này, chúng ta sẽ xem xét cách các mạng tiền điện tử được hiện đại hóa mà không có sự tham gia của cơ quan quản lý trung ương. Đây là lý do vì sao hard fork và soft fork được sử dụng.
Ai đưa ra quyết định trên mạng blockchain
Để hiểu cách thức hoạt động của fork, bạn cần hiểu ai là người đưa ra quyết định (hoặc thực hiện quyền kiểm soát) trong mạng.
Có ba nhóm người tham gia vào mạng Bitcoin: nhà phát triển, người khai thác và người dùng nút đầy đủ, những người đóng góp chính cho mạng. Các nút nhẹ (tức là ví trên điện thoại, máy tính xách tay, v.v.) được sử dụng rộng rãi nhưng không phải là “người tham gia” mạng.
Nhà phát triển
Nhà phát triển tạo và cập nhật mã. Bất kỳ người dùng nào có tiền đều có thể thực hiện các thay đổi đối với mã đó vì mã được cung cấp công khai và có thể gửi bất kỳ đề xuất nào tới nhà phát triển.
Thợ mỏ
Thợ mỏ bảo vệ mạng. Họ chạy mã tiền điện tử và cung cấp tài nguyên để thêm khối vào chuỗi khối. Ví dụ: mạng Bitcoin sử dụng thuật toán Proof of Work cho các mục đích này. Đối với công việc của họ, thợ mỏ nhận được phần thưởng khối.
Người dùng nút đầy đủ
Các nút đầy đủ là xương sống của mạng tiền điện tử. Họ xác thực, gửi và nhận các khối và giao dịch, đồng thời lưu trữ một bản sao của blockchain.
Các danh mục người tham gia được liệt kê thường có thể trùng khớp. Ví dụ: nhà phát triển có thể đồng thời là nút đầy đủ hoặc nút đầy đủ có thể là thợ mỏ cùng lúc. Bất cứ ai cũng có thể đóng vai cả ba hoặc không ai trong số họ. Trên thực tế, người dùng tiền điện tử thường đề cập đến những người không thực hiện bất kỳ vai trò nào trong số này. Thay vào đó, họ sử dụng các nút nhẹ hoặc dịch vụ tập trung.
Khi tính đến những điều trên, chúng tôi có thể đồng ý rằng các quyết định trên mạng phải do các nhà phát triển và thợ mỏ đưa ra. Các nhà phát triển tạo ra mã: nếu không có họ thì sẽ không có phần mềm và không có ai sửa lỗi hoặc thêm tính năng mới. Thợ mỏ bảo vệ mạng: nếu không có sự cạnh tranh lành mạnh trong việc khai thác, những kẻ tấn công có thể chiếm quyền kiểm soát chuỗi.
Tuy nhiên, nếu những người khai thác và nhà phát triển cố gắng áp đặt mong muốn của họ lên những người tham gia mạng khác thì sẽ không có tác dụng gì. Nhiều người tin rằng quyền kiểm soát thực sự thuộc về các nút đầy đủ. Tuy nhiên, tất cả đều xoay quanh tính năng cập nhật mạng liền mạch, nơi người dùng có thể chọn phần mềm nào họ muốn sử dụng.
Các nhà phát triển không buộc người dùng tải xuống các tệp nhị phân Bitcoin Core bằng súng, các nhà khai thác cũng không thể đưa ra tối hậu thư và thực hiện các thay đổi của họ.
Những người tham gia này không phải là người quản lý toàn năng - họ chỉ hỗ trợ vận hành dịch vụ. Nếu người dùng mất hứng thú với mạng, giá trị của đồng xu sẽ giảm, điều này sẽ ảnh hưởng trực tiếp đến thu nhập của người khai thác (phần thưởng bằng đô la của họ sẽ giảm). Đối với các nhà phát triển, người dùng có thể đơn giản bỏ qua chúng.
Vấn đề là phần mềm không phải là tài sản của bất kỳ ai. Người dùng có thể thực hiện bất kỳ thay đổi nào và tương tác với những người sử dụng phần mềm đã sửa đổi. Điều này được thực hiện bằng cách phân nhánh phần mềm và tạo một mạng mới.
Một cái nĩa là gì
Fork là việc tạo ra một bản sao của phần mềm và sửa đổi nó. Đồng thời, dự án ban đầu vẫn tiếp tục hoạt động, nhưng fork phát triển riêng theo hướng riêng của nó. Giả sử rằng những bất đồng nghiêm trọng đã nảy sinh trong nhóm của một trang web tiền điện tử nhất định liên quan đến việc phát triển hơn nữa. Sau đó, một phần của nhóm có thể tạo lại trang web trên một miền khác, nơi họ sẽ lưu trữ nội dung khác.
Cả hai dự án này đều được xây dựng trên cùng một nền tảng và có chung lịch sử, giống như một con đường chia thành hai hướng khác nhau.
Xin lưu ý rằng việc phân nhánh chỉ có thể xảy ra trong các dự án nguồn mở và những trường hợp như vậy đã xảy ra từ rất lâu trước khi Bitcoin hoặc Ethereum ra đời. Tuy nhiên, hard fork và soft fork chỉ có thể được thực hiện trên mạng blockchain. Chúng ta hãy xem xét kỹ hơn về họ.
➟ Bạn đang suy nghĩ nên bắt đầu làm việc với tiền điện tử từ đâu? Mua Bitcoin trên Binance!
Dĩa cứng và nĩa mềm
Mặc dù có tên và nhiệm vụ tương tự nhau, nhưng hard fork và soft fork có sự khác biệt đáng kể. Chúng ta hãy xem xét từng người trong số họ chi tiết hơn.
Hard fork là gì
Hard fork là những bản cập nhật phần mềm không tương thích với các phiên bản trước. Điều này thường xảy ra khi các nút thêm các thay đổi xung đột với các quy tắc hiện có của các nút cũ hơn. Các nút mới chỉ có thể giao tiếp với các nút chạy phiên bản mới. Kết quả là, blockchain được chia thành hai mạng riêng biệt: một mạng có các quy tắc cũ và một mạng có các quy tắc mới.

Sau khi cập nhật, các nút chuyển sang màu xanh lam. Các nút màu vàng cũ từ chối chúng và các nút màu xanh kết nối với nhau.
Vì vậy bây giờ hai mạng đang chạy song song. Cả hai sẽ tiếp tục làm việc với các khối và giao dịch, nhưng không phải trên cùng một blockchain. Tất cả các nút đều chạy trên cùng một chuỗi khối trước khi phân nhánh được tạo (phân nhánh này sẽ có cùng lịch sử với chuỗi khối ban đầu), nhưng trong tương lai các khối và giao dịch của chúng sẽ khác nhau.

Vì các mạng có lịch sử chung nên tiền của người dùng sẽ được nhân đôi trong mạng mới nếu họ có tiền trước đợt fork. Giả sử tại thời điểm phân tách, bạn có 5 BTC trên khối 600.000. Ngay cả khi bạn chi 5 BTC đó cho chuỗi cũ ở khối 600.001, chúng sẽ vẫn ở khối 600.001 trên chuỗi khối mới. Nếu đợt phân nhánh sử dụng loại tiền gốc, khóa riêng của bạn cũng sẽ chứa tiền từ đợt phân nhánh ban đầu.
Một ví dụ về hard fork là đợt fork năm 2017, dẫn đến việc Bitcoin được chia thành hai chuỗi—Bitcoin (BTC) ban đầu và Bitcoin Cash (BCH) mới. Fork ra đời là kết quả của nhiều cuộc tranh luận về cách tiếp cận tốt nhất để mở rộng quy mô. Những người ủng hộ Bitcoin Cash muốn tăng kích thước khối, trong khi những người ủng hộ Bitcoin phản đối sự thay đổi này.
Kích thước khối chỉ có thể tăng lên bằng cách thay đổi quy tắc. Điều này đã xảy ra trước khi có soft fork SegWit (sẽ nói thêm về điều đó sau), vì vậy các nút chỉ chấp nhận các khối nhỏ hơn 1 MB. Ngay cả khối 2 MB đáp ứng tất cả các yêu cầu khác vẫn sẽ bị từ chối.
Trong phân nhánh, chỉ các nút có phần mềm mới mới có thể phê duyệt các khối lớn hơn 1 MB. Tất nhiên, điều này có nghĩa là hoàn toàn không tương thích với phiên bản gốc, vì vậy chỉ các nút có cùng sửa đổi mới có thể tương tác.
Fork mềm là gì
Soft fork là một bản cập nhật tương thích ngược, nghĩa là các nút được cập nhật có thể giao tiếp với các nút cũ hơn. Thông thường, soft fork xảy ra khi các quy tắc mới được thêm vào mà không mâu thuẫn với các quy tắc cũ.
Ví dụ: sử dụng soft fork, bạn có thể giảm kích thước khối. Hãy minh họa điều này bằng ví dụ về Bitcoin: mặc dù có kích thước khối tối đa được phép nhưng không có kích thước khối tối thiểu. Nghĩa là, để phê duyệt các khối nhỏ hơn một kích thước nhất định, bạn chỉ cần từ chối các khối lớn hơn.
Điều này sẽ không tự động ngắt kết nối bạn khỏi mạng. Các nút softfork vẫn có thể tương tác với các nút từ chuỗi khối ban đầu - chúng sẽ chỉ lọc thông tin nhận được.
Một ví dụ điển hình về soft fork là fork Segregated Witness (SegWit) đã nói ở trên, xảy ra ngay sau khi chia tách Bitcoin/Bitcoin Cash. Bản cập nhật SegWit đã được cân nhắc kỹ lưỡng và thay đổi định dạng của các khối và giao dịch. Các nút cũ vẫn có thể xác thực các khối và giao dịch (việc thay đổi định dạng không trái với quy tắc), nhưng đơn giản là chúng không hiểu chúng. Để đọc các trường nhất định và phân tích dữ liệu bổ sung, cần phải chuyển sang phần mềm mới.

Thậm chí hai năm sau khi SegWit được kích hoạt, không phải tất cả các nút đều được cập nhật. Việc nâng cấp có những lợi ích nhưng không có gì khẩn cấp miễn là những thay đổi đó không gây ra tác động gián đoạn trên mạng.
Nĩa cứng và nĩa mềm - cái nào tốt hơn?
Về cơ bản, mỗi loại nĩa phục vụ mục đích riêng của nó. Hard fork sinh ra từ sự bất đồng có thể chia rẽ một cộng đồng, nhưng các fork có kế hoạch cho phép phần mềm được tự do sửa đổi theo sự đồng ý của cả hai bên.
Một chiếc nĩa mềm là một lựa chọn nhẹ nhàng hơn. Nó ngụ ý những thay đổi với những hạn chế nhất định không mâu thuẫn với các quy tắc cũ. Trong mọi trường hợp, nếu bản cập nhật có thể vẫn tương thích thì không cần phải lo lắng về tình trạng phân mảnh mạng.
Bản tóm tắt
Hard fork và soft fork rất quan trọng đối với sự thành công lâu dài của mạng blockchain. Chúng cho phép thực hiện các thay đổi và cập nhật đối với các hệ thống phi tập trung, mặc dù thiếu một cơ quan quản lý duy nhất.
Fork là cơ hội để các blockchain và tiền điện tử tích hợp các tính năng mới khi chúng được phát triển. Nhờ những cơ chế này, nhu cầu về một hệ thống tập trung với quản lý theo chiều dọc sẽ không còn nữa. Nếu không có chúng, sự phát triển của blockchain sẽ bị cản trở bởi các quy tắc tương tự.


