Bạn có từng tự hỏi điều gì thực sự giữ cho blockchain an toàn ở mức độ cơ bản nhất không? Câu trả lời nằm ở một thứ gọi là nonce, và thành thật mà nói, nó còn thú vị hơn nhiều so với vẻ ngoài của nó. Viết tắt của "số dùng một lần," biến số nhỏ này về cơ bản là câu đố mật mã mà các thợ mỏ giải quyết để xác nhận các khối mới. Hãy nghĩ nó như người gác cổng của tính toàn vẹn của blockchain.



Đây là cách hoạt động của nó: các thợ mỏ liên tục điều chỉnh giá trị nonce và chạy dữ liệu qua hàm băm SHA-256 cho đến khi họ đạt được giải thưởng—tìm ra một hàm băm phù hợp với yêu cầu độ khó của mạng, thường có nghĩa là một số lượng số không đứng đầu nhất định. Đó là quá trình thử và sai thuần túy, nhưng chính xác đó là mục đích. Quá trình tính toán này là thứ làm cho toàn bộ hệ thống trở nên an toàn.

Tại sao điều này lại quan trọng đối với an ninh trong blockchain? Bởi vì nonce tạo ra một rào cản tính toán lớn chống lại các cuộc tấn công. Nếu ai đó cố gắng sửa đổi dữ liệu của một khối, họ sẽ cần phải tính lại toàn bộ nonce từ đầu, điều này gần như không thể xảy ra nhờ vào sức mạnh xử lý của mạng. Đây là lý do tại sao nonce trong các bối cảnh an ninh lại có giá trị như vậy—nó ngăn chặn việc chi tiêu gấp đôi, chống lại các cuộc tấn công Sybil nơi các tác nhân xấu tràn ngập mạng bằng các danh tính giả, và duy trì tính bất biến của chuỗi.

Trong Bitcoin cụ thể, quá trình này khá đơn giản: các thợ mỏ tập hợp một khối với các giao dịch đang chờ xử lý, gán một nonce duy nhất vào tiêu đề khối, băm nó, và kiểm tra xem kết quả có đáp ứng các mục tiêu độ khó không. Nếu không, họ tăng nonce và thử lại. Hàng nghìn lần. Hàng triệu lần. Cho đến khi tìm ra một nonce phù hợp. Khi sức mạnh băm của mạng tăng lên, độ khó sẽ điều chỉnh tăng, yêu cầu nhiều lần thử hơn. Khi giảm xuống, độ khó cũng giảm, giữ cho thời gian tạo khối ổn định.

Bây giờ, nonce không chỉ là thứ liên quan đến blockchain. Chúng xuất hiện trong mật mã dưới các dạng khác nhau. Có nonce mật mã dùng để ngăn chặn các cuộc tấn công phát lại bằng cách đảm bảo mỗi phiên có một giá trị duy nhất. Có nonce của hàm băm thay đổi đầu vào để thay đổi đầu ra. Và trong lập trình, nonce đơn giản là các giá trị được thiết kế để ngăn chặn va chạm hoặc đảm bảo tính duy nhất. Mỗi mục đích riêng của chúng.

So sánh với hàm băm: một hàm băm giống như dấu vân tay—đầu ra cố định từ dữ liệu đầu vào. Một nonce là biến số bạn thao tác để tạo ra các hàm băm khác nhau. Một cái là kết quả, cái kia là công cụ.

Nhưng đây là nơi nó trở nên nguy hiểm. Các cuộc tấn công liên quan đến nonce là có thật trong mật mã. Việc tái sử dụng nonce có thể rò rỉ khóa bí mật hoặc làm hỏng các liên lạc được mã hóa. Nonces dự đoán trước được cho phép kẻ tấn công dự đoán các hoạt động. Các cuộc tấn công nonce lỗi thời khai thác các giá trị cũ. Giải pháp? Sử dụng các phương pháp tạo số ngẫu nhiên phù hợp để đảm bảo nonce thực sự duy nhất và khó đoán, kết hợp với các cơ chế phát hiện và từ chối các giá trị đã được sử dụng lại. Cập nhật thường xuyên các thư viện mật mã và giám sát liên tục các mẫu sử dụng cũng giúp phát hiện các vector tấn công mới nổi.

Kết luận: hiểu rõ nonce trong an ninh thực sự làm gì—và cách nó được triển khai—là điều quan trọng để nắm bắt lý do tại sao blockchain lại chống làm giả mạnh mẽ như vậy. Đó không phải là phép thuật, chỉ là toán học vững chắc và kinh tế tính toán khiến các cuộc tấn công trở nên quá đắt đỏ.
BTC-0,25%
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