Mật mã học là một công cụ số tự động đóng một vai trò thiết yếu trong an ninh mạng. Nó cung cấp tính bảo mật và toàn vẹn của dữ liệu, đồng thời hỗ trợ xác thực và không từ chối cho người dùng.
Mật mã có thể đóng một số vai trò trong việc xác thực người dùng. Hệ thống xác thực mật mã hỗ trợ khả năng xác thực thông qua nhu cầu của các khóa mật mã chỉ được biết hoặc sử dụng bởi các thực thể có thẩm quyền. Mật mã cũng cung cấp khả năng xác thực thông qua việc sử dụng rộng rãi trong các hệ thống xác thực khác.
Hệ thống mật khẩu áp dụng mật mã để mã hóa các tệp mật khẩu được lưu trữ, hệ thống thẻ / mã thông báo áp dụng mật mã để bảo mật dữ liệu được lưu trữ nhạy cảm và trình tạo mật khẩu cầm tay thường áp dụng mật mã để tạo mật khẩu động, ngẫu nhiên.
Mật mã thường được sử dụng trong các ứng dụng phân tán để chuyển dữ liệu nhận dạng và xác thực từ hệ thống này sang hệ thống khác qua mạng. Hệ thống xác thực mật mã xác thực người dùng phụ thuộc vào nhận thức hoặc sở hữu khóa mật mã. Hệ thống xác thực mật mã có thể phụ thuộc vào hệ thống mật mã khóa riêng hoặc hệ thống mật mã khóa công khai.
Các hệ thống mật mã khóa riêng cần có cùng một khóa cho các chức năng của cả mã hóa và giải mã. Hệ thống xác thực mật mã phụ thuộc vào hệ thống mật mã khóa riêng dựa trên khóa chia sẻ giữa người dùng cố gắng truy cập và hệ thống xác thực.
Các hệ thống mật mã khóa công khai tách biệt các chức năng mã hóa và giải mã, nói chung sử dụng một khóa độc lập để điều khiển từng chức năng. Hệ thống xác thực mật mã phụ thuộc vào hệ thống mật mã khóa công khai dựa trên một khóa chỉ người dùng cố gắng truy cập mới biết.
Mật mã hỗ trợ các cơ chế cho quá trình như vậy. Chữ ký kỹ thuật số liên kết bản ghi với người sở hữu một khóa cụ thể, trong khi dấu thời gian kỹ thuật số liên kết tệp với việc tạo ra nó tại một thời điểm cụ thể. Các cơ chế mật mã này được sử dụng để kiểm soát quyền truy cập vào ổ đĩa dùng chung, thiết bị bảo mật cao hoặc kênh truyền hình trả tiền cho mỗi lần xem.
Lĩnh vực mật mã cũng bao quanh các mục đích sử dụng khác. Chỉ với một số công cụ mật mã, có thể xây dựng các thiết kế và giao thức phức tạp cho phép chúng tôi thanh toán bằng tiền điện tử, để chứng minh rằng nó biết thông tin cụ thể mà không tiết lộ thông tin đó và gửi một số lượng bí mật theo phương thức sao cho tập hợp con các lượt chia sẻ có thể tạo lại bí mật.
Mặc dù mật mã hiện tại ngày càng khác biệt, nhưng về cơ bản, mật mã dựa trên những vấn đề phức tạp để giải quyết. Một vấn đề có thể phức tạp vì giải pháp của nó cần một số kiến thức bí mật, bao gồm giải mã một thông điệp được mã hóa hoặc ký một số thông tin kỹ thuật số. Vấn đề cũng có thể phức tạp vì về cơ bản nó rất khó để hoàn thành, bao gồm cả việc tìm kiếm một thông báo tạo ra một giá trị băm nhất định.
Mã hóa là việc chuyển đổi thông tin thành một dạng gần như không thể đọc được nếu không có kiến thức phù hợp. Mục tiêu của nó là cung cấp sự riêng tư bằng cách duy trì thông tin ẩn với bất kỳ ai mà nó không được thiết kế cho họ, ngay cả những người có quyền truy cập vào thông tin được mã hóa. Giải mã ngược lại với mã hóa; đó là việc chuyển đổi thông tin được mã hóa trở lại thành một dạng dễ hiểu.