Khi sử dụng thuật toán mã hoá theo khối để mã hoá và giải mã, thông tin được chia thành từng khối theo đơn vị bit. Các khối thông tin này sau đó được đưa vào mã hoá thông qua các phép gán (substitution), chuyển vị (transsposition) và các hàm toán học khác [2]. Thuật toán sẽ gọi tất cả các hàm phải thực hiện trên khối dữ liệu, kiểm tra khoá mã rồi xác định thứ tự thực hiện các hàm.
Phương pháp mã hoá theo khối có hai thuộc tính là: hỗn loạn và khuếch tán. Thuật toán sử dụng các giá trị khoá mã khác nhau không thể đoán trước được tạo ra sự hỗn loạn, bên cạnh đó thuật toán còn chèn thêm các bit ngẫu nhiên vào dữ liệu và biến đổi qua rất nhiều hàm toán học khác nhau nên các giá trị bit trong plaintext bị phân tán.
Hình 2.5 minh hoạ một thuật toán mã hoá theo khối đơn giản với 16 đường vào, mỗi đường vào ứng với 1 bit [4]. Thuật toán này gồm hai lớp các hộp S-box 4 bit. Mỗi hộp S-box này chứa một bảng tra cứu dùng để chỉ dẫn cách mà các bit được dịch chuyển hoặc hoán vị. Khoá mã được sử dụng trong quá trình mã hoá dùng để ra lệnh S-box nào được sử dụng và sử dụng theo thứ tự nào.
Hình 2.5: Trong thuật toán mã hoá block cipher, dữ liệu được chia thành từng khối bit, các hàm toán học được thực hiện trên các khối này
Mỗi một S-box có thể có những hàm toán học, công thức và các phương pháp khác nhau khi thao tác trên từng bit riêng lẻ. Khoá mã tạo ra sự hỗn loạn bởi vì kẻ tấn công không thể biết được S-box nào sẽ được sử dụng trong quá trình mã hoá và tất cả các phép hoán vị trên các bit là khuếch tán bởi vì các bit được dịch chuyển giữa các S-box khác nhau và được đưa vào trong các quá trình xáo trộn thông tin.
Trong ví dụ này chỉ có hai hàng S-box thực hiện việc mã hoá dữ liệu. Đây là một ví dụ rất đơn giản. Phần lớn các thuật toán mã hoá theo khối làm việc với các khối dữ liệu 64 bits và có rất nhiều S-box tham gia vào quá trình mã hoá. Bên cạnh đó, hệ thống mã theo khối sử dụng các giá trị khoá mã ngẫu nhiên nên kẻ tấn công rất khó có thể xác định S-box nào được sử dụng.