Để thực hiện việc trích rút thông tin mật, ta cũng có một số thao tác tiền xử lý nhƣ sau:
- Chuyển file âm thanh có chứa tin mật về dạng các byte
- Xác định Header của file âm thanh chứa thông tin mật. Sau đó đọc toàn bộ phần dữ liệu của file âm thanh vào một mảng một chiều để tiến hành thực hiện kỹ thuật trích rút thông tin mật.
- Xác định kích thƣớc khối byte của phần dữ liệu file âm thanh và thực hiện quá trình trích rút thông tin mật
Input: File W’ có chứa tin mật M Output: File tin mật M’
Thuật toán
Bƣớc 1: Xác định phần data của file W’ Bƣớc 2:
- Lặp: Đọc từng chuỗi (rate BlockSize) byte và trích rút các byte tin mật ra khỏi file âm thanh W.
Bƣớc 3: Ghi tin mật vào file M’
Trong đó: Việc đọc từng chuỗi (rate BlockSize) byte để thực hiện việc trích rút tin mật đƣợc thực hiện nhƣ sau:
B1. Biến đổi (rate BlockSize) thành khối tin F’ = f’0f’1…f’255 có kích thƣớc 256 bít theo công thức nếu byte thứ (rate i) với i = 0,1,…,255 có giá trị là một số nguyên chẵn thì f’i = 0 và ngƣợc lại nếu byte thứ (rate i) có giá trị là số nguyên lẻ thì f’i = 1
B2. Thực hiện Thuật toán 1 (trích tin mật) đã trình bày tại Chƣơng 2. Nhận xét:
- Ngoài việc lựa chọn rate là chiều sâu bít của file âm thanh để xác định khối tin trong quá trình giấu và trích rút thông tin mật. Ta cũng có thể lựa chọn Số byte trong mẫu trích để xác định kích thƣớc. Thông thƣờng với file âm thanh định dạng WAV thì chiều sâu bít là 2 byte và số byte trong mẫu trích là 4 byte.
- Để đảm bảo chất lƣợng của file âm sau khi nhúng thông tin mật, cần lựa chọn chuỗi byte luôn ổn định về giá trị nghĩa là sự thay đổi giá trị giữa các byte liền kề trong khối tin là không quá lớn