3.4.1 Xây dựng thuật toán:
a/ Thuật toán giấu tin:
Chuỗi bit Audio nộn định dạng Wav
Kiểm tra Header khung Wav
Đọc dữ liệu khung Wav
Cấu trỳc tệp Audio nộn định dạng Wav
Kiểm tra bảng Huffman
Bộ lượng tử hoỏ thớch nghi Nhỳng tin và chốn mó sửa lỗi Định dạng chuỗi tin Audio .Wav Kiểm tra chất lượng và tốc độ bit + Khoỏ mật Chuỗi tin mật Output Input
Tốc độ bit quỏ cao hoặc xuất hiện mộo dạng
Tốc độ bit đạt chuẩn và mộo dạng nằm trong giới hạn
Repeat
Cỏc mẫu lượng tử hoỏ
Hình 3.7: Thuật toán giấu tin trong Audio nén .Wav b/ Thuật toán dò tách tin giấu:
Chuỗi bit Audio nộn định dạng Wav
Kiểm tra Header khung Wav
Đọc dữ liệu khung Wav
Cấu trỳc tệp Audio nộn định dạng Wav
Kiểm tra bảng Huffman
Input
Cỏc mẫu lượng tử hoỏ
Giải nộn Audio .Wav Output: Thiết bị
nghe nhạc Chiết rỳt tin mật
Khoỏ mật
Chuỗi tin mật
Hình (3.7) và (3.8) mô tả thuật toán dành cho phần nhúng và chiết rút tin giấu. Quá trình phân tích tệp audio định dạng Wav đ-ợc tiến hành thông qua sự trợ giúp của phần mềm MATLAB. Trong hai thuật toán trên, bảng Huffman thực chất là bảng chứa các xung mẫu đã l-ợng tử hoá theo tiêu chuẩn MPEG. Còn bộ l-ợng tử hoá thích nghi dùng để điều chỉnh b-ớc l-ợng tử cho mẫu tín hiệu đã nhúng tin phù hợp với các mẫu trong bảng Huffman. Nếu các mẫu sau khi l-ợng tử thỏa mãn tốc độ và chất l-ợng cảm thụ sẽ đ-ợc đóng gói và nén theo chuẩn MPEG, tạo ra một tệp audio mới giống hệt với tệp gốc.
3.4.2 Lựa chọn các tham số:
a/ Tham số bộ điều chế BPSK:
Giả sử chọn tần số giới hạn d-ới và tần số giới hạn trên t-ơng tự với dải tần số FM. Cho nên, LF = 50 Hz, HF = 15000 Hz.
Chọn tốc độ bit nhúng Rd 100 bit/ giây. Độ lợi xử lý N = 3, hệ số lặp mã m = 3. Do đó, tốc độ lặp mã Rb 300 bit/ giây
tốc độ chuỗi giả ngẫu nhiên PN là Rc 900 bit/ giây
Theo công thức (3.1), tính đ-ợc tần số bộ điều chế BPSK f03500 Hz. b/ Chọn chuỗi tin giấu:
Do trong thực tế, độ dài của chuỗi tin giấu phụ thuộc vào rất nhiều các yếu tố nh-: tính bền vững, khả năng không bị phát hiện, độ dài đoạn âm thanh,…cho nên, đầu tiên chọn độ dài chuỗi tin khoảng 150 bit, sau đó tăng dần độ dài chuỗi tin để đánh giá hiệu quả của mô hình.
c/ Chọn tín hiệu gốc:
Tín hiệu âm thanh có độ dài càng lớn thì l-ợng tin nhúng càng nhiều. Tuy nhiên, tốc độ xử lý tín hiệu sẽ bị chậm và tính bền vững không cao. Do
vậy, tệp âm thanh đ-ợc chọn là: Lmid.Wav có dung l-ợng 2.25 MB, tần số lấy mẫu FS = 44100 Hz, độ phân giải là 16 bit (BITS = 16).
3.4.3 Kết quả thực hiện:
a/ Tạo tín hiệu giả âm thanh:
Hình 3.9: Biểu diễn tín hiệu giả âm thanh sau khi điều chế trải phổ. b/ Xử lý đoạn tín hiệu gốc: 0 50 100 150 200 250 300 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4
Thoi gian (mau)
C uo ng d o Lmid.wav
c/ -ớc l-ợng ng-ỡng ngụy trang cuối: 0 5 10 15 20 25 -50 0 50 100 150 200 250 Ti le Bark (Bark) C u o n g d o
Nguong nguy trang cuoi
Nguong nguy trang cuoi Tones
Tap am PSD goc Nguong lang
Hình 3.11: Xác định ng-ỡng ngụy trang cuối.
Nh- vậy, thông qua mô hình giả lập thính giác ta có thể xác định đ-ợc vị trí các thành phần tone và tạp âm. Sau đó, tiến hành gạt bỏ các thành phần tạp âm và thay thế chúng bằng tín hiệu giả âm thanh (làm trơn nhiễu). Nh-ng với điều kiện là thành phần giả âm thanh này phải nằm d-ới ng-ỡng ngụy trang cuối. Nếu chúng càng gần ng-ỡng lặng thì càng khó phát hiện. Mô hình giả lập thính giác chỉ là một b-ớc để phân tích, tìm ra những vị trí, những vùng cần thiết cho nhúng tin. Bởi vì các thành phần tạp âm trong tín hiệu gốc có thể rất nhiều, nh-ng không phải thành phần nào cũng đ-ợc sử dụng để nhúng tin. Chỉ có những thành phần tạp âm nằm d-ới ng-ỡng ngụy trang cuối mới là vị trí thích hợp. Tuy nhiên, điều khẳng định này không hoàn toàn đúng trong tr-ờng hợp tín hiệu gốc đ-ợc nén theo một chuẩn khác, bởi vì mỗi chuẩn nén khác nhau sử dụng một ng-ỡng ngụy trang cuối khác nhau.
d/ Làm trơn nhiễu và nhúng tin:
Hình 3.12: Các b-ớc làm trơn nhiễu và nhúng tin. e/ Dạng tín hiệu tr-ớc và sau khi nhúng tin:
0 2 4 6 8 10 12 x 105 -1 -0.5 0 0.5
1 Dang tin hieu truoc khi nhung tin
0 2 4 6 8 10 12 x 105 -1 -0.5 0 0.5
1 Dang tin hieu sau khi nhung tin
Hình 3.13: Biểu diễn tín hiệu tr-ớc và sau khi nhúng tin.
Căn cứ vào hình (3.13), có thể nhận xét quá trình nhúng tin đã không làm thay đổi tín hiệu âm thanh gốc. Do vậy, tính trong suốt hay chất l-ợng cảm thụ đã đ-ợc bảo đảm. Tuy nhiên, điều này ch-a chứng minh mô hình có bền vững đối với các thao tác xử lý và biến đổi tín hiệu hay không.
f/ Dạng tín hiệu thành phần thông tin d- thừa trong quá trình chiết rút: 0 2 4 6 8 10 12 x 105 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3
Dang tin hieu thong tin du thua
B ie n do ti n hi eu
Hình 3.14: Biểu diễn thành phần thông tin d- thừa trên miền thời gian. Tại phần thu, bộ dò tách thích nghi sẽ so sánh dữ liệu nhận đ-ợc từ bộ tái tạo Header và tái tạo thông tin để xác định vị trí thành phần cực đại của tín hiệu nh- ở hình (3.14), sau đó tiến hành khôi phục lại chuỗi tin tại vị trí nghi ngờ đó.
Phần tiếp theo trong nội dung đồ án sẽ đánh giá hiệu quả của mô hình đề xuất đối với các phép chuyển đổi định dạng âm thanh, biến đổi D/A và A/D, chèn thêm nhiễu, cuối cùng là so sánh với các ph-ơng pháp giấu tin khác.
3.5 Đánh giá tính bền vững của mô hình:
3.5.1 Chuyển đổi định dạng dữ liệu Wav <---> Mp3:
Thực hiện chuyển đổi Lmid.Wav (đã nhúng tin) thành Lmid.Mp3 bằng phần mềm hỗ trợ Herosolf 2001 [21] với các tham số sau:
Chuẩn nén .Mp3: FS = 44100 Hz, BITS = 16, Stereo, Layer 3.
Tiến hành kiểm tra độ dịch vị trí của chuỗi tin tr-ớc và sau khi chuyển đổi định dạng, kết quả đ-ợc trình bày ở phần phụ lục (3.5.1). Một
cách trực quan, biểu diễn tỉ lệ chiết rút thành công tin giấu của và dạng tín hiệu Lmid.Mp3 nh- hình d-ới đây:
0 5 10 15 20 25 30 35 60 70 80 90 100
So lan thu nghiem
Ti le c hi et ru t t ha nh c on g .Wav.Mp3 0 2 4 6 8 10 12 x 105 -1 -0.5 0 0.5 1
Dang tin hieu sau khi chuyen doi dinh dang
Hình 3.15: Kết quả chiết rút tin tr-ớc và sau khi chuyển đổi định dạng. Dựa vào kết quả thực nghiệm, ta có một số kết luận sau:
Nhìn chung, tỉ lệ chiết rút thành công tin giấu khi chuyển sang chuẩn nén Mp3 trung bình là 90%, nghĩa là bị giảm nhiều so với ban đầu (~100%). Bởi vì Mp3 là một chuẩn nén dung l-ợng rất cao (đến 70 %), cho nên nó sẽ lọc bỏ hầu hết các thành phần không quan trọng (tạp âm, bit ít quan trọng,…) và một phần vùng tin quan trọng (nh-ng không ảnh h-ởng đến chất l-ợng cảm thụ) để giảm bớt dung l-ợng tín hiệu. Do vậy, sẽ có một số vị trí bit tin bị dịch chuyển, khiến cho bộ dò tách không thể phát hiện đ-ợc. Kết quả là tỉ lệ chiết rút thành công tin mật bị giảm so với khi ch-a chuyển đổi định dạng.
Tuy nhiên, ta có thể nâng cao tỉ lệ chiết rút bằng cách giảm bớt số l-ợng bit tin giấu. Bit tin càng ít thì tỉ lệ chiết rút thành công càng cao. Khi đó, ta sẽ chọn đ-ợc những vị trí nhúng tin bền vững đối với các phép chuyển đổi định dạng. Điều này chứng tỏ rằng luôn luôn phải dung hoà dung l-ợng bit đem nhúng và tính bền vững khi thiết kế một mô hình giấu tin nào đó.
3.5.2 Biến đổi A/D và D/A:
Bằng cách sử dụng Card âm thanh của 2 máy vi tính cá nhân để biến đổi tệp audio từ dạng số sang dạng t-ơng tự và ng-ợc lại nh- hình 3.18:
Hình 3.16: Mô hình biến đổi D/A và A/D.
Tiến hành 35 lần thử nghiệm nh- vậy, ứng với mỗi lần ghi lại tỉ lệ chiết rút thành công tin giấu và độ dịch vị trí của chuỗi tin tr-ớc và sau khi biến đổi. Kết quả đ-ợc biểu diễn theo hình (3.17) và phụ lục 3.5.2
0 5 10 15 20 25 30 35
60 80 100
So lan thu nghiem
T i l e ch ie t ru t th an h co ng
Truoc khi bien doi Sau khi bien doi
0 2 4 6 8 10 12 x 105 -1 -0.5 0 0.5 1
Dang tin hieu sau khi bien doi A/D va D/A
Hình 3.17: Kết quả chiết rút tin tr-ớc và sau khi biến đổi A/D & D/A Căn cứ vào kết quả thực nghiệm, ta có một số nhận xét sau:
Tỉ lệ chiết rút thành công tin giấu sau khi biến đổi D/A và A/D t-ơng đối cao, tuy nhiên, vẫn có những tr-ờng hợp hoàn toàn không khôi phục đ-ợc chuỗi tin giấu. Một phần do sử dụng 2 Card âm thanh máy vi tính khác nhau, nên các phép xử lý tín hiệu cũng khác nhau. Mặt khác, do thuật
toán giấu tin xây dựng trên phần mềm mô phỏng MATLAB, tín hiệu đầu vào đ-ợc lý t-ởng hoá, nên ch-a tính đến các khả năng xảy ra trong thực tế. Để nâng cao tính bền vững của mô hình giấu tin đối với phép biến đổi A/D & D/A, ta bắt buộc phải xét đến b-ớc l-ợng tử hoá tín hiệu. Do vậy, nếu sử dụng thêm ph-ơng pháp điều chế l-ợng tử hoá chỉ mục QIM sẽ cho tỉ lệ chiết rút thành công tin giấu cao hơn.
3.5.3 Các thao tác với nhiễu:
Thông qua phần mềm hỗ trợ xử lý âm thanh GoldWave, tôi tiến hành các thao tác lọc bỏ, chèn thêm nhiễu vào tệp Lmid.Wav (đã nhúng tin). Tuy nhiên, các thao tác này không đ-ợc làm ảnh h-ởng đến chất l-ợng cảm thụ âm thanh. Sau đó ghi lại tỉ lệ chiết rút thành công tin mật và độ dịch vị trí bit tin nhúng. Kết quả đ-ợc biểu diễn theo hình (3.18) và phần phụ lục 3.5.3
0 5 10 15 20 25 30 35
85 90 95 100
So lan thu nghiem
T i l e ch ie t ru t th an h co ng
Truoc khi xu ly nhieu Sau khi xu ly nhieu
0 2 4 6 8 10 12 x 105 -1 -0.5 0 0.5 1
Dang tin hieu truoc va sau khi xu ly nhieu
Hình 3.18: Tỉ lệ chiết rút tin mật tr-ớc và sau khi xử lý nhiễu. Dựa vào kết quả thực nghiệm, ta có một số nhận xét sau:
Đối với các thao tác xử lý nhiễu, ph-ơng pháp này tỏ ra khá bền vững, tỉ lệ chiết rút thành công tin giấu thấp nhất là 90% trong tr-ờng hợp chèn nhiễu xấu nhất (bắt đầu làm thay đổi chất l-ợng cảm thụ). Các thành
phần nhiễu bao gồm: nhiễu xuất hiện trên kênh truyền và nhiễu sinh ra trong phép xử lý tín hiệu. Do mô hình sử dụng kỹ thuật trải phổ nên tính bền vững đ-ợc nâng cao đối với nhiễu. Tuy nhiên, trong thực tế, nhiễu xuất hiện rất ngẫu nhiên và mức độ tác động mạnh, yếu khác nhau. Để đánh giá chính xác hơn nữa, ta cần đ-a thêm vào mô hình một số thành phần khác nh-: phadinh kênh, xuyên nhiễu do truyền đa tia,…sau đó xây dựng biểu đồ BER. Bên cạnh đó, ta cũng có thể nâng cao hiệu quả hơn nữa của mô hình bằng cách mã hoá kênh, sử dụng máy thu RAKE.
3.5.4 So sánh với các ph-ơng pháp giấu tin khác:
Tiến hành so sánh mô hình đề xuất với một số ph-ơng pháp khác sau khi xử lý tín hiệu đánh dấu (tệp Lmid.Wav đã nhúng tin). Các ph-ơng pháp so sánh là Hide4PGP [17], Audio watermarking [22] và AudioMark [18]. • Hide4PGP: sử dụng ph-ơng pháp thay thế bit ít quan trọng nhất LSB để giấu tin.
• Audio watermarking là ch-ơng trình giấu tin trong tệp audio nén Wav do hai tác giả D. Kirovski và H.S. Malvar của Phòng nghiên cứu hãng Mircosoft phát triển. Ch-ơng trình này sử dụng ph-ơng pháp trải phổ để giấu tin, tuy nhiên dung l-ợng tin giấu không cao.
• AudioMark (bản demo), đây là phần mềm th-ơng mại trong lĩnh vực bảo vệ bản quyền âm nhạc của hãng AlphaTech. Số l-ợng bit đem giấu trong phiên bản demo này là 48 bit (6 ký tự).
Do các ph-ơng pháp giấu tin trên đều giới hạn số l-ợng bit nhúng, cho nên đồ án chọn chuỗi tin giấu dài 48 bit (6 ký tự). Thực hiện nhúng chuỗi tin này vào một bộ dữ liệu kiểm tra audio chuẩn [17] gồm 10 tập tin, tần số lấy mẫu là 44100 Hz, stereo, số bit mẫu là 16 bit. Đây là bộ dữ liệu miễn phí, đ-ợc nhiều ng-ời sử dụng. Ngoài ra, nếu không ngại về tài chính, ta có thể tham khảo bộ dữ liệu của JASRAC (Hiệp hội bảo vệ bản quyền tác giả, nhà sáng tác và các nhà xuất bản của Nhật). Tổ chức này đã hoàn thành
các dự án về đánh giá và chứng thực các công nghệ giấu tin trên tín hiệu số, bao gồm tiêu chuẩn STEP2000 và STEP2001. Các tiêu chuẩn này đã đ-ợc chứng thực bởi 5 công ty hàng đầu là: IBM, Blue Spike Inc (Mỹ), Sigum (Anh), MarkAny Inc (Hàn Quốc), Victor Co. Ltd (Nhật).
Chuỗi tin giấu trong tr-ờng hợp này là “HVKTQS”.
Ta quy -ớc cách tính tỉ lệ chiết rút tin giấu thành công nh- sau:
• Nếu khôi phục đ-ợc 90% tổng số bit tin đã giấu thì ta coi nh- khôi phục đ-ợc hoàn toàn chuỗi tin.
• Tỉ lệ chiết rút thành công cho một bộ dữ liệu kiểm tra là tỉ số giữa các tệp audio đã chiết rút thành công với tổng số l-ợng các tệp audio có trong bộ dữ liệu này.
Kết quả thực nghiệm:
a/ Tr-ớc khi xử lý, biến đổi tín hiệu: Trải phổ + mô hình giả lập thính giác Hide 4PGP Audio watermarking AudioMark Bass47_1.wav 100% 100% 100% 100% Frer07_1.wav 100% 100% 100% 100% Gspi35_1.wav 100% 100% 100% 100% Gspi35_2.wav 100% 100% 100% 100% Harp40_1.wav 100% 100% 100% 100% Horn23_2.wav 100% 100% 100% 100% Quar48_1.wav 100% 100% 100% 100% Sopr44_1.wav 100% 100% 100% 100% Trpt21_2.wav 100% 100% 100% 100% Vioo10_2.wav 100% 100% 100% 100%
Các kết quả trong bảng 3.4.4 (a) cho ta nhận xét rằng nếu không xảy ra các biến đổi tín hiệu nào trong thực tế thì hoàn toàn khôi phục lại 100% tin mật đã giấu. Trong điều kiện “lý t-ởng” trên, ph-ơng pháp Hide4PGP cho phép nhúng một l-ợng tin rất lớn, khoảng 1/3 dung l-ợng tệp audio gốc. Sau đó đến ph-ơng pháp trải phổ kết hợp với mô hình thính giác, Audio watermarking, và cuối cùng, AudioMark (bản demo) chỉ cho nhúng một l-ợng tin tối đa là 48 bit.
b/ Sau khi tiến hành xử lý, biến đổi tín hiệu: Trải phổ + mô hình giả lập thính giác Hide 4PGP Audio watermarking AudioMark Đổi tần số lấy mẫu
44,1kHz32kHz 90% 10% 100% 90% Đổi định dạng (Wav--->Mp3) 90% 0% 90% 100% Chèn nhiễu 100% 10% 90% 90% Lọc thông thấp 90% 30% 90% 90% Lọc thông cao 90% 20% 90% 90%
Tạo tiếng vang 100% 20% 100% 100%