Tải bản đầy đủ (.docx) (22 trang)

Tìm hiểu các kĩ thuật xác thực bảo vệ bản quyền

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.03 MB, 22 trang )

Trường đại học Bách Khoa Hà Nội
Viện công nghệ thông tin và truyền thông
----------***----------

Báo cáo: Xử lý dữ liệu đa phương tiện

Đề tài:

Tìm hiểu các kĩ thuật xác thực bảo vệ bản quyền
nội dung số (Content protection-Watermarking)
và áp dụng cho ảnh số
Giảng viên hướng dẫn:
Sinh viên thực hiện:

PGS.TS. Nguyễn Thị Hoàng Lan
Nguyễn Đức Chiến 20111249
Phạm Thiện Doanh 20111333

Hà Nội 5/2015
1


Mục lục

Lời nói đầu
Công nghệ thông tin và đặc biệt là sự phát triển của hệ thống mạng máy tính
đã tạo nên môi trường mở và là phương tiện trao đổi, phân phối tài liệu một cách
tiện lợi, nhanh chóng. Tuy nhiên cũng đặt ra một vấn đề về bảo vệ tài liệu, ngăn
chặn việc đánh cắp và sao chép tài liệu một cách bất hợp pháp, vấn đề an toàn và
bảo mật thông tin hiện nay luôn nhận được sự quan tâm đặc biệt của nhiều nhà
nghiên cứu trong nhiều lĩnh vực. Một giải pháp đang được sử dụng và tỏ ra hiệu


quả cho việc đảm bảo an toàn thông tin là giấu tin vào đối tượng khác. Đối tượng
được áp dụng đê chứa tin phô biến nhất là ảnh. Giải pháp giấu tin được đưa ra nhằm
mục tiêu chính đó là bảo mật cho chính đối tượng được dùng để chứa tin (thủy vân số).
Thủy vân trên ảnh số (watermarking) là kỹ thuật nhúng một lượng thông tin
2


số vào một bức ảnh số sao cho người không được phép, khó có thể lấy được thông
tin ra khỏi ảnh mà không phá hủy chính ảnh gốc. Trong kỹ thuật thủy vân số thì
thông tin nhúng được gọi là thủy vân. Thủy vân có thể là một chuỗi các ký tự hay
một hình ảnh nào đó.
Vì vậy đề tài nhằm tìm hiểu chung về thủy vân số, các phương pháp thủy vân nói
chung và phương pháp thủy vân sử dụng phép biến đổi DCT nói riêng.

Phân công công việc:


Phạm Thiện Doanh: Tìm hiểu chung về Watermarking
1. Giới thiệu chung về Watermarking
2. Phân loại Watermarking
3. Một số phương pháp Watermarking



Nguyễn Đức Chiến: Phân tích và thử nghiệm ứng dụng một kỹ thuật Image
Watermarking đối với ảnh JPEG.

3



Phần 1 Tổng quan về Watermarking
1.1 Khái quát về vấn đề giấu thông tin
Cuộc cách mạng thông tin kỹ thuật số đã đem lại những thay đổi sâu sắc trong xã
hội và trong cuộc sống của chúng ta. Bên cạnh những thuận lợi mà thông tin kỹ thuật số
mang lại cũng có những thách thức và cơ hội mới. Sự ra đời những phần mềm có tính
năng rất mạnh, các thiết bị mới như máy ảnh kỹ thuật số, máy quét chất lượng cao, máy
in, máy ghi âm kỹ thuật số v.v.. đã thúc đẩy khả năng sáng tạo, xử lý và thưởng thức các
dữ liệu đa phương tiện. Mạng Internet toàn cầu đã tạo ra những cơ cấu ảo - nơi diễn ra
các quá trình trao đổi thông tin trong mọi lĩnh vực chính trị, quân sự, quốc phòng, kinh tế,
thương mại. Và chính trong môi trường mở và tiện nghi như thế xuất hiện những vấn
nạn, tiêu cực đang rất cần các giải pháp hữu hiệu nhằm đảm bảo an toàn thông tin, chống
lại các nạn ăn cắp bản quyền, xuyên tạc thông tin, truy nhập thông tin trái phép,.... Việc
tìm giải pháp cho những vấn đề này không chỉ giúp chúng ta hiểu thêm về công nghệ
phức tạp đang phát triển rất nhanh này mà còn tạo ra những cơ hội phát triển mới.

