ĐỊNH NGH ofA Hàm băm mật mã
Hàm băm mật mã là một hàm toán học được sử dụng trong mật mã. Các hàm băm điển hình lấy đầu vào có độ dài thay đổi để trả về đầu ra có độ dài cố định. Hàm băm mật mã kết hợp khả năng truyền thông điệp của hàm băm với thuộc tính bảo mật.
Hàm BREAKING DOWN Mật mã
Các hàm băm là các cấu trúc dữ liệu thường được sử dụng trong các hệ thống máy tính cho các tác vụ, chẳng hạn như kiểm tra tính toàn vẹn của tin nhắn và xác thực thông tin. Nhưng họ được coi là yếu về mật mã. Các hàm băm mật mã thêm các tính năng bảo mật vào các hàm băm điển hình, do đó gây khó khăn cho việc phát hiện nội dung của tin nhắn hoặc thông tin về người nhận và người gửi.
Cụ thể, hàm băm mật mã thể hiện ba thuộc tính
- Chúng không bị va chạm. Khác Nói một cách đơn giản, không có hai giá trị băm đầu vào nào ánh xạ tới cùng một hàm băm đầu ra. Chúng có thể được ẩn. Nói một cách đơn giản, rất khó để đoán giá trị đầu vào cho hàm băm từ đầu ra của nó. Họ nên thân thiện với câu đố. Điều đó có nghĩa là, rất khó để chọn một đầu vào cung cấp đầu ra được xác định trước. Vì vậy, đầu vào nên được chọn từ một phân phối càng rộng càng tốt.
Ba thuộc tính được nêu ở trên là mong muốn nhưng chúng không thể luôn luôn được thực hiện trong thực tế. Ví dụ, sự chênh lệch trong không gian mẫu cho các giá trị băm đầu vào và đầu ra đảm bảo rằng có thể có xung đột. Một ví dụ về điều này đã được chứng minh gần đây khi Sáng kiến Tiền tệ Kỹ thuật số MIT tìm thấy lỗ hổng va chạm trong IOTA.
Các hàm băm mật mã được sử dụng rộng rãi trong tiền điện tử để truyền thông tin giao dịch ẩn danh. Ví dụ, bitcoin, tiền điện tử gốc và lớn nhất, sử dụng hàm băm mật mã SHA-256 trong thuật toán của nó. Tương tự, IOTA, một nền tảng cho Internet of Things, có chức năng băm mật mã được gọi là Curl.
