Chỉ mới nhận ra là tôi đã giải thích về nonce trong crypto quá phức tạp cho bạn bè rồi. Để tôi giải thích lại theo cách thực sự dễ hiểu hơn.



Vì vậy, nonce về cơ bản là một số đặc biệt mà các thợ mỏ (miner) sử dụng trong quá trình khai thác - nghĩ nó như chìa khóa để mở khóa một khối. Tên của nó nghĩa đen là "số dùng một lần," và nó là trung tâm trong cách các blockchain dựa trên bằng chứng công việc như Bitcoin tự bảo vệ chính mình.

Dưới đây là điều thực sự đang xảy ra: các thợ mỏ cố gắng giải một câu đố bằng cách thay đổi giá trị nonce này liên tục cho đến khi họ tìm ra một hàm băm (hash) phù hợp với yêu cầu của mạng lưới. Thường thì điều đó có nghĩa là tìm một hàm băm có một số chữ số không ở đầu. Đó là thử và sai, nhưng đó là toàn bộ ý nghĩa. Công việc tính toán cần thiết chính là thứ làm cho blockchain trở nên an toàn.

Điều tôi thấy thú vị là thiết kế này rất tinh tế. Bằng cách yêu cầu các thợ mỏ phải làm tất cả công việc này để tìm ra nonce phù hợp, nó làm cho việc sửa đổi các khối trở nên vô cùng đắt đỏ. Nếu ai đó muốn thay đổi thậm chí một giao dịch trong một khối cũ, họ sẽ phải tính lại nonce cho khối đó và tất cả các khối sau đó. Đó là lý do tại sao tính bất biến của blockchain thực sự hoạt động - không phải vì nó không thể làm được, mà vì chi phí đó khiến việc này trở nên không thực tế.

Trong Bitcoin cụ thể, đây là quy trình: các thợ mỏ tập hợp các giao dịch đang chờ xử lý thành một khối, thêm một nonce vào phần tiêu đề của khối, rồi băm tất cả bằng SHA-256. Họ kiểm tra xem hàm băm có đáp ứng mục tiêu độ khó không. Nếu không, họ tăng nonce và thử lại. Quá trình này lặp đi lặp lại cho đến khi tìm ra hàm băm thắng cuộc. Mạng lưới điều chỉnh độ khó một cách linh hoạt để giữ thời gian tạo khối ổn định - khi nhiều thợ mỏ tham gia và sức mạnh băm tăng lên, độ khó sẽ tăng. Khi giảm, độ khó sẽ giảm xuống.

Giải pháp nonce trong crypto còn giúp ngăn chặn các dạng tấn công cụ thể. Giao dịch trùng lặp gần như không thể xảy ra vì xác nhận mỗi giao dịch đòi hỏi công việc tính toán này. Các cuộc tấn công Sybil cũng trở nên đắt đỏ - bạn không thể chỉ đơn giản tràn vào mạng lưới bằng các danh tính giả mà không phải trả chi phí khai thác. Và các cuộc tấn công phát lại (replay attacks)? Yêu cầu về tính duy nhất của nonce trong các giao thức mã hóa xử lý điều đó.

Có nhiều loại nonce khác nhau trong crypto và mật mã rộng hơn - nonce mã hóa dùng trong các giao thức bảo mật, nonce hàm băm để thay đổi đầu vào của hàm băm, và nonce lập trình để đảm bảo tính duy nhất của dữ liệu. Nhưng trong ngữ cảnh blockchain, chúng ta chủ yếu nói về nonce khai thác.

Một điều mọi người thường nhầm lẫn là: nonce không giống như hàm băm. Hàm băm giống như dấu vân tay được tạo ra từ dữ liệu - đó là đầu ra. Nonce là biến đầu vào mà các thợ mỏ thao tác để tạo ra các hàm băm khác nhau. Chúng liên quan nhưng khác nhau.

Về mặt bảo mật, điều thú vị là khi bạn xem xét các lỗ hổng của nonce. Các cuộc tấn công tái sử dụng nonce có thể làm hỏng hệ thống mã hóa. Nonces dự đoán được rất nguy hiểm vì kẻ tấn công có thể dự đoán các hoạt động. Các cuộc tấn công nonce cũ khai thác các giá trị cũ. Đó là lý do tại sao việc tạo số ngẫu nhiên đúng cách và các giao thức từ chối nonce đã sử dụng lại là rất quan trọng.

Nếu bạn thực sự quan tâm đến crypto, hiểu nonce trong crypto giúp bạn hiểu tại sao các blockchain dựa trên bằng chứng công việc thực sự an toàn về mặt cơ bản. Đó không phải là phép màu - chỉ là công việc tính toán đắt đỏ khiến các cuộc tấn công trở nên phi lý về mặt kinh tế. Hãy theo dõi cách các cơ chế này phát triển, đặc biệt nếu bạn đang theo dõi các dự án blockchain khác nhau trên các nền tảng như Gate.
BTC-0,47%
Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • Bình luận
  • Đăng lại
  • Retweed
Bình luận
Thêm một bình luận
Thêm một bình luận
Không có bình luận
  • Ghim