Bạn có từng tự hỏi điều gì thực sự giữ cho các mạng lưới blockchain an toàn không? Gần đây tôi đã tìm hiểu về vấn đề này và nhận ra rằng hầu hết mọi người không thực sự hiểu vai trò của một nonce trong bảo mật - nó thực sự khá cơ bản đối với cách hoạt động của tiền điện tử.



Vì vậy, vấn đề là: một nonce về cơ bản là một số dùng một lần, và nó là cốt lõi của toàn bộ hệ thống bằng chứng công việc. Khi các thợ mỏ cố gắng xác thực một khối, họ về cơ bản đang giải một câu đố mật mã trong đó nonce là biến số họ điều chỉnh. Họ liên tục điều chỉnh nó cho đến khi nhận được một đầu ra băm đáp ứng yêu cầu độ khó của mạng - thường có nghĩa là nó có một số lượng số không đứng đầu nhất định.

Điều làm cho quá trình này thông minh là nó tạo ra công việc tính toán. Việc tìm ra nonce phù hợp đòi hỏi sức mạnh xử lý thực sự, chính điều này làm cho blockchain chống lại các cuộc tấn công. Nếu ai đó muốn sửa đổi các khối trước đó, họ sẽ phải tính lại tất cả các nonce đó - điều này sẽ mất rất nhiều thời gian. Đó chính là bảo mật đang hoạt động ngay tại đó.

Hãy để tôi phân tích cách Bitcoin thực sự sử dụng điều này. Các thợ mỏ thu thập các giao dịch đang chờ xử lý thành một khối, thêm một nonce vào tiêu đề, rồi băm tất cả bằng SHA-256. Họ kiểm tra xem hash đó có đáp ứng mục tiêu độ khó của mạng không. Nếu không, họ thay đổi nonce và thử lại. Lặp đi lặp lại cho đến khi tìm ra một cái phù hợp. Độ khó của mạng cũng tự điều chỉnh, tăng lên khi có nhiều thợ mỏ tham gia và giảm xuống khi sức mạnh băm giảm. Hệ thống khá tinh tế.

Bây giờ, nonce trong các giao thức bảo mật còn vượt ra ngoài việc khai thác mỏ. Bạn có các loại khác nhau tùy theo ngữ cảnh. Trong các hệ thống mật mã, nonce 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 giao dịch hoặc phiên làm việc đều có giá trị duy nhất. Trong các thuật toán băm, chúng thay đổi đầu vào để thay đổi đầu ra. Trong lập trình nói chung, chúng được dùng để đảm bảo tính duy nhất của dữ liệu.

Tuy nhiên, điều thú vị là các lỗ hổng liên quan đến nonce là có thật. Có các cuộc tấn công tái sử dụng nonce, trong đó ai đó tái sử dụng cùng một nonce trong các hoạt động mật mã, có thể làm lộ khóa riêng tư. Rồi còn có các cuộc tấn công nonce dự đoán được, nơi kẻ tấn công có thể dự đoán mẫu nonce và thao túng hệ thống. Cũng có các cuộc tấn công nonce lỗi thời sử dụng các giá trị cũ.

Vậy các giao thức bảo vệ chống lại điều này như thế nào? Chìa khóa là đảm bảo nonce thực sự ngẫu nhiên và duy nhất. Bạn cần tạo ra các số ngẫu nhiên phù hợp để gần như không có khả năng lặp lại. Các hệ thống cũng cần phát hiện và từ chối các nonce bị sử dụng lại. Đặc biệt trong mật mã bất đối xứng, việc tái sử dụng nonce có thể làm rò rỉ khóa bí mật hoặc làm hỏng các tin nhắn được mã hóa. Đó là lý do tại sao các thư viện mật mã liên tục được cập nhật và luôn theo dõi các mẫu nonce đáng ngờ.

Kết luận: hiểu rõ nonce trong bảo mật là điều cực kỳ quan trọng nếu bạn muốn nắm bắt cách blockchain thực sự duy trì tính an toàn. Nó không chỉ là một chi tiết kỹ thuật - đó là nền tảng của toàn bộ cơ chế đồng thuận. Nếu không có nó, câu đố tính toán biến mất và mô hình bảo mật toàn diện sụp đổ. Thật là kỳ diệu khi nghĩ rằng phần lớn an ninh của tiền điện tử dựa vào một khái niệm duy nhất này.
BTC1,62%
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