Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀ N THÔNG
NGUYỄN THỊ THANH XUÂN
NGHIÊN CỨU THUẬT TOÁN ẨN THÔNG TIN
TRÊN ẢNH SỐ BẰNG KỸ THUẬT HOÁN VỊ HỆ SỐ
VÀ ỨNG DỤNG TRONG BẢO MẬT DỮ LIỆU
LUẬN VĂN THẠC SĨ KHOA HỌ C MÁ Y TÍ NH Thái Nguyên – 2013
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀ N THÔNG
này.
Cuối cùng em xin gửi lời cảm ơn sâu sắc nhất gia đình, bạn bè và các
đồng nghiệp đã động viên, cổ vũ, tạo điều kiện cho em trong quá trình học tập
cũng nhƣ thời gian làm luận văn; giúp em hoàn thành khóa học, luận văn theo
qui định.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
LỜI CAM ĐOAN
Tôi xin cam đoan luận văn là kết quả nghiên cứu của tôi, không sao
chép của ai. Nội dung luận văn có tham khảo và sử dụng các tài liệu liên
quan, các thông tin trong tài liệu đƣợc đăng tải trên các tạp chí và các trang
website theo danh mục tài liệu của luận văn.
Tác giả luận văn Nguyễn Thị Thanh Xuân Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
DANH MỤC CÁC HÌNH VẼ Hình 1.1: Phân loại các kỹ thuật giấu tin 11
Hình 2.1: Mô hình quá trình giấu tin 15
HAS
Hệ thống thính giác của con ngƣời
LSB
Kỹ thuật gài vào các bit có trọng số thấp
DCT
Biến đổi cosine rời rạc
DFT
Biến đổi Fourier rời rạc
DWT
Biến đổi wavelet
AES
Tiêu chuẩn mã hóa tiên tiến
DES
Tiêu chuẩn mã hóa dữ liệu
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
MỤC LỤC
LỜI CẢM ƠN
LỜI CAM ĐOAN
DANH MỤC CÁC HÌNH VẼ
DANH MỤC CÁC TỪ VIẾT TẮT
MỤC LỤC
MỞ ĐẦU 1
1. Đặt vấn đề 1
2. Lý do chọn đề tài 2
3. Đối tƣợng và phạm vi nghiên cứu 3
4. Ý nghĩa khoa học và thực tiễn của đề tài 4
5. Phƣơng pháp nghiên cứu 4
CHƢƠNG 1: TỔNG QUAN VỀ GIẤU TIN TRONG ẢNH 5
2.4 Giấu tin dựa trên kỹ thuật hoán vị hệ số kết hợp với nén và mã hoá dữ
liệu 43
2.4.1 Giấu tin bằng kỹ thuật hoán vị hệ số 43
2.4.2 Kỹ thuật nén dữ liệu Huffman 43
2.4.3 Mã hóa dữ liệu AES 44
Tổng kết chƣơng 2 47
CHƢƠNG 3: XÂY DỰNG CHƢƠNG TRÌNH VÀ THỬ NGHIỆM 49
3.1 Thuật toán giấu thông tin bằng kỹ thuật hoán vị hệ số 49
3.2 Giải pháp nâng cao hiệu quả ẩn thông tin 51
3.3 Chƣơng trình thực nghiệm 53
3.3.1 Quá trình giấu tin 54
3.3.2 Quá trình giải tin 55
3.4 Kết quả thực nghiệm 56
3.5 Kết luận và hƣớng phát triển 57
TÀI LIỆU THAM KHẢO 59
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
1
MỞ ĐẦU
1. Đặt vấn đề
Cùng với sự bùng nổ của Internet và các phƣơng tiện multimedia, những
vấn nạn nhƣ ăn cắp bản quyền, xuyên tạc thông tin, truy nhập thông tin trái
phép cũng gia tăng, đòi hỏi phải không ngừng tìm các giải pháp mới, hữu
hiệu cho an toàn và bảo mật thông tin. Một trong các giải pháp nhiều triển
vọng là giấu tin (DataHiding), đƣợc nghiên cứu phát triển trong khoảng 10
năm gần đây.
Hiện nay nhiều ngành, nhiều đơn vị trên toàn quốc đã có hệ thống
mạng nội bộ thông suốt các tỉnh thành trong cả nƣớc. Hệ thống đảm bảo đƣợc
các thông tin truyền đi trong mạng không bị lọt ra ngoài nhƣng điểm yếu của
xã hội. Ví dụ, trong các dịch vụ ngân hàng và tài chính ở một số nƣớc phát
triển, thuỷ vân số đƣợc sử dụng để nhận diện khách hàng trong các thẻ tín
dụng. Mỗi khách hàng có một chữ kí viết tay, sau đó chữ kí này đƣợc số hoá
và lƣu trữ trong hồ sơ của khách hàng. Chữ kí này sẽ đƣợc sử dụng nhƣ là
thuỷ vân để nhận thực thông tin khách hàng. Trong các thẻ tín dụng, chữ kí
tay đƣợc giấu trong ảnh của khách hàng trên thẻ. Khi sử dụng thẻ, ngƣời dùng
đƣa thẻ vào một hệ thống, hệ thống có gắn thiết bị đọc thuỷ vân trên ảnh và
lấy đƣợc chữ kí số đã nhúng trong ảnh. Thuỷ vân đƣợc lấy ra sẽ so sánh với
chữ kí số đã lƣu trữ xem có trùng hợp không, từ đó xác định nhận thực khách
hàng.
Kỹ thuật ẩn thông tin đƣợc đề cập đến nhƣ một giải pháp nhằm giải
quyết bài toán truyền nhận thông điệp mật, tăng cƣờng tính bảo mật và an
toàn trong các giao dịch thƣơng mại điện tử trên mạng Internet cũng nhƣ bảo
vệ quyền sở hữu trí tuệ đối với các thông tin số có giá trị nhƣ phim, ảnh, âm
thanh… Kỹ thuật ẩn thông tin kết hợp mã hóa đƣợc đánh giá nhƣ là giải pháp
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
3
hữu hiệu và thích hợp nhất cho vấn đề bảo vệ bản quyền trên Internet cũng
nhƣ các dịch vụ truyền thông đa phƣơng tiện.
Hiện nay, đã có nhiều công trình nghiên cứu trong nƣớc và trên thế
giới để giấu tin vào ảnh gốc. Các kỹ thuật và chƣơng trình này đều có những
đặc điểm nhất định dựa trên phƣơng pháp biến đổi hình học (nhƣ phép quay,
dịch chuyển cắt xén… ), điều này có thể dẫn đến quá trình kiểm tra xác định
sự tồn tại của thông điệp nhúng trong ảnh không chính xác.
Ngƣời ta đã đƣa ra kỹ thuật ẩn thông tin kết hợp với các kỹ thuật mã
hóa và nén dữ liệu sẽ giúp cho quá trình ẩn thông tin đƣợc an toàn hơn, tăng
cƣờng độ bảo mật và dung lƣợng của thông tin ẩn. Kỹ thuật này cho phép
chống lại các tấn công bằng các phép biến đổi hình học.
trong một số nghiên cứu khoa học dữ liệu thử nghiệm rất đắt phải đảm bảo
đƣợc, còn trong ứng dụng nhƣ thực thi pháp luật, hệ thống hình ảnh y tế …
mong muốn phải đúng với dữ liệu gốc để xem xét về mặt pháp lý tránh những
lệch lạc thông tin. Do vậy mà việc phục hồi dữ liệu sau khi giấu tin để đảm
bảo tính chính xác là rất có ý nghĩa khoa học và thực tiễn.
Việc kết hợp giữa giấu tin và chứng thực cho phép bảo vệ nhãn
thƣơng hiệu chứng minh sự hợp pháp của sản phẩm bảo vệ bản quyền nhất là
trong thƣơng mại điện tử. Đây là ý nghĩa thực tiễn của đề tài.
5. Phƣơng pháp nghiên cứu
Trong luận văn sử dụng phƣơng pháp nghiên cứu lý thuyết, các phƣơng
pháp chứng thực, các kỹ thuật giấu tin, phƣơng pháp mô hình hóa và thử
nghiệm thực tế.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
5
CHƢƠNG 1
TỔNG QUAN VỀ GIẤU TIN TRONG ẢNH
1.1 Một số khái niệm cơ bản về giấu tin
1.1.1 Lịch sử kỹ thuật giấu tin
Từ Stenography bắt nguồn từ Hi Lạp và đƣợc sử dụng cho tới ngày
nay, nó có nghĩa là tài liệu đƣợc phủ (covered writing). Mục đích cơ bản của
giấu tin là nhúng mẩu tin mật vào một môi trƣờng truyền tin bình thƣờng sao
cho ngƣời khác không thể phát hiện ra mẩu tin mật đó. Trong lịch sử, những
câu chuyện về giấu tin đƣợc lan truyền từ đời qua đời khác. Ví dụ, vào thế kỷ
thứ 5 trƣớc Công Nguyên, Histaiacus đã cạo trọc đầu một nô lệ, xăm lên đó
một thông điệp sau đó khi đầu nô lệ này mọc tóc trở lại, ông ta phái nô lệ đó
mang thông điệp đã đƣợc giấu trên đầu đi. Ở các tiểu vƣơng quốc Ả Rập tại
thành phố về khoa học và công nghệ của vua Abdulaziz, một dự án đã đƣợc
vào trong một đối tƣợng dữ liệu số khác. Giấu tin trong ảnh số là giấu các
mẩu tin cũng là dạng số trong máy tính vào các tệp ảnh nhị phân sao cho
không bị ngƣời ngoài phát hiện.
Kỹ thuật giấu thông tin nhằm mục đích đảm bảo an toàn và bảo mật
thông tin rõ ràng ở hai khía cạnh. 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 để giấu tin. Hai mục đích 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). Khuynh hƣớng này 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 khác khó phát hiện đƣợc một đối tƣợng có bị giấu tin bên trong hay
không. Khuynh hƣớng thứ hai là thủy vân số (watermarking). Khuynh hƣớng
thủy vân số đánh giấu vào đố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. Thủy vân số có miền ứng dụng lớn hơn nên
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
7
đƣợc quan tâm nghiên cứu nhiều hơn và thực tế đã có nhiều những kỹ thuật
dành cho khuynh hƣớng này. Nói chung giấu tin trong đa phƣơng tiện là tận
dụng “độ dƣ thừa” của phƣơng tiện giấu để thực hiện việc giấu tin mà ngƣời
ngoài cuộc “khó” cảm nhận đƣợc có thông tin giấu trong đó.
1.1.3 Môi trường giấu tin
1.1.3.1 Giấu tin trong ảnh
Hiện nay, giấu tin trong ảnh chiếm tỷ lệ lớn nhất hệ thống giấu tin 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ẽ lƣợng thông tin đƣợc trao đổi bằng hình ảnh là rất lớn, hơn nữa
chúng còn đóng vai trò quan trọng trong các ứng dụng an toàn thông tin nhƣ:
xác thực thông tin, bảo vệ quyền tác giả, điều khiển truy cập, phát hiện xuyên
tạc thông tin. Từ việc nghiên cứu kỹ thuật giấu tin trong ảnh số chuyển sang
kỹ thuật giấu tin trong các phƣơng tiện khác nhƣ audio, video, trong văn
(HAS - Human Auditory System). Vấn đề khó khăn ở đây là hệ thống tính
giác của con ngƣời nghe đƣợc các tín hiệu ở các giải tần rộng và công suất lớn
nên đã gây khó dễ đối với các phƣơng pháp giấu tin trong audio. HAS cảm
nhận đƣợc các tín hiệu ở dài tần rộng và công suất. Điều này có nghĩa là các
âm thanh to, cao tần có thể che giấu đƣợc các âm thanh nhỏ, thấp tần một
cách dễ dàng. Kênh truyền tin cũng là một vấn đề khó khăn với giấu tin trong
audio. Kênh truyền hay băng thông chậm sẽ ảnh hƣởng đến chất lƣợng thông
tin sau khi giấu. Giấu thông tin trong audio yêu cầu rất cao về tính đồng bộ và
tính an toàn của thông tin.
1.1.3.3 Giấu tin trong video
Cũng giống nhƣ giấu thông tin trong ảnh hay trong audio, giấu tin
trong video cũng đƣợc quan tâm và đƣợc phát triển mạnh mẽ cho nhiều ứng
dụng nhƣ điều khiển truy cập thông tin, nhận thức thông tin, bản quyền tác
giả…Ta có thể lấy một ví dụ là các hệ thống chƣơng trình trả tiền xem theo
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
9
video clip (pay per view application). Các kỹ thuật giấu tin trong video cũng
đƣợc phát triển mạnh mẽ và cũng theo hai khuynh hƣớng là thủy vân số và
data hiding. Một phƣơng pháp giấu tin trong video đƣợc đƣa ra bởi Cox là
phƣơng pháp phân bố đều. Ý tƣởng cơ bản của phƣơng pháp là phân phối
thông tin giấu dàn trải theo tần số của dữ liệu chứa gốc. Nhiều nhà nghiên cứu
đã dùng những hàm cosin riêng và các hệ số truyền sóng riêng để giấu tin.
Trong các thuật toán khởi nguồn thì thƣờng các kỹ thuật cho phép giấu các
ảnh vào trong video nhƣng thời gian gần đây các kỹ thuật cho phép giấu cả
âm thanh và hình ảnh vào video. Nhƣ phƣơng pháp của Swanson đã sử dụng
để giấu theo khối, phƣơng pháp này đã giấu đƣợc hai bít vào khối 8*8, hay
gần đây nhất là phƣơng pháp của Mukherjee là kỹ thuật giấu audio vào video
sử dụng cấu trúc lƣới đa chiều… Kỹ thuật giấu thông tin áp dụng cả đặc điểm
trung vào các kỹ thuật giấu thông tin sao cho ngƣời khác khó phát hiện nhất
việc có tin đƣợc giấu, hơn nữa nếu phát hiện có tin giấu thì giải tin cũng khó
thực hiện. Bên cạnh đó cũng đặt ra vấn đề về lƣợng tin đƣợc giấu càng nhiều
càng tốt, ngoài ra tốc độ giấu cũng đƣợc yêu cầu mặc dù đây là vấn đề thứ
yếu [4].
Thủy vân số là lĩnh vực nghiên cứu việc nhúng các thông tin phục vụ
xác thực, ví dụ nhƣ xác nhận bản quyền. Nếu thông tin giấu là một định danh
duy nhất, ví dụ định danh ngƣời dùng thì khi đó ngƣời ta gọi là Fingerprinting
(nhận dạng vân tay, điểm chỉ). Thủy vân số lại đƣợc chia thành hai hƣớng nhỏ
là thủy vân dễ vỡ và thủy vân bền vững. Trong đó thủy vân dễ vỡ yêu cầu
thông tin giấu sẽ bị sai lệch nếu có bất kỳ sự thay đổi nào trên dữ liệu chứa
tin. Thủy vân bền vững quan tâm nhiều đến việc nhúng các mẩu tin đòi hỏi độ
bền cao của thông tin đƣợc giấu trƣớc các biến đổi thông thƣờng trên dữ liệu
chứa tin [5].
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
11
Xét về tính chất thuỷ vân số giống giấu tin ở chỗ tìm cách nhúng thông
tin mật vào một môi trƣờng. Tuy nhiên, xét về bản chất thì thuỷ vân số có
khác ở một số điểm:
- Giấu tin sau đó cần tách lại tin còn thuỷ vân số tìm cách biến tin giấu
thành một thuộc tính của vật mang.
- Mục tiêu của thuỷ vân số là nhúng thông tin không lớn thƣờng là biểu
tƣợng, chữ ký hay các đánh dấu khác vào môi trƣờng phủ nhằm phục vụ
việc xác nhận bản quyền.
Chỉ tiêu quan trọng nhất của giấu tin là dung lƣợng còn của thuỷ vân số
là tính bền vững.
Thuỷ vân số có thể vô hình hoặc hữu hình trên ảnh mang.
không đƣợc phép của ngƣời chủ sở hữu thì chỉ có cách là phá hủy sản phẩm.
- Xác thực thông tin hay phát hiện xuyên tạc thông tin (authentication
and tamper detection): Một tập các thông tin sẽ đƣợc giấu trong các phƣơng
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
13
tiện chứa sau đó sử dụng để nhận biết xem trên các phƣơng tiện gốc đó có bị
thay đổi hay không. Các thủy vân nên đƣợc ẩn để tránh sự tò mò của kẻ thù
hơn nữa việc làm giả các thủy vân hợp lệ hay xuyên tạc thông tin nguồn cũng
cần đƣợc xem xét. Trong các ứng dụng thực tế ngƣời ta mong muốn tìm đƣợc
vị trí bị xuyên tạc cũng nhƣ phân biệt đƣợc các thay đổi (ví dụ nhƣ phân biệt
xem một đối tƣợng đa phƣơng tiện chứa thông tin giấu đã bị thay đổi, xuyên
tạc nội dung hay là chỉ bị nén mất dữ liệu). 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à thủy 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.
- Giấu vân tay hay dán nhãn (fingerprinting and labeling): Thủy vân
trong các ứng dụng này đƣợc sử dụng để nhận diện ngƣời gửi hay ngƣời nhận
của một thông tin nào đó trong ứng dụng phân phối sản phẩm. Thủy vân
trong trƣờng hợp này cũng tƣơng tự nhƣ số serial của sản phẩm phần mềm.
Mỗi một sản phẩm sẽ mang một thủy vân riêng. Ví dụ các vân khác nhau sẽ
đƣợ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 thủy vân, tránh sự xóa dấu vết trong khi phân phối.
- Điều khiển sao chép (copy control): Điều mong muốn đối với các hệ
thống phân phối dữ liệu đa phƣơng tiện là tồn tại một kỹ thuật chống sao chép
trái phép dữ liệu. Có thể sử dụng thủy vân để chỉ trạng thái sao chép của dữ
liệu. Các thủy vân trong những trƣờng hợp này đƣợc sử dụng để điều khiển,
sao chép đối với các thông tin. Các thiết bị phát hiện ra thủy vân thƣờng đƣợc
gắn sẵn vào trong các hệ thống đọc ghi. Ví dụ nhƣ hệ thống quản lý sao chép
KỸ THUẬT GIẤU TIN TRONG ẢNH SỐ
2.1 Mô hình và các phƣơng pháp giấu tin cơ bản
2.1.1 Mô hình giấu tin cơ bản
Với sự phát triển không ngừng của công nghệ thông tin, cùng với sự
quan tâm rất lớn của các nhà khoa học, các tổ chức, các quốc gia về lĩnh vực
an toàn và bảo vệ thông tin, hiện nay đã có rất nhiều các kỹ thuật giấu tin
đƣợc nghiên cứu và phát triển. Tuy nhiên có thể thấy, tất cả đều xuất phát từ
mô hình giấu tin cơ bản cũng nhƣ từ những kỹ thuật giấu tin cơ bản nhất. Hình 2.1: Mô hình quá trình giấu tin
Trong mô hình này, phƣơng tiện chứa tin bao gồm các đối tƣợng đƣợc
dùng làm môi trƣờng để giấu tin nhƣ văn bản, ảnh, audio, video… thông tin
Thông tin cần giấu
Phƣơng
tiện chứa
tin (audio,
ảnh,
video )
Khóa Hình 2.2: Mô hình quá trình giải tin
Thông tin cần giấu
Phƣơng
tiện chứa
tin (audio,
ảnh,
video )
Khóa
Bộ giải mã
tin
Phƣơng
tiện chứa
đã đƣợc
giấu tin
Phân
phối
Kiểm
định