Bạn có từng tự hỏi điều gì thực sự giữ cho các mạng blockchain an toàn không? Gần đây tôi đã tìm hiểu về điều này và nhận ra phần lớn mọi người không thực sự hiểu rõ cơ chế đằng sau nó. Hãy để tôi giải thích một điều cơ bản thường bị bỏ qua: nonce.



Vậy nonce trong bảo mật là gì? Nó về cơ bản là một số dùng một lần, một biến mà các thợ mỏ thao tác trong quá trình khai thác để giải quyết một câu đố mật mã. Hãy nghĩ nó như thành phần chính làm cho hệ thống chứng minh công việc hoạt động. Nếu không có nó, an ninh của blockchain sẽ hoàn toàn khác.

Điều khiến tôi chú ý là: các thợ mỏ không chỉ tìm một nonce một cách ngẫu nhiên. Họ liên tục thay đổi con số này cho đến khi họ 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 nghĩa là một số lượng số không đứng đầu nhất định. Quá trình thử và sai này chính là lý do khiến việc khai thác Bitcoin tốn nhiều tính toán và, thành thật mà nói, rất hiệu quả trong việc giữ cho mạng lưới trung thực.

Khía cạnh an ninh thực sự là phần thú vị. Một nonce trong các giao thức bảo mật ngăn chặn việc chi tiêu gấp đôi bằng cách buộc kẻ tấn công phải làm lại công việc tính toán lớn nếu họ muốn sửa đổi các khối trước đó. Bất kỳ ai cố gắng thay đổi một giao dịch đều cần phải tính lại nonce cho khối đó và tất cả các khối sau. Điều này gần như là không thể do sức mạnh băm tổng hợp của mạng.

Tôi đã đọc về cách Bitcoin xử lý vấn đề này cụ thể như thế nào. Các thợ mỏ tạo ra một khối mới với các giao dịch đang chờ xử lý, thêm một nonce duy nhất vào phần đầu của khối, rồi băm nó bằng SHA-256. Họ so sánh kết quả với mục tiêu độ khó của mạng. Nếu không phù hợp, họ điều chỉnh nonce và thử lại. Quá trình này lặp đi lặp lại cho đến khi tìm ra một hàm băm hợp lệ. Độ khó tự động điều chỉnh dựa trên sức mạnh của mạng, điều này thật sự là một kỹ thuật tinh vi.

Điều làm tôi thích thú là cách các ứng dụng khác nhau sử dụng nonce theo các cách khác nhau. Trong các giao thức mật mã, chú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. Trong các thuật toán băm, chúng được dùng để thay đổi đầu vào và thay đổi đầu ra. Nhưng nguyên tắc cốt lõi vẫn là: một nonce trong bảo mật nhằm làm cho việc hành động xấu trở nên tốn kém về mặt tính toán đối với kẻ xấu.

Tuy nhiên, vẫn có những cuộc tấn công thực sự mà mọi người cần biết. Tấn công tái sử dụng nonce xảy ra khi ai đó dùng lại cùng một nonce, có thể làm hỏng mã hóa hoặc chữ ký số. 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 trước. Những lỗ hổng này nhắc nhở chúng ta rằng việc tạo số ngẫu nhiên đúng cách và tuân thủ nghiêm ngặt các giao thức là rất quan trọng.

Sự khác biệt giữa một hàm băm và một nonce cũng đáng làm rõ. Hàm băm giống như dấu vân tay của dữ liệu, là đầu ra cố định được tạo ra từ đầu vào. Trong khi đó, nonce là biến số mà bạn thao tác để tạo ra các hàm băm khác nhau. Chúng hoạt động cùng nhau trong blockchain nhưng phục vụ các chức năng hoàn toàn khác nhau.

Để bảo vệ chống lại các lỗ hổng liên quan đến nonce, các hệ thống mật mã cần đảm bảo rằng nonce thực sự ngẫu nhiên và khó đoán. Các giao thức nên từ chối các nonce đã dùng lại và cập nhật thường xuyên các triển khai của mình. Đó không phải là những thứ hào nhoáng, nhưng chính là nền tảng giữ mọi thứ an toàn.

Càng tìm hiểu sâu, tôi càng nhận ra thiết kế của nó thật tinh tế. Một nonce trong bảo mật không chỉ là một con số ngẫu nhiên, mà còn là cơ chế khiến việc sửa đổi dữ liệu blockchain trở nên quá đắt đỏ. Đó là lý do tại sao hiểu cách nó hoạt động lại quan trọng nếu bạn thực sự muốn nắm vững các nguyên tắc cơ bản của blockchain. Thật đáng để khám phá nếu bạn muốn đi sâu hơn vào cách các mạng này thực sự duy trì an toàn.
BTC-1,8%
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