Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn thạc sĩ ngành hệ thống thông tin với đề tài: Một số kĩ thuật giấu tin trong âm thanh số, cho các bạn làm luận văn tham khảo
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
Luận văn: Một số kĩ thuật giấu tin trong âm thanh số, HAY
1. ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
HUỲNH BÁ DIỆU
MỘT SỐ KỸ THUẬT GIẤU TIN
TRONG ÂM THANH SỐ
LUẬN ÁN TIẾN SĨ HỆ THỐNG THÔNG TIN
Hà Nội – Năm 2017
2. ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
HUỲNH BÁ DIỆU
MỘT SỐ KỸ THUẬT GIẤU TIN
TRONG ÂM THANH SỐ
Chuyên ngành: HỆ THỐNG THÔNG TIN
Mã số: 62 48 01 04
LUẬN ÁN TIẾN SĨ HỆ THỐNG THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS. TSKH. NGUYỄN XUÂN HUY
Hà Nội – Năm 2017
3. i
Lời cam đoan
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi. Các kết quả được
viết chung với các tác giả khác đều được sự đồng ý của đồng tác giả trước khi đưa
vào luận án. Các kết quả nêu trong luận án là trung thực và chưa từng được ai công
bố trong các công trình nào khác.
Tác giả
Huỳnh Bá Diệu
4. ii
Lời cảm ơn
Luận án được thực hiện tại Trường Đại học Công nghệ - Đại học Quốc Gia Hà
Nội dưới sự hướng dẫn của PGS.TSKH. Nguyễn Xuân Huy.
Tôi xin bày tỏ lòng biết ơn sâu sắc đến PGS.TSKH. Nguyễn Xuân Huy đã có
những định hướng giúp tôi thành công trong công việc nghiên cứu. Thầy cũng động
viên chỉ bảo cho tôi vượt qua những khó khăn và cho tôi nhiều kiến thức quý báu về
nghiên cứu khoa học. Nhờ sự chỉ bảo của Thầy, tôi mới có thể hoàn thành luận án.
Tôi xin gửi lời cảm ơn sâu sắc đến ơn PGS.TS. Trịnh Nhật Tiến, PGS.TS. Hà
Quang Thụy, PGS.TS. Nguyễn Ngọc Hóa cùng các Thầy Cô ở Bộ môn Các Hệ thống
thông tin, khoa Công nghệ thông tin Trường Đại học Công nghệ, nơi tôi học tập, đã
tạo điều kiện thuận lợi và hỗ trợ cho tôi trong quá trình làm nghiên cứu sinh.
Tôi cũng xin cảm ơn PGS.TS. Phạm Văn Ất đã góp ý để tôi điều chỉnh và hoàn
thành phần nội dung của luận án.
Đặc biệt, tôi xin chân thành cảm ơn Lãnh đạo Trường Đại học Duy Tân đã hỗ
trợ cho tôi kinh phí, tạo điều kiện về thời gian trong quá trình học tập và nghiên cứu.
Cuối cùng, tôi xin gửi lời cảm ơn sâu sắc đến những người thân trong gia đình,
đã cho tôi điểm tựa vững chắc, động viên và nhắc nhở tôi hoàn thành luận án.
5. iii
MỤC LỤC
MỞ ĐẦU ...............................................................................................................................1
Chương 1.GIẤU THÔNG TIN VÀ GIẤU TIN TRONG ÂM THANH..................7
1.1. Giấu thông tin...................................................................................................7
1.1.1. Lịch sử giấu thông tin..............................................................................7
1.1.2. Các thành phần của hệ giấu tin................................................................7
1.1.3. Các yêu cầu của hệ giấu tin .....................................................................8
1.1.4. Phân loại giấu tin ...................................................................................10
1.1.5. Tấn công hệ thống giấu tin ....................................................................11
1.1.6. Các ứng dụng của giấu tin .....................................................................12
1.2. Giấu tin trong âm thanh số .............................................................................13
1.2.1. Ngưỡng nghe .........................................................................................14
1.2.2. Hiện tượng che khuất.............................................................................14
1.2.3. Âm thanh và các đặc tính của âm thanh ................................................16
1.2.4. Biểu diễn âm thanh số............................................................................17
1.2.5. Các định dạng âm thanh phổ biến .........................................................19
1.2.6. Một số chương trình giấu tin trên âm thanh ..........................................20
Tổng kết chương 1 ..................................................................................................20
Chương 2.PHƯƠNG PHÁP GIẤU TIN TRONG ÂM THANH ............................22
2.1. Các kỹ thuật bổ trợ cho giấu tin .....................................................................22
2.1.1. Các phép biến đổi từ miền thời gian sang miền tần số..........................22
2.1.2. Xáo trộn dữ liệu mật..............................................................................24
2.1.3. Sinh chuỗi giả ngẫu nhiên......................................................................26
2.2. Đánh giá các phương pháp giấu tin trong âm thanh.......................................27
2.2.1. Đánh giá bằng các độ đo........................................................................27
2.2.2. Đánh giá bằng các phần mềm phát hiện tin...........................................27
2.2.3. Đánh giá bằng bảng đánh giá ODG (Object Difference Grade) ...........28
2.3. Phương pháp giấu tin trong âm thanh ............................................................28
2.3.1. Phương pháp điều chỉnh bit ít quan trọng nhất (LSB coding)...............28
2.3.2. Phương pháp chẵn lẻ (parity coding).....................................................29
2.3.3. Phương pháp mã hoá pha (phase coding)..............................................30
2.3.4. Phương pháp mã hoá tiếng vọng (echo coding) ....................................33
2.3.5. Phương pháp trải phổ.............................................................................35
2.3.6. Phương pháp điều chỉnh biên độ ...........................................................37
2.3.7. Phương pháp lượng tử hoá (quantization).............................................38
6. iv
2.3.8. Phương pháp điều chế tỉ lệ thời gian .....................................................39
2.3.9. Phương pháp giấu dựa vào Patchwork ..................................................39
2.3.10. Phương pháp dựa vào các đặc trưng nổi bật ...................................41
Tổng kết chương 2 ..................................................................................................42
Chương 3.MỘT SỐ THUẬT TOÁN GIẤU TIN TRÊN MIỀN THỜI GIAN......43
3.1. Thuật toán giấu tin kết hợp mã sửa lỗi Hamming..........................................43
3.1.1. Mã Hamming.........................................................................................44
3.1.2. Quá trình giấu tin...................................................................................45
3.1.3. Quá trình giải tin và xác thực tin giấu ...................................................46
3.1.4. Kết quả thử nghiệm và đánh giá............................................................47
3.2. Thuật toán giấu điều chỉnh giá trị nhóm bit ...................................................49
3.2.1. Sinh chuỗi xác định mẫu dữ liệu và vị trí trên mẫu...............................49
3.2.2. Điều chỉnh độ lệch bit............................................................................50
3.2.3. Thuật toán giấu tin theo phương pháp điều chỉnh giá trị nhóm bit .......51
3.2.4. Quá trình giải tin theo phương pháp điều chỉnh giá trị nhóm bit ..........53
3.2.5. Đánh giá phương pháp giấu tin..............................................................53
3.3. Thuật toán giấu bằng điều chỉnh 2 mẫu trong một đoạn chứa 25 mẫu ..........56
3.3.1. Xáo trộn dữ liệu.....................................................................................56
3.3.2. Thuật toán giấu 4 bit trong khối 25 mẫu dữ liệu ...................................57
3.3.3. Thuật toán giấu tin.................................................................................58
3.3.4. Thuật toán giải tin..................................................................................59
3.3.5. Kết quả thử nghiệm và đánh giá............................................................62
3.4. Thuật toán điều chỉnh 1 bit trong khối để giấu 8 bit dữ liệu..........................64
3.4.1. Xáo trộn dữ liệu bằng phương pháp hoán vị .........................................64
3.4.2. Tính tổng XOR của đoạn.......................................................................65
3.4.3. Thuật toán giấu một byte dữ liệu vào trong khối 256 mẫu....................68
3.4.4. Thuật toán giấu tin.................................................................................69
3.4.5. Thuật toán giải tin..................................................................................69
3.4.6. Kết quả thử nghiệm và đánh giá............................................................70
3.5. Thuật toán giấu điều chỉnh tiếng vọng ...........................................................72
3.5.1. Thuật toán giấu của Rios Chavez ..........................................................72
3.5.2. Kỹ thuật điều chỉnh tiếng vọng..............................................................74
3.5.3. Kết quả thử nghiệm và đánh giá............................................................75
Tổng kết chương 3 ..................................................................................................77
Chương 4.MỘT SỐ THUẬT TOÁN GIẤU TIN TRÊN MIỀN BIẾN ĐỔI..........78
4.1. Thuật toán điều chỉnh các hệ số trên miền biến đổi Fourier ..........................78
7. v
4.1.1. Điều chỉnh giá trị trong miền tần số ......................................................78
4.1.2. Thuật toán điều chỉnh mẫu để giấu một bit ...........................................80
4.1.3. Thuật toán giấu ......................................................................................81
4.1.4. Thuật toán lấy 1 bit mật từ 1 mẫu..........................................................82
4.1.5. Thuật toán giải tin..................................................................................82
4.1.6. Kết quả thử nghiệm và đánh giá............................................................83
4.2. Thuật toán giấu điều chỉnh hệ số biến đổi wavelet ........................................86
4.2.1. Thuật toán giấu 1 bit..............................................................................86
4.2.2. Thuật toán trích 1 bit trong đoạn ...........................................................87
4.2.3. Thuật toán giấu tin.................................................................................87
4.2.4. Thuật toán trích tin.................................................................................88
4.2.5. Kết quả thực nghiệm và đánh giá ..........................................................88
Tổng kết chương 4 ..................................................................................................91
KẾT LUẬN ..........................................................................................................................91
DANH MỤC TÀI LIỆU THAM KHẢO .......................................................................94
PHỤ LỤC ...........................................................................................................................101
8. vi
Danh mục các ký hiệu và chữ viết tắt
A/D Analog to Digital converter
AAC Advanced Audio Coding
BPSK Binary Phase Shift Keying
CDMA Code-Division Multiple Access
D/A Digital-to-Analog converter
DFT Discrete Fourier transform
DSSS Direct Sequence Spread Spectrum
DWT Discrete Wavelet Transform
ECC Error Corecttion Code
FFT Fast Fourier Transform
HAS Human Auditory System
HVS Human Visual System
IDWT Inverse Discrete Wavelet Transform
IFFT Inverse Fast Fourier Transform
ITU International Telecommunication Union
LSB Least Significant Bit
MCPT Modify Chen-Pan-Tseng scheme
MPEG Moving Picture Experts Group
MPS Modify Patchwork Scheme
MSE Mean Squared Error
NCC Normalized Cross Correlation
ODG Objective Difference Grade
PCM Pulse Code Modulation
RIFF Resource Interchange File Format
SDMI Secure Digital Music Initiative
SNR Signal –to- Noise Ratio
SS Spread Spectrum
9. vii
Danh mục các bảng
Bảng 1.1. Một số định dạng tệp âm thanh trên máy tính .....................................19
Bảng 1.2. Bảng một số phần mềm giấu tin trong âm thanh .................................20
Bảng 2.1. Chu kỳ lặp lại của phép biến đổi tương ứng với kích thước N ............25
Bảng 2.2. Các tiêu chí đánh giá theo thang ODG................................................28
Bảng 3.1. Giá trị SNR khi thực hiện giấu kết hợp mã Hamming .........................47
Bảng 3.2. Phát hiện thay đổi tin mật trên tệp mang tin........................................48
Bảng 3.3. Bảng giá trị SNR khi giấu tin theo phương pháp điều chỉnh nhóm bit55
Bảng 3.4. Bảng giá trị SNR khi giấu tin vào trong các tệp theo kỹ thuật MCPT.63
Bảng 3.5. Bảng giá trị SNR khi giấu tin theo thuật toán điều chỉnh một bit........71
Bảng 3.6. Bảng giá trị SNR khi thêm tiếng vọng để giấu tin................................76
Bảng 4.1. Giá trị các mẫu trước và sau khi giấu các bit......................................82
Bảng 4.2. Tỉ lệ bit sai khi tấn công thêm nhiễu ....................................................84
Bảng 4.3. Bảng giá trị SNR khi điều chỉnh biên độ để giấu tin............................85
Bảng 4.4. Bảng giá trị SNR và NCC khi giấu tin .................................................89
Bảng 4.5. Bảng giá trị NCC khi thêm nhiễu trắng ...............................................90
Bảng 4.6. Bảng giá trị NCC khi thêm nhiễu hạt tiêu và nhiễu đốm .....................90
10. viii
Danh mục các hình vẽ, đồ thị
Hình 1.1. Sơ đồ của hệ giấu tin...............................................................................8
Hình 1.2. Mối quan hệ giữa ba yếu tố chất lượng – dung lượng – bền vững.......10
Hình 1.3. Phân loại giấu tin dựa vào mục đích ứng dụng ....................................10
Hình 1.4. Hệ thống thính giác của con người [66] ...............................................13
Hình 1.5. Dải tần của âm thanh ............................................................................14
Hình 1.6 Ngưỡng che của tín hiệu âm thanh .......................................................15
Hình 1.7. Che khuất âm thanh trên miền tần số [74]............................................15
Hình 1.8. Che khuất âm thanh trên miền thời gian [74].......................................15
Hình 1.9. Kỹ thuật làm giảm hao hụt tín hiệu trên đường truyền [80].................17
Hình 1.10. Chuyển âm thanh dạng tương sang dạng số .......................................18
Hình 1.11. Lượng tử hoá và biểu diễn dạng số tín hiệu tương tự [80].................18
Hình 2.1. Phân giải tín hiệu thành 2 thành phần xấp xỉ và chi tiết.......................23
Hình 2.2. Tín hiệu gốc và tín hiệu đã loại bỏ thành phần D.................................24
Hình 2.3. Ảnh gốc và sau khi thực hiện chuyển đổi.............................................25
Hình 2.4. Điều chỉnh bit thấp nhất của mẫu để giấu bit 1 ....................................29
Hình 2.5. Điều chỉnh mẫu để giấu bit 1 trong khối theo phương pháp chẵn lẻ....30
Hình 2.6. Sự dịch chuyển pha của tín hiệu...........................................................31
Hình 2.7. Tín hiệu gốc và tín hiệu sau khi dịch chuyển pha 𝜋/2.........................32
Hình 2.8. Hiện tượng không liên tục về pha.........................................................33
Hình 2.9. Các thành phần trong tiếng vọng của tín hiệu [32]...............................33
Hình 2.10. Xử lý (lọc) mỗi khối để giải tin trong kỹ thuật trải phổ .....................36
Hình 2.11. Biên độ và năng lượng của tín hiệu [32] ............................................37
Hình 2.12. Sơ đồ điều chỉnh giá trị [32] ...............................................................38
Hình 2.13. Điều chỉnh độ dốc để giấu thông tin [32] ...........................................39
Hình 2.14. So sánh giá trị trung bình của tín hiệu không có và có giấu tin. ........40
Hình 2.15. Giá trị trung bình của tín hiệu có và không có giấu tin theo MPA.....41
Hình 3.1. Minh hoạ mã Hamming với 4 bit dữ liệu và 3 bit kiểm tra chẵn lẻ......44
Hình 3.2. Ma trận sinh và ma trận kiểm tra của mã Hamming (7, 4)...................44
11. ix
Hình 3.3. Dữ liệu âm thanh gốc và dữ liệu có chứa tin mật.................................48
Hình 3.4. Độ sai khác khi điều chỉnh bit thứ 3 của mẫu dữ liệu ..........................50
Hình 3.5. Độ sai khác khi sử dụng kỹ thuật điều chỉnh các bit thấp hơn.............51
Hình 3.6. Đoạn dữ liệu tệp âm thanh gốc (trên) và tệp có chứa tin mật (dưới)....55
Hình 3.7. Minh hoạ kỹ thuật padding...................................................................56
Hình 3.8. Vị trí các byte sau khi xáo trộn.............................................................57
Hình 3.9. Sơ đồ giấu tin........................................................................................58
Hình 3.10. Ma trận F và A tương ứng từ các mẫu dữ liệu....................................60
Hình 3.11. Kết quả XOR 4 cột đầu tiên của từng hàng........................................60
Hình 3.12. Kết quả XOR 4 dòng đầu tiên của từng cột........................................60
Hình 3.13. Kết quả XOR của chuỗi C và chuỗi R................................................60
Hình 3.14. Kết quả giấu 4 bit 0110 trong khối F..................................................61
Hình 3.15. Kết quả giấu 4 bit 0111 trong khối F..................................................61
Hình 3.16. Kết quả giấu 4 bit 1100 trong khối F..................................................61
Hình 3.17. Kết quả giấu 4 bit 1101 trong khối F..................................................62
Hình 3.18. Ảnh gốc và ảnh sau khi chuyển đổi để giấu tin..................................62
Hình 3.19. Tín hiệu âm thanh trước (trên) và sau khi giấu tin (dưới) ..................62
Hình 3.20. Sử dụng ký tự bù cho chuỗi tin mật....................................................64
Hình 3.21. Chuỗi tin gốc và chuỗi sau khi hoán vị ..............................................65
Hình 3.22. Khôi phục lại chuỗi gốc từ chuỗi hoán vị...........................................65
Hình 3.23. Các giá trị của đoạn âm thanh gồm 256 mẫu .....................................66
Hình 3.24. Giá trị của dãy Q tương ứng với các mẫu...........................................67
Hình 3.25. Giá trị XOR_sum của dãy Q qua các bước tính .................................67
Hình 3.26. Giá trị mới của dãy S ..........................................................................68
Hình 3.27. Sơ đồ giấu tin dùng XOR_sum của khối............................................69
Hình 3.28. Sóng, phổ của âm thanh trước (trái) và sau khi giấu (phải) ...............70
Hình 3.29. Biên độ của âm thanh gốc và âm thanh được thêm echo ...................73
Hình 3.30. Cepstrum của âm thanh gốc và âm thanh được thêm tiếng vọng.......73
Hình 3.31. Phổ biên độ một đoạn của âm thanh trước và sau khi giấu ................76
12. x
Hình 4.1. Biểu diễn số phức trong hệ toạ độ cực..................................................79
Hình 4.2. Điều chỉnh giá trị để giấu 1 bit .............................................................80
Hình 4.3. Biên độ đoạn đầu tiên của tệp mang tin................................................83
Hình 4.4. Biên độ của tệp gốc và tệp mang tin.....................................................84
Hình 4.5. Ảnh kết quả thu được khi giải tin tương ứng với các tỉ lệ gây nhiễu ...84
Hình 4.6. Âm thanh gốc và âm thanh chứa tin giấu .............................................89
Hình 4.7. Ảnh được giấu và ảnh thu được khi chịu các tấn công thêm nhiễu......90
13. 1
MỞ ĐẦU
Thông tin số thể hiện rõ những ưu điểm vượt trội, như dễ dàng lưu trữ, sao
chép, chuyển tải, khôi phục và tăng cường chất lượng thông tin. Cùng với đó là sự
phát triển của các thiết bị số, cơ sở hạ tầng và mạng internet, làm cho chúng ta rất dễ
dàng tìm kiếm, sao chép và trao đổi thông tin. Bên cạnh những tiện ích mà thông tin
số và mạng internet mang lại cũng nảy sinh nhiều vấn đề mới, thách thức mới đòi hỏi
chúng ta phải nghiên cứu và giải quyết. Đó là trình trạng xâm nhập trái phép dữ liệu,
lấy cắp, xuyên tạc thông tin, vi phạm và tranh chấp bản quyền các dữ liệu số [53].
Những vấn nạn, thách thức đó không chỉ riêng cho quốc gia, cá nhân, công ty hay
doanh nghiệp nào mà là của tất cả mọi người sống trong thời đại công nghệ số.
Ở Việt Nam, nhiều văn bản pháp luật đã được Quốc hội ban hành nhằm đảm
bảo chủ quyền số, làm chủ không gian mạng, góp phần bảo đảm quốc phòng, an ninh
đất nước. Một số luật tiêu biểu như Luật an ninh quốc gia số 32/2004/QH11 được
Quốc hội thông qua ngày 03/12/2004; Luật Giao dịch điện tử số 51/2005/QH11 được
Quốc hội thông qua ngày 29/11/2005; Luật Công nghệ thông tin số 67/2006/QH11
được Quốc hội thông qua ngày 29/6/2006; Luật an toàn thông tin mạng đã được Quốc
hội thông qua ngày 19/11/2015 và có hiệu lực từ ngày 1/7/2016...Thủ tướng Chính
phủ cũng ban hành quyết định số 63/QĐ-TTg ngày 13/01/2010 về việc phê duyệt Quy
hoạch phát triển an toàn thông tin số quốc gia đến năm 2020. Ngoài hệ thống luật,
văn bản pháp qui chúng ta cần phải có những biện pháp kỹ thuật để bảo mật dữ liệu,
đảm bảo an toàn thông tin.
Bảo mật dữ liệu (data security) có nghĩa là bảo vệ dữ liệu trước các hành vi
phá hoại hay các hành vi không mong muốn khác từ những người không được quyền.
Các giải pháp hay được dùng để bảo mật dữ liệu là mã hoá đĩa (disk encryption), sao
lưu (backup), sử dụng các thiết bị đăng nhập hệ thống, bảo mật đường truyền, che
giấu dữ liệu (data masking, gồm mật mã và giấu thông tin). Trong các giải pháp đó,
giải pháp che giấu dữ liệu được sử dụng nhiều.
Trong một thời gian dài, mã hóa dữ liệu được sử dụng như một giải pháp
chính để quyết vấn đề bảo mật thông tin. Mã hóa thực hiện chuyển đổi dữ liệu từ bản
14. 2
rõ sang một định dạng khác không thể đọc được, gọi là bản mã, để có thể ngăn cản
những truy cập bất hợp pháp khi trao đổi dữ liệu. Nhiều hệ mã khác nhau, bao gồm
hệ mật mã khóa đối xứng và hệ mật mã khóa công khai, đã được nghiên cứu và triển
khai rất hiệu quả trong thực tế như hệ mã DES, RSA.
Chúng ta còn có cách khác để bảo vệ thông tin, đó là thực hiện các giao dịch
ngầm bên trong các giao dịch công khai, gọi là giấu tin (data hiding) hay giấu thông
tin. Giấu tin là một kỹ thuật nhúng (giấu) một lượng thông tin số nào đó vào trong
một đối tượng dữ liệu số khác. Giấu tin khác mã hoá ở chỗ là giấu tin giấu đi sự hiện
diện của thông tin trong khi mã hoá giấu đi ý nghĩa của thông tin.
Giấu thông tin nhằm hai mục đích, một là bảo mật cho dữ liệu được đem giấu,
hai là bảo mật cho chính đối tượng được dùng để chứa tin. Hai khía cạnh khác nhau
này dẫn đến hai khuynh hướng kỹ thuật chủ yếu của giấu tin. Khuynh hướng thứ nhất
là giấu tin mật (steganography), tập trung vào các kỹ thuật giấu tin sao cho thông tin
giấu được nhiều và quan trọng là người thám tin khó phát hiện được một đối tượng
có chứa tin giấu bên trong hay không. Khuynh hướng thứ hai là thuỷ vân số
(watermarking), nghiên cứu cách thức đánh dấu đối tượng chứa nhằm khẳng định bản
quyền sở hữu hay phát hiện xuyên tạc thông tin. Nhiều kiểu dữ liệu số có thể được
chọn làm dữ liệu chứa cho bài toán giấu tin, như ảnh, video, âm thanh, văn bản, hay
các gói tin được truyền trong mạng.
Giấu tin là một chủ đề đã được nghiên cứu lâu dài nhưng luôn thời sự trên thế
giới. Nhiều cuốn sách về giấu tin, các kỹ thuật giấu tin trong nhiều kiểu dữ liệu khác
nhau đã được công bố, tiêu biểu là cuốn sách về Các kỹ thuật giấu thông tin dùng cho
giấu tin mật và thủy vân số [65] của các tác giả Stefan Katzenbeisser và Fabien A. P.
Petitcolas công bố năm 2000; cuốn sách về Các kỹ thuật thủy vân âm thanh, các kỹ
thuật thủy vân thông minh [32] của Hyoung Joong Kim và các cộng sự công bố năm
2004; cuốn sách về Các công nghệ và kỹ thuật thủy vân âm thanh số: Các ứng dụng
và các tiêu chuẩn [54] của tác giả Nedeljko Cvejic và Tapio Seppänen công bố năm
2008; cuốn sách về Bảo mật đa phương tiện: Các kỹ thuật giấu tin mật và thủy vân
số để bảo vệ sở hữu trí tuệ [19] của tác giả Chun-Shien Lu công bố năm 2005, cuốn
15. 3
sách về Thủy vân số và Giấu tin mật [33] của tác giả Ingemar J. Cox công bố năm
2008; cuốn sách về Các kỹ thuật tiên tiến các ứng dụng thủy vân đa phương tiện ảnh
âm thanh và video [8] của tác giả Ali Mohammad Al-Ha công bố năm 2010; hai cuốn
sách của tác giả Xing He về Các kỹ thuật thủy vân số trong âm thanh và Xử lý tín
hiệu, Mã hóa tri giác và Thủy vân âm thanh số công bố lần lượt vào các năm 2008 và
2011…Có nhiều hội thảo chuyên về giấu tin đã được tổ chức hằng năm, chẳng hạn
như "International Workshop on Digital-forensics and Watermarking" [82] đã được
tổ chức tới lần thứ 15 vào năm 2016 tại Trung Quốc. Tạp chí dành riêng cho giấu tin
là “Transactions on Data Hiding and Multimedia Security” [87] đã phát triển liên tục
từ năm 2006. Mặc dù đã có lịch sử lâu nhưng giấu tin hiện nay vẫn nhận được sự
quan tâm của cộng đồng nghiên cứu về giấu tin nói riêng và an toàn thông tin nói
chung, thể hiện qua các chủ đề tại các hội nghị quốc tế hằng năm, số lượng các bài
báo được trình bày tại các Hội nghị hằng năm và trên các Tạp chí khoa học. So với
giấu tin trong ảnh, số lượng bài báo công bố liên quan đến giấu tin trong âm thanh ít
hơn, nguyên nhân là do dữ liệu ảnh xuất hiện thường xuyên (trong các ứng dụng,
website) hơn so với âm thanh và do hệ thống thị giác con người ít nhạy hơn so với hệ
thống thính giác, do đó dễ khai thác để giấu tin. Đã có một số luận án thực hiện nghiên
cứu về giấu tin, như của giáo sư MinWu [52], và chuyên về giấu tin trong âm thanh
như của tác giả Nedeljko Cvejic [20].
Tương tự như giấu tin trong ảnh, giấu tin trong âm thanh có thể phân loại thành
giấu trực tiếp trên các mẫu dữ liệu âm thanh hoặc trên miền biến đổi. Trong [21, 22,
23, 69] trình bày các kỹ thuật sử dụng phương pháp điều chỉnh các bit ít quan trọng
của mẫu dữ liệu biểu diễn âm thanh để giấu tin. Trong [76] trình bày kỹ thuật giấu tin
sử dụng patchwork. Trong [72] trình bày thuật toán giấu dựa vào phân tích đặc trưng
của dữ liệu chứa. Một số nghiên cứu dựa vào đặc trưng không phân biệt được sự thay
đổi về pha của hệ thống thính giác con người để giấu tin, như trong các nghiên cứu
[55, 71]. Một số nghiên cứu giấu tin trong tệp âm thanh dựa vào kỹ thuật nén của
định dạng của tệp, như [59] áp dụng để giấu cho định dạng nén mp3, trong [60] áp
dụng để giấu cho định dạng PCM. So với miền thời gian, các thuật toán giấu trên
16. 4
miền tần số có độ bền vững cao hơn. Các nghiên cứu được trình bày trong [27, 41,
49, 50, 51] thực hiện giấu tin trên miền tần số, sử dụng phép biến đổi Fourier. Một
miền biến đổi khác cũng được dụng để giấu tin là miền biến đổi wavelet, được trình
bày trong các nghiên cứu [29, 75]. Một số phương pháp giấu sử dụng kỹ thuật trải
phổ tín hiệu trong ngành viễn thông để giấu tin như trong [26, 46, 45].
Về tình hình nghiên cứu trong nước, hiện đã có một số luận án tiến sĩ nghiên
cứu về lĩnh vực giấu tin. Luận án của tác giả Vũ Ba Đình [1] nghiên cứu về giấu tin
trong ảnh, cụ thể là bản đồ số. Luận án của tác giả Nguyễn Ngọc Hà [2], Nguyễn Văn
Tảo [5] nghiên cứu về giấu tin trong ảnh và các ứng dụng của giấu tin. Tác giả Nguyễn
Hải Thanh đã phát triển các thuật toán giấu tin trong ảnh và ứng dụng trong mã đàn
hồi [4]. Tác giả Lưu Thị Bích Hường trong luận án của mình đã nghiên cứu và phát
triển các kỹ thuật thủy vân trên cơ sở dữ liệu quan hệ [3]. Một số tác giả khác cũng
chọn đề tài nghiên cứu về lĩnh vực giấu tin trong ảnh làm đề tài luận án và đang trong
giai đoạn hoàn thành. Chủ đề giấu tin cũng đang được một số nhóm nghiên cứu tại
các trường đại học quan tâm, như nhóm nghiên cứu tại Đại học Khoa học tự nhiên
thành phố Hồ Chí Minh, nhóm nghiên cứu tại Đại học giao thông vận tải, nhóm
nghiên cứu tại Đại học Hải Phòng. Các luận án trong nước trước đây chủ yếu chọn
ảnh làm dữ liệu chứa, chưa có luận án nghiên cứu về lĩnh vực giấu tin trong âm thanh.
Giấu tin trong âm thanh cũng đã được một số tác giả khác nghiên cứu, tuy nhiên số
lượng các bài báo công bố bằng tiếng Việt trên các tạp chí khoa học và hội nghị, hội
thảo quốc gia vẫn còn ít. Mặc dù trên thế giới, các nghiên cứu về giấu tin trong dữ
liệu đa phương tiện nói chung và dữ liệu âm thanh nói riêng là không mới, nhưng đối
với chúng ta, việc nghiên cứu và nắm rõ các kỹ thuật giấu tin là cần thiết, giúp chúng
ta chủ động về mặt kỹ thuật và có những biện pháp để quản lý, theo dõi, phát hiện
trao đổi tin.
Hiện nay vẫn còn một số vấn đề về giấu tin trong âm thanh cần phải được
nghiên cứu và giải quyết. Thứ nhất là vấn đề về giấu tin sao cho ít làm thay đổi dữ
liệu chứa nhất. Vấn đề thứ hai là kiểm tra lại tin giấu bên trong có bị thay đổi, có thể
do chủ ý của người thám tin hay do nhiễu, hay không. Vấn đề tiếp theo là nghiên cứu
17. 5
cách giấu sao cho người thám tin không phát hiện được dữ liệu có chứa tin và rất khó
lấy được tin giấu nếu như không biết khóa. Vấn đề cuối cùng là nghiên cứu cách bảo
vệ tin giấu trong dữ liệu mang tin trước các tấn công hay giấu sao cho tin giấu bền
vững nhất có thể.
Trên cơ sở đó, luận án tập trung nghiên cứu theo hướng chọn dữ liệu chứa là
dữ liệu âm thanh và giấu tin nhằm mục đích bảo vệ tin mật.
Cụ thể, luận án tập trung nghiên cứu các vấn đề sau:
1) Nghiên cứu các phương pháp hỗ trợ việc không nhận tin sai trong quá trình
giải tin và các cách chọn các mẫu tín hiệu âm thanh không theo quy luật để
giấu các bit tin, làm cho người thám tin khó phát hiện tin.
2) Nghiên cứu và áp dụng các kỹ thuật điều chỉnh mẫu dữ liệu để giấu tin.
3) Trình bày một số cải tiến cho bài toán giấu tin trong âm thanh.
Với mục tiêu đặt ra như vậy, luận án đã đạt được một số kết quả, góp một phần
nhỏ vào lĩnh vực nghiên cứu giấu tin. Các kết quả chính của luận án như sau:
Đề xuất sử dụng mã hỗ trợ xác thực để tránh trường hợp nhận tin sai nếu tệp
chứa tin giấu bị tấn công làm thay đổi nội dung tin giấu, cách chọn mẫu dữ
liệu, vị trí bit trong mẫu dữ liệu cần điều chỉnh để thực hiện giấu tin, áp dụng
các phương pháp giấu tin trên dữ liệu đa phương tiện vào trường hợp cụ thể là
âm thanh. Trong kỹ thuật cũng đưa ra cách điều chỉnh các bit để sự sai khác
giữa các mẫu trên tệp gốc và tệp chứa tin giấu là ít nhất. Kết quả được đăng tải
trong Tạp chí Khoa học Tự nhiên và Công nghệ, Tạp chí Khoa học ĐHQG Hà
Nội năm 2009, 2013 và đăng tải trong kỷ yếu Hội nghị quốc tế IEEE SoCPaR
2013 và hội nghị quốc tế IEEE ATC 2014 tại Hà Nội.
Đề xuất cải tiến kỹ thuật giấu tin sử dụng tiếng vọng của một tác giả trước đó.
Kết quả nghiên cứu được trình bày và đăng tải trong kỷ yếu Hội nghị quốc tế
ICIEIS năm 2013 tại Malaysia.
Đề xuất hai phương pháp điều chỉnh mẫu dữ liệu trên miền tần số để giấu tin.
Phương pháp thứ nhất lựa chọn và điều chỉnh các hệ số trên miền tần số của
tín hiệu âm thanh, sử dụng phép biến đổi Fourier. Phương pháp thứ hai điều
18. 6
chỉnh giá trị trung bình của các đoạn dữ liệu, sử dụng phép biến đổi wavelet.
Kết quả nghiên cứu được đăng trong kỉ yếu hội nghị tại Hội nghị quốc tế IEEE
DICTAP năm 2014 tại Thái Lan và đã được đăng trên Tạp chí Khoa học Công
nghệ, Đại học Đà Nẵng năm 2016.
Bố cục của luận án bao gồm phần mở đầu, bốn chương nội dung, kết luận và
danh mục các tài liệu tham khảo. Chương 1 của luận án trình bày về một số khái niệm
cơ bản trong giấu tin, tính chất và ứng dụng của giấu tin. Trong chương này cũng
trình bày về cách biểu diễn, lưu trữ âm thanh số trên máy tính, đặc điểm và những
hạn chế của hệ thống thính giác của con người, là cơ sở có thể giấu tin vào trong âm
thanh. Chương 2 của luận án trình bày các phương pháp giấu tin cơ sở dùng để giấu
tin trong âm thanh cùng một số nhận xét được tác giả tổng hợp từ các tài liệu tham
khảo. Trong chương 2 cũng trình bày các kỹ thuật bổ trợ thường được dùng trong
giấu tin, một số độ đo dùng để đánh giá các kỹ thuật giấu tin. Các kỹ thuật bổ trợ và
các độ đo được trình bày trong chương 2 được sử dụng trong các chương tiếp theo
của luận án. Chương 3 trình bày về các phương pháp giấu tin trên miền thời gian. Nội
dung chương này được tổng hợp từ năm bài báo. Các phương pháp giấu tin trong
chương này được thực hiện bằng cách điều chỉnh một mẫu hoặc nhóm các mẫu biểu
diễn dữ liệu âm thanh. Đây là các phương pháp thích hợp cho ứng dụng giấu tin mật.
Chương 4 trình bày hai phương pháp giấu trên miền tần số, được tổng hợp từ hai bài
báo. So với các phương pháp giấu tin ở chương 3, hai phương pháp ở chương 4 có tỉ
lệ dữ liệu thấp hơn nhưng có thể chịu được một số tấn công cơ bản. Phương pháp thứ
nhất thực hiện trên miền tần số thực hiện phép biến đổi Fourier, cho phép giấu 8 bit
dữ liệu trong đoạn 512 mẫu. Phương pháp thứ hai thực hiện giấu dữ liệu trên miền
tần số sử dụng phép biến đổi wavelet, dựa vào giá trị trung bình của đoạn. Hai phương
này có thể được dùng để giấu tin mật, được dùng trong trường hợp dữ liệu mang tin
có thể phải chịu tấn công nhiễu. Phần kết luận của luận án trình bày những kết quả
đạt được, những hạn chế của luận án và hướng phát triển tiếp theo.
19. 7
Chương 1. GIẤU THÔNG TIN VÀ GIẤU TIN
TRONG ÂM THANH
Chương này của luận án trình bày những nội dung chung về giấu thông tin và
giấu tin trong âm thanh. Bên cạnh trình bày các yêu cầu và ứng dụng của giấu tin,
chương này cũng trình bày cách biểu diễn âm thanh số, các đặc trưng cơ bản của âm
thanh số, tính chất của hệ thống thính giác của con người, là cơ sở để có thể thực hiện
được giấu tin trong âm thanh.
1.1. Giấu thông tin
1.1.1. Lịch sử giấu thông tin
Từ giấu thông tin (steganography) bắt nguồn từ Hi Lạp và được sử dụng cho
tới ngày nay, có nghĩa là tài liệu được phủ (covered writing) [58]. Một câu chuyện về
thời Hy-Lạp cổ đại do Herodotus ghi lại kể về giấu thông tin. Demeratus, một người
Hy-Lạp, cần thông báo cho Sparta rằng Xerxes định xâm chiếm Hy-Lạp. Để tránh bị
phát hiện, Demeratus đã bóc lớp sáp ra khỏi các viên thuốc và khắc thông báo lên bề
mặt các viên thuốc này, sau đó bọc lại các viên thuốc bằng một lớp sáp mới. Bằng
cách này, những viên thuốc được để ngỏ và lọt qua mọi sự kiểm tra một cách dễ dàng.
Người Romans cổ đã dùng mực không màu để viết các thông báo bí mật giữa
những hàng văn tự thông thường. Khi bị hơ nóng, những dòng chữ được viết từ loại
mực này sẽ trở nên sẫm màu và có thể đọc được.
Công nghệ thông tin đã tạo ra những môi trường giấu tin mới vô cùng tiện lợi
và phong phú. Ta có thể giấu tin trong văn bản, ảnh, âm thanh, video, các tệp cơ sở
dữ liệu hoặc thậm chí trong các gói tin được truyền trên đường truyền mạng.
Ý tưởng về che giấu thông tin đã có từ rất lâu nhưng kỹ thuật này được dùng
chủ yếu trong quân đội và trong các cơ quan tình báo. Ngày nay giấu tin không chỉ
dùng cho mục đích an ninh, quân sự mà còn để phục vụ các mục đích tích cực như
bảo vệ bản quyền các tài liệu số, kiểm soát sao chép.
1.1.2. Các thành phần của hệ giấu tin
Một hệ giấu tin gồm có các thành phần chính sau đây:
20. 8
+ Thông điệp mật (secret message): có thể là văn bản, hình ảnh, âm thanh. Trong quá
trình giấu tin, chúng được chuyển thành chuỗi các bit.
+ Dữ liệu chủ hay môi trường sẽ chứa tin mật (host signal): dữ liệu có thể chọn làm
dữ liệu chủ là tệp ảnh, tệp âm thanh, tệp video hay tệp cơ sở dữ liệu, văn bản.
+ Khoá K: là khóa tham gia vào quá trình giấu tin để tăng tính bảo mật.
+ Dữ liệu mang tin hay môi trường đã chứa tin mật (stego signal).
Sơ đồ của một hệ giấu tin như sau :
Hình 1.1. Sơ đồ của hệ giấu tin
1.1.3. Các yêu cầu của hệ giấu tin
Có nhiều phương pháp giấu tin cho những kiểu dữ liệu khác nhau. Để đánh
giá chất lượng của một phương pháp giấu tin, người ta dựa vào một số tiêu chí sau:
1.1.3.1. Tính “vô hình”
Khi giấu tin vào trong các dữ liệu chủ sẽ làm thay đổi ít nhiều dữ liệu chủ. Nếu
phương pháp giấu tin tốt, sẽ làm cho thông tin mật trở nên “vô hình” trên dữ liệu
mang tin và người ta “khó có thể” nhận ra trong dữ liệu mang tin có chứa tin mật hay
không. Đối với phương pháp giấu tin trong ảnh, tính vô hình thể hiện ở việc không
nhìn thấy, không phân biệt được sự khác nhau giữa ảnh gốc và ảnh chứa tin giấu. Đối
với phương pháp giấu tin trong âm thanh, tính vô hình thể hiện ở chỗ không phân biệt
được sự khác nhau khi nghe tệp âm thanh gốc và tệp âm thanh chứa tin.
1.1.3.2. Khả năng chống giả mạo
Mục đích của “giấu tin” là để truyền đi thông tin mật. Nếu không thể do thám
tin mật, thì người thám tin cũng cố tìm cách làm sai lạc tin mật, làm giả mạo tin mật
Quá trình
Giấu tin
Quá trình
Giải tin
Khoá Khoá
Dữ liệu chủDữ liệu
mang tin
Môi trường
mạng
Thông điệp mật
Dữ liệu chủ
Thông điệp mật
21. 9
để gây bất lợi cho đối phương. Một phương pháp giấu tin tốt sẽ đảm bảo tin mật
không bị tấn công một cách có chủ đích trên cơ sở những hiểu biết đầy đủ về thuật
toán giấu tin (nhưng không biết khoá) và có tệp mang tin. Đối với lĩnh vực thủy vân
số thì khả năng chống giả mạo là đặc tính vô cùng quan trọng, vì có như vậy mới bảo
vệ được bản quyền, chứng minh tính pháp lý của sản phẩm (người khác không thể
hay rất khó có thể thay đổi thông tin bản quyền trên sản phẩm).
1.1.3.3. Tính bền vững
Sau khi tin được giấu vào đối tượng chứa, các tệp mang tin được truyền qua
các kênh công cộng và có thể phải qua hay chịu các biến đổi khác nhau, chẳng hạn
như phép lọc, thêm nhiễu, cắt bớt dữ liệu hay lấy mẫu lại. Tính bền vững thể hiện ở
sự nguyên vẹn, không thay đổi (hay thay đổi không đáng kể) của thông tin được giấu
sau những biến đổi như vậy.
1.1.3.4. Dung lượng tin giấu
Dung lượng tin giấu được tính bằng tỷ lệ của lượng tin cần giấu so với kích
thước đối tượng gốc. Các phương pháp giấu tin mật đều cố gắng giấu được càng nhiều
tin trong dữ liệu gốc càng tốt nhưng vẫn giữ được bí mật.
1.1.3.5. Độ phức tạp tính toán
“Độ phức tạp” của thuật toán giấu và giải tin cũng là một chỉ tiêu quan trọng
để đánh giá một phương pháp giấu tin. Chỉ tiêu này cho chúng ta biết “tài nguyên”
(thời gian và bộ nhớ) tốn bao nhiêu dùng cho một phương pháp giấu tin. Với người
có quyền trong hệ thống giấu tin thì thời gian thực hiện phải “nhanh”, nhưng với
người thám tin thì việc giải tin phải là bài toán “khó”.
Ba thuộc tính quan trọng mà một hệ giấu tin nào cũng mong muốn đạt cao
nhất, đó là chất lượng, số lượng và tính bền vững. Thuộc tính chất lượng yêu cầu sự
sai khác giữa dữ liệu gốc và dữ liệu mang tin càng ít càng tốt. Thuộc tính số lượng
yêu cầu giấu càng nhiều tin càng tốt. Thuộc tính bền vững yêu cầu khó thay đổi hay
xóa tin giấu trong dữ liệu mang tin. Tuy nhiên ba đặc tính này lại ảnh hưởng lẫn nhau,
khi đề cao một đặc tính này thì sẽ ảnh hưởng đến các đặc tính còn lại. Ví dụ, khi ta
muốn giấu nhiều tin hơn vào trong một ảnh thì ta phải thay đổi nhiều điểm ảnh hơn
22. 10
để giấu tin, dẫn đến chất lượng của ảnh chứa tin sẽ giảm hơn so với ảnh gốc. Các ứng
dụng thủy vân quan tâm nhiều đến thuộc tính bền vững trong khi ứng dụng giấu tin
mật quan tâm nhiều đến thuộc tính dung lượng. Mối quan hệ giữa ba thuộc tính thể
hiện như hình 1.2. Khi ta tăng dung lượng (số lượng bit) giấu thì ảnh hưởng đến chất
lượng tệp mang tin, hay khi tăng tính bền vững của tin giấu thì phải giảm dung lượng
giấu cũng như giảm chất lượng tệp mang tin.
Hình 1.2. Mối quan hệ giữa ba yếu tố chất lượng – dung lượng – bền vững
1.1.4. Phân loại giấu tin
Giấu tin có thể phân loại theo đặc trưng, tính chất và ứng dụng. Ta có thể phân
loại các kỹ thuật giấu tin theo kiểu tài liệu dùng làm dữ liệu chứa (văn bản, ảnh, âm
thanh, video..), theo miền xử lý (miền dữ liệu trực tiếp hay miền biến đổi), hay theo
mục đích giấu tin.
Hình 1.3. Phân loại giấu tin dựa vào mục đích ứng dụng
Chất lượng (quality)
Bền vững (robustness)
Dung lượng (capacity)
Infomation hiding
Giấu thông tin
Robust Copyright marking
Thuỷ vân bền vững
Imperceptible Watermarking
Thuỷ vân không nhìn thấy được
Steganography
Giấu tin mật
Watermarking
Thuỷ vân số
Fragile Watermarking
Thuỷ vân “dễ vỡ”
Visible Watermarking
Thuỷ vân có thể nhìn thấy được
23. 11
Nếu phân theo mục đích giấu tin thì ta có giấu tin mật và thủy vân số. Giấu tin
mật (steganography) là kỹ thuật nhúng “mẩu tin mật” vào “môi trường giấu tin” (môi
trường phủ). Trong quá trình giấu tin ta có thể dùng khoá (stego-key) để tăng tính bảo
mật. Trong giấu tin mật, khoá không phải dùng để mã hóa mẩu tin mà thường được
dùng để xác định vị trí “rải tin mật” vào môi trường giấu tin. Mục đích của giấu tin
mật là bảo vệ thông tin được giấu. Thuỷ vân số là kỹ thuật nhúng “dấu ấn số” vào
một “tài liệu số” nhằm chứng thực (đánh dấu, xác thực) nguồn gốc hay chủ sở hữu
của “tài liệu số” này. Như vậy mục đích của thuỷ vân số là bảo vệ môi trường giấu
tin, bằng cách biến tin giấu thành một thuộc tính của vật mang tin [33].
Các kỹ thuật giấu tin được trình bày trong luận án được phân loại theo miền
xử lý, bao gồm miền dữ liệu của âm thanh (miền thời gian) và miền biến đổi.
1.1.5. Tấn công hệ thống giấu tin
Tấn công một hệ giấu tin bao gồm các phương pháp để phát hiện, phá huỷ,
trích rút hay sửa đổi tin giấu trong dữ liệu mang. Việc nghiên cứu các biện pháp của
những người thám tin sẽ hữu ích cho việc thiết kế một hệ giấu tin tốt.
Việc tấn công được coi là thành công hay không tuỳ theo ứng dụng. Đối với
liên lạc bí mật, việc phát hiện và chứng minh được một đối tượng có chứa tin mật
được coi là thành công. Đối với bảo vệ bản quyền hay chống giả mạo, thì việc tấn
công được coi là thành công nếu không chỉ phát hiện ra thuỷ vân mà còn có thể phá
huỷ hay sửa đổi nó.
Các thuật toán tấn công hệ giấu tin cũng tương tự như các thuật toán tấn công
các hệ mã. Nếu như người thám tin có tệp gốc thì sẽ thực hiện so sánh từng bit với
tệp nghi ngờ chứa tin giấu để tìm thông tin mật. Đó là lý do tại sao những tệp quá phổ
biến (tệp âm thanh trong các CD hay các tệp ảnh trên Internet) thường không được
sử dụng làm đối tượng chứa. Một số tấn công thường gặp là phân tích tệp chứa tin để
tìm và/hoặc xóa tin, đối sánh với dữ liệu gốc để lấy hoặc thay thế tin mật, chuyển
định dạng, nén, thêm nhiễu để làm mất tin …Sức mạnh của một thuật toán giấu tin
phụ thuộc vào khả năng vượt qua các tấn công.
24. 12
1.1.6. Các ứng dụng của giấu tin
1.1.6.1. Liên lạc bí mật
Giấu tin có thể được sử dụng để liên lạc bí mật giữa người gửi và người nhận.
Nếu chúng ta dùng phương pháp mã hóa thì bản mã của tin mật có thể gây ra sự chú
ý cho người thám mã. Tuy nhiên nếu ta giấu tin mật vào trong môi trường nào đó rồi
gửi đi trên mạng máy tính sẽ ít gây ra sự chú ý hơn. Hiện nay người ta phối hợp đồng
thời nhiều giải pháp để truyền tin mật trên mạng công khai: Đầu tiên tin mật được
nén, sau đó sẽ thực hiện mã hóa và cuối cùng giấu bản mã vào trong môi trường chứa.
1.1.6.2. Bảo vệ bản quyền (copyright protection)
Đây là ứng dụng cơ bản nhất của kỹ thuật thuỷ vân số. Một thông tin nào đó
mang ý nghĩa quyền sở hữu tác giả sẽ được nhúng vào trong các sản phẩm. Việc
nhúng thuỷ vân cần phải đảm bảo không để lại một ảnh hưởng lớn nào đến việc cảm
nhận sản phẩm. Yêu cầu kỹ thuật đối với ứng dụng này là thuỷ vân phải tồn tại bền
vững cùng với sản phẩm, muốn bỏ thuỷ vân mà không được phép của người sở hữu
thì chỉ có cách phá huỷ sản phẩm.
1.1.6.3. Nhận thực hay phát hiện xuyên tạc thông tin (authentication and
tamper detection)
Đối với ứng dụng này, một tập các thông tin sẽ được giấu trong dữ liệu chứa
và sau đó được sử dụng để nhận biết xem dữ liệu chứa đó có bị thay đổi hay không.
Yêu cầu chung đối với ứng dụng này là khả năng giấu thông tin nhiều và thuỷ vân
không cần bền vững trước các phép xử lý trên đối tượng đã được giấu tin.
1.1.6.4. Ghi dấu vân tay (fingerprinting)
Mục tiêu của ghi dấu vân tay là để chuyển thông tin về người nhận sản phẩm
phương tiện số nhằm xác định đây là bản sao duy nhất của sản phẩm. Về mặt ý nghĩa,
ghi dấu vân tay tương tự như số xê ri của phần mềm. Mỗi một sản phẩm sẽ mang một
thuỷ vân riêng và được nhúng vào các bản copy khác nhau của thông tin gốc trước
khi chuyển cho nhiều người. Với những ứng dụng này thì yêu cầu là đảm bảo độ an
toàn cao cho các thuỷ vân, tránh sự xoá dấu vết trong khi phân phối.
25. 13
1.1.6.5. Gán nhãn (labeling)
Tiêu đề, chú giải và nhãn thời gian cũng như các minh hoạ khác có thể được
nhúng vào trong đối tượng chứa. Ví dụ ta có thể đính tên người lên ảnh hoặc đính tên
vùng địa phương lên bản đồ. Khi đó, nếu sao chép ảnh thì cũng sẽ sao chép cả các dữ
liệu nhúng trong nó. Và chỉ có chủ sở hữu của tác phẩm mới có thể tách ra và xem
các chú giải này. Gán nhãn cũng được sử dụng để nhúng các từ khoá vào trong các
đối tượng chứa để các động cơ tìm kiếm có thể tìm nhanh đối tượng.
1.1.6.6. Điều khiển sao chép (copy control)
Đối với các hệ thống phân phối dữ liệu đa phương tiện, một yêu cầu luôn đặt
ra là cần có kỹ thuật chống sao chép trái phép dữ liệu. Có thể dùng thuỷ vân trong
những trường hợp này để điều khiển sao chép đối với các thông tin [73]. Các thiết bị
phát hiện ra thuỷ vân thường được gắn sẵn vào trong các hệ thống đọc ghi. Thuỷ vân
mang các giá trị chỉ trạng thái cho phép sao chép dữ liệu như “copy never” - không
được phép sao chép hay “copy once” - chỉ được copy một lần. Sau khi copy xong, bộ
đọc, ghi thuỷ vân sẽ ghi thuỷ vân mới chỉ trạng thái mới lên DVD. Các ứng dụng loại
này cũng yêu cầu thuỷ vân phải được bảo đảm an toàn và sử dụng phương pháp phát
hiện thuỷ vân đã giấu không cần thông tin gốc.
1.2. Giấu tin trong âm thanh số
Ngay từ những ngày đầu phát triển, các thuật toán giấu tin hầu hết chỉ tập trung
nghiên cứu nhiều lĩnh vực ảnh. Khác với giấu tin trong ảnh là khai thác hệ thống thị
giác của con người, giấu tin trên âm thanh tập trung khai thác khả năng cảm nhận của
hệ thính giác của con người (Human Auditory System).
Hình 1.4. Hệ thống thính giác của con người [66]
26. 14
Hình 1.4 mô tả cấu trúc hệ thống thính giác của con người. Các tín hiệu âm
thanh từ môi trường bên ngoài sẽ được thu nhận bởi tai ngoài, sau đó các tín hiệu này
chuyển đến màng nhĩ và chuyển đến các tế bào thần kinh thông qua các cấu trúc bên
trong của tai.
Theo các nghiên cứu về sinh học, hệ thính giác người nhạy cảm hơn nhiều so
với hệ thống thị giác và các tấn công trên âm thanh số cũng đa dạng hơn nên giấu tin
trên âm thanh không phải là lĩnh vực dễ thực hiện [74]. Giấu tin trong âm thanh dựa
vào ngưỡng nghe của người và hiện tượng che khuất (masking) âm thanh để giấu tin.
1.2.1. Ngưỡng nghe
Phạm vi nghe của tai người trong khoảng từ 20Hz đến 20 kHz nhưng nghe rõ
nhất đối với âm thanh trong phạm vi từ 1kHz đến 4kHz. Ngưỡng nghe của con người
thay đổi theo độ tuổi và có sự khác nhau giữa nam và nữ. Hình 1.5 thể hiện dải tần
của âm thanh. Những âm thanh trong khoảng từ 0 - 20Hz gọi là hạ âm, những âm
thanh trên 20 KHz gọi là siêu âm. Con người không nghe được hạ âm và siêu âm.
Hình 1.5. Dải tần của âm thanh
1.2.2. Hiện tượng che khuất
Mặc dù tai người có thể nghe ở dải tần rộng nhưng những gì tai người có thể
nghe phụ thuộc vào môi trường nơi đang nghe. Nếu như ở trong môi trường nhiễu
mạnh (ví dụ nhiễu trắng), nhiều âm thanh nhỏ sẽ bị che khuất (masked), vì thế ta
không thể nghe được chúng.
Hiện tượng che khuất tín hiệu âm thanh (auditory masking) xảy ra khi một âm
thanh này ảnh hưởng đến sự cảm nhận một âm thanh khác. Âm thanh bị che gọi là
maskee, âm thanh che là masker. Khoảng cường độ khác nhau giữa maskee và masker
gọi là mức độ che.
20 kHz20Hz
Hạ âm Âm thanh Siêu âm
27. 15
Hình 1.6 Ngưỡng che của tín hiệu âm thanh
Ví dụ ban đầu ta có thể nghe âm thanh ở mức 10 dB. Khi có sự xuất hiện đồng
thời một âm thanh khác thì ta không thể nghe được âm thanh ban đầu trừ khi ta điều
chỉnh âm thanh ban đầu lên 26 dB. Như vậy khoảng bị che (masked threshold) của
âm thanh ban đầu so với âm thanh che là 16 dB. Hình 1.6 minh hoạ cho ngưỡng che
của tín hiệu âm thanh.
Hình 1.7. Che khuất âm thanh trên miền tần số [74]
Hiện tượng che khuất âm thanh xảy ra trên cả miền tần số và miền thời gian.
Hình 1.7 minh họa cho che khuất âm thanh trong miền tần số (simultaneous masking)
và hình 1.8 minh họa cho che khuất âm thanh trong miền thời gian (temporal
masking).
Hình 1.8. Che khuất âm thanh trên miền thời gian [74]
28. 16
1.2.3. Âm thanh và các đặc tính của âm thanh
Âm thanh là các dao động cơ học của các phân tử, nguyên tử hay các hạt làm
nên vật chất và lan truyền trong vật chất như các sóng. Âm thanh, giống như nhiều
sóng, được đặc trưng bởi tần số, bước sóng, chu kỳ, biên độ và vận tốc lan truyền. Ba
đặc trưng sinh lý của âm thanh là âm lượng, độ cao, âm sắc. Âm lượng đại diện cho
độ lớn (loudness) của tín hiệu âm thanh, tương quan với biên độ của tín hiệu, cũng
được xem là năng lượng hoặc cường độ của tín hiệu âm thanh. Độ cao đại diện cho
tỷ lệ rung của tín hiệu âm thanh, có thể biểu diễn bởi tần số cơ bản hoặc tương đương.
Âm sắc đại diện cho nội dung ngữ nghĩa của tín hiệu âm thanh, giúp ta phân biệt âm
do các nguồn khác nhau phát ra.
Đơn vị để đo âm thanh là decibel (dB). Decibel được dùng để so sánh độ mạnh
của 2 âm thanh. Giá trị của này thể hiện tỉ lệ (ratio) chứ không phải là một giá trị cụ
thể.
𝑑𝐵 = 20𝑙𝑜𝑔10(
𝑃1
𝑃 𝑅𝐿
) (1.1)
Trong đó PRL là cường độ (strength) của tín hiệu cần so sánh và P1 là cường
độ của tín hiệu được so sánh.
Ví dụ: P1=3.1*PRL thì:
dB =20*log10(3.1PRL/PRL)
=20*log10(3.1) =20*0.49993 =9.827 ~ 10.
Các đặc tính của âm thanh:
- Âm thanh có thể dùng máy biến năng chuyển âm thanh từ dạng này sang
dạng năng lượng khác để lưu trữ.
- Cường độ bức xạ của âm thanh giảm dần tỉ lệ với bình phương khoảng
cách với nguồn.
Khi làm việc trong môi trường âm thanh, ngoài thông tin số thể hiện âm thanh
chúng ta còn phải chú ý đến phương tiện truyền dẫn tín hiệu âm thanh đó. Phương
tiện truyền dẫn một tín hiệu âm thanh là môi trường mà trong đó tín hiệu phải đi qua
để đến được đích. Có thể chia môi trường truyền dẫn ra thành 4 nhóm như sau:
29. 17
- Môi trường số end – to – end: trong đó các tệp âm thanh được copy trực tiếp
từ máy này sang máy khác.
- Môi trường lấy mẫu lại theo tỉ lệ khác: trong đó tín hiệu được lấy mẫu lại
theo tỉ lệ lấy mẫu cao hoặc thấp hơn.
- Môi trường truyền dẫn analog và lấy mẫu lại : trong đó tín hiệu được chuyển
sang analog sau đó lấy mẫu lại.
- Môi trường "over the air": tín hiệu được truyền qua không khí và được lấy
mẫu lại bằng micro.
Tùy vào môi trường truyền tín hiệu âm thanh mà có các kỹ thuật thích hợp để
nhúng dữ liệu vào tệp âm thanh này.
Chất lượng tín hiệu có thể giảm sút khi truyền trên đường truyền. Ở dạng tương
tự hay dạng số, chúng ta đều có những cách để làm giảm sự hao hụt tín hiệu trên
đường truyền. Hình 1.9 minh hoạ cho các kỹ thuật làm giảm sự hao hụt tín hiệu trong
trường hợp tín hiệu tương tự và tín hiệu số.
Hình 1.9. Kỹ thuật làm giảm hao hụt tín hiệu trên đường truyền [80]
1.2.4. Biểu diễn âm thanh số
Để lưu trữ và xử lý âm thanh bằng máy tính, các tín hiệu âm thanh cần phải
được chuyển từ dạng tương tự sang dạng số. Thông tin số đại diện của một tệp âm
thanh bao gồm các mẫu tín hiệu được lấy theo phương pháp lượng tử hóa và lấy mẫu
theo thời gian [74]. Âm thanh thường được lượng tử hóa với độ sâu số (bit depth) 8,
16 hoặc 24 bit. Đối với âm thanh chất lượng cao, mức lượng tử thường được sử dụng
là 16 bit. Tỷ lệ lấy mẫu theo thời gian quyết định biên vùng tần số. Tỉ lệ lấy mẫu
thông thường nằm trong khoảng 8 kHz đến 44.1 kHz
30. 18
Hình 1.10. Chuyển âm thanh dạng tương sang dạng số
Hình 1.11 thể hiện chi tiết quá trình lấy mẫu, lượng tử hoá khi chuyển tín hiệu
ở dạng tương tự sang dạng số. Lỗi lượng tử (quantization error) có thể giảm xuống
bằng cách tăng tỉ lệ lấy mẫu (sampling rate) và dùng nhiều bit hơn để biểu diễn giá
trị một mẫu (quantization level).
Hình 1.11. Lượng tử hoá và biểu diễn dạng số tín hiệu tương tự [80]
31. 19
Một mẫu dữ liệu âm thanh có thể biểu diễn bằng 8 bit, 16 bit hay 24 bit và tệp
âm thanh có thể gồm 1 kênh (mono) hay 2 kênh (stereo). Số byte dùng để lưu 1 giây
âm thanh được xác định theo công thức (1.2):
Số byte ≈ (tần số lấy mẫu ∗ số kênh ∗ số bit biểu diễn 1 mẫu)/8 (1.2)
Ví dụ với âm thanh stereo, dùng 16 bit để lưu 1 mẫu, tần số lấy mẫu 44 kHz, mã hoá
PCM, thì số byte cần dùng để lưu 3 phút sẽ là:
≈ 3min*60sec/min*44000samples/sec*16bits/sample*2(channel)/8bits/byte
≈ 31.68 Mb.
1.2.5. Các định dạng âm thanh phổ biến
Do các thuật toán giấu tin phụ thuộc vào định dạng của tệp âm thanh, nên để
giấu tin vào tệp âm thanh, ta cần hiểu rõ định dạng tệp âm thanh. Có thể phân các
định dạng thành âm thanh thành ba nhóm, đó là nhóm định dạng không nén, nhóm
định dạng nén không mất mát thông tin và nhóm định dạng nén mất mát thông tin.
Bảng 1.1 trình bày một số định dạng âm thanh thường gặp trên các hệ thống máy tính
[86].
Bảng 1.1. Một số định dạng tệp âm thanh trên máy tính
Kiểu Phần mở rộng Codec
AIFF (Mac) .aif, .aiff *PCM
AU (Sun/Next) .au *u-law
CD audio (CDDA) N/A PCM
MP3 .mp3 MPEG Audio Layer-III
Windows Media Audio .wma Proprietary (Microsoft)
QuickTime .qt Proprietary (Apple Computer)
RealAudio .ra, ram Proprietary (Real Networks)
WAV .wav *PCM
• WAV (.wav) : là kiểu định dạng đại diện cho âm thanh kỹ thuật số trong
Windows PCs.
• AIFF (aif) và AU (.au) : AIFF là kiểu định dạng âm thanh đại diện cho
Macintosh, AU là kiểu định dạng đại diện cho hệ thống Sun.
32. 20
• RealAudio (.ra) : là hệ thống được sử dụng đầu tiên đại diện cho luồng âm
thanh và hình ảnh trên Internet.
• MIDI (.mid) : được ghi tắt của Music Instrument Digital Interface, là chuẩn
đại diện cho thông tin âm nhạc chuyển giao giữa phương tiện điện tử và máy tính.
• QuickTime (.qt) : được sử dụng để định dạng đa phương tiện từ máy tính
Apple, hỗ trợ cả luồng âm thanh và luồng hình ảnh.
1.2.6. Một số chương trình giấu tin trên âm thanh
Đã có nhiều phần mềm giấu tin trong âm thanh được phát triển và ứng dụng
trong thực tế. Bảng 1.2 thể hiện một số chương trình giấu hiện tại trong khảo sát của
Pedram Hayati và các cộng sự [81]. Ngoài giấu tin trên âm thanh, một số phần mềm
có thể giấu trên nhiều loại dữ liệu và chạy trên nhiều hệ điều hành khác nhau. Ví dụ
như OpenPuff có thể giấu trên ảnh, video, âm thanh và tệp pdf.
Bảng 1.2. Bảng một số phần mềm giấu tin trong âm thanh
Tên phần mềm giấu tin Định dạng hỗ trợ Dạng bản quyền
Info Stego mp3 Shareware
ScramDisk wav Shareware
MP3Stego mp3 Mã nguồn mở
StegoWav wav Mã nguồn mở
Hide4PGP mp3, voc Mã nguồn mở
Steghide wav, au Mã nguồn mở
S-Tool wav Mã nguồn mở
Invisible Secrets wav Thương mại
Steganos wav, voc Thương mại
Tổng kết chương 1
Trong chương 1 trình bày các khái niệm liên quan đến giấu tin, phân loại giấu
tin và các ứng dụng của giấu tin. Trong chương này cũng trình bày về hiện tượng che
khuất của tín hiệu, cách lấy mẫu và biểu diễn âm thanh trên máy tính, các định dạng
tệp âm thanh phổ biến và một số phần mềm giấu tin trên âm thanh đã triển khai trong
thực tế.
34. 22
Chương 2. PHƯƠNG PHÁP GIẤU TIN TRONG
ÂM THANH
Chương này sẽ trình bày các phương pháp dùng để giấu tin trong âm thanh
cùng các ưu nhược điểm của từng phương pháp. Trong chương cũng trình bày các kỹ
thuật xáo trộn dữ liệu nhằm thay đổi thứ tự các bit giấu, các kỹ thuật biến đổi dữ liệu
từ miền thời gian sang miền tần số cùng một số độ đo (chỉ số) thường được dùng để
đánh giá chất lượng các kỹ thuật giấu.
2.1. Các kỹ thuật bổ trợ cho giấu tin
Để giấu tin hiệu quả, thông thường ta cần dùng các kỹ thuật bổ trợ. Các kỹ
thuật này bao gồm chuyển dữ liệu âm thanh từ miền thời gian sang miền tần số, kỹ
thuật sinh các chuỗi số ngẫu nhiên và các kỹ thuật thay đổi thứ tự giấu các bit trong
chuỗi bit mật.
2.1.1. Các phép biến đổi từ miền thời gian sang miền tần số
Ngoài phương pháp xử lý trực tiếp giá trị các mẫu âm thanh trên miền thời
gian, chúng ta có thể dùng phương pháp khảo sát gián tiếp thông qua các kỹ thuật
biến đổi. Các biến đổi này làm nhiệm vụ chuyển miền biến số độc lập sang các miền
khác với các biến số mới. Phương pháp khảo sát gián tiếp này sẽ làm đơn giản rất
nhiều các công việc mà chúng ta gặp phải khi dùng phương pháp khảo sát trực tiếp
trong miền biến số độc lập. Có nhiều cách biến đổi, trong đó cách biến đổi hay được
sử dụng là biến đổi Fourier, biến đổi wavelet…
2.1.1.1. Phép biến đổi Fourier rời rạc
Phép biến đổi Fourier rời rạc (DFT) còn được gọi là biến đổi Fourier hữu hạn.
Đầu vào của biến đổi này là một chuỗi hữu hạn các số thực hoặc số phức. Phép biến
đổi DFT phân tích một dãy các số thành các thành phần ở các tần số khác nhau, là
một công cụ lý tưởng để xử lý thông tin trên các máy tính. Một biến đổi Fourier nhanh
(FFT) là một thuật toán hiệu quả để tính DFT với độ phức tạp là O(nlogn) thay vì tính
trực tiếp là O(n2
) [15].
35. 23
2.1.1.2. Phép biến đổi wavelet (DWT)
Phép biến đổi Fourier là một công cụ quan trọng trong xử lý tín hiệu số. Tuy
nhiên, phép biến đổi này chỉ cung cấp thông tin có tính toàn cục và chỉ thích hợp cho
những tín hiệu tuần hoàn, không chứa các đột biến hoặc các thay đổi không dự báo
được. Phép biến đổi wavelet khắc phục hạn chế này của biến đổi Fourier. Biến đổi
wavelet được tính dựa vào phân tích đa phân giải [6]. Ý tưởng của phân tích đa phân
giải là sử dụng các kỹ thuật lọc số trong quá trình phân tích. Mỗi một tín hiệu được
phân tích thành hai thành phần: thành phần xấp xỉ A (Approximation) tương ứng với
thành phần tần số thấp và thành phần chi tiết D (Detail) tương ứng với thành phần tần
số cao, thông qua hai bộ lọc thông thấp và thông cao, trong đó, bộ lọc thông cao sử
dụng hàm wavelet và bộ lọc thông thấp sử dụng hàm tỉ lệ.
Hình 2.1. Phân giải tín hiệu thành 2 thành phần xấp xỉ và chi tiết
Hình 2.1 minh họa cho việc phân tích tín hiệu âm thanh thành hai thành
phần xấp xỉ và chi tiết. Chuỗi tín hiệu gốc là dữ liệu của một tệp âm thanh gồm
1422720 mẫu sẽ được phân tích thành hai dãy A và D có độ dài gồm 711363 mẫu.
Trong hai thành phần A và D, thành phần D không quan trọng. Những thay
đổi trên thành phần này ít ảnh hưởng đến tín hiệu khi ta khôi phục lại. Ví dụ nếu
thay đổi thành phần D=0 (loại bỏ thành phần D), thực hiện biến đổi ngược lại, ta
sẽ có dãy tín hiệu như hình 2.2.
36. 24
Hình 2.2. Tín hiệu gốc và tín hiệu đã loại bỏ thành phần D
2.1.2. Xáo trộn dữ liệu mật
Giả sử có chuỗi M gồm n phần tử, là thông điệp mật cần giấu vào trong tệp
âm thanh. Thay vì giấu tuần tự từng phần tử từ M1 đến Mn, ta thực hiện xáo trộn chuỗi
M rồi mới đem giấu vào tệp âm thanh. Mục đích của việc này là để gây khó khăn cho
người thám tin khi thực hiện tấn công rút trích tin. Nếu người thám tin biết thuật toán
giấu thì rất có thể dò ra được chuỗi tin giấu. Xáo trộn dữ liệu đòi hỏi người thám tin
phải sắp xếp lại chuỗi tin nhận được theo trật tự đúng mới biết được tin, nếu không,
chuỗi tin nhận được cũng không có ý nghĩa. Dưới đây là hai thuật toán dùng để xáo
trộn dữ liệu được sử dụng trong các chương sau của luận án.
2.1.2.1. Xáo trộn dữ liệu theo chuỗi hoán vị
Nếu chuỗi tin mật cần giấu có độ dài n (đánh số từ 1 đến n) thì sẽ có n! hoán
vị của nó. Ta có thể hoán vị chuỗi mật này trước khi giấu. Có nhiều kỹ thuật tạo hoán
vị của tập {1,2,..., n} [62]. Một trong các cách hiệu quả là dùng phương pháp sinh
theo kiểu thứ tự từ điển.
Ví dụ ta có chuỗi cần giấu là “axnd”. Ta gán cho các ký tự chuỗi giá trị theo
đúng thứ tự xuất hiện của chúng là {1, 2, 3, 4}.
Chuỗi này sẽ có 24 hoán vị là {1, 2, 3, 4}, {1, 2, 4, 3},{1, 3, 2, 4},{1, 3, 4,
2},{1, 4, 2, 3},{1, 4, 3, 2},{2, 1, 3, 4},{2, 1, 4, 3},{2, 3, 1, 4},{2, 3, 4, 1},{2, 4, 1,
3},{ 2, 4, 3, 1},{3, 1, 2, 4},{3, 1, 4, 2},{3, 2, 1, 4},{3, 2, 4, 1},{3, 4, 1, 2},{3, 4, 2,
1},{4, 1, 2, 3},{4, 1, 3, 2, 4},{4, 2, 1, 3},{4, 2, 3, 1},{4, 3, 1, 2},{4, 3, 2, 1}.
37. 25
Khi chọn k là 1 giá trị nào đó trong n! giá trị thì ta sẽ chọn hoán vị thứ k của
chuỗi ban đầu và đem chuỗi đó đi giấu thay vì chuỗi nguyên gốc (k=1). Trong trường
hợp giá trị k lớn hơn n! thì k sẽ được gán bằng (k mod n!) + 1.
Ví dụ k= 20 thì chuỗi giấu là: “danx” tương ứng với hoán vị {4, 1, 3, 2}.
Khi n lớn thì việc sinh chuỗi hoán vị thứ k (lớn) có thể tốn thời gian. Có nhiều
cách để sinh ra hoán các hoán vị này. Một thuật toán hiệu quả để sinh ra hoán vị thứ
k của tập n phần tử được trình bày trong [30].
2.1.2.2. Xáo trộn dữ liệu bằng phép biến đổi Arnold
Biến đổi Arnold là kỹ thuật biến đổi dùng để xáo trộn các điểm ảnh [14]. Gọi
I(x, y) là điểm ảnh ban đầu ở toạ độ (x, y). Sau khi thực hiện phép chuyển đổi, điểm
ảnh sẽ được chuyển đến toạ độ mới là (x’, y’). Công thức xác định (x’, y’) như sau:
[
𝑥′
𝑦′
] = [
1 1
1 2
] [
𝑥
𝑦] (𝑚𝑜𝑑 𝑁) (2.1)
trong đó x, y ∈ {0,1, ..., N-1} và x’, y’ ∈ {0,1, ..., N-1}.
Bảng 2.1. Chu kỳ lặp lại của phép biến đổi tương ứng với kích thước N
N 2 3 6 10 16 20 32 64 80 100
Chu kỳ 3 4 12 30 12 30 24 36 60 150
Nếu thực hiện một số lần biến đổi, ảnh biến đổi sẽ trở lại ảnh ban đầu. Chu kỳ
của phép biến đổi tương ứng với kích thước khối ảnh N được thể hiện trong bảng 2.1.
Hình 2.3. Ảnh gốc và sau khi thực hiện chuyển đổi.
Hình 2.3 là minh hoạ cho ảnh gốc là logo Đại học Công nghệ, Đại học Quốc
gia Hà Nội, kích thước 80*80 và hình ảnh xáo trộn ở các bước 1, 2, 6, 12 (dòng trên,
38. 26
từ trái qua phải) và 20, 30, 40, 58, 59 (dòng dưới, từ trái qua phải) sử dụng phép biến
đổi trong [84].
Ảnh có kích thước n=80, chu kỳ là 60. Nếu lấy ảnh ở lần chuyển 59 và thực
hiện thêm 1 lần nữa thì sẽ được ảnh ban đầu.
2.1.3. Sinh chuỗi giả ngẫu nhiên
Các phương pháp giấu tin trong audio thường dùng kết hợp với các chuỗi
ngẫu nhiên để thực hiện giấu tin. Chuỗi ngẫu nhiên này có thể dùng để xác định ví trí
mẫu được chọn để giấu hoặc vị trí bit giấu. Các số ngẫu nhiên có thể được sinh trực
tiếp bằng các bộ sinh trong máy tính (C++, PHP và Matlab sử dụng bộ sinh Mersenne
Twister) hoặc do người lập trình tự cài đặt. Trong [25] trình bày một số thuật toán về
cách sinh số ngẫu nhiên.
2.1.3.1. Bộ sinh đồng dư (congruential generator)
Công thức cho bộ sinh số đồng dư có dạng:
𝑥 𝑘 = ( 𝑎 ∗ 𝑥 𝑘−1 + 𝑏) 𝑚𝑜𝑑 𝑀 (2.2)
Trong đó a và b là hai số nguyên cho trước, trị x0 ban đầu được gọi là “hạt
giống” (seed) và số nguyên M là số xấp xỉ (hoặc bằng) với số nguyên lớn nhất trên
máy tính. Bộ sinh đồng dư cải tiến sử dụng công thức như sau :
𝑥 𝑘 = ( 𝑎 ∗ 𝑥 𝑘−1 + 2 ∗ 𝑎) 𝑚𝑜𝑑 𝑛 (2.3)
trong đó a là một số nguyên lớn và thường chọn là một số nguyên tố, số mồi là x0.
2.1.3.2. Bộ sinh Fibonacci
Bộ sinh này sẽ tạo ra giá trị mới như là một hiệu, một tổng hoặc một tích của
các giá trị trước. Một ví dụ tiêu biểu là bộ sinh hiệu:
𝑥 𝑘 = ( 𝑥 𝑘−17 − 𝑥 𝑘−5) (2.4)
Chúng ta nói rằng, bộ sinh này có độ trễ 17 và 5. Bộ sinh hiệu này có thể tạo ra
một kết quả âm. Một ưu điểm của bộ sinh Fibonacci so với bộ sinh đồng dư là bộ sinh
Fibonacci có thời gian (lặp lại) dài.
39. 27
2.2. Đánh giá các phương pháp giấu tin trong âm thanh
Để đánh giá hiệu năng của các kỹ thuật giấu tin trong âm thanh, chúng ta
thường dựa vào tỉ lệ có thể cảm nhận và tỉ lệ có thể phát hiện.
2.2.1. Đánh giá bằng các độ đo
2.2.1.1. Độ đo SNR
Để đánh giá khả năng cảm nhận ta dựa vào tham số là segSNR (segmental
signal – to – noise ratio). Giá trị của segSNR chỉ số lượng thay đổi trên dữ liệu chứa
do chèn âm dữ liệu mật vào và được tính theo thang độ decibel. Trong dữ liệu âm
thanh, giá trị SNR dưới 20 dB thường được xem là nhiễu trong khi giá trị SNR từ 20
dB hàm ý rằng chất lượng âm thanh được đảm bảo.
Độ đo SNR được tính như sau:
𝑆𝑅𝑁 = 10 log10
∑ 𝑥(𝑖)2𝑁
𝑖=0
∑ [𝑥(𝑖)−𝑦(𝑖)]2𝑁
𝑖=0
(2.5)
Trong công thức trên, x (n) thể hiện âm thanh gốc và y(n) thể hiện âm thanh
chứa tin giấu.
2.2.1.2. Độ đo NCC (Normalized Cross Correlation)
NCC dùng để đo độ tương quan giữa hai chuỗi số, có thể dùng để đo độ tương
quan giữa âm thanh gốc và âm thanh có chứa tin, hoặc chuỗi bit được giấu và chuỗi
bit nhận được.
Công thức để tính NCC như sau:
𝑁𝐶𝐶 =
1
n
∗ ∑
[𝑥(𝑖)∗ 𝑦(𝑖)]
[𝑥(𝑖)]2
𝑛
i=1 (2.6)
trong đó 𝑥( 𝑖) là chuỗi số gốc và y( 𝑖) là chuỗi nhận được có các thay đổi trên
chuỗi dữ liệu gốc.
Giá trị của NCC nằm trong khoảng từ 0 đến 1. Nếu giá trị này càng gần 1
chứng tỏ hai chuỗi càng giống nhau.
2.2.2. Đánh giá bằng các phần mềm phát hiện tin
Có thể dùng các phần mềm phát hiện tin để đánh giá các kỹ thuật giấu tin. Rất
nhiều phần mềm phát hiện tin giấu trong ảnh đã được phát triển nhưng số phần mềm
40. 28
phát hiện tin giấu trong audio thì chưa nhiều. Ba phần mềm tiêu biểu phát hiện tin
trong âm thanh là HITIT, Stego-Suite và Stegsecret. HITIT được phát triển bởi
Yavanoglu U và các cộng sự, thực hiện phát hiện tin giấu trong tệp wav. Stego-Suite
là sản phẩm thương mại của công ty Allien và Stegsecret là sản phẩm mã nguồn mở
được phát triển bởi Alfonso Muñoz. Nếu như kỹ thuật giấu của chúng ta không vượt
qua được một phần mềm phát hiện tin giấu thì không thể nói kỹ thuật giấu là an toàn.
2.2.3. Đánh giá bằng bảng đánh giá ODG (Object Difference Grade)
Bảng đánh giá ODG được đề xuất bởi hiệp hội viễn thông quốc tế ITU
(International Telecommunication Union) [47]. Đây là kỹ thuật chủ quan, dựa vào
cảm nhận của con người. Bảng ODG gồm có 5 tiêu chí tương ứng với 5 mức điểm
khác nhau. Chi tiết các tiêu chí trong bảng 2.2.
Bảng 2.2. Các tiêu chí đánh giá theo thang ODG
Mô tả sự thay đổi trên dữ liệu gốc ODG
Không cảm nhận được 0.0
Cảm nhận được, nhưng không gây khó chịu −1.0
Hơi gây khó chịu −2.0
Gây khó chịu −3.0
Rất khó chịu −4.0
2.3. Phương pháp giấu tin trong âm thanh
Các phương pháp giấu tin trong âm thanh có thể thực hiện trên miền thời gian
hoặc miền tần số, hoặc kết hợp trên cả hai miền. Một số phương pháp có thể cần sử
dụng tín hiệu gốc trong quá trình rút trích thông tin. Mục này sẽ trình bày một số
phương pháp giấu tin cơ bản và các nghiên cứu liên quan đến phương pháp giấu đó.
2.3.1. Phương pháp điều chỉnh bit ít quan trọng nhất (LSB coding)
Đây là một trong những kỹ thuật được nghiên cứu và ứng dụng sớm nhất trong
lĩnh vực giấu tin trên âm thanh cũng như trên các định dạng dữ liệu khác. Ý tưởng
chính của kỹ thuật này là thay thế các bit ít quan trọng của mẫu dữ liệu gốc bằng các
bit của tin giấu. Các bit được gọi là bit ít quan trọng khi ta thay đổi giá trị của bit đó
41. 29
từ 0 sang 1 hay từ 1 sang 0 thì sự thay đổi giá trị của mẫu dữ liệu không lớn và nó
không gây ra sự khác biệt nào đối với hệ thống tri giác của con người. Ví dụ ta có
mẫu 8 bit có giá trị bằng 94 và cần giấu bit 1 vào trong mẫu này. Khi đó ta sẽ điều
chỉnh giá trị bit cuối cùng mẫu từ 0 thành 1 và giá trị mới của mẫu là 95. Hình 2.4
minh hoạ cách điều chỉnh bit trên mẫu có giá trị 94 để giấu bit 1. Trong trường hợp
cần giấu bit 0 vào mẫu này thì ta không cần điều chỉnh giá trị của mẫu.
Hình 2.4. Điều chỉnh bit thấp nhất của mẫu để giấu bit 1
Khi giấu 1 bit mật vào mẫu dữ liệu thì độ lệch giá trị giữa mẫu dữ liệu gốc và
dữ liệu mang tin tối đa là 1.
Để tăng độ bền vững của kỹ thuật giấu này, ta có thể giấu nhiều lần chuỗi thông
điệp mật hoặc điều chỉnh vị trí các bit cao hơn trong mỗi mẫu để giấu tin. Các kỹ
thuật giấu dùng phương pháp điều chỉnh LSB thường chọn các bit từ vị trí 1 đến 3,
tính từ bên phải sang trái. Ưu điểm của phương pháp LSB là tỉ lệ dữ liệu lớn, bình
quân 8 mẫu dữ liệu có thể giấu một byte dữ liệu mật, vì vậy tỉ lệ dữ liệu có thể bằng
số mẫu dữ liệu trong tệp. Do không phải thực hiện nhiều phép toán phức tạp nên
phương pháp này có thời gian thực hiện rất nhanh. Đối với phương pháp điều chỉnh
LSB, ta có thể tăng thêm tỉ lệ giấu bằng cách dùng hai bit LSB, nghĩa là trong mỗi
mẫu ta sẽ giấu 2 bit mật. Tuy nhiên cách này cũng làm tăng nhiễu trên đối tượng chứa
dẫn đến đối phương dễ phát hiện và thực hiện các tấn công. Trong [5, 14, 15, 16, 22]
là một số cải tiến cho kỹ thuật giấu tin trong âm thanh sử dụng phương pháp điều
chỉnh LSB, với mục đích là giảm sự thay đổi của dữ liệu gốc.
2.3.2. Phương pháp chẵn lẻ (parity coding)
Phương pháp chẵn lẻ cũng tương tự như phương pháp mã hoá LSB, nhưng thay
vì dùng một mẫu dữ liệu sẽ dùng một nhóm các mẫu. Dãy tín hiệu chứa sẽ được chia
0 1 0 1 1 1 1 0
Giá trị mẫu sau khi điều chỉnh để giấu bit 1:
0 1 0 1 1 1 1 1
Giá trị mẫu dữ liệu gốc
42. 30
thành các đoạn (khối) có cùng kích thước. Tính chẵn lẻ của đoạn được xác định bằng
tổng giá trị các mẫu trong đoạn đó chẵn hay lẻ. Nếu như đoạn có tính chẵn nhưng cần
giấu bit 1 thì sẽ điều chỉnh (lật) một bit của một mẫu nào đó trong đoạn để đoạn có
tính lẻ. Nếu như cần giấu bit 0 vào đoạn có tính chẵn thì không cần phải làm gì. Tương
tự như vậy cho trường hợp giấu bit 1.
Hình 2.5. Điều chỉnh mẫu để giấu bit 1 trong khối theo phương pháp chẵn lẻ
Hình 2.5 minh họa cho việc giấu bit 1 vào khối. Do tổng giá trị của khối là số
chẵn nên ta sẽ điều chỉnh giá trị 1 mẫu để đảm bảo tổng của khối có giá trị lẻ.
Trong quá trình giải tin ta sẽ dựa vào tính chẵn lẻ của đoạn để rút trích các bit.
Nếu như đoạn có tính lẻ thì rút trích bit 1, ngược lại rút trích bit 0.
Tính chẵn lẻ của đoạn cũng có thể được xác định theo một tiêu chí khác nào đó.
Ví dụ có thể xác định tính chẵn lẻ theo tổng số bit 1 của các mẫu trong đoạn.
So với phương pháp mã hoá LSB, phương pháp mã hoá chẵn lẻ có tỉ lệ dữ liệu
thấp hơn, do phải dùng nhiều mẫu hơn để giấu 1 bit. Có thể nâng độ an toàn của
phương pháp này bằng cách chọn các đoạn có kích thước không cố định và điều chỉnh
hàm xác định tính chẵn lẻ của đoạn.
Kỹ thuật chẵn lẻ được dùng nhiều trong giấu tin trong ảnh. Trong [61] trình bày
một kỹ thuật giấu dựa vào mã hoá chẵn lẻ giấu tin trong ảnh.
2.3.3. Phương pháp mã hoá pha (phase coding)
Mã hóa pha là một phương pháp khác dùng để giấu tin trong âm thanh. Phương
pháp mã hoá pha dựa vào đặc tính tai người không phân biệt được sự khác nhau về
pha của hai tín hiệu âm thanh. Việc giấu tin được thực hiện thông qua việc thay thế
pha của một đoạn (segment) âm thanh ban đầu bằng một pha tham chiếu (referency
96 39 26 9 68
20 27 40 51 19
37 42 40 78 617
60 14 29 8 139
26 19 86 0 63
96 39 26 9 68
20 27 40 50 19
37 42 40 78 617
60 14 29 8 139
26 19 86 0 63
43. 31
phase) thể hiện dữ liệu. Pha của các đoạn tiếp theo sẽ được điều chỉnh sao cho duy trì
mối quan hệ giữa các đoạn [7].
Hình 2.6. Sự dịch chuyển pha của tín hiệu
Giả sử ta có hai chuỗi x(t) và y(t) như sau:
𝑥(𝑡) = 𝐴. 𝑐𝑜𝑠(2𝜋𝑓𝑡 + 𝜑)
𝑦(𝑡) = 𝐴. 𝑠𝑖𝑛(2𝜋𝑓𝑡 + 𝜑) = 𝐴. 𝑐𝑜𝑠 (2𝜋𝑓𝑡 + 𝜑 −
𝜋
2
)
Trong đó A là biên độ, f là tần số và 𝜑 là pha. Thuật ngữ pha được hiểu theo
nghĩa đó là tham chiếu đến một tín hiệu nào khác. Ví dụ nếu tham chiếu đến tín hiệu
𝐴. cos(2𝜋𝑓𝑡) thì tín hiệu x(t) có pha là 𝜑 và tín hiệu y(t) có pha là 𝜑 −
𝜋
2
.
Thuật toán giấu tin sử dụng phương pháp mã hoá pha như sau :
Bước 1) Chuỗi âm thanh gốc được chia thành dãy N đoạn (segment) ngắn và
biến đổi Fourier cho từng đoạn.
Bước 2) Tính sự chênh lệch về pha giữa các đoạn kề nhau.
Bước 3) Điều chỉnh pha để giấu tin:
- Đối với pha đầu tiên, tạo pha P0 tùy ý.
- Đối với tất cả các đoạn khác, tạo ra các pha mới để giấu tin theo công thức
(2.7).
phasenew= {
π
2⁄ nếu giấu bit 1
- π
2⁄ nếu muốn giấu bit 0
(2.7)
- Kết hợp pha mới này với biên độ gốc để tạo ra đoạn mới, Sn.
Bước 4) Thực hiện biến đổi Fourier ngược các đoạn và kết nối các đoạn lại để
tạo ra tín hiệu âm thanh mới.
44. 32
Để giải tin được giấu theo phương pháp này cần phải biết chiều dài của các
đoạn, thực hiện theo chiều ngược lại để lấy lần lượt các bit giấu.
Ví dụ có tín hiệu phức X gồm 256 (t=256) mẫu, được sinh theo công thức:
X=complex (cos (2*pi*2*t), sin (2*pi*2*t))
Y là kết quả khi dịch pha X một khoảng 𝜋
2⁄ .
Minh hoạ cho tín hiệu X, Y và pha của chúng trong hình 2.7.
Hình 2.7. Tín hiệu gốc và tín hiệu sau khi dịch chuyển pha 𝜋/2
Mã hoá pha có ưu điểm là không gây nhiễu cho tín hiệu gốc. Lý do là phương
pháp mã hoá pha chỉ thay đổi pha chứ không thay đổi biên độ và tần số của tín hiệu
gốc. Hạn chế của phương pháp mã hoá pha là có tỉ lệ dữ liệu thấp và thời gian xử lý
để giấu tin lâu.
Tỉ lệ dữ liệu giấu của phương pháp này thấp vì dữ liệu chỉ được giấu trong
đoạn đầu nên tối đa chỉ bằng kích thước đoạn đầu (cũng bằng kích thước mỗi đoạn).
Ta không thể tăng kích thước của mỗi đoạn lên quá lớn vì nếu như vậy sẽ gây
ra hiện tượng không liên tục về pha trong tín hiệu (phase discontinuous) và người
thám tin dựa vào đặc trưng này phát hiện tệp có chứa tin giấu [71]. Thông thường ta
dùng các kỹ thuật làm phẳng pha để kiểm tra sau khi giấu tin xong. Hình 2.8 minh
họa sự không liên tục về pha trong tín hiệu.
45. 33
Hình 2.8. Hiện tượng không liên tục về pha
Trong [10, 55] trình bày hai thuật toán giấu tin trong audio sử dụng phương
pháp mã hoá pha. Kỹ thuật đề xuất có thể bền vững trước các tấn công lấy lại mẫu,
nén, thêm nhiễu. Do tỉ lệ dữ liệu thấp nên phương pháp mã hoá pha chủ yếu dùng cho
thuỷ vân. Nghiên cứu trong [42] trình bày một kỹ thuật giấu nhiều thuỷ vân trên dữ
liệu âm thanh stereo dùng phương pháp mã hoá pha.
2.3.4. Phương pháp mã hoá tiếng vọng (echo coding)
Phương pháp mã hoá tiếng vọng nhúng tin vào âm thanh bằng cách điều chỉnh
độ trễ thêm tiếng vọng vào tín hiệu gốc. Phương pháp này dựa vào đặc trưng của hệ
thống thính giác con người là không phân biệt được hai âm thanh nếu chúng xảy ra
gần như đồng thời, có độ lệch trong khoảng từ 1 đến 40 mili giây [70]. Gọi S(n) là tín
hiệu gốc và X(n) là tín hiệu được thêm tiếng vọng. Ta có công thức giấu như sau:
𝑋( 𝑛) = 𝑆( 𝑛) + 𝛼. 𝑆(𝑛 − 𝑑) (2.8)
Hình 2.9. Các thành phần trong tiếng vọng của tín hiệu [32]
Dữ liệu nhúng được giấu bằng cách thay đổi 3 tham số của tiếng vọng là biên
độ ban đầu, tỉ lệ phân rã và độ trễ. Các tham số này thể hiện như trong hình 2.9.
Nếu độ lệch thời gian giữa tín hiệu gốc và tiếng vọng thấp thì hai tín hiệu có thể
trộn lẫn mà hệ thống thính giác của con người rất khó nhận biết được. Giá trị độ lệch
46. 34
này không thể xác định chính xác vì tuỳ thuộc vào chất lượng âm thanh và kiểu âm
thanh. Giá trị được chọn trong các phương pháp giấu tin sử dụng kỹ thuật điều chỉnh
tiếng vọng là dưới 20 mili giây.
Bằng cách dùng thời gian trễ khác nhau giữa tín hiệu gốc và tiếng vọng để thể
hiện tương ứng giá trị nhị phân 1 hoặc 0, theo cách đó dữ liệu được giấu vào tệp âm
thanh. Hai độ trễ có thể chọn cố định hoặc tuỳ biến tuỳ thuộc vào khoá.
Khi đó công thức (2.8) sẽ được điều chỉnh để giấu bit 1 và bit 0 trên một đoạn
âm thanh sẽ là:
𝑋(𝑛) = 𝑆(𝑛) + 𝛼. 𝑆(𝑛 − 𝑑1)
𝑋(𝑛) = 𝑆(𝑛) + 𝛼. 𝑆(𝑛 − 𝑑0) (2.9)
Trong một số bài toán, ta chỉ cần thêm một tiếng vọng vào tín hiệu gốc như
công thức (2.9) để giấu tin. Tuy nhiên, trong các phương pháp điều chỉnh tiếng vọng
cải tiến, ta có thể thêm nhiều tiếng vọng, có thể là vọng trước và vọng sau so với tín
hiệu gốc để giấu tin. Ví dụ trong [37] đề xuất phương pháp thêm tiếng vọng cả trước
và sau so với tín hiệu gốc như công thức (2.10).
𝑋(𝑛) = 𝑆(𝑛) + 𝛼. 𝑆(𝑛 + 𝑑) + 𝛼. 𝑆(𝑛 − 𝑑) (2.10)
Bằng cách phân tích cepstrum của 𝑋( 𝑛) ta sẽ biết chính xác vị trí thêm tiếng
vọng [7]. Để rút trích tin giấu, ta sẽ phân tích cepstrum của từng đoạn, dò tìm ra độ
lệch 𝑑0 , 𝑑1 từ đó sẽ rút trích bit 0 hoặc bit 1. Chi tiết về cepstrum của tín hiệu được
trình bày ở mục 3.5.
Việc phân tích cepstrum để dò ra các giá trị 𝑑0, 𝑑1 trong quá trình giải tin tốn
nhiều thời gian, và đây cũng chính là khuyết điểm của phương pháp mã hoá tiếng
vọng. Ngoài ra, phương pháp giấu tin này chỉ cần biết kích thước mỗi đoạn giấu mà
không cần dùng tín hiệu gốc trong quá trình giải tin nên người thám tin cũng có thể
tự phân tích cepstrum để lấy tin giấu.
Trong [38, 53] trình bày hai thuật toán giấu tin trong âm thanh sử dụng phương
pháp mã hoá tiếng vọng. Trong [38] echo được thêm vào tín hiệu âm thanh dựa vào
chuỗi ngẫu nhiên. Trong [53] chỉ thêm tiếng vọng vào đoạn âm thanh để giấu tin nếu
47. 35
năng lượng của đoạn đó lớn hơn một ngưỡng cho trước. Thuật toán cũng đề xuất chỉ
dùng 1 độ trễ để giấu 2 bit khác nhau, nhưng trên 2 kênh khác nhau.
2.3.5. Phương pháp trải phổ
Mô hình tổng quát của nhóm phương pháp này được dựa trên sự đồng bộ giữa
tín hiệu âm thanh và dãy chuỗi giả ngẫu nhiên. Một chuỗi ngẫu nhiên kết hợp với
chuỗi tin mật cần giấu sẽ được trải trên chuỗi âm thanh gốc, có thể trên miền thời
gian hoặc miền tần số.
Có nhiều phương pháp khác nhau dùng để trải dữ liệu nhúng vào phổ tần số
[83]. Kỹ thuật DSSS (Direct Sequency Spread Spectrum) trải tín hiệu bằng cách nhân
tín hiệu với một dãy giả ngẫu nhiên nào đó được gọi là chip. Tuy nhiên phương pháp
này cũng giống như phương pháp chèn vào các bit ít quan trọng là có thể thêm vào
các nhiễu ngẫu nhiên mà người nghe có thể phát hiện ra [56]. Đối với phương pháp
FHSS (Frenquency Hopped Spread Spectrum), tín hiệu âm thanh gốc được chia thành
các mảnh nhỏ hơn và mỗi mảnh mang một tần số duy nhất. Lợi điểm cơ bản của kỹ
thuật trải phổ là có thể chống lại các thay đổi. Bởi vì dữ liệu nhúng được trải đều trên
dữ liệu chứa nên rất khó có thể thay đổi thông tin nhúng mà không làm thay đổi dữ
liệu chứa. Đây là một đặc điểm đáng chú ý để thực hiện thủy vân trong âm thanh.
2.3.5.1. Thuật toán giấu tin theo phương pháp trải phổ
Đầu vào: - Tín hiệu gốc s(n);
- Chuỗi bit cần giấu b(n);
- Khoá k dùng để sinh chuỗi ngẫu nhiên.
Đầu ra: - Tín hiệu x(n) chứa tin mật.
Bước 1) Chuyển chuỗi bit nhị phân cần giấu 𝑣(𝑛) sang dạng lưỡng cực 𝑏(𝑛)
tương ứng, trong đó 𝑏( 𝑖) = 1 𝑛ế𝑢 𝑣( 𝑖) = 1 𝑣à 𝑏( 𝑖) = −1 𝑛ế𝑢 𝑏( 𝑖) = 0.
Bước 2) Sinh chuỗi ngẫu nhiên 𝑟(𝑛) dựa vào khoá.
Bước 3) Xây dựng chuỗi tin giấu 𝑤(𝑛) = 𝑏. 𝑟(𝑛).
Bước 4) Trải chuỗi tin giấu vào chuỗi tín hiệu gốc dùng công thức (2.11)
𝑥( 𝑛) = 𝑠( 𝑛) + 𝛼. 𝑤(𝑛) (2.11)
48. 36
Trong công thức (2.11) trên, 𝛼 là giá trị dùng để điều chỉnh tính không cảm
nhận được của dữ liệu trước và sau khi giấu và/hoặc tính bền vững của tin giấu.
2.3.5.2. Thuật toán giải tin theo phương pháp trải phổ
Quá trình giải tin dựa vào sự tương quan tuyến tính (linear correlation) giữa
hai chuỗi x(n) và r(n), trong đó r(n) là chuỗi ngẫu nhiên được sinh ra từ khoá mật.
Trong quá trình giải tin cũng cần sử dụng các phương pháp xử lý tín hiệu số như lọc
thông cao hay các phương phương pháp lọc khác.
Hình 2.10. Xử lý (lọc) mỗi khối để giải tin trong kỹ thuật trải phổ
Đầu vào: -Tín hiệu chứa tin mật x(n);
- Khoá k dùng để sinh chuỗi ngẫu nhiên;
- Ngưỡng 𝜌 để phân biệt bit 0 hoặc bit 1.
Đầu ra : - Chuỗi bit b(n), là chuỗi thông tin mật.
Bước 1) Sinh chuỗi ngẫu nhiên 𝑟(𝑛) dựa vào khoá.
Bước 2) Lấy từng bit trong mỗi đoạn
- Tính giá trị c trong mỗi đoạn theo công thức (2.12):
𝑐 =
1
𝑁
∑ 𝑥(𝑖)𝑁
𝑖=1 ∗ 𝑟(𝑖) (2.12)
với N là độ dài mỗi đoạn.
- Nếu c> 𝜌 thì trả về bit 1 ngược lại trả về bit 0.
Trong thuật toán giải tin, công thức (2.12) tương ứng với:
𝑐 =
1
𝑁
∑ 𝑥( 𝑖)𝑁
𝑖=1 ∗ 𝑟( 𝑖) =
1
𝑁
∑ [ 𝑠( 𝑖) + 𝛼. b ∗ r( 𝑖)]𝑁
𝑖=1 ∗ 𝑟( 𝑖)
=
1
𝑁
∑ 𝑠(𝑖)𝑁
𝑖=1 ∗ 𝑟( 𝑖) +
1
𝑁
∑ 𝛼. 𝑏𝑁
𝑖=1 ∗ 𝑟(𝑖)2
(2.13)
Để lấy được chuỗi tin đã giấu thì ta cần điều chỉnh sao cho phần thứ nhất của
công thức (2.13) nhỏ hơn so với phần thứ 2. Nếu không thoả mãn yêu cầu này thì tin
nhận được khi giải sẽ bị sai. Giải pháp để đảm bảo yêu cầu phần thứ 2 trong công
49. 37
thức (2.13) lớn hơn là sử dụng phương pháp tiền xử lý trên tín hiệu x(n), chẳng hạn
lọc để loại bỏ s(n) ra khỏi x(n).
Có rất nhiều phương pháp trải phổ đã được nhiều nhóm tác giả nghiên cứu như
[27, 43, 44, 45, 56, 75]. Các phương pháp này rất hay nhưng đều gặp phải những trở
ngại đáng kể, đó là cần tốn rất nhiều thời gian để lọc nhiễu.
2.3.6. Phương pháp điều chỉnh biên độ
Trong phương pháp này, thông tin được nhúng bằng cách thay đổi năng lượng
của 2 hay 3 khối (block). Năng lượng của mỗi block kích thước N được xác định như
công thức (2.14):
𝐸 = ∑ 𝑎𝑏𝑠(𝑆( 𝑖))𝑁
𝑖=1 (2.14)
Nếu các tín hiệu trong khối có biên độ lớn thì năng lượng của khối sẽ cao.
Hình 2.11. Biên độ và năng lượng của tín hiệu [32]
Giả sử có hai block liền nhau được dùng để nhúng thông tin. Ta có thể làm cho
năng lượng của hai block A và B giống hay khác nhau bằng cách chỉnh sửa biên độ
của từng block. Gọi EA và EB lần lượt là năng lượng của block A và block B.
- Nếu E A ≥ EB – ℓ, ta xác định bit giá trị của thông điệp mật m = 0.
- Nếu EA < EB -ℓ, ta xác định bit giá trị thông điệp mật m = 1.
Phương pháp này có hạn chế khi độ lệch hai khối lớn. Giả sử block A có năng
lượng cao hơn nhiều so với block B. Khi bit thông điệp mật m nhúng vào là 0 sẽ
không có vấn đề gì. Ngược lại, nếu giấu bit 1 ta phải điều chỉnh sao cho năng lượng
EB lớn hơn EA. Vì khoảng năng lượng giữa hai block chênh lệch nhau rất lớn, do đó,
sau khi chỉnh sửa, kết quả đạt được không còn tự nhiên như lúc đầu mà rất dễ bị phát
hiện. Vấn đề khó khăn này có thể được giải quyết bằng cách sử dụng đến ba block
thay vì sử dụng hai block, hoặc có thể sử dụng nhiều hơn.