TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐÀO TẠO SAU ĐẠI HỌC TIỂU LUẬN MÔN HỌC KỸ THUẬT TRẢI PHỔ VÀ ỨNG DỤNG ĐỀ TÀI: WATERMARKING TRÊN ÂM THANH SỐ BẰNG KỸ THUẬT TRẢI PHỔ KẾT HỢP MÔ HÌNH
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐÀO TẠO SAU ĐẠI HỌC
TIỂU LUẬN MÔN HỌC
KỸ THUẬT TRẢI PHỔ VÀ ỨNG DỤNG
ĐỀ TÀI:
WATERMARKING TRÊN ÂM THANH SỐ BẰNG KỸ THUẬT
TRẢI PHỔ KẾT HỢP MÔ HÌNH HỆ THÍNH GIÁC
Giảng viên hướng dẫn : TS NGUYỄN HỮU TRUNG
ỨNG DỤNG
Trang 2Abstract: In this paper, we propose a new digital audio
watermarking algorithm It is based on the spread
spectrum theory of CDMA technology associated with
psychoacoustic auditory model The first one generates a
watermark resistant to different removal attacks and the
other shapes and embeds the watermark into the audio
signal while retaining perceptual quality of the signals In
this method, the extraction process doesn’t need original
signals
I GIỚI THIỆU
Ngày nay, bên cạnh những ích lợi to lớn do Internet
mang lại, thì những hành vi xâm phạm bản quyền như
giả mạo, ăn cắp tác phẩm, sử dụng các tác phẩm
không có bản quyền,… đang trở nên phổ biến và ngày
càng tinh vi Theo kết quả thống kê của Hiệp hội bảo
vệ tác quyền thế giới (International Intellectual
Property Alliance - gọi tắt là IIPA), mỗi năm ngành
công nghiệp giải trí nói chung và âm nhạc nói riêng
thất thoát hàng ngàn tỉ đô-la.Các nước đang phát triển
có tỉ lệ vi phạm bản quyền rất cao (trên 90%), trong
đó Việt Nam dẫn đầu (với 92% [1])
Tuy nhiên với các phương pháp bảo vệ dữ liệu
truyền thống như mã hoá, sử dụng khóa đều không
đem lại hiệu quả cao trong tình hình hiện nay So với
các loại truyền thông đa phương tiện khác, âm thanh
số là dạng dữ liệu rất khó bảo vệ bởi đặc tính thu –
phát trực tiếp Trong bối cảnh đó, kỹ thuật
Watermarking ra đời như một cứu cánh
Thực chất vai trò của Watermarking đã được biết
đến từ những năm 1292 khi ngành công nghiệp sản
xuất giấy phát triển ở Fabriano – Ý Trước sự cạnh tranh khốc liệt của hơn 40 xưởng sản xuất cùng nhiều thợ thủ công mài giấy, Watermark đã được đưa vào sản phẩm của từng xưởng để giúp khách hàng phân biệt được định dạng, chất lượng, giá cả của từng loại
II WATERMARKING TRÊN ÂM THANH SỐ
1 Giới thiệu
Các kỹ thuật Watermarking trên âm thanh số hiện nay chủ yếu khai thác khuyết điểm của hệ thính giác người (Human Auditory System - HAS) – đó là đặc tính ít nhạy cảm với những thay đổi nhỏ trên miền thời gian và miền tần số Tewfik và Hamdy [3] đã phân tích các phương pháp ẩn dữ liệu trong tín hiệu
âm thanh số tiêu biểu là: mã hóa LSB, mã hóa pha, trải phổ, ẩn echo Các kỹ thuật LSB tuy không bền vững, nhưng khả năng lưu trữ lớn Mã hóa pha bền vững trước các thao tác lấy mẫu lại, khả năng lưu trữ thấp Bằng cách chèn các echo có biên độ nhỏ vào miền thời gian, phương pháp ẩn echo được đánh giá cao về khả năng bền vững và tỉ lệ nhúng, tuy nhiên khả năng trong suốt kém Được đánh giá cao hơn cả là
kỹ thuật chuyển đổi thông tin với hai hướng tiếp cận chính là kỹ thuật trải phổ và điều biến chỉ mục lượng
tử Ưu điểm quan trọng đem lại thành công cho hướng phát triển này là không sử dụng tín hiệu gốc trong quá trình rút trích và khó có thể dò tìm Watermark bằng các phương pháp phân tích thông kê Tuy nhiên lượng
tử hóa không đem lại hiệu quả cao do khả năng chống tấn công thấp Hiện nay, trải phổ đang là kỹ thuật
Watermarking trên âm thanh số bằng kỹ thuật trải phổ kết hợp mô hình hệ thính giác Audio Watermarking Using Psychoacoustic Auditory Model
and Spread Spectrum Theory
Trang 3được đánh giá cao, được nghiên cứu tập trung phát
triển, và cải tiến
2 Yêu cầu của một bài toán Watermarking trên
âm thanh số
Một thuật toán Watermarking nói chung phải thoả
một số tiêu chí:
− Khả năng lưu trữ: dung lượng thông tin được ẩn,
tính chất này phụ thuộc vào thuật toán nhúng và kích
thước đối tượng chứa
− Tính bảo mật: khóa Watermark phải được phát sinh
một cách bí mật, chỉ người sở hữu mới có quyền truy
cập
− Tính bền vững: khả năng chống chịu tấn công của
Watermark
− Khả năng trong suốt: khả năng che đậy sự tồn tại
của tín hiệu được nhúng (Watermark) trên tín hiệu gốc
trước các cảm nhận của người dùng thông qua 2 cơ
quan thính giác (đối với âm thanh) hoặc thị giác (đối
với ảnh)
Một vài tính chất khác cần xem xét khi xây dựng hệ
thống Watermarking bao gồm: thời gian thực, khả
năng khôi phục, khả năng trong suốt …
III KỸ THUẬT TRẢI PHỔ
1 Định nghĩa trải phổ
Trải phổ là kỹ thuật truyền tín hiệu, được sử dụng
rộng rãi trong truyền thông Trong đó năng lượng của
tín hiệu được “trải” trên một băng thông rộng hơn
nhiều lần lượng băng thông cần thiết tối thiểu nhờ sử
dụng mã giả ngẫu nhiên, mã này độc lập với tín hiệu
thông tin Bên nhận thông tin sẽ tiến hành “giải trải”
bằng cách đồng bộ hóa mã giả ngẫu nhiên
Có 4 kiểu trải phổ: trải phổ trực tiếp, nhẩy tần, nhẩy
thời gian và hệ lai
2 Đặc điểm của trải phổ
Điều chế trải phổ có nhiều tính năng quan trọng như
sau:
− Chống lại được các nhiễu cố ý hay vô tình
− Có khả năng loại trừ ảnh hưởng của truyền sóng
nhiễu tia
− Có khả năng dùng chung băng tần với người sử dụng khác
− Sử dụng được cho thông tin vệ tinh ở chế độ CDMA
− Đảm bảo tính riêng tư nhờ sử dụng các mã trãi phổ giả ngẫu nhiên
− Được phép hoạt động không cần giấy phép ở ba lĩnh vực là: công nghiệp, khoa học, y tế với công suất đến 1W ở các băng tần: 902-928 MHz, 2.4-2.4835GHz, 5.725-5.85 GHz
3 Chuỗi giả ngẫu nhiên ( PN)
Các tín hiệu trải phổ băng rộng tựa tạp âm được tạo
ra bằng các chuỗi giả ngẫu nhiên (PN- Pseudo Noise) Các chuỗi này phải được tạo ra theo một quy luật xác định, nhưng ngẫu nhiên trước các quan sát bình thường
Chuỗi m với độ dài cực đại 2 m được xem là chuỗi giả ngẫu nhiên quan trọng nhất được tạo thành thông qua thanh ghi dịch nối tiếp và các cổng XOR Chuỗi này được xác định bằng một đa thức tạo mã tuyến tính
g(x) bậc m (m > 0)
g x =g x m +g m x − +g m x − + +g x g+
Trong đó g i có giá trị là 0 hoặc 1 và g m = g 0 = 1
Cho g(x) =0 Ta có sự hồi qui như sau:
g x g x g x − g x − g x
Với x k thể hiện đơn vị trễ Nếu g i=1, khoá tương ứng là mạch đóng, ngược lại khoá tương ứng là mạch
mở Thanh ghi dịch là một mạch cơ số có 2 trạng thái
với m phần tử nhớ Vì thế số trạng thái khác 0 cực đại
là 2m - 1
Giả sử s i (j) biểu diễn giá trị phần tử thứ j trong
thanh ghi dịch ở xung đồng hồ thứ i Trạng thái của thanh ghi dịch ở xung đồng hồ i là vectơ có độ dài
hữu hạn si = [s i (1),s i (2),…, s i (m)] Đầu ra ở nhịp xung
thứ i là c i-m = s i (m) Thay vào (2), ta có:
1 1 2 2 1 1
c =g c− +g c− + +g c− − + +g c− (3)
Trang 41 1 2 2 1 1 (mod 2)
c+ =g c+ − +g c+ − + +g −c+ +c (4)
( ) k T c( c)
−∞
=∑ −
(5)
IV MÔ HÌNH GIẢ LẬP HỆ THÍNH GIÁC
Mô hình giả lập thính giác (hình 1) là một thuật
toán cố gắng mô phỏng lại cơ chế cảm nhận âm thanh
của tai người Nó sử dụng các kiến thức tổng hợp từ
nhiều ngành, đặc biệt là hai ngành: sinh lý học và
thính âm học
Trong quá trình xử lý, một cơ chế rất quan trọng
được dùng là “ngụy trang tần số đồng bộ” Mô hình
thính giác xử lý tín hiệu âm thanh để tạo ra ngưỡng
ngụy trang sau cùng Thông tin này dùng để “làm
trơn” tín hiệu Watermark giả âm thanh để tai người
không cảm nhận được Để giảm thời gian xử lý, ta
chia tín hiệu thành nhiều đoạn nhỏ liên tiếp, chồng lấp
một phần lên nhau, mỗi đoạn nhỏ này được gọi là một
frame
s(t): tín hiệu âm thanh trên
miền thời gian
Đầu tiên, tín hiệu âm thanh
được chuyển từ miền thời gian
sang miền tần số thông qua
phép biến đổi Fourier Từng
đại lượng trong mô hình được
xác định như sau:
s jω =FFT s t
( ) HBZ ( )
LBZ
Spz z =∑Sp jω
Spz(z) biểu diễn bằng đơn vị Bark Công thức
chuyển từ tần số (Hz) sang critical band (Bark):
2
z
f
+
LBZ và HBZ: tần số dưới và tần số trên của critical
band z
2
( ) 15.91 7.5( 0.474) 17.5 1 ( 0.474)
Sm(z) = Spz(z) * B(z)
Trên miền tần số, ngưỡng ngụy trang của tín hiệu
được hình thành thông qua thao tác trải ngụy trang trên từng critical band
( ) max( ( ), )
Trong đó: T(z): là ngưỡng nghe sau cùng , TH: (ngưỡng nghe) là giá trị nhỏ nhất có thể nghe được và được tính theo công thức: TH=max(|Ppt(jω)|) Trong đó Ppt(jω) là công suất của tín hiệu thăm dò p(t);
p(t)= sin (2Πsin 4000t) Tnorm(z): là ngưỡng nghe sau khi chuẩn hóa ngưỡng nghe thô Và được tính như sau :
( ) ( )
z
Traw z Tnorm z
P
=
Với Traw (z) là ngưỡng năng lượng thô
log ( ( ))
10
( ) 10
O z
Sm z
Traw z
=
Trong đó: O z( )=α(14.5+z) (1+ −α)5.5;
ax
dBM
SFM SFM
α= ⎛⎜ ⎞⎟
PZ: tổng số điểm trong băng tần z với z là đơn vị ánh xạ từ tần số sang Bark
V WATERMARKING SỬ DỤNG KỸ THUẬT TRẢI PHỔ KẾT HỢP MÔ HÌNH THÍNH GIÁC
1 Ý tưởng thuật toán
Trái ngược với các phương pháp Watermarking truyền thống, trong thuật toán này âm thanh sẽ đóng vai trò nhiễu Jammer 1 và Watermark đóng vai trò tín
1 là nhiễu có cường độ và năng lượng lớn hơn nhiều lần so với tín hiệu
Hình 1.Mô hình giả lập hệ thính giác
Trang 5hiệu truyền giả âm thanh
Thành phần của tín hiệu sau khi Watermark như
hình 2
Hình 2.Thành phần tín hiệu đã được Watermark
Trong mô hình này:
− Phần âm thanh tai người cảm nhận được là nhiễu
Jammer
− Do các thao tác xử lý của người dùng (như thay đổi
tần số, thay đổi số điểm mẫu, thay đổi độ cao, chuyển
đổi định dạng …) chỉ được thực hiện trên tín hiệu âm
thanh – tín hiệu nhiễu Jammer Đặc biệt thuật toán có
khả năng chống tốt trước tấn công dạng chuyển đổi
kiểu file (wav, mp3, wma, mov, …) 2
2 Quá trình tạo Watermark
a) Mô hình
Watermark x(t) được tạo ra thông qua hệ thống mã
hóa DS/BPSK như hình 3
Trong đó:
− s(t): chuỗi bit
Watermark biểu diễn
theo miền thời gian
− w: chuỗi bit
Watermark ở dạng
cực
− m: hệ số lặp
− header: chuỗi
header
− f 0 : tần số sóng
mang dùng trong bộ
điều biến BPSK
− I, H: chiều dài và
2 theo kết quả thực nghiệm (6.2)
chiều rộng của ma trận Interleaver
b) Thuật toán
− Bước 1: Chuyển chuỗi tín hiệu Watermark sang
dạng cực và lặp dãy bit w m lần
− Bước 2: Cho chuỗi bit wR sau khi lặp đi qua ma trận Interleaver (H dòng và I cột) với đầu vào lấy theo
cột và đầu ra lấy theo dòng
− Bước 3: Thêm header vào đầu dãy wI
− d = header + wI
− Bước 4: Chuyển biểu diễn chuỗi bit d sang miền
thời gian
− Bước 5: Điều chế BPSK tín hiệu d(t)
− Bước 6: Trải chuỗi tín hiệu sau khi điều chế s(t)
x(t) = s(t).*c(t)
c(t): chuỗi PN trên miền thời gian
3 Quá trình nhúng Watermark
a) Mô hình quá trình nhúng như hình 4
x(t): thông tin Watermark được tạo thành ở 5.1 T: là ngưỡng ngụy trang được tạo thành trong 4 Fz: tần số sóng mang
b) Thuật toán
− Bước 1: Chia dãy tín hiệu x(t) thành N frame, với mỗi frame có kích thước là nBlock
− Bước 2: Áp dụng phép biết đổi FFT cho từng frame
Hình 3 Sơ đồ tạo Watermark
Hình 4 Sơ đồ nhúng Watermark
Trang 6đã cho qua cửa sổ Hamming
Xw = fft(frame[i].*hamming(nBlock))
− Bước 3: Chuyển từ miền tần số sang miền Bark theo
công thức (5) và tính theo tỉ lệ Bark
− Bước 4: Tìm trong dãy tín hiệu âm thanh chứa các
thành phần nằm trên ngưỡng T, lưu lại vị trí các điểm
đó vào tập above Chọn trong dãy tín hiệu Sw các
điểm tương ứng trong above
Xnew[above] = Xw[above]
− Bước 5: Trải tín hiệu trên Fz
Xnew = Xnew * Fz
− Bước 6: Kết hợp tín hiệu âm thanh và tín hiệu
Watermark
OUT = Xnew + Snew
− Bước 7: Biến đổi về miền thời gian
out = ifft(OUT)
4 Quá trình rút trích Watermark
Thuật toán
Gồm 3 giai đoạn chính:
Giai đoạn 1: Lọc bỏ tín hiệu âm thanh và tạo tín
hiệu R final
− Bước 1: Lọc lấy thành phần nằm dưới ngưỡng T
(lọai bỏ âm thanh)
R(below) = Sw(below)
− Bước 2: Lượng tử
hóa
[ ] 1/ max ( )
Fz i = R i
( ) ( )* [ ]
R i =R i Fz i ,
[1, ]
∀ ∈
− Bước 3: Chuyển R về
miền thời gian
Giai đoạn 2: Dò tìm
Header
− Bước 1: Điều chế
BPSK tín hiệu dt
− Bước 2: Chia thành
nhiều frame nhỏ và áp
dụng FFT cho từng
frame
R = fft(Rfinal[i])
− Bước 3: Xây dựng bộ lọc phân giải cao HDRET và
áp dụng vào R để dò tìm ra tín hiệu
DET = R*HRDET det = real(ifft(DET))
− Bước 4: Dò tìm điểm đầu tiên (vị trí bắt đầu rút trích) của chuỗi tín hiệu Watermark
[dbValue, nPos] = max(det)
Giai đoạn 3: Tổng hợp Watermark:
− Bước 1: Xóa phần header của tín hiệu sau khi dò tìm được
− Bước 2: Cho tín hiệu wR qua ma trận giải mã
Interleaver với đầu vào theo dòng và đầu ra theo cột
− Bước 3: Rút trích lại chuỗi nhị phân
VI SO SÁNH ĐÁNH GIÁ
Thuật toán này được tác giả cài đặt trên môi trường Matlab 7.0 Thuật toán gồm hai module chính: module tạo và nhúng Watermark vào tín hiệu âm thanh, module rút trích Watermark Trước khi rút trích, file
âm thanh sau khi đã Watermark phải trải qua nhiều kiểu tấn công khác nhau để đánh giá mức độ bền vững, cũng như đã phải được kiểm tra tính trong suốt
Độ bền vững và tính trong suốt chính là hai tiêu chí
Hình 5 Mô hình quá trình rút trích s(t) là tín hiệu âm thanh cần rút trích Watermark
Trang 7chính trong phần so sánh đánh giá Do đây là ứng
dụng về Watermarking, nên tiêu chí về kích thước
thông tin nhúng vẫn được quan tâm, nhưng không
phải là yếu tố cơ bản
Bộ dữ liệu mà tác giả dùng để kiểm tra là bộ dữ liệu
chuẩn, được lấy từ [5] Dữ liệu kiểm tra bao gồm 10
tập tin, tần số lấy mẫu là 44,1 kHz, stereo, số bit mẫu
là 16 bits Đây là bộ dữ liệu miễn phí, và được nhiều
người sử dụng Ngoài ra, ta có tham khảo bộ dữ liệu
JASRAC (The Japanese Society for Rights of
Authors, Composers and Publishers [6]), tạm dịch là
“Hiệp hội bảo vệ bản quyền các tác giả, các nhà sáng
tác, và các nhà xuất bản của Nhật”
1 Kiểm tra tính trong suốt
Phương pháp Watermarking được đề nghị hoàn toàn thỏa mãn hai dạng kiểm tra sau:
Người kiểm tra sẽ nghe đoạn âm thanh trước khi nhúng watermark và sau khi nhúng watermark, họ không phân biệt được sự thay đổi
Kiểm tra phổ của file âm thanh trước khi nhúng và sau khi nhúng (tác giả sử dụng chương trình Sound Forge 8.0 để kiểm tra) Kết quả là phổ của chúng gần như hoàn toàn giống nhau
Bảng 1 So sánh kết quả rút trích Watermark Phương pháp Trải phổ + M.h thính giác Điều chế Dither STDM Hide4PGP MP3Stego Steghide
Đổi định dạng
(mp3, wma, …) Thành công Thất bại Thất bại Thất bại Thất bại Thất bại
Đổi tần số lấy mẫu
(44.1 kHz → 32 kHz) Thành công
Thành công Thất bại Thất bại V Thất bại Đổi số bit mẫu
(16 bits → 8 bits) 70% Thất bại Thất bại Thất bại V Thất bại
Đổi độ lớn điểm mẫu Thành công Thất bại Thất bại Thất bại V Thành công Lọc thông cao 90% Thất bại Thất bại Thất bại V Thất bại
Thêm nhiễu Gauss Thành công Thành
công Thất bại Thất bại V Thất bại Kích thước thông điệp
mật tối đa 1 kB > 1kB > 1kB > 1kB > 1kB 0.5 kB
(a) File trước khi nhúng (b) File sau khi nhúng (c) Phổ của (a ) & (b) trên cùng 1 cửa sổ
Hình 6 Phổ của file âm thanh trước và sau khi nhúng
Trang 82 Kiểm tra tính bền vững
Trước khi rút trích, file âm thanh sau khi nhúng
Watermark phải trải qua nhiều kiểu tấn công khác
nhau trên đường truyền, như: chuyển đổi định dạng
file (wav, cda, mp3, au, mov, wma, …), biến đổi biên
độ, đổi số bit lấy mẫu, chuyển đổi tần số, lọc thông
cao, hay thêm nhiễu Gauss Các thao tác biến đổi trên
âm thanh số được thực hiện trên phần mềm Sound
Forge 8.0 (chuyển đổi định dạng file, biến đổi biên
độ), Sound Recorder (đổi tần số, đổi bit mẫu), Cool
Edit Pro 2.1 (lọc thông cao) Phương pháp
Watermarking này có khả năng chống lại tất cả các
dạng tấn công này
Bảng 1 là sự so sánh kết quả rút trích Watermark
khi bị tấn công của phương pháp này và một số phần
mềm đã có [7 – 10]
− Thành công: Watermark sau khi rút trích không bị
thay đổi nội dung
− Thất bại: Watermark sau khi rút trích bị thay đổi
nội dung
− X%: Watermark sau khi rút trích X% nội dung
không bị thay đổi
− V: không kiểm tra được
VII KẾT LUẬN
Watermarking là hướng nghiên cứu mới, đặc biệt là
trên âm thanh Tiềm năng và nhu cầu sử dụng của
Watermarking rất lớn nhất là trong bảo vệ bản quyền
Yêu cầu quan trọng nhất với các thuật toán
Watermarking là đảm bảo được tính trong suốt và khả
năng bền vững trước các tấn công So với các phương
pháp trước đây như thay thế bit ít quan trọng nhất,
biến đổi trên miền, echo…, phương pháp của chúng
tôi đã đảm bảo tốt các yêu cầu trên Tuy nhiên khuyết
điểm tồn tại của hệ thống là:
− Tín hiệu thăm dò sử dụng trong mô hình thính giác
được xây dựng một cách chủ quan dựa trên tác động
của áp suất âm lên tần số nghe
− Tồn tại một xác suất lỗi nhỏ vốn có trong mô hình
trải phổ
Chúng tôi tin rằng nếu đem ứng dụng trong thực tế,
hệ thống sẽ đem lại hiệu quả kinh tế cao không chỉ trong lĩnh vựa bảo vệ bản quyền mà còn trong lĩnh vực truyền thông mật
TÀI LIỆU THAM KHẢO
[1] Các bài viết, nhận xét và thông kê của Hiệp hội bảo vệ bản quyền thế giới http://www.iipa.com
[2] Ricardo A Garica, “Digital Watermarking of audio signals using a psychoacoustic auditory model and Spread Spectrum Theory”, Artech House, 2000
[3] L Boney, H Tewfik and N Hamdy, “Digital Watermarks for Audio Signals” IEEE Int.Conf on
Multimedia Computing and Systems, Hiroshima, Japan, June 1996
[4] Stefan Katzenbeisser and Fabien Petitcolas,
“Information Hiding Techniques for Steganography and Digital Watermarking”, ISBN 1-58053-035-4, 2000
[5] Bộ dữ liệu mẫu http://www.tnt.uni-hannover.de/ project/mpeg/audio/sqam/
[6] 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 Nhật http://www.jasrac.or.jp/ejhp/
[7] Hide4PGP: http://www.heinz-repp.onlinehome.de/ Hide4PGP
[8] EZStego (Stego Online, Stego Shareware)
http://www.stego.com
[9] MP3Stego (Fabien A P Petitcolas, đại học Cambridge)
http://www.cl.cam.ac.uk/~fapp2/steganography /mp3stego/ [10] Steghide http://steghide.sourceforge.net