4


Ý tưởng về che giấu thông tin đã có từ hàng nghìn năm về trước 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. Mãi cho tới vài thập
niên gần đây, giấu thông tin mới nhận được sự quan tâm của các nhà nghiên cứu và các
viện công nghệ thông tin với hàng loạt công trình nghiên cứu giá trị. Cuộc cách mạng số
hoá thông tin và sự phát triển nhanh chóng của mạng truyền thông là nguyên nhân chính
dẫn đến sự thay đổi này. Những phiên bản sao chép hoàn hảo, các kỹ thuật thay thế, sửa
đổi tinh vi, cộng với sự lưu thông phân phối trên mạng của các dữ liệu đa phương tiện đã
sinh ra nhiều vấn đề nhức nhối về nạn ăn cắp bản quyền, phân phối bất hợp pháp, xuyên
tạc trái phép...
Giấu thông tin trong ảnh là một bộ phận chiếm tỉ lệ lớn nhất trong các chương trình
ứng dụng, các phần mềm, hệ thống giấu tin trong đa phương tiện bởi lượng thông tin
được trao đổi bằng ảnh là rất lớn.

Giấu thông tin trong ảnh cũng đóng vai trò hết sức quan trọng trong hầu hết các ứng
dụng bảo vệ an toàn thông tin như: xác nhận thông tin, xác định xuyên tạc thông tin, bảo
vệ bản quyền tác giả, điều khiển truy cập, giấu thông tin mật.. Vì thế kĩ thuật
Watermarking ra đời.

1.2 Một số khái niệm về giấu tin
1.2.1 Khái niệm watermarking
Watermarking hay còn gọi là kĩ thuật thủy vân số:Là kĩ thuật nhúng một lượng
thông tin số vào một bức ảnh số dùng để bảo vệ đối tượng chứa thông tin giấu.
Phương tiện chứa (host signal): là phương tiện gốc được dùng để nhúng thông
tin.Trong giấu thông tin trong ảnh thì nó mang tên ảnh chứa hay ảnh gốc (original
image), còn trong audio là audio chứa v.v.. Đôi khi ta cũng gọi phương tiện chứa là môi
trường (text, audio, video, ảnh).
Thông tin giấu (embedded data) hay còn gọi là thủy vân: là lượng thông tin được
nhúng vào trongphương tiện chứa. Thông tin giấu là một lượng thông tin mang một ý
nghĩa nào đó như ảnh, logo, đoạn văn bản tuỳ thuộc vào mục đích của người sử dụng.
Thông
tin
sẽ được giấu vào trong phương tiện chứa nhờ một bộ nhúng, bộ nhúng là những chương
trình, triển khai các thuật toán để giấu. Sau khi giấu tin ta thu được phương tiện chứa bản
tin đã giấu và phân phối sử dụng trên mạng.

1.2.2 Một số loại thủy vân


Thủy vân bền vững: thường được ứng dụng trong bảo vệ bản quyền.Thủy vân
được nhúng trog sản phẩm như một hình thức dán tem bản quyền.Trong trường
hợp này,thủy vân phải tồn tại bền vững cùng với sản phẩm nhằm chống việc tẩy
xóa,làm giả hay biến đổi phá hủy thủy vân.
5








Thủy vân dễ vỡ: là kĩ thuật nhúng thủy vân vào trong một đối tượng sản phẩm sao
cho khi phân bố sản phẩm trong môi trường mở nếu có bất kì phép biến đổi nào
làm thay đổi sản phẩm gốc thì thủy vân đã giấu trong đối tượng sẽ không còn
nguyên vẹn khi đã giấu.
Thủy vân ẩn: là loại thủy vân dùng mắt thường không nhận ra được thủy vân ẩn.
Thủy vân hiện: là loại thủy vân hiện ran gay trên sản phẩm mọi người đều có thể
nhìn thấy được.

1.2.3 Phân biệt giữa giấu tin mật (Steganography) và thủy vân số
(Watermarking)
-

-

-

-

Steganography
Tập trung vào việc càng giấu được
nhiều thông tin càng tốt,ứng dụng
trong truyền dữ liệu mật
Cố gắng làm ảnh hưởng ít nhất đến

