Bằng chứng công việc là gì?
Bằng chứng công việc (proof of work, PoW) là một loại cơ chế đồng thuận bảo vệ blockchain bằng chi phí tính toán. Người tham gia phải tính toán liên tục để tìm ra một kết quả đáp ứng yêu cầu của giao thức thì mới có cơ hội phát hành block mới, còn các node khác có thể kiểm tra kết quả đó rất nhanh.
Điểm cốt lõi không phải là để máy tính giải các giao dịch, mà là gắn cho việc đề xuất block một chi phí công khai và đo lường được. Tìm một kết quả hợp lệ thường cần rất nhiều lần thử, nhưng kiểm tra lại rất dễ. Nhờ sự bất đối xứng đó, node có thể tính ra điểm công việc tích lũy cho một đoạn lịch sử dựa trên bằng chứng nằm trong các block của nó. Ai muốn thay thế đoạn lịch sử này đều phải làm lại lượng công việc tương ứng và đuổi kịp mạng.
Vấn đề mà bằng chứng công việc hướng tới
Mạng mở không thể quyết định ai ghi sổ theo nguyên tắc "mỗi người một phiếu", vì cùng một người có thể tạo ra số lượng danh tính không giới hạn. Bằng chứng công việc không đếm danh tính, mà yêu cầu ai muốn tham gia cạnh tranh phải gửi một kết quả tính toán có thể kiểm chứng. Tạo thêm danh tính không tự làm tăng cơ hội thành công; sức mạnh tính toán cao hơn — tức khả năng thực hiện nhiều lần thử hàm băm hơn trong một đơn vị thời gian — mới làm tăng xác suất tìm ra kết quả.
Phép tính này giúp mạng xử lý đồng thời hai vấn đề: ai nhận được cơ hội phát hành block ứng viên, và khi nhiều nhánh hợp lệ xuất hiện cùng lúc thì node tiếp tục dùng đoạn lịch sử nào. Ở những mạng bằng chứng công việc như Bitcoin, node so sánh tổng công việc mà mỗi nhánh tích lũy được, chứ không đơn giản so sánh nhánh nào chứa nhiều block hơn.
Bằng chứng công việc không thay thế việc xác thực giao dịch. Người tìm được kết quả hợp lệ chỉ có thể đề xuất một block ứng viên, chứ không được thay đổi quy tắc giao thức. Mỗi node xác thực đầy đủ vẫn tự kiểm tra chữ ký giao dịch, tài sản có bị chi tiêu trùng hay không, định dạng block và chính phần bằng chứng công việc. Block không đúng quy tắc sẽ bị từ chối dù đã tiêu tốn sức mạnh tính toán.
Từ block ứng viên đến khi mạng xác nhận
Các mạng bằng chứng công việc khác nhau về thuật toán và tham số, nhưng quy trình cơ bản có thể chia thành những bước sau.
Lắp ghép block ứng viên
Người tham gia cạnh tranh tạo block thường được gọi là thợ đào. Thợ đào chọn nội dung từ những giao dịch chưa được xác nhận, lắp ghép block ứng viên theo yêu cầu của giao thức, và chuẩn bị phần header block cùng các dữ liệu khác sẽ tham gia vào phép tính hàm băm. Thợ đào được quyết định đưa vào những giao dịch hợp lệ nào và sắp xếp theo thứ tự nào, nhưng không thể khiến một giao dịch không hợp lệ trở thành hợp lệ.
Thử hàm băm nhiều lần
Hàm băm mật mã chuyển dữ liệu đầu vào thành một kết quả có độ dài cố định. Thợ đào thay đổi nonce — một giá trị dùng cho các lần thử lặp lại — hoặc một trường biến đổi khác trong block, rồi tính hàm băm hết lần này đến lần khác cho tới khi kết quả thỏa mãn điều kiện mục tiêu mà giao thức đặt ra.
Với điều kiện hàm băm mà giao thức sử dụng chưa có cách phá hiệu quả nào được biết đến, hiện không có lối tắt đáng tin cậy nào dẫn thẳng tới kết quả hợp lệ. Rất khó dự đoán một lần thử cụ thể có thành công hay không, nên sức mạnh tính toán càng cao thì số lần thử trong một đơn vị thời gian càng nhiều và xác suất tìm ra kết quả hợp lệ trước càng lớn. Người tham gia có sức mạnh tính toán thấp hơn vẫn có thể thành công trước: việc một block cụ thể thuộc về ai không được định trước.
Phát và xác thực block
Sau khi tìm được kết quả hợp lệ, thợ đào phát block ra mạng. Node nhận được block không cần làm lại toàn bộ các lần thử của thợ đào; nó chỉ cần tính và kiểm tra xem kết quả có thỏa mãn điều kiện mục tiêu hay không, đồng thời xác minh block và các giao dịch có tuân thủ những quy tắc khác hay không.
Chỉ những node hoàn tất việc xác thực này mới tiếp tục truyền và xử lý block như một ứng viên hợp lệ. Khác biệt này rất quan trọng: đào tiền cạnh tranh để đề xuất block, còn việc node xác thực quyết định block có đủ điều kiện được chấp nhận hay không.
Tiếp tục trên nhánh có tổng công việc cao hơn
Hai thợ đào có thể phát ra những block khác nhau nhưng đều hợp lệ vào thời điểm gần nhau, khiến mạng tạm thời xuất hiện các nhánh. Node áp dụng quy tắc chọn chuỗi của giao thức để quyết định tiếp tục trên nhánh nào. Ví dụ, node Bitcoin chọn chuỗi hợp lệ có tổng công việc cao hơn; khi công việc tiếp tục được bổ sung, thường một nhánh sẽ vượt lên và nhánh còn lại bị bỏ.
Các giao dịch từng nằm trong nhánh bị bỏ không tự động biến mất. Nếu giao dịch vẫn còn hợp lệ, nó có thể trở lại trạng thái chờ xác nhận rồi được một block khác thu nhận sau đó. Nếu nó xung đột với giao dịch trong nhánh thắng, nó sẽ không còn hiệu lực.
Giá trị mục tiêu, độ khó, sức mạnh tính toán và tổng công việc
Bốn khái niệm sau gây ra phần lớn sự nhầm lẫn về bằng chứng công việc.
Giá trị mục tiêu là ngưỡng số mà một giá trị băm hợp lệ phải thỏa mãn. Với dạng phổ biến "giá trị băm phải nhỏ hơn hoặc bằng giá trị mục tiêu", mục tiêu càng nhỏ thì càng ít kết quả đạt điều kiện và trung bình càng cần nhiều lần thử.
Độ khó là một cách diễn đạt khác về việc tìm kết quả hợp lệ khó đến đâu. Độ khó càng cao thì mục tiêu thường càng ngặt. Nhiều mạng bằng chứng công việc điều chỉnh độ khó theo định kỳ để tốc độ tạo block trung bình vẫn xấp xỉ nhịp mà giao thức dự kiến, dù tổng sức mạnh tính toán thay đổi. Cách điều chỉnh và chu kỳ do từng mạng quyết định.
Sức mạnh tính toán hay hashrate cho biết trong một đơn vị thời gian có thể thực hiện bao nhiêu lần thử hàm băm. Nó phản ánh mức đầu tư tính toán. Nó không cho biết một thợ đào kiểm soát bao nhiêu node, và cũng không đồng nghĩa với lượng công việc đã tích lũy. Khi chọn giữa các nhánh, node dựa vào công việc được block chứng minh, không dựa vào ước lượng sức mạnh tính toán thời điểm.
Tổng công việc là tổng các điểm công việc mà giao thức suy ra từ giá trị mục tiêu hoặc độ khó của từng block hợp lệ. Điểm này thể hiện việc tạo ra đoạn lịch sử đó trung bình dự kiến cần bao nhiêu lần thử hàm băm. Nó không đo trực tiếp số lần thợ đào thực sự thất bại, lượng điện đã dùng hay hashrate hiện thời. Node có thể tự tính điểm này từ dữ liệu block, nên không cần tin vào chi phí do thợ đào tự báo.
Xác nhận mang tính xác suất
Bằng chứng công việc thường cho mức xác nhận theo xác suất, chứ không làm một block mới trở nên bất biến vĩnh viễn ngay khi xuất hiện. Khi có thêm block được nối sau block chứa một giao dịch, lượng công việc cần làm lại để thay thế đoạn lịch sử chứa giao dịch đó cũng tăng lên, nên khả năng bị ảnh hưởng bởi việc tổ chức lại chuỗi — khi một nhánh vừa được chọn bị nhánh khác thay thế — thường giảm xuống.
"Chờ vài lần xác nhận là an toàn" không có đáp án cố định áp dụng cho mọi trường hợp. Điều đó phụ thuộc vào phân bố sức mạnh tính toán trong mạng, tốc độ tạo block, giá trị giao dịch, mức rủi ro mà bên nhận có thể chịu, và việc có xảy ra gián đoạn mạng hay phân nhánh bất thường hay không. Số xác nhận mà ví hoặc nền tảng hiển thị chỉ cho biết đã có bao nhiêu block nối tiếp sau giao dịch đó; đây không phải bảo đảm vô điều kiện.
Việc tổ chức lại chuỗi cũng không nhất thiết là dấu hiệu bị tấn công. Độ trễ mạng có thể khiến các thợ đào trung thực tạm thời làm việc trên những block khác nhau, sau đó xung đột được giải quyết bởi nhánh có tổng công việc cao hơn. Một lần tổ chức lại càng liên quan tới nhiều block gần đây thì thường càng ít gặp, và tác động của nó càng đáng chú ý.
Phần lớn sức mạnh tính toán có thể làm được gì
Nếu một bên tham gia, hoặc một nhóm hành động phối hợp, kiểm soát đủ nhiều sức mạnh tính toán hữu hiệu trong thời gian dài, họ có thể kéo dài nhánh của mình nhanh hơn phần còn lại của mạng. Kiểu tấn công bằng sức mạnh tính toán chiếm đa số này thường được gọi là tấn công 51%, nhưng "51%" chỉ là cách gọi cho dễ hiểu; khả năng thành công thực tế còn phụ thuộc vào thời gian duy trì, điều kiện mạng và mục tiêu của bên tấn công.
Thợ đào có lợi thế đó có thể tìm cách loại bỏ hoặc trì hoãn một số giao dịch, tổ chức lại các block gần đây, hoặc trả tiền cho ai đó rồi thu hồi khoản chi của chính mình qua một nhánh khác, tức chi tiêu trùng. Họ cũng có thể cản block của thợ đào khác vào nhánh mà mạng cuối cùng chọn.
Nhưng lợi thế về sức mạnh tính toán không phải quyền sửa sổ cái tùy ý. Bên tấn công không thể tạo ra chữ ký hợp lệ của người khác từ không có gì, không thể chi tiêu tài sản mà họ không kiểm soát khóa, và không thể khiến các node xác thực trung thực chấp nhận block vi phạm quy tắc cung phát hành hay quy tắc xác thực giao dịch. Bằng chứng công việc phân định cuộc cạnh tranh giữa các lịch sử hợp lệ; nó không vô hiệu hóa các quy tắc về tính hợp lệ.
Phần thưởng đào không phải là bằng chứng công việc
Nhiều mạng công khai thưởng cho bên tạo block bằng tài sản mới phát hành và phí giao dịch, nhằm bù lại chi phí thiết bị, điện và vận hành. Những phần thưởng này tạo động lực tham gia cho thợ đào, nhưng hình thức phần thưởng không phải định nghĩa của bằng chứng công việc.
Bằng chứng công việc mô tả cách gửi phép tính có thể kiểm chứng, cách cạnh tranh để đề xuất block và cách so sánh các lịch sử; còn phần trợ cấp block, phí giao dịch, giới hạn phát hành và việc giảm dần phần thưởng thuộc về quy tắc kinh tế của từng mạng. Tổng thu nhập mà thợ đào nhận từ trợ cấp và phí thường được gọi là ngân sách bảo mật của mạng, vì nó nuôi việc thợ đào tiếp tục bỏ sức mạnh tính toán vào. Bộ quy tắc thu nhập này ảnh hưởng tới điều kiện bảo mật của bằng chứng công việc, nhưng không thể đồng nhất với chính cơ chế đồng thuận.
Pool đào cũng không phải một cơ chế đồng thuận mới. Pool tập trung sức mạnh tính toán của nhiều người tham gia để đào phối hợp và phân chia thu nhập theo thỏa thuận. Nó có thể giảm mức biến động thu nhập của từng người tham gia; nhưng nếu phần lớn sức mạnh tính toán phụ thuộc vào một số ít bên vận hành pool, thì sự cố, việc sàng lọc giao dịch hay hành vi phối hợp của những bên này sẽ ảnh hưởng tới nhiều người tham gia hơn.
Chi phí và sự đánh đổi
Bằng chứng công việc đưa chi phí tài nguyên thực tế vào một mạng số. Bên tấn công muốn liên tục đuổi theo mạng trung thực thường phải bỏ ra thiết bị, điện và nguồn lực vận hành; thợ đào trung thực cũng phải chịu đúng những loại chi phí đó. Những chi phí tài nguyên này dựng nên một ngưỡng kinh tế cho việc viết lại lịch sử và duy trì lợi thế trước thợ đào trung thực, và là một phần của mô hình bảo mật bằng chứng công việc; mức an toàn tổng thể vẫn phụ thuộc vào việc node xác thực đúng, phân bố sức mạnh tính toán, kết nối mạng, hàm băm và cách triển khai phần mềm.
Điều này cũng tạo ra những đánh đổi rõ rệt:
- Chi phí năng lượng và thiết bị: số lượng lớn lần thử hàm băm tiêu tốn điện và cần phần cứng chuyên dụng hoặc hiệu năng cao. Cơ cấu năng lượng thực tế và tác động phát thải phụ thuộc vào khu vực, thiết bị, nguồn tải và cách thống kê.
- Tập trung sức mạnh tính toán: quy mô, điện giá rẻ, nguồn cung chip và việc vận hành pool có thể khiến sức mạnh tính toán tập trung vào một số ít người tham gia.
- Chờ xác nhận: xác nhận theo xác suất cần thời gian tích lũy, không thể coi một lần tạo block là đã tất toán tuyệt đối.
- Ngân sách bảo mật thay đổi: khi trợ cấp block giảm, hoặc giá tài sản và thu nhập từ phí thay đổi, thu nhập của thợ đào và tổng sức mạnh tính toán của mạng có thể thay đổi theo.
- Phối hợp nâng cấp quy tắc: sức mạnh tính toán có thể ảnh hưởng tới việc tạo block và cuộc cạnh tranh giữa các nhánh, nhưng việc nâng cấp giao thức vẫn phụ thuộc vào cách phần mềm, node, thợ đào, người dùng và các bên khác áp dụng quy tắc.
Mức tiêu thụ năng lượng cũng không thể quy giản thành "mỗi giao dịch tất yếu tiêu tốn bao nhiêu điện" bằng cách chia đều theo số giao dịch. Thợ đào chủ yếu cạnh tranh block, còn một block chứa được bao nhiêu giao dịch, có gộp dữ liệu tất toán theo lô do hệ thống khác gửi lên hay không, và có xuất hiện block rỗng hay không đều do hệ thống cụ thể và tình hình sử dụng quyết định. Khi đánh giá tác động năng lượng, cần nói rõ đang bàn về tổng tiêu thụ toàn mạng, một đơn vị thời gian, một block, hay tác động biên của một loại giao dịch.
So sánh với các cơ chế đồng thuận khác
Bằng chứng công việc dùng tài nguyên tính toán bên ngoài để giới hạn cuộc cạnh tranh tạo block. Bằng chứng cổ phần thường để các validator khóa tài sản của giao thức tham gia đề xuất và bỏ phiếu, đồng thời dùng phần thưởng hoặc hình phạt để ràng buộc hành vi; mạng cần cấp quyền có thể trực tiếp quy định những tổ chức hoặc node nào được tham gia đồng thuận.
Mọi cơ chế này đều phải định nghĩa ai được đề xuất dữ liệu, node khác xác thực thế nào, khi xung đột thì chọn kết quả nào, và từ khi nào có thể coi giao dịch là đủ chắc chắn. Khác biệt nằm ở chỗ chúng dùng tài nguyên gì để giới hạn ảnh hưởng, giả định những bên nào có thể hành động gian dối, và ai gánh chi phí bảo mật.
Vì vậy, không thể chỉ dựa vào việc "có tốn điện hay không" để kết luận một cơ chế an toàn hay phù hợp. Còn phải so sánh ai được tham gia, cần bao nhiêu phần cứng hoặc tài sản khóa, ảnh hưởng có bị tập trung không, giao dịch được xác nhận thế nào, sau khi bị tấn công có khôi phục được không, node kiểm tra dữ liệu ra sao, và ai nâng cấp quy tắc.
Câu hỏi thường gặp
Bằng chứng công việc có phải chính là đào tiền không?
Không hẳn. Đào tiền là quá trình người tham gia tính toán và cạnh tranh để đề xuất block; bằng chứng công việc còn bao gồm cách các node khác xác thực kết quả tính toán và cách mạng so sánh nhiều lịch sử hợp lệ. Trong cách nói thường ngày hai từ này hay đi cùng nhau, nhưng phạm vi khác nhau.
Thợ đào có tính toán nội dung giao dịch không?
Không. Thợ đào chủ yếu băm lặp lại dữ liệu liên quan tới block để tìm kết quả thỏa mãn giá trị mục tiêu. Việc thực thi giao dịch và kiểm tra tính hợp lệ thuộc một bộ quy tắc giao thức khác.
Thợ đào có sức mạnh tính toán cao nhất chắc chắn tạo được block kế tiếp?
Không chắc. Sức mạnh tính toán cao hơn nghĩa là thử được nhiều lần hơn trong cùng khoảng thời gian, nên xác suất cao hơn, nhưng mỗi lượt cạnh tranh vẫn mang tính ngẫu nhiên. Kết quả dài hạn thường tiến gần tới tỷ lệ sức mạnh tính toán của từng bên.
Bằng chứng công việc có ngăn được mọi vụ chi tiêu trùng không?
Không. Nó dùng tổng công việc để nâng chi phí tổ chức lại lịch sử, và rủi ro thường giảm khi số xác nhận tăng, nhưng khi sức mạnh tính toán bị tập trung, số xác nhận chưa đủ hoặc mạng gặp bất thường thì chi tiêu trùng vẫn có thể xảy ra.
Mọi blockchain đều dùng bằng chứng công việc?
Không. Một số mạng dùng bằng chứng cổ phần, bỏ phiếu cần cấp quyền hoặc cơ chế khác. Cùng một mạng cũng có thể đổi cơ chế đồng thuận thông qua nâng cấp giao thức.
Khái niệm liên quan
Tìm hiểu thêm về cơ chế đồng thuận, block, node blockchain và hàm băm mật mã, hoặc trở lại bảng thuật ngữ tiền mã hóa.
Nguồn
- Sách trắng Bitcoin — trình bày gốc về bằng chứng công việc, cạnh tranh giữa các nhánh, tổng công việc và xác suất xác nhận.
- Hướng dẫn nhà phát triển Bitcoin: blockchain — băm header block, giá trị mục tiêu, điều chỉnh độ khó, tổng công việc và tổ chức lại chuỗi.
- Bitcoin.org: câu hỏi thường gặp — giới hạn quyền của thợ đào, xác nhận, tấn công bằng sức mạnh tính toán và động lực đào.
- NISTIR 8202: Tổng quan về công nghệ blockchain — quy trình chung của bằng chứng công việc, vai trò trong đồng thuận và các đánh đổi về tài nguyên.
© 2025 OKX. Bài viết này có thể được sao chép hoặc phân phối toàn bộ, hoặc trích dẫn các đoạn không quá 100 từ, miễn là không sử dụng cho mục đích thương mại. Mọi bản sao hoặc phân phối toàn bộ bài viết phải ghi rõ: “Bài viết này thuộc bản quyền © 2025 OKX và được sử dụng có sự cho phép.” Nếu trích dẫn, vui lòng ghi tên bài viết và nguồn tham khảo, ví dụ: “Tên bài viết, [tên tác giả nếu có], © 2025 OKX.” Một số nội dung có thể được tạo ra hoặc hỗ trợ bởi công cụ trí tuệ nhân tạo (AI). Nghiêm cấm các tác phẩm phái sinh hoặc hình thức sử dụng khác đối với bài viết này.









