Hãy để tôi giải thích một điều thực sự khá cơ bản về cách hoạt động của blockchain nhưng thường bị bỏ qua: đó là nonce. Nếu bạn đang cố hiểu nonce trong an ninh, bạn cần biết rằng nó về cơ bản là "gia vị bí mật" làm cho hệ thống bằng chứng công việc (proof-of-work) thực sự an toàn.



Vì vậy, đây là vấn đề. Nonce là viết tắt của "số dùng một lần," và đó là số đặc biệt được thêm vào một khối trong quá trình khai thác. Hãy nghĩ nó như biến số mà các thợ mỏ liên tục điều chỉnh để giải một câu đố mật mã. Họ cố gắng thử các giá trị nonce khác nhau liên tục cho đến khi tìm ra một giá trị tạo ra hàm băm đáp ứng yêu cầu độ khó của mạng. Đó chính là toàn bộ quá trình khai thác.

Tại sao điều này lại quan trọng đối với an ninh? Bởi vì nó tốn nhiều tính toán. Khi ai đó muốn sửa đổi một khối, họ sẽ phải tính lại toàn bộ câu đố nonce một lần nữa. Điều này làm cho việc tấn công mạng trở nên cực kỳ đắt đỏ. Nonce về cơ bản đặt một mức giá cho hành vi sai trái, điều mà bạn muốn trong một hệ thống phi tập trung. Nó ngăn chặn việc chi tiêu gấp đôi bằng cách buộc mọi giao dịch phải trải qua quá trình xác thực nghiêm ngặt này.

Trong Bitcoin cụ thể, các thợ mỏ tập hợp một khối với các giao dịch đang chờ xử lý, thêm một nonce vào phần tiêu đề, 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ó của mạng không. Nếu không, họ điều chỉnh nonce và thử lại. Quá trình thử và sai này tiếp tục cho đến khi họ tìm ra nonce phù hợp tạo ra hàm băm hợp lệ. Khái niệm này khá đơn giản về mặt lý thuyết, nhưng thực hành thì đòi hỏi nhiều sức mạnh tính toán.

Mạng thực sự điều chỉnh độ khó tự động để giữ thời gian khối nhất quán. Nếu nhiều thợ mỏ tham gia hơn và tổng sức mạnh tính toán tăng lên, độ khó sẽ tăng. Điều này có nghĩa là việc tìm ra nonce đúng sẽ trở nên khó hơn, đòi hỏi nhiều năng lượng xử lý hơn. Khi các thợ mỏ rút lui hoặc sức mạnh băm giảm, độ khó giảm xuống để giữ nhịp độ ổn định. Đó là cơ chế cân bằng tự nhiên tinh tế này.

Bây giờ, nonce không chỉ là thứ trong blockchain. Chúng xuất hiện dưới nhiều dạng khác nhau trong mật mã. Có nonce mật mã được sử dụng trong các giao thức bảo mật để ngăn chặn tấn công phát lại bằng cách tạo ra các giá trị duy nhất cho mỗi phiên. Có nonce của hàm băm thay đổi đầu vào để thay đổi đầu ra. Trong lập trình, chúng chỉ là các giá trị đảm bảo tính duy nhất của dữ liệu. Nhưng trong blockchain, nonce thực sự là để làm cho câu đố an ninh hoạt động.

Một điều mọi người không luôn nhận ra là sự khác biệt giữa hàm băm và nonce. Chúng không giống nhau. Hàm băm giống như dấu vân tay của dữ liệu — đầu ra cố định kích thước từ đầu vào. Nonce là biến số mà bạn thao tác để tạo ra các hàm băm khác nhau. Nonce là công cụ, còn hàm băm là kết quả.

Có những cuộc tấn công thực tế nhắm vào các triển khai nonce đáng để biết. Tấn công tái sử dụng nonce xảy ra khi ai đó cố ý dùng lại cùng một nonce, có thể làm suy yếu các tính chất bảo mật. Tấn công nonce dự đoán xảy ra khi nonce theo một mẫu mà kẻ tấn công có thể dự đoán được. Tấn công nonce lỗi thời liên quan đến việc lừa hệ thống bằng các nonce cũ. Những lỗ hổng này nhấn mạnh lý do tại sao việc triển khai nonce đúng cách là cực kỳ quan trọng.

Để phòng chống các cuộc tấn công này, các giao thức mật mã cần đảm bảo nonce thực sự duy nhất và khó đoán. Điều đó có nghĩa là phải có hệ thống tạo số ngẫu nhiên vững chắc với xác suất lặp lại thấp. Các hệ thống cũng nên có cơ chế phát hiện và từ chối các nonce đã dùng lại. Việc tái sử dụng nonce trong mật mã bất đối xứng đặc biệt nguy hiểm — nó có thể rò rỉ khóa bí mật hoặc làm suy yếu toàn bộ liên lạc được mã hóa.

Tóm lại, hiểu nonce trong an ninh giúp bạn có cái nhìn thực sự về cách blockchain tự bảo vệ chính nó. Đó không phải là phép thuật, đó là toán học. Nonce khiến việc tấn công mạng trở nên phi lý về mặt kinh tế vì chi phí tính toán để tìm ra nonce hợp lệ quá cao. Đó chính là toàn bộ mô hình bảo mật.
BTC2,58%
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