chất lượng đối tượng gốc để không
bị chú ý đến dữ liệu đã được giấu
trong đó
Thay đổi đối tượng gốc cũng làm
cho dữ liệu giấu bị sai lệch(ứng
dụng trong xác thực thông tin)
Bảo mật cho dữ liệu cần giấu.Khía
cạnh này tập trung vào kĩ thuật giấu
tin mật

-

-

-

Watermarking
Không cần giấu nhiều thông tin chỉ
cần lượng thông tin nhỏ đặc trưng
cho bản quyền người sở hữu
Trong trường hợp thủy vân nhìn
thấy thì thủy vân sẽ hiện ra
Thủy vâ phải bền vững trước mọi
tấn công có chủ đích hoặc không có
chủ đích vào sản phẩm
Thủy vân số đánh dầu vào chính đối
tượng,nhằm khẳng định bản quyền
sở hữu hay phát hiện xuyên tạc
thông tin


1.3 Mô hình kĩ thuật Watermarking cơ bản và các tính chất,đặc
trưng của Watermarking
1.3.1 Mô hình Watermarking cơ bản

6


Hình 1.1: Mô hình Watermarking cơ bản
Trong hình:
I là môi trường giấu tin.
M là thông tin cần giấu.
E là bộ nhúng chứa thuật toán để giấu tin.
S là dữ liệu mang tin mật.
C là môi trường truyền dữ liệu.
Hình vẽ trên biểu diễn quá trình giấu thông tin cơ bản.Đối tượng được dùng làm
môi trường giấu tin như văn bản,hình ảnh,audio,video,..Dữ liệu giấu là một lượng thông
tin mang một ý nghĩa nào đó tùy thuộc vào mục đích người sử dụng.Thông tin sẽ được
giấu vào phương tiện chứa nhờ một bộ nhúng,bộ nhúng là một chương trình thuật toán
dùng để giấu tin.Sau khi giấu tin,ta thu được phương tiện chứa đã mang thông tin và phân
phối sử dụng trên mạng

1.3.2 Tính chất, đặc trưng của kĩ thuật watermarking
-

-

-

Giấu tin phụ thuộc vào ảnh: Kĩ thuật giấu tin trong ảnh phụ thuộc vào các loại ảnh
khác nhau.Đối với ảnh đen trắng,xám hay ảnh màu thì có các kĩ thuật riêng do các

loại ảnh có các đặc trưng khác nhau.
Giấu tin lợi dụng khả năng tri giác của con người: Giấu tin trong ảnh cũng gây ra
những thay đổi trên dữ liệu gốc.Dữ liệu được quan sát bằng hệ thống tri giác của
con người,nên các kĩ thuật giấu tin phải đảm bảo yêu cầu cơ bản là những thay đổi
trên ảnh phải rất nhỏ sao cho bằng mắt thường không nhận ra được sự thay đổi đó
mới đảm bảo được sự an toàn cho thông tin giấu.
Giấu tin không làm thay đổi kích thước ảnh.
Đảm bảo chất lượng ảnh sau khi giấu tin: Đây là yêu cầu quan trọng trong giấu tin
trog ảnh.sau khi giấu tin bên trong,ảnh phải đảm bảo yêu cầu không bị biến đổi,để
có thể không bị phát hiện dễ dàng so với ảnh gốc.

1.4 Những ứng dụng của kĩ thuật Watermarking
Trong lĩnh vực watermarking, các điều kiện một hệ thống watermarking cần phải
thỏa luôn tùy thuộc vào ứng dụng của nó. Vì vậy, trước khi xét đến các điều kiện, cũng
như cách thiết kế hệ thống watermarking cần xét đến các ứng dụng của kỹ thuật
watermarking.

1.4.1 Bảo vệ quyền sở hữu (Copyright Protection)
Đây là ứng dụng cơ bản nhất của kỹ thuật digital watermarking. Mục
đích của watermarking cho bảo vệ quyền tác giả là nhúng thông tin xác nhận bản quyền
7


