Skip to main content

Thuật toán băm là gì?

Các lập trình viên máy tính đã sử dụng các chức năng băm trong nhiều thập kỷ.Các chức năng này thường được sử dụng trong các lĩnh vực bảo mật, truy cập dữ liệu hoặc xác thực dữ liệu.Thuật toán băm là một hàm toán học chuyển đổi một chuỗi các ký tự có độ dài thay đổi thành một giá trị số cố định.Có nhiều loại thuật toán có sẵn ngày hôm nay.Mỗi loại được thiết kế cho một mục đích cụ thể. Chức năng băm là một hàm toán học tạo ra giá trị băm từ một tập các chuỗi ký tự.Khi tạo chức năng băm, điều quan trọng là phải bảo vệ chống lại các vụ va chạm băm.Thật không may, một thuật toán băm có thể tạo ra giá trị băm giống nhau với một bộ dữ liệu ký tự khác nhau.Điều này sẽ gây ra sự va chạm vì hai bộ dữ liệu sẽ có cùng một khóa băm.Mã hóa dữ liệu là một trong những biện pháp bảo vệ chính chống lại những kẻ xâm nhập và các hoạt động độc hại.Khoa học mã hóa dữ liệu được gọi là mật mã.Thuật toán băm là hàm máy tính chuyển đổi dữ liệu tiêu chuẩn thành định dạng được mã hóa.Có nhiều loại bảo mật của thuật toán băm có sẵn ngày hôm nay.Mỗi chức năng có một mức độ phức tạp khác nhau cho các mục đích bảo mật. Kỹ thuật băm lần đầu tiên được tạo ra như một phương pháp cải thiện hiệu suất trong các hệ thống máy tính.Giá trị băm là một biểu diễn số của các ký tự của dữ liệu.Dữ liệu số có các đặc điểm xử lý nhanh hơn khi tìm kiếm thông qua các tệp dữ liệu.Nhiều cơ sở dữ liệu thương mại sử dụng các tệp băm làm phương pháp lập chỉ mục dữ liệu trong Hệ thống quản lý cơ sở dữ liệu (DBMS).Quá trình băm cũng đã được sử dụng như một phương pháp bảo vệ dữ liệu máy tính nhạy cảm.Dữ liệu băm yêu cầu một chương trình mã hóa để chuyển đổi dữ liệu băm trở lại định dạng có thể được hiểu bằng cách giải thích của con người.Gần như không thể giải mã được một tệp dữ liệu được mã hóa mà không có thuật toán băm ban đầu. Một thuật toán băm nâng cao yêu cầu các khóa đặc biệt được sử dụng để mã hóa và giải mã dữ liệu.Những khóa này là thành phần bí mật để làm cho mã hóa phức tạp.Khóa mã hóa có thể phạm vi mẫu 64 bit đến 256 bit.Khi kích thước của các bit tăng lên, sự phức tạp của thuật toán băm trở nên khó phá vỡ hơn. Tiêu mật và thuật toán băm được quản lý bởi Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST).Nhóm này quản lý các tiêu chuẩn cho các chức năng mã hóa để sử dụng trong chính phủ Hoa Kỳ.Hiện tại tiêu chuẩn được xác định là tiêu chuẩn mã hóa nâng cao (AES), yêu cầu khóa 256 bit.