Giá trị trước khi điều chỉnh Bit giấu Giá trị sau khi điều chỉnh
7.774503 0 7.874503 11.513642 1 11.513642 6.869382 0 6.869382 7.337803 1 7.337803 6.913936 0 7.013936 6.913936 1 6.913936 7.337803 0 7.437803 6.869382 1 6.969382
4.1.4. Thuật toán lấy 1 bit mật từ 1 mẫu
Dưới đây là thuật toán lấy 1 bit từ số phức z, dùng để lấy bit tin Mi khi giải tin. Đầu vào: - Số phức z, số d.
Đầu ra: - Số nhị phân Mi. Phương pháp: Getbit (z)
Bước 1) Tính biên độ (amplitude) của z: amp = abs(z);
Bước 2) Lấy bit Mi dựa vào Ri
Nếu mod (amp,d)>d/2 thì Mi =1, ngược lại Mi =0 Bước 3) return Mi
4.1.5. Thuật toán giải tin
Đầu vào: - Vector Y’ mang tin, độ dài chuỗi bit cần lấy q, số d, k, fw. Đầu ra: - Chuỗi bit mật M.
Thuật toán giải tin gồm các bước sau đây :
Bước 1) Chia Y’ thành các đoạn có cùng số kích thước fw.
Bước 2) Thực hiện FFT trên các đoạn Y’i để chuyển sang miền tần số: FY’i = FFT (Y’i).
Bước 3) Đối với mỗi đoạn FY’i, kiểm tra đoạn có chứa tin hay khơng dựa vào việc đếm số đỉnh lớn hơn ngưỡng chọn k. Nếu đoạn có chứa tin thì chọn 8 đỉnh đầu tiên trong đoạn để rút trích tin.
M(h) = Getbit( FYk(i), d ); h=h+1; Nếu h>1 thì sang Bước 4; Xét các đoạn FY’i kế tiếp.
Bước 4) return M.
Do trong thuật toán giấu, ta chỉ thực hiện điều chỉnh giá trị các mẫu là đỉnh (lớn hơn hai phần tử bên cạnh) lên một khoảng dương để giấu tin nên nó vẫn duy trì tính chất là đỉnh sau khi được điều chỉnh (trong trường hợp khơng điều chỉnh thì khơng ảnh hưởng tính chất này). Mặt khác, ta có IFFT(FFT(Y)) = Y nên tính chất các phần tử là đỉnh được lựa chọn trong mỗi đoạn để giấu tin cũng không thay đổi, nên ta có thể xác định được các bit mật được giấu từ các mẫu là đỉnh này.
4.1.6. Kết quả thử nghiệm và đánh giá
Trong thử nghiệm đánh giá kỹ thuật, tệp âm thanh được chọn có độ dài 32 giây, lấy mẫu ở tần số 44.1 Khz, gồm 1422720. Chuỗi bit mật gồm 1024 bit, là dữ liệu ảnh của logo Đại học Duy Tân. Kích thước mỗi đoạn fw là 512, giá trị ngưỡng chọn là 6 và giá trị d là 0.2. Kết quả thử nghiệm cho thấy không phân biệt được khi nghe tệp âm thanh gốc và tệp âm thanh mang tin.
Hình 4.3 minh hoạ một đoạn của tệp mang tin gồm 512 mẫu, đã đươc điều chỉnh để giấu 1 bit tin.
Hình 4.4 thể hiện dữ liệu tệp gốc và tệp mang tin.
Hình 4.4. Biên đợ của tệp gốc và tệp mang tin
Thực nghiệm thực hiện thêm nhiễu trắng với các tỉ lệ khác vào dữ liệu mang tin. Bảng 4.2 là mô tả tỉ lệ bit bị sai khi giải tin và hình 4.5 là ảnh nhận được. Nếu tỉ lệ gây nhiễu lớn hơn 90 thì khơng ảnh hưởng đến tin giấu.