(watermark) vào dữ liệu ảnh số để có thể nhận biết người chủ bản quyền.
Ngoài mục đích xác nhận người chủ bản quyền còn để kiểm tra kín công việc của người
mua (truy xét các bản sao không hợp lệ). Dữ liệu nhúng có thể là một số đăng ký, một
đoạn thông điệp, logo hình hoặc là một mẫu duy nhất. Các ứng dụng loại này yêu cầu
watermark phải được bảo đảm an toàn và sử dụng phương pháp phát hiện watermark đã
giấu mà không cần thông tin gốc.
Watermark số có thể nhận thấy được hoặc không nhìn thấy được. Watermark ảnh

nhìn thấy được thường là logo của người bản quyền, có thể dễ dàng đặt vào ảnh nhưng
khó gở bỏ. Tuy nhiên nhiều ứng dụng cần watermark không nhận thấy.

1.4.2 Xác nhận thông tin ảnh và tình trạng nguyên vẹn dữ liệu
(Image Athentication and Data Integrity)
Một ứng dụng khác của watermarking là xác nhận đúng ảnh và xác nhận sự giả
mạo. Watermark được sử dụng để phát hiện nó có bị sửa đổi hay không và có thể định vị
được vị trí sửa đó. Ảnh số dễ bị sửa đổi từ ứng dụng xử lý ảnh phức tạp. Watermark được
sử dụng để xác nhận tính xác thực của ảnh. Đối với ứng dụng loại này watermark cần
phải yếu (fragile) không cần bền vững trước các phép xử lý trên ảnh đã được giấu tin để
bất cứ sự sửa đổi nào trên ảnh sẽ phá hủy watermark (phát hiện sự sửa đổi).

1.4.3 Lấy dấu vân tay hay dán nhãn (Fingerprinting and Labeling)
Nhãn ảnh là một ứng dụng mà thông tin về nội dung ảnh được mã hóa thành
watermark và được chèn vào ảnh. Mục tiêu của ứng dụng này tập trung vào vấn đề truyền
thông tin, về tính hợp pháp của người nhận hơn là tính hợp pháp của nguồn dữ liệu số,
nhằm xác định các bản sao của dữ liệu được phân phối chỉ có một. Việc này rất hữu dụng
trong việc giám sát và theo dõi các bản sao được sản xuất bất hợp pháp. Nó tương tự như
số seri trong sản phẩm phần mềm, mỗi một sản phẩm sẽ mang một watermark riêng, loại
ứng dụng này được gọi là “fingerpringting” và nó liên quan đến việc gắn những
watermark khác nhau thực hiện dễ dàng và độ phức tạp thấp. Watermark được sử dụng
trong lĩnh vực này cũng đòi hỏi tính bền vững cao trước những tấn công cố ý.

1.4.4 Kiểm tra giả mạo (Tamper Proofing)
Digital watermarking có thể được dùng để chống sự giả mạo. Nếu có bất cứ sự thay
đổi nào về nội dung của các digital media thì watermark này sẽ bị huỷ đi.Do đó rất khó
làm giả các digital media có chứa watermark.

1.4.5 Truyền tin bí mật (Concealed Communication)
Vì digital watermarking là một dạng đặc biệt của kỹ thuật che giấu dữ liệu

(steganography) nên người ta có thể dùng để truyền các thông tin bí mật.

8


1.5 Phân loại kĩ thuật Watermarking
1.5.1 Phân loại theo miền nhúng

Hình 1.2: Phân loại watermarking theo miền nhúng

1.5.2 Kỹ thuật watermarking có thể chia thành 4 loại theo đúng loại
tài liệu nhúng watermark bao gồm:
-

Ảnh
Video
Văn bản
Âm thanh

1.5.3 Theo hệ thống nhìn của con người kỹ thuật watermarking số
có thể chia thành các loại sau:





Watermark có thể nhìn thấy (Visible Watermark)
Watermark bền vững không nhìn thấy (Invisible-Robust Watermark)
Watermark yếu không nhìn thấy (Invisible-Fragile Watermark)
Watermark kép (Dual Watermark)

9


1.6 Một số phương pháp Watermarking
1.6.1 Tiếp cận trên miền không gian của ảnh
Đây là hướng tiếp cận cơ bản và tự nhiên.Tác động lên miền không gian ảnh là tác
động lên điểm ảnh, thay đổi trực tiếp các giá trị của điểm ảnh.
Phương pháp phổ biến là tác động đến bit ít quan trọng nhất của mỗi điểm
ảnh(LSB)
Ý tưởng cơ bản:
-

