Chương 3 MỘT SỐ THUẬT TOÁN GIẤU TIN TRÊN MIỀN THỜI GIAN
3.3. Thuật toán giấu bằng điều chỉn h2 mẫu trong một đoạn chứa 25 mẫu
3.3.2. Thuật toán giấu 4 bit trong khối 25 mẫu dữ liệu
Mơ hình CPT điều chỉnh (Modify CPT - MCPT) sẽ thực hiện giấu 4 bit dữ liệu trong đoạn 25 mẫu dữ liệu của tệp âm thanh, trong đó thay đổi tối đa 2 bit của 2 mẫu dữ liệu. Đoạn gồm 25 mẫu sẽ được chuyển thành khối F có kích thước 5*5. Chi tiết thuật tốn MCPT giấu 4 bit trên khối như sau :
Đầu vào: - Khối dữ liệu chứa F có kích thước 5*5, 4 bit mật b1b2b3b4 cần giấu. Đầu ra: - Khối dữ liệu mang tin mật F’.
Các bước của thuật toán giấu như sau:
Bước 1) Xây dựng ma trận A từ các LSB của khối F, A[i][j] = LSB(F[i][j]) Bước 2) Lấy 4 dòng đầu của A, mỗi dòng thực hiện phép XOR tất cả các phần tử trong dịng, ta có r1r2r3r4.
Bước 3) Lấy 4 cột đầu tiên của A, mỗi cột thực hiện XOR tất cả các phần tử của mỗi cột để được c1c2c3c4.
Bước 4) Thực hiện XOR kết quả trong bước 2 và bước 3 để có s1s2s3s4 trong đó s1=r1 XOR c1, s2=r2 XOR c2 và tương tự như vậy.
Bước 5) So sánh kết quả của Bước 4) với 4 bit cần giấu b1b2b3b4. Nếu không có sự khác nhau thì khơng cần phải điều chỉnh trên khối bit A. Ngược lại, cần xét các trường hợp sau:
• Nếu có khác nhau 1 bit bi tại vị trí i thì A[i][5] được điều chỉnh lật. • Nếu có khác nhau trên 2 bit bi và bj tại vị trí i và j thì A[i][j] được lật. • Nếu có khác nhau trên 3 bit bi, bj và bk tại 3 vị trí i, j, k thì A[i][j] được lật và A[k][5] được lật.
• Nếu có khác nhau trên cả 4 bit bi, bj, bk và bm tại 4 vị trí i, j, k, m thì thực hiện lật A[i][j] và A[k][m].
Bước 6) Đặt các bit LSB của khối F[i][j] giống A[i][j] ta được khối F’.