Các thuật toán khóa đối xứng là một lớp các thuật toán mật mã hóa trong đó các khóa dùng cho mã hóa và giải mã có quan hệ rõ ràng với nhau (có thể dễ dàng tìm được một khóa nếu biết khóa kia). Khóa dùng để mã hóa có liên hệ một cách rõ ràng với khóa dùng để giải mã có nghĩa chúng có thể hoàn toàn giống nhau, hoặc chỉ khác nhau nhờ một biến đổi đơn giản giữa hai khóa. Trên thực tế, các khóa này đại diện cho một bí mật được phân hưởng bởi hai bên hoặc nhiều hơn và sử dụng để
giữ gìn sự bí mật trong kênh truyền thông tin.
Thuật toán đối xứng có thể được chia ra làm hai loại, mật mã luồng và mật mã khối. Mật mã luồng mã hóa từng bit của thông điệp trong khi mật mã khối gộp một số bit lại và mật mã hóa chúng như một đơn vị.
Thuật toán khóa đối xứng có hạn chế bắt nguồn từ yêu cầu về sự phân hướng chìa khóa bí mật, mỗi bên phải có một bản sao của chìa khóa. Do khả năng các chìa khóa có thể bị phát hiện bởi đối thủ mật mã, chúng thường được bảo an trong khi phân phối và trong khi dùng. Hậu quả của yêu cầu về việc lựa chọn, phân phối và lưu trữ các chìa khóa một cách không có lỗi, không bị mất mát là một việc rất khó khăn, khó có thể đạt được một cách đáng tin cậy.
Để đảm bảo thông tin liên lạc an toàn cho tất cả mọi người trong một nhóm gồm n người, tổng số lượng chìa khóa cần phải có là:
× ( − )
Hiện nay thường phổ biến dùng các thuật toán bất đối xứng có tốc độ chậm hơn để phân phối chìa khóa đối xứng khi một phiên giao dịch bắt đầu, sau đó các thuật toán khóa đối xứng tiếp quản phần còn lại. Vấn đề về bảo quản phân phối chìa khóa một cách đáng tin cậy cũng tồn tại ở tầng đối xứng, song ở một điểm nào đấy, có thể kiểm soát chúng dễ dàng hơn. Tuy nhiên, các khóa đối xứng hầu như đều được sinh tạo tại chỗ. Các thuật toán khóa đối xứng không thể dùng cho mục đích xác thực hay mục đích chống thoái thác được.
Một số thuật toán mã hóa đối xứng cơ bản bao gồm: Thuật toán mã hóa dữ liệu chuẩn hóa (DES); thuật toán mã hóa dữ liệu quốc tế (IDEA); thuật toán mã hóa dữ liệu bộ ba chuẩn hóa (3DES); thuật toán phát minh bởi hai người Carlisle Adams và Stafford Tavares, chiều dài khóa 128 bit (CAST-128); thuật toán mã hóa tiên tiến chuẩn hóa (AES).
2.1.4.2.Kỹ thuật mã hóa sử dụng khóa công khai
Kỹ thuật mã hoá công khai (còn gọi là kỹ thuật mã hoá bất đối xứng): Mã khóa công khai là một dạng mật mã cho phép người sử dụng trao đổi các thông tin mật mà không cần phải trao đổi các khóa bí mật trước đó, khái niệm khoá được đề
cập đến là một cặp. Một khoá trong cặp là khoá công khai (Public Key) được phát hành công khai cho tất cả người dùng trong hệ thống. Khóa còn lại trong cặp khoá là khóa bí mật hay khóa riêng (Private Key) và được bảo mật bởi người dùng sở hữu cặp khoá đó. Kỹ thuật này sử dụng hai khoá (cặp khoá) để mã hóa hoặc giải mã dữ liệu. Mỗi người dùng có một khoá mã hoá công khai và một khoá giải mã cá nhân. tất cả khoá mã hoá công khai của mọi người được chứa tập trung trong hệ thống chỉ mục trung tâm. Mỗi người dùng trong hệ thống sẽ có khoá giải mã bí mật được lưu giữ bảo mật như một phần của thẻ nhận dạng duy nhất (cũng được gọi là lược sử của người dùng).