Chọn ra từ mỗi điểm ảnh các bit có ảnh hưởng ít nhất tới việc quyết định màu sắc
của điểm ảnh
Việc xác định LSB của mỗi điểm ảnh phụ thuộc vào định dạng của ảnh và số bit
màu dành cho mỗi điểm ảnh đó

Cách thực hiện:
-

-

1.6.2

Chia ảnh A (ảnh gốc) thành làm N khối có chiều dài bằng nhau hoặc gần bằng
nhau.
Trên mỗi khối: lấy ngẫu nhiên 1 bit có trọng số nhỏ nhất của 1 điểm ảnh thuộc
khối đó (có thể chọn cố định bit có trọng số nhỏ nhất của byte đầu tiên, tuy nhiên
làm theo cách này thì watermark dễ bị phá hủy hơn).
Trên mỗi khối thay thế 1 bit được chọn bằng 1 bit trong watermark W sẽ thu được

một hình ảnh A’ và một khoá key, khoá này cho biết vị trí của bit trong khối được
thay thế.

Tiếp cận trên miền tần số
Sử dụng các kĩ thuật biến đổi để chuyển từ miền không gian sang miền tần số.

Một số kĩ thuật biến đổi:
-

Biến đổi cosin rời rạc(DCT)
Biến đổi Wavelet rời rạc(DWT)
Biến đổi Fourier(DFT)

Watermarking trên miền biến đổi DCT:
Đầu vào
• Một chuỗi các bit thể hiện bản quyền
• Một ảnh

Đầu ra
• Một ảnh sau khi nhúng thủy vân
10


• Khóa để giải mã

Sơ đồ quá trình Watermarking dùng biến đổi DCT

Phần 2 Phân tích và thử nghiệm ứng dụng một kỹ
thuật Image Watermarking đối với ảnh JPEG
2.1 Biến đổi DCT

2.1.1 Biến đổi DCT thuận và nghịch
Vì ảnh gốc có kích thước rất lớn nên trước khi biến đổi DCT, ảnh được phân chia
thành các khối, mỗi khối này có kích thước 8x8 pixel và biểu diễn các mức xám của 64
điểm ảnh, các mức này là các số nguyên dương có giá trị từ 0 đến 255. Việc phân khối
này sẽ giảm được thời gian tính toán các hệ số chung, mặt khác biến đổi cosin đối với các
khối nhỏ sẽ làm tăng độ chính xác khi tính toán với dấu phẩy tĩnh, giảm thiểu sai số do
làm tròn gây ra.
11


Biến đổi DCT là công đoạn chính trong các phương pháp nến sử dụng phép biến
đổi. Hai công thức dưới đây minh họa cho 2 phép biến đổi DCT thuận nghịch đối với mỗi
ảnh có kích thước 8x8.
Giá trị z(n1, n2) biểu diễn các mức xám của ảnh trong miền không gian, X(k 1, k2) là
các hệ số sau biến đổi DCT trong miền tần số.

2.1.2 Đặc điểm của phép biến đổi DCT trên ảnh
Phép biến đổi DCT trên ảnh:
-

-

-

-

-

Thể hiện đặc tính nội dung về tần số của thông tin trên ảnh. Hệ số góc trên là lớn
và đặc trưng cho giá trị trung bình thành phần một chiều gọi là hệ số DC. Các hệ

