Tôi đã nghĩ về việc có bao nhiêu người thực sự hiểu những gì đang diễn ra bên trong khi các thợ đào Bitcoin làm việc của họ. Hầu hết mọi người đều biết việc khai thác là quan trọng, nhưng nonce? Đó là phần thú vị.



Vì vậy, vấn đề ở đây là: nonce về cơ bản là một số mà các thợ đào sử dụng để giải một câu đố mật mã. Viết tắt của "số dùng một lần," nó là biến số mà họ liên tục điều chỉnh cho đến khi giải mã thành công. Hãy nghĩ nó như thử các tổ hợp khác nhau trên một ổ khóa cho đến khi mở được. Câu đố họ đang giải liên quan đến việc băm dữ liệu bằng SHA-256 cho đến khi họ nhận được kết quả phù hợp với yêu cầu độ khó của mạng—thường là một hàm băm có số lượng số không đứng đầu nhất định.

Tại sao điều này lại quan trọng đối với an ninh? Bởi vì việc tìm ra nonce chính xác đó đòi hỏi nỗ lực tính toán khổng lồ. Đó là mục đích chính. Nó khiến cho những kẻ xấu khó có thể làm giả các giao dịch trong quá khứ mà không phải làm lại toàn bộ công việc đó. Nếu ai đó muốn thay đổi một khối, họ sẽ phải tính lại nonce từ đầu, điều này trở nên cực kỳ khó khăn theo cấp số nhân khi có nhiều khối sau đó. Đó là điều giữ cho chuỗi khối không thể thay đổi.

Trong mạng Bitcoin, các thợ đào tập hợp một khối với các giao dịch đang chờ xử lý, thêm một nonce duy nhất vào tiêu đề khối, rồi bắt đầu băm. Họ so sánh mỗi kết quả băm với mục tiêu độ khó của mạng. Nếu không phù hợp, họ tăng nonce và thử lại. Quá trình thử và sai này tiếp tục cho đến khi họ tìm ra một kết quả phù hợp. Khi thành công, khối được xác nhận và thêm vào chuỗi. Toàn bộ quá trình được thiết kế sao cho việc tìm ra nonce hợp lệ trong các giao thức bảo mật ngăn chặn việc chi tiêu gấp đôi và các cuộc tấn công Sybil—những kẻ xấu không thể làm quá tải mạng với các danh tính giả hoặc tái sử dụng giao dịch vì chi phí tính toán quá cao.

Điều mà hầu hết mọi người bỏ lỡ là: độ khó điều chỉnh một cách linh hoạt. Nếu nhiều thợ đào tham gia mạng và sức mạnh băm tăng lên, độ khó sẽ tăng, đòi hỏi nhiều vòng lặp hơn để tìm ra nonce hợp lệ. Nếu thợ đào rút lui, độ khó giảm xuống. Điều này giữ cho thời gian tạo khối ổn định, khoảng mỗi 10 phút đối với Bitcoin.

Bây giờ, nonce cũng tồn tại trong các bối cảnh mật mã khác—không chỉ blockchain. Bạn sẽ thấy chúng trong các giao thức bảo mật để ngăn chặn các cuộc tấn công phát lại, trong các thuật toán băm, thậm chí trong lập trình để đảm bảo tính duy nhất của dữ liệu. Nhưng nguyên tắc vẫn giống nhau: làm cho một thứ gì đó tốn kém về mặt tính toán đến mức các cuộc tấn công trở nên không khả thi.

Các rủi ro? Các cuộc tấn công liên quan đến nonce là có thật. Nếu một nonce bị tái sử dụng trong quá trình mật mã, nó có thể làm suy yếu an ninh. Nonces dự đoán được là nguy hiểm. Nonces cũ có thể bị khai thác. Đó là lý do tại sao việc tạo số ngẫu nhiên đúng cách và thực thi các giao thức nghiêm ngặt lại quan trọng. Phòng thủ bao gồm đảm bảo nonce thực sự ngẫu nhiên, triển khai các cơ chế để từ chối các nonce đã sử dụng, và cập nhật thư viện mật mã thường xuyên.

Tóm lại: hiểu về an ninh nonce không chỉ là kiến thức kỹ thuật đơn thuần. Nó là nền tảng để hiểu tại sao blockchain thực sự hoạt động và tại sao việc sửa đổi nó lại cực kỳ khó khăn. Đó chính là toàn bộ mô hình bảo mật.
BTC2,49%
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