Bằng chứng công việc là gì? Cơ chế hoạt động của Proof of Work (POW) như thế nào? Hãy cùng ViMoney tìm hiểu trong bài viết dưới đây.
Bằng chứng công việc (Proof of Work) là một cơ chế nhằm ngăn chặn việc chi tiêu lặp (double-spend). Theo đó, hầu hết các loại tiền điện tử lớn đều sử dụng bằng chứng công việc làm thuật toán đồng thuận của chúng.
Chi tiêu lặp (double-spend) là gì?
Để hiểu rõ hơn về bằng chứng công việc, chúng ta cần hiểu được double-spend – chi tiêu lặp là gì. Trong thế giới tiền số có thể xảy ra tình trạng chi tiêu lặp (double-spend). Tức là, cùng một khoản tiền có thể chi tiêu được nhiều lần – điều mà ở ngoài đời thực, bạn không thể thực hiện.
Trong dữ liệu kỹ thuật số, bạn có thể sao chép và dán nhiều tệp khác nhau. Hiểu một cách khác, bạn có thể gửi cùng một tệp qua email cho hàng trăm người. Do đó, việc ngăn mọi người sao chép, chi tiêu cùng một đơn vị tiền số ở những nơi khác là điều vô cùng cần thiết để tránh làm sụp đổ hệ thống tiền số.
Proof of Work (POW) hay Bằng chứng công việc là gì?
Bằng chứng công việc (Proof of Work) là thuật toán đồng thuận đầu tiên xuất hiện. Cho đến nay, nó vẫn là thuật toán thống trị. Dù được Satoshi Nakamoto giới thiệu trong whitelist về Bitcoin năm 2008 nhưng thực tế, công nghệ này đã hình thành trước đó rất lâu.
Những ngày đầu tiền của tiền điện tử, bằng chứng công việc (Proof of Work) yêu cầu người gửi trước khi gửi email thực hiện một lượng nhỏ tính toán và người nhận có thể giảm thiểu thư rác. Tính toán này gần như không gây tốn kém với người gửi hợp pháp và cộng dồn cho những người gửi email liên tục.
Bằng chứng công việc (Proof of Work) ra đời để đảm bảo việc người dùng không thể tiêu khoản tiền mà họ không được phép chi tiêu. Bằng cách sử dụng kết hợp lý thuyết trò chơi và mật mã, thuật toán PoW cho phép bất kỳ ai cũng có thể cập nhật blockchain theo các quy tắc của hệ thống.
Sự cần thiết của bằng chứng công việc
Trong công nghệ blockchain, người dùng khi truyền phát các giao dịch lên mạng sẽ không được coi là hợp lệ một cách ngay lập tức. Nó chỉ xảy ra khi chúng được thêm vào blockchain.
Hiện nay, để khắc phục những nhược điểm của Bằng chứng công việc, Bằng chứng cổ phần Proof of Stake (POS) là thuật toán đồng thuận của blockchain được giới thiệu vào năm 2011. Bạn có thể tham khảo thêm bài viết: Proof of Stake (PoS) là gì? Các bước đào coin qua POS
Cơ chế hoạt động của Bằng chứng công việc
Người dùng thông báo các giao dịch cho mạng lưới, sau đó tạo một khối và sẽ được đưa vào một khối ứng cử viên. Các giao dịch sẽ chỉ được coi là hợp lệ khi khối ứng cử viên của chúng trở thành một khối được xác nhận, có nghĩa là nó đã được thêm vào blockchain.
Bằng chứng công việc (Proof of Work) yêu cầu người khai thác (người dùng tạo khối) sử dụng hết một số tài nguyên đặc quyền của riêng họ. Tài nguyên đó là sức mạnh tính toán, được sử dụng để băm dữ liệu của khối cho đến khi tìm ra lời giải cho một câu đố.
Băm dữ liệu của khối được hiểu là bạn chuyển nó qua hàm băm Hash để tạo hàm băm khối. Băm khối hoạt động giống như “dấu vân tay” – đó là danh tính cho dữ liệu đầu vào của bạn và là duy nhất cho mỗi khối.
Không thể đảo ngược băm khối để lấy dữ liệu đầu vào. Nhưng nếu biết một đầu vào, bạn có thể xác nhận việc băm là chính xác. Bạn chỉ cần gửi đầu vào thông qua chức năng và kiểm tra xem đầu ra có giống nhau không.
Trong Bằng chứng công việc (Proof of Work), bạn phải cung cấp dữ liệu có hàm băm phù hợp với các điều kiện nhất định. Nhưng bạn chỉ có thể chuyển dữ liệu của mình qua một hàm băm và kiểm tra xem nó có phù hợp với các điều kiện hay không.
Một cách khác là bạn sẽ phải thay đổi dữ liệu của mình để có một hàm băm khác. Tuy nhiên, việc thay đổi dữ liệu dù chỉ là một ký tự sẽ dẫn đến kết quả khác hoàn toàn. Vì vậy, không thể dự đoán kết quả đầu ra.
Nếu muốn tạo một khối, bạn thường lấy thông tin về tất cả các giao dịch mà bạn muốn thêm và một số dữ liệu quan trọng khác, sau đó băm tất cả lại với nhau. Nhưng tập dữ liệu của bạn sẽ không thay đổi nên bạn cần thêm một phần thông tin có thể thay đổi. Nếu không, bạn sẽ luôn nhận được cùng một hàm băm như đầu ra. Dữ liệu biến này được gọi là một nonce.
Sau mỗi lần thử, bạn sẽ thay đổi một con số gọi là Nonce và nhận được một hàm băm khác nhau, gọi là khai thác.
Đối với các loại tiền điện tử lớn hiện nay, rất khó để đáp ứng các điều kiện. Nhưng giao thức sẽ thưởng cho bạn tiền điện tử nếu bạn tìm thấy một hàm băm hợp lệ.
Nếu bạn gian lận, mật mã khóa công khai xuất hiện. Nó sử dụng một số thủ thuật mật mã gọn gàng cho phép người dùng bất kỳ được phép xác minh ai đó có quyền chuyển số tiền họ đang cố gắng chi tiêu hay không.
Bất kỳ khối nào bao gồm một giao dịch không hợp lệ sẽ bị mạng tự động từ chối. Bởi vậy, việc cố gắng gian lận khiến bạn tốn kém nhiều tài nguyên.
Proof of Work khiến việc gian lận tốn kém nhưng nếu trung thực lại có lợi.
Cát Anh (T/h)