số khác có giá trị nhỏ hơn biểu diễn cho các thành phần tần số cao theo hướng
ngang và dọc gọi là hệ số AC.
Bản thân phép biến đổi DCT không nén được dữ liệu vì sinh ra 64 hệ số.
Theo nguyên lí chung, khi biến đổi chi tiết giữa các điểm ảnh càng lớn theo một
hướng nào đó trong các khối điểm ảnh, hướng ngang hoặc dọc hoặc theo đường
chéo thì tương ứng theo hướng đó cá hệ số DCT cũng lớn.
DCT làm giảm độ tương quan không gian của thông tin trong khối ảnh. Điều đó
cho phép biểu diễn thích hợp ở miền DCT do các hệ số DCT có xu hướng có phần
dư thừa ít hơn. Hơn nữa, các hệ số DCT chứa thông tin về nội dung tần số không
gian của thông tin trong khối. Nhờ các đặc tính tần số không gian của hệ thống
nhìn của mắt người, các hệ số DCT có thể được mã hóa phù hợp, chỉ các hệ số
DCT quan trọng nhất mới được mã hóa để chuyển đổi.
Hệ số DCT có thể chia làm 3 miền: miền tần số thấp, miền tần số cao và miền tần
số giữa. Miền tần số thấp chứa các thông tin quan trọng ảnh hưởng đến tri giác.
Miền tần số cao thường không mang tính tri giác cao, khi nén JPEG thường loại
bỏ thông tin trong miền này.
Trong các thuật toán thủy vân, miền hệ số DCT tần số cao thường không được sử
dụng do nó thường không bền vừng với các phép xử lý ảnh, hoặc nền ảnh JPEG.
Miền tần số thấp cũng khó được sử dụng do một sự thay đổi dù nhỏ trong miền
12


này cũng dẫn đến chất lượng tri giác của ảnh. Vì vậy, miền tần số ở giữa thường
hay được sử dụng nhất và cũng cho kết quả tốt nhất.

2.2 Kỹ thuật thủy vân sử dụng phép biến đổi DCT
2.2.1 Quá trình nhúng thủy vân
Thuật toán dưới đây sẽ sử dụng phương pháp nhúng thuỷ vân trong miền tần số
của ảnh, giải tần được sử dụng để chứa tín hiệu thuỷ vân là miền tần số giữa của một khối
DCT 8x8. Trong đó, các khối DCT 8x8 là những khối ảnh cùng kích thước đã được chọn

ra ngẫu nhiên từ ảnh ban đầu và được áp dụng phép biến đổi cosin rời rạc DCT để
chuyển sang miền tần số. Mỗi tín hiệu thuỷ vân sẽ được chứa trong một khối.
Đầu vào
• Một chuỗi các bit thể hiện bản quyền
• Một ảnh

Đầu ra
• Một ảnh sau khi nhúng thủy vân
• Khóa để giải mã

13


2.2.2 Sơ đồ mô tả quá trình

Hình 2.1: Sơ đồ kỹ thuật thủy vân sử dụng phép biến đổi DCT
Mô tả:
Ảnh gốc sao khi được tách khối sẽ chia thành các khối ảnh 8x8. Sau đó các khối
ảnh sẽ được biến đổi DCT thành các khối DCT. Thủy vân sẽ được chuyển thành các bit
để nhúng vào khối DCT bằng việc thay đổi các hệ số DCT, từ đó ta thu được các khối đã
nhúng thủy vân. Các khối đã nhúng thủy vân sẽ được biến đổi IDCT thu được sác khối đã
biến đổi ngược DCT sau đó được ghép lại với nhau để thành các ảnh hoàn chỉnh đã
nhúng thủy vân.

14


2.2.3 Các bước thực hiện
Bước 1: Ảnh F có kích thước MxN sẽ được chia thành (MxN) / 64 khối 8 x8, mỗi
bit của thủy vân sẽ được giấu trong khối Bk.

Bước 2: Chọn một khối bất kì Bk và biến đổi DCT khối đó thu được Ck .
Ck=DCT(Bk)
Bước 3: Chọn hai hệ số ở vị trí bất kì trong miền tần số giữa của khối C k, gọi hai hệ
sổ đó là Ck[i, j] , Ck[p, q].
Bước 4: Tính độ lệch d = ||Ck[i, j]| - |Ck[p, q]|| mod a. Trong đó a là một tham số
thỏa mãn a = 2 (2t + 1), với t là một số nguyên dương.
Bước 5: Bit bk =1 sẽ được nhúng vào khối Ck sao cho thỏa mãn điều kiện sau:

Bước 6a: Nếu d<2t+1 và bk =1 thì hệ số DCT Ck[i, j] hoặc Ck[p, q] có giá trị tuyệt
đối lớn hơn sẽ bị thay đổi để thỏa mãn theo công thức sau:
Max (|Ck[i, j] |, |Ck[p, q] |) + (INT(0.75a) - d)
Hệ số được chọn sẽ được cộng thêm một lượng là (INT(0.75a)-d)
Min (|Ck[i, j] |, |Ck[p, q] |) - (INT(0.75a) + d)
Hệ số được chọn sẽ được trừ đi 1 lượng là (INT(0.75a) + d)
Bước 6b: Nếu và bk =0 thì hệ số DCT Ck[i, j] hoặc Ck[p, q] có giá trị tuyệt đối lớn
hơn sẽ bị thay đổi để thỏa mãn theo công thức sau:
Max (|Ck[i, j] |, |Ck[p, q] |) - (d - INT(0.75a))
Hệ số được chọn sẽ bị trừ đi 1 lượng là (d - INT(0.75a)
Min (|Ck[i, j] |, |Ck[p, q] |) + ( INT(0.75a) - d)
Hệ số được chọn sẽ được cộng thêm 1 lượng là ( INT(0.75a) - d)
Bước 7: Thực hiện phép biến đổi ngược IDCT đối với khối Ck: B’k = IDCT(Ck)
Bước 8: Ghép các khối ảnh B’k để được ảnh chứa thủy vân F’.
Ví dụ:
Giả sử ta cần giấu một bit thủy vân b = 0 vào khối B 8 X 8 được cho dưới đây.
Ta chọn a = 26 = 2(2 X 6 + 1 ), do đó t = 6.

15


33


84

58

15

159

183

146

75

66
15

28

37

161

157

136

134


29

59

44

65

192

144

139

15

15

15

67

113

166
123

192

170


88
19

76

15

102

104

199

177

10

15

218

168
140

198

164

141


15

15

15

179

241

235

190

107

15

17

89

181

168

234

190


190

Biến đôi DCT(B) ta thu được khối c như sau:
869

-438

-110
30

64

-102
143

-4

-37

-18
-7

-7

27

-3

-2

-27

22
109

-10
-69

-26
-8
5

-23
12
42

5
33

115

18
-78

7

-62

-41


-62

38

-67
-3

8
57

-2
55
-26

-57

-33

41

6

9

9

-29

33


-46

-13

33

6
38

-10
-42

28

5

-31

-24

40

-42

Trong miền tần số giữa của khối c, ta chọn hai hệ số bất kỳ, giả sử là C[2,3] = 143
và C[6,2] = -27
Tính độ lệch d = II1431 -1-27|| mod 26 = 116 mod 26 = 12
Với bit thủy vân b = 0 thì ta phải thay đổi một trong hai hệ số C[2,3] = 143 hoặc
C[6,2] = -27 đã chọn để thu được d < 2t + 1
Vì C[2,3] = 143 có giá trị tuyệt đối lớn hơn C[6,2], theo công thức (2,7) ta tính giá

trị mới của C[2,3] là:
C[2,3] = C[2,3]-(d-INT(0.25a))= 143 - (14 - INT(0.25 X 26))= 135
Khi đã thay đổi hệ số C[2,3] = 135 ta thực hiện phép biến đôi ngược IDCT(C) và
thu được khối B’ như sau:

16


31

83

67

27

74

28
15

59

16
48

15

15


88

76

15

20
17

10

17

60
38

17

183

143

163

160
158

136

132


66
67

193

167

144

138

114

123

192

169

168
139

104
197

200
165

177


15

102
27

16

15

178

240

235

191

109

18

88

178

166

232


191

190

141

Nhận xét: Các hệ số của khối B’ không có nhiều khác biệt với các hệ số của khối B. Do
vậy ảnh sau quá trình thủy vân sẽ không sai khác nhiều so với ảnh gốc, và mắt thường rất
khó nhận ra.

2.2.3 Quá trình tách thủy vân
Đầu vào
• Ảnh đã nhúng thủy vân F’
• Khóa K (nếu có)

Đầu ra
• Thủy vân đã nhúng w biểu diễn qua dãy bit bk

Các bước thực hiện:
Bước 1: Chia ảnh F’ đã nhúng thủy vân thành các khối B’k
Bước
Bk = DCT(B’k)

2:

Biến

đổi

DCT


các

khối

B’k

Bước 3: Lấy ra vị trí hai hệ số đã biến đổi Bk[i,j] và Bk[p,q]
Bước 4: Tính d = | Bk[i,j] - Bk[p,q]| mod a với a = 2(2t+l) đã chọn khi nhúng
Bước 5: Nếu thì bit bk = 1 ngược lại bk = 0
Bước 6: Ghép cái bit bk từ các khối để thu được W

2.3 Thử nghiệm ứng dụng
2.3.1 Công cụ thử nghiệm: Matlab 2012a
MATLAB là phần mềm cung cấp môi trường tính toán số và lập trình, do công ty
MathWorks thiết kế. MATLAB cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay
17


biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với
những chương trình máy tính viết trên nhiều ngôn ngữ lập trình khác.
Với thư viện Toolbox, MATLAB cho phép mô phỏng tính toán, thực nghiệm nhiều
mô hình trong thực tế và kỹ thuật.

2.3.2 Kịch bản thử nghiệm:
Có 1 ảnh gốc ban đầu. Thực hiện thủy vân với 1 đoạn bit thể hiện watermark cho
trước, thu được ảnh đã nhúng thủy vân. Đo sai số, độ tổn hao của quá trình.
Ảnh gốc:

Watermark:


18


2.3.3 Kết quả thử nghiệm
Ảnh sau khi được nhúng watermark:

Đo sai số và mất mát thông tin:
MSE(R):

2.85

MSE(G):

3.12

MSE(B):

3.81

PSNR(R): 43.5802119 dB
PSNR(G): 43.1890096 dB
PSNR(B): 42.3271983 dB
Đánh giá kết quả thử nghiệm:
- Ảnh chứa thủy vân cho chất lượng tốt. Không có sự sai khác gì nhiều so với
ảnh gốc (mắt người khó có thể nhận ra)
- Cho ảnh chứa thủy vân chịu tác động của phép cắt
- Cho ảnh chứa thủy vân chịu tác động của phép nén JPEG
- Cho ảnh chứa thủy vân chịu tác động của phép thủy vân nhiều lần.
- Thuật toán trên miền DCT cho phép nhúng và tách thông tin một cách dễ

dàng, thời gian thực hiện thuật toán nhanh.
- Thuật toán trên miền DCT cho Thủy vân bền vững với những biến đổi như
nén JPEG, hay cắt ảnh
19


Kết luận
Kể từ khi ra đời, giấu tin đã và đang làm tốt vai trò của nó trong nhiều lĩnh
vực như bảo vệ thông tin an toàn trong quá trình trao đổi, bảo vệ quyền tác giả trong
quá trình phân phối,...Tuy nhiên, có những trường hợp lợi dụng kỹ thuật giấu tin để
thực hiện những hành vi bất hợp pháp như tuyên truyền sản phẩm văn hóa không
lành mạnh, truyền những thông tin về kế hoạch tấn công khủng bố,...Từ sử dụng sai
chức năng của giấu tin ở trên đặt ra vấn đồ làm thế nào để phát hiện được phương
tiện chứa tin có tiềm ẩn bên trong các tin giấu hay không, và thông tin chứa trong
đó là gì nhằm có thể hồ trợ trong việc ngăn ngừa các thảm kịch xảy ra. Mặt khác
20


việc nghiên cứu khả năng phát hiện thông tin ẩn cũng sẽ làm tăng mức độ an toàn
cho kỹ thuật giấu tin, đặc biệt là kỹ thuật giấu tin mật. Bài toán đặt ra là phát hiện
có tồn tại tin giấu trong ảnh hay không, cũng như có thể sửa đổi hay phá hủy thông
tin đã giấu hay không? Trong đề tài chúng em đã trình bày một số kỳ thuật giấu tin
bằng thay thế bit có trọng số thấp nhất, kỳ thuật thủy vân trên miền biến đổi DCT.
Kết quả chính của đề tài là:
-

Tìm hiểu chung về Watermarking
Giới thiệu chung về Watermarking
Phân loại Watermarking
Một số phương pháp Watermarking


-

Phân tích và thử nghiệm ứng dụng một kỹ thuật Image Watermarking đối với ảnh
JPEG

Tài liệu tham khảo


Đồ án Kỹ thuật giấu tin trong ảnh số - Nguyễn Thi Mai.



Tóm tắt – Watermarking DCT (Nguyen Anh Duc).



Ngoài ra còn một số tài liệu khác.

21


22



×