Tải bản đầy đủ (.doc) (62 trang)

Nghiên cứu kĩ thuật ẩn mã DPIS và xây dựng chương trình ứng dụng

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.58 MB, 62 trang )

BAN CƠ YẾU CHÍNH PHỦ
HỌC VIỆN KỸ THUẬT MẬT MÃ
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

ĐỒ ÁN TỐT NGHIỆP
Nghiên cứu kĩ thuật ẩn mã DPIS và xây dựng
chương trình ứng dụng
Ngành: An tồn thơng tin
Mã số: 7.48.02.02

Sinh viên thực hiện:
Lớp:
Người hướng dẫn :
ThS. Hoàng Thu Phương
Khoa An tồn thơng tin – Học viện Kỹ thuật mật mã

Hà Nội - 2021

1


BAN CƠ YẾU CHÍNH PHỦ
HỌC VIỆN KỸ THUẬT MẬT MÃ
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

ĐỒ ÁN TỐT NGHIỆP
Nghiên cứu kĩ thuật ẩn mã DPIS và xây dựng
chương trình ứng dụng
Ngành: An tồn thơng tin
Mã số: 7.48.02.02


Sinh viên thực hiện:
Trần Thị Huyền Trang
Lớp: AT13G
Người hướng dẫn :
ThS. Hồng Thu Phương
Khoa An tồn thơng tin – Học viện Kỹ thuật mật mã

Hà Nội - 2021

2


MỤC LỤC
MỤC LỤC...................................................................................................3
DANH MỤC TỪ VIẾT TẮT.....................................................................8
LỜI CAM ĐOAN.......................................................................................9
LỜI CẢM ƠN...........................................................................................10
CHƯƠNG 1. TÔNG QUAN VỀ KỸ THUẬT ẨN MÃ..........................13
1.1 Giới thiệu chung về ẩn mã.....................................................................13
1.2 Khái niệm ẩn mã....................................................................................14
1.3 Một số thuật ngữ khoa học....................................................................14
1.4 Mơ hình ẩn mã.......................................................................................14
1.4.1 Cơ chế hoạt động....................................................................15
1.4.2 Q trình giấu tin....................................................................15
1.4.3 Q trình trích xuất thông tin..................................................16
1.5 Một số kỹ thuật ẩn mã cơ bản...............................................................16
1.5.1 Ẩn mã trong ảnh.....................................................................16
1.5.2 Ẩn mã trong âm thanh............................................................17
1.5.3 Ẩn mã trong video..................................................................17
1.5.4 Ẩn mã trong văn bản...............................................................17

1.5.5 Ẩn mã trong giao thức............................................................18
1.6 Một số ứng dụng của ẩn mã trong thực tế.............................................18
CHƯƠNG 2. KỸ THUẬT ẨN MÃ TRONG ẢNH.................................20
2.1 Giới thiệu chung về ảnh số....................................................................20
2.1.1 Khái niệm ảnh số....................................................................20
2.1.2 Điểm ảnh.................................................................................20
2.2 Các định dạng ảnh để ẩn mã..................................................................21
2.2.1 Định dạng ảnh JPEG...............................................................21
2.2.2 Định dạng ảnh TIFF................................................................22
2.2.3 Định dạng ảnh PNG................................................................23
2.2.4 Định dạng ảnh GIF.................................................................24
2.2.5 Định dạng ảnh BITMAP.........................................................26
2.3 Một số kỹ thuật ẩn mã trong ảnh trên miền không gian........................29

3


2.3.1 Kỹ thuật giấu tin thay thế các bit có trọng số thấp nhất..........29
2.3.2 Kỹ thuật giấu tin trong khối bit...............................................30
2.3.3 Kỹ thuật giấu tin Wu – Lee.....................................................31
2.4 Một số kỹ thuật ẩn mã trong ảnh trên miền tần số................................33
2.4.1 Kỹ thuật biến đổi Fourier rời rạc (DFT).................................33
2.4.2 Kỹ thuật biến đổi trực giao Cosine rời rạc (DCT)..................36
2.4.3 Kỹ thuật biến đổi sóng nhỏ rời rạc (DWT).............................38
CHƯƠNG 3. NGHIÊN CỨU KỸ THUẬT ẨN MÃ DPIS.....................43
3.1 Giới thiệu...............................................................................................43
3.2 Kỹ thuật ẩn mã DPIS.............................................................................43
3.2.1 Ý tưởng thuật toán..................................................................43
3.2.2 Thuật toán nhúng tin...............................................................44
3.2.3 Thuật tốn trích xuất...............................................................45

3.3 Đánh giá phương pháp..........................................................................46
3.3.1 Độ bền vững, tính bảo mật của thuật tốn..............................47
3.3.2 Phát hiện ảnh mang tin giả mạo..............................................47
3.3.3 So sánh với phương pháp khác dựa trên dung lượng..............48
CHƯƠNG 4. XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM VÀ
ĐÁNH GIÁ KẾT QUẢ.............................................................................50
4.1 Nền tảng ứng dụng và ngơn ngữ lập trình.............................................50
4.2 Xây dựng chương trình..........................................................................50
4.2.1 Thao tác nhúng tin ảnh màu....................................................51
4.2.2 Thao tác trích xuất tin trong ảnh đã được nhúng....................54
4.2.3 Tính PSNR..............................................................................55
4.3 Đánh giá kết quả thực nghiệm...............................................................56
4.3.1 Tập ảnh dữ liệu.......................................................................56
4.3.2 Độ đánh giá PSNR và dung lượng nhúng trung bình.............57
4.3.3 Kết quả thử nghiệm.................................................................57
4.3.4 Biểu đồ Histogram..................................................................59
KẾT LUẬN HƯỚNG PHÁT TRIỂN ĐỀ TÀI.......................................61
1. Kết luận...................................................................................................61
2. Hướng phát triển của đề tài.....................................................................61

4


TÀI LIỆU THAM KHẢO........................................................................62

5


DANH MỤC BẢNG BIỂU VÀ HÌNH ẢNH
Hình 1.1 Mơ hình giấu tin cơ bản............................................................15

Hình 1.2 Mơ hình trích xuất thơng tin cơ bản........................................16
Hình 2.3: Cấu trúc ảnh GIF87a...............................................................25
Hình 2.4 Phân tích đa phân giải sử dụng biến đổi wavelet rời rạc.......39
Hình 2.5 Phép biến đổi wavelet rời rạc...................................................40
Hình 4.6 Giao diện phần mềm Visual Studio 2019.................................50
Hình 4.7 Giới thiệu giao diện chương trình............................................51
Hình 4.8 Giao diện nhúng tin...................................................................51
Hình 4.9 Thao tác mở ảnh gốc để nhúng tin...........................................52
Hình 4.10 Mở ảnh gốc thành cơng...........................................................52
Hình 4.11 Giao diện chương trình nhúng tin..........................................53
Hình 4.12 Nhúng Tin Thành Cơng...........................................................53
Hình 4.13 Giao diện trích xuất thơng điệp..............................................54
Hình 4.14 Mở ảnh đã nhúng.....................................................................54
Hình 4.15 Giao diện trích xuất tin thành cơng.......................................55
Hình 4.16 Thơng báo trích xuất hồn tất................................................55
Hình 4.17 Giao diện tính MSE và PSNR.................................................55
Hình 4.18 Giao Diện Tính MSE và PSNR xong......................................56
Hình 4.19 Tập Ảnh Màu Gốc Để Thử Nghiệm.......................................56
Hình 4.20 Tập Ảnh Mang Tin Sau Thử Nghiệm....................................56
Hình 4.21 Biểu Đồ Histogram kênh màu Đỏ(Red).................................59
Hình 4.22 Biểu Đồ Histogram kênh màu Xanh Lá Cây(Green)...........60
Hình 4.23 Biểu Đồ Histogram kênh màu Xanh Nước Biển(Blue).........60
Bảng 2.1 Chi tiết các khối byte của header tệp bitmap..........................27
Bảng 2.2 Chi tiết khối byte thơng tin tệp bitmap...................................28
Bảng 3.3 Bảng tính số mẫu riêng biệt......................................................47
Bảng 3.4 So sánh một số yếu tố quan trọng giữa các thuật toán...........48
Bảng 4.5. Bảng kết quả PSNR..................................................................58

6



Bảng 4.6 Bảng Kết quả dung lượng nhúng trung bình..........................58

7


DANH MỤC TỪ VIẾT TẮT

Từ viết tắt
BMP

Giải từ

Mô tả

BITMAP
Kỹ thuật giấu tin

DPIS

Dynamic Pattern Based Image
Steganography

DCT

Discrete Cosine
Transform/Transformation

DFT


Discrete Fourier Transformation

DWT

Discrete Wavelet
Transformation

GIF

Graphics Interchange Format

HAS

Human Auditory System

PSNR

Peak signal to noise ratio

MSE

Mean sqaured error

JPEG

Joint Photographic Experts Group

LSB

Least Significant Bit


MPD

Multi-Pixel Differencing

PNG
TIFF

Portable Network Graphics
Tag Image File Format

trên hình ảnh dựa
trên mơ hình động
Biến đổi Cosine rời
rạc
Biến đổi Fourier rời
rạc
Hiệu chỉnh hệ số
sóng nhỏ
Hệ thống thính giác
của con người
Tỉ số tín hiệu cực
đại trên nhiễu
Sai số tồn phương
trung bình
Bit có trọng số thấp
nhất
Vi phân đa điểm
ảnh


8


LỜI CAM ĐOAN
Tôi xin cam đoan bản đồ án này do tôi tự nghiên cứu dưới sự hướng dẫn
của giảng viên hướng dẫn ThS. Hoàng Thu Phương.
Để hoàn thành đồ án này, tôi chỉ sử dụng những tài liệu đã ghi trong
mục tài liệu tham khảo, ngồi ra khơng sử dụng bất cứ tài liệu nào khác mà
không được ghi.
Nếu sai, tơi xin chịu mọi hình thức kỷ luật theo quy định của Học viện.

Hà Nội, Ngày tháng năm 2021
SINH VIÊN THỰC HIỆN

Trần Thị Huyền Trang

9


LỜI CẢM ƠN
Đầu tiên, tôi xin gửi lời cảm ơn chân thành tới các thầy cô trong học
viện Kỹ thuật Mật Mã nói chung cùng các thầy cơ trong hệ quản lý sinh
viên và khoa an tồn thơng tin nói riêng đã tận tình giảng dạy, truyền đạt
cho tơi những kiến thức và kinh nghiệm quý báu trong suốt thời gian là
sinh viên học viện; cũng như sự quan tâm và tạo mọi điều kiện thuận lợi
cho tôi trong quá trình thực hiện đồ án.
Và để hồn thành Đồ án tốt nghiệp này, tôi xin được gửi lời cảm ơn
chân thành và sự biết ơn sâu sắc tới giảng viên hướng dẫn ThS. Hồng Thu
Phương, người đã tận tình giúp đỡ, trực tiếp chỉ dạy, hướng dẫn tôi trong
suốt quá trình làm đồ án tốt nghiệp. Trong thời gian làm việc với cô, không

chỉ tiếp thu được những kiến thức chun mơn mà tơi cịn học hỏi được
tinh thần trách nhiệm, thái độ làm việc nghiêm túc, hiệu quả từ cô.
Sau cùng xin được gửi lời cảm ơn chân thành tới gia đình, bạn bè đã
động viên, đóng góp ý kiến và giúp đỡ tơi trong q trình học tập, nghiên
cứu và hồn thành đồ án tốt nghiệp.
Tơi xin chân thành cảm ơn!
Hà Nội, Ngày tháng năm 2021
SINH VIÊN THỰC HIỆN

Trần Thị Huyền Trang

10


LỜI MỞ ĐẦ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, nó cũng làm tăng nguy cơ mất
an tồn từ các ứng dụng trái phép cũng như xuyên tạc bất hợp pháp các
thông tin lưu truyền trên mạng, đồng thời việc sử dụng một cách bình đẳng
và an tồn các dữ liệu đa phương tiện cũng như cung cấp một cách kịp thời
rất nhiều người dùng và các thiết bị cuối cũng đặt ra nhiều vấn đề thách
thức. Hơn nữa, sự bùng nổ của các phương tiện kỹ thuật số làm cho việc
sao chép, lưu trữ, sửa đổi dữ liệu càng ngày càng đơn giản. Vì vậy, việc
đảm bảo an tồn và bảo mật thơng tin hiện nay ln 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 bảo an tồn và bí mật cho một thông điệp truyền đi người ta
thường dùng phương pháp truyền thống là nhúng thông điệp theo một quy
tắc nào đó đã được thỏa thuận trước giữa người gửi và người nhận. Tuy
nhiên, phương thức này thường gây sự chú ý của kẻ tấn công về tầm quan

trọng của thông điệp. Một cách tiếp cận khác để truyền các thơng điệp bí
mật là ẩn mã (Steganography), đó là một kỹ thuật mà theo nhiều chuyên gia
trong lĩnh vực này - là một bộ môn nghệ thuật và khoa học nhằm che giấu
sự tồn tại của thông tin với mục tiêu che giấu các thơng điệp cần giữ bí mật
trong các dữ liệu “vô hại” khác để đối phương không thể phát hiện được sự
hiện diện của thông điệp. Ngày nay, kỹ thuật ẩn mã được thực hiện trong
nhiều môi trường khác nhau như : ảnh số, âm thanh, video, hay các loại văn
bản…
Trong những năm gần đây, có rất nhiều nghiên cứu lớn, tập trung chủ
yếu vào các kỹ thuật ẩn mã trong ảnh số. Giữa ảnh gốc và ảnh mang tin khi
nhìn bằng mắt thường sẽ rất khó để phân biệt, do đó, thơng tin gần như vơ
hình khi được truyền đi trong thế giới hữu hình. Để có thể tăng khả năng
đảm bảo an tồn cho thông điệp từ người gửi tới người nhận, cần phải có
một phương pháp ẩn mã hiệu quả.
Chính vì vậy em chọn và thực hiện nghiên cứu đề tài: “Nghiên cứu kĩ
thuật ẩn mã DPIS và xây dựng chương trình ứng dụng”. Đây là một
phương pháp ẩn mã với nhiều ưu điểm và có khả năng ứng dụng trong thực
tế cao.
Mục tiêu đặt ra khi thực hiện đồ án là :
- Nghiên cứu tổng quan về kỹ thuật ẩn mã trong ảnh.
- Nghiên cứu phương pháp ẩn mã DPIS.

11


- Xây dựng chương trình ứng dụng.
Bố cục đồ án
Bố cục của đồ án được trình bày trong 4 chương.
Chương 1: Tổng quan về kỹ thuật ẩn mã. Chương này trình bày các
khái niệm chung về ẩn mã, một số thuật ngữ khoa học, mơ hình ẩn mã, một

số kỹ thuật ẩn mã cơ bản và ứng dụng của ẩn mã trong thực tế.
Chương 2: Tìm hiểu kỹ thuật ẩn mã trong ảnh
Chương 3: Nghiên cứu kĩ thuật ẩn mã DPIS
Chương 4: Xây dựng chương trình thử nghiệm bằng C#
Sau thời gian thực hiện đồ án, các mục tiêu về cơ bản đã đạt được.
Tuy nhiên ẩn mã là lĩnh vực phức tạp, thời gian thực hiện đồ án tương
đối ngắn nên chắc chắn khơng tránh khỏi thiếu sót. Rất mong được sự
góp ý của các thầy cơ, cũng như các bạn học viên để đồ án này được
hoàn thiện hơn

Hà Nội, Ngày tháng năm 2021
SINH VIÊN THỰC HIỆN

Trần Thị Huyền Trang

12


CHƯƠNG 1. TÔNG QUAN VỀ KỸ THUẬT ẨN MÃ
1.1 Giới thiệu chung về ẩn mã
Ẩn mã – Steganography có nguồn gốc từ tiếng Hy Lạp: Stegos có nghĩa
là “Cover” - Che đậy và Grafia có nghĩa là “Writing” – Văn bản. Cover
Writing được hiểu là văn bản được che đậy. Do vậy, ẩn mã là khoa học và
nghệ thuật về thơng tin liên lạc vơ hình. Kỹ thuật này được thực hiện thông
qua việc che giấu sự tồn tại của thơng tin bằng việc ẩn nó vào một thơng tin
khác.
Theo các tài liệu nghiên cứu ghi lại, kỹ thuật ẩn mã cổ xưa nhất và cũng
là đơn giản nhất được nhắc tới trong các tài liệu là khi vua Histiaeus
(khoảng năm 440 TCN) cạo sạch tóc xăm thơng điệp lên da đầu và chờ khi
tóc mọc lại, người nơ lệ đó chuyển thơng tin tới người nhận. Sau đó, người

ta sử dụng các vật liệu tự nhiên như bảng gỗ, sáp ong, hổ phách cho ẩn giấu
thông tin.
Khi kỹ thuật phát triển hơn, con người sử dụng chữ viết với cỡ chữ nhỏ
giấu trong các vật dụng hàng ngày (như các hộp, vali có hai đáy) để chuyển
đi, hoặc dùng bồ câu để chuyển thông tin để che mắt các nhân viên an ninh,
hải quan. Sang thế kỷ 17, người ta dùng cách đánh dấu vào các kí tự cần
thiết trên một văn bản, một bài báo công khai nào đó rồi truyền tới tay
người nhận. Sau đó là thời kì phát triển rực rỡ của cơng nghệ hố học,
trong thế chiến thứ hai người ta sử dụng mực vô hình để ẩn dấu thơng điệp
bí mật. Loại mực vơ hình này được tạo lên từ những chất liệu tự nhiên như
là nước hoa quả, sữa, giấm, thậm chí là nước tiểu, khi có tác động của nhiệt
độ thì các dòng chữ sẽ hiện ra rất rõ ràng. Cùng với sự phát triển của khoa
học, con người đã tạo ra những loại mực vơ hình có khả năng che giấu
thơng tin cao hơn.Chẳng hạn như muốn biết được thông điệp bị ẩn giấu thì
phải kết hợp các hố chất khác nhau để có thể hiển thị rõ thơng điệp bí mật
được che giấu bên trong.
Giấu thông tin trong ngôn ngữ, hành văn cũng được sử dụng từ lâu, với
việc lựa chọn theo một quy luật xác định như ghép các từ đầu của mỗi câu
hay nhặt các từ, các chữ cái theo một quy luật nào đó. Một hình thức cũng
được người Trung Hoa sử dụng rất nhiều là sử dụng một tờ giấy mẫu có
đục các lỗ làm một “mặt nạ” viết trước các nội dung cần giấu tại các vị trí
đó, tiếp theo các nội dung “vơ hại” khác lên sau, cách làm này tận dụng đặc
điểm về chữ tượng hình và các từ đồng âm khác nghĩa của chữ Hán.
Ngày nay, cùng với sự phát triển của cơng nghệ máy tính và Internet, thì
an ninh thơng tin được coi là một trong những yếu tố quan trọng nhất của
Công nghệ thông tin và truyền thông. Hơn thế, các cuộc tấn công vào trang
mạng hoặc truy cập trái phép vào những dữ liệu bí mật đã vượt quá giới
13



hạn. Vì vậy, chúng ta cần phải thực hiện các biện pháp nhằm bảo vệ các
thơng tin bí mật đó. Trong đó có hai kỹ thuật có mối liên hệ mật thiết với
ẩn mã là thuỷ vân số và vân tay. Hai kỹ thuật này chủ yếu dùng để bảo vệ
những tài sản về sở hữu trí tuệ, do đó thuật toán của chúng cũng cần đáp
ứng những yêu cầu khác so với ẩn mã.
Đối với ẩn mã, thông tin được giấu đi là rất quan trọng và phải được bảo
mật. Đối với các thuật toán ẩn mã, người ta không chú trọng đến việc bảo
vệ thông tin mật trước sự tấn công của các đối thủ mà thay vào đó quan tâm
đến tính ẩn và tính an tồn đối với dữ liệu cần giấu.
1.2 Khái niệm ẩn mã
Ẩn mã học (steganography) là một nghệ thuật và khoa học của việc
chuyển thơng tin bí mật theo cách mà chính sự tồn tại của thơng tin bí mật
cần chuyển là khơng bị phát hiện ra (còn gọi là giấu tin).
Với mật mã, kẻ thù có thể phát hiện, chặn bắt và thay đổi thông điệp
ngay cả khi không thể giải mã, nhưng mục tiêu của ẩn mã lại là giấu thông
điệp vào một thông điệp vô hại khác để kẻ thù khơng thể phát hiện được
rằng có một thơng điệp được giấu bên trong nó.
Chính vì vậy, ẩn mã khơng làm thay đổi cấu trúc thông tin mà chỉ ẩn
giấu sự tồn tại của thông tin vào một phương tiện khác. Các hệ thống ẩn mã
ngày nay thường sử dụng các đối tượng đa phương tiện để ẩn giấu như là:
hình ảnh, âm thanh, văn bản, video,… vì chúng thường được gửi và nhận
hàng ngày qua thư điện tử hoặc chia sẻ trên mạng Internet một cách công
khai, mà kẻ thù thì khơng có lý do để nghi ngờ khi bắt được một thông tin
vô hại trên kênh truyền không an toàn như vậy.
1.3 Một số thuật ngữ khoa học
Khi nhắc tới một hệ thống ẩn mã, người ta thường sử dụng một số thuật
ngữ thường dùng như sau:
o Vật phủ: là tệp dữ liệu đa phương tiện ban đầu hay còn gọi là vật
gốc. Tệp dữ liệu đa phương tiện này có thể là hình ảnh, văn bản, âm
thanh, video.

o Thơng điệp bí mật: Là thơng tin cần trao đổi, được giấu vào trong vật
phủ.
o Vật mang tin: Là vật phủ sau khi đã được nhúng thơng điệp, hay cịn
gọi là vật chứa thơng điệp được giấu (nhúng).
o Khố ẩn mã: Là khoá được sử dụng để nhúng hoặc tách thơng điệp
ra khỏi vật mang tin (khố có thể được sử dụng hoặc không tuỳ
thuộc vào từng giải pháp của hệ thống ẩn mã).
1.4

Mơ hình ẩn mã
14


1.4.1 Cơ chế hoạt động
Alice muốn gửi tới Bob một thông điệp mật m, nhưng không muốn trên
đường truyền bị một kẻ thứ ba biết sự tồn tại của thông điệp này. Alice phải
thực hiện các bước sau:
o Bước 1: Alice chọn một vật phủ c, khóa ẩn mã (có thể có hoặc
khơng) cũng như thuật tốn nhúng thích hợp.
o Bước 2: Nhúng thông điệp m vào trong vật phủ c bằng thuật tốn
nhúng, khi đó tạo ra được một vật mang tin s.
o Bước 3: Alice gửi vật mang tin s qua đường truyền khơng an tồn.
o Bước 4: Bob nhận được vật mang tin s, sau đó dùng thuật tốn trích
suất và khóa ẩn mã (nếu có) để lấy thơng điệp ẩn m.
Khi Alice gắn thơng điệp bí mật m vào trong vật phủ c, để thay đổi vật
phủ c thành vật mang tin s. Điều này phải được làm một cách cẩn thận, sao
cho kẻ thứ ba chỉ biết đến thông điệp s mà không hề hay biết đến sự tồn tại
của thông điệp mật m. Trong một hệ thống “hồn hảo”, một vật phủ bình
thường phải không phân biệt được với một vật mang tin bởi một người hay
bởi một máy tính tìm kiếm các mẫu thống kê.

1.4.2 Quá trình giấu tin
Quá trình này đầu vào bao gồm: thơng tin cần giấu theo mục đích của
người sử dụng, nó có thể là thơng điệp mật, hay các logo, hình ảnh bản
quyền, …; phương tiện chứa có thể là các tệp văn bản, âm thanh, hình ảnh
hay video, ...; và một tùy chọn khóa có thể là khóa bí mật hoặc khóa cơng
khai cho việc nhúng thơng tin được bảo mật hơn. Sau khi giấu tin, đầu ra là
phương tiện chứa bản tin đã giấu.

Hình 1.1 Mơ hình giấu tin cơ bản

15


1.4.3 Q trình trích xuất thơng tin
Sau khi nhận được phương tiện chứa có giấu thơng tin, q trình trích
xuất được thực hiện thơng qua một bộ trích xuất thơng tin tương ứng với bộ
nhúng thơng tin cùng với khóa của q trình nhúng. Kết quả đầu ra là thơng
điệp đã được nhúng.

Hình 1.2 Mơ hình trích xuất thơng tin cơ bản

1.5 Một số kỹ thuật ẩn mã cơ bản
Trong kỹ thuật ẩn mã có nhiều cách phân loại kỹ thuật ẩn mã khác nhau.
Nhưng khi xét theo môi trường nhúng tin thì ẩn mã được chia thành 5 kỹ
thuật ẩn mã cơ bản là:
o Ẩn mã trong ảnh
o Ẩn mã trong âm thanh
o Ẩn mã trong video
o Ẩn mã trong tệp văn bản
o Ẩn mã trong giao thức

1.5.1 Ẩn mã trong ảnh
Trong thời kỳ công nghệ hiện đại như hiện nay thì ẩn mã trong ảnh là
một kỹ thuật phổ biến nhất trong tất cả những kỹ thuật ẩn mã đã biết. Bởi
kỹ thuật này có thể lợi dụng những hạn chế thị giác của con người nhằm
đánh lừa tư duy con người. Tất cả các văn bản, đoạn mã hay những hình
ảnh có thể đươc nhúng thành chuỗi bit nhị phân thì đều có thể ẩn giấu vào
trong ảnh.
Một khi thơng điệp bí mật được giấu vào trong ảnh thì chất lượng của
ảnh ít nhiều có sự thay đổi nhưng khơng đáng kể và rất khó để nhận ra sự
thay đổi đó nếu chỉ dựa vào mắt thường. Hơn nữa ẩn mã trong ảnh sẽ ít
đem tới sự chú ý của kẻ tấn cơng. Vì vậy mà mơi trường dữ liệu ảnh trở
thành mơi trường có tính ứng dụng cao trong kỹ thuật ẩn mã và trở thành
môi trường nhúng phổ biến khi cần truyền tin bí mật.

16


1.5.2 Ẩn mã trong âm thanh
Ẩn mã trong tệp âm thanh là kỹ thuật khó nhất trong các kỹ thuật ẩn mã.
Bởi ẩn mã trong âm thanh phụ thuộc vào hệ thống thính giác của con người
(HAS – Human Auditory System). Mà HAS có thể nghe được các tín hiệu
ở các dải tần rất rộng và dải cường độ lớn nên sẽ gây khó khăn trong việc
thêm vào hoặc loại bỏ các dữ liệu ra khỏi cấu trúc dữ liệu ban đầu. Chính vì
thế, khi thực hiện ẩn mã trong âm thanh địi hỏi u cầu rất cao về tính
đồng bộ và tính an tồn của thơng điệp được giấu đi. May mắn hơn, HAS
lại có một điểm yếu là khó phân biệt được sự khác biệt của các dải tần và
cơng suất của dải âm thanh, có nghĩa là các âm thanh to, cao tần có thể che
giấu được các âm thanh nhỏ ở tần số thấp hơn một cách dễ dàng.
Nhưng kỹ thuật ẩn mã trong âm thanh này lại gặp vấn đề rắc rối khi
truyền đi trên kênh truyền. Bởi nếu kênh truyền hay băng thông bị chậm

cũng sẽ ảnh hưởng đến chất lượng của thông điệp sau khi bị giấu đi, dẫn tới
thông điệp khi đến được với người nhận sẽ bị sai lệch so với thông điệp ban
đầu.
1.5.3 Ẩn mã trong video
Cũng giống như ẩn mã trong ảnh hay trong âm thanh, ẩn mã trong video
cũng được quan tâm và phát triển mạnh mẽ cho nhiều ứng dụng như: Điều
khiển truy cập thông tin, xác thực thông tin và bảo vệ quyền tác giả. Ẩn mã
trong video là kỹ thuật giấu một loại tệp và thơng tin bất kỳ nào đó vào một
đoạn video. Về mặt kỹ thuật cơ bản thì video là một tập hợp những hình
ảnh được xắp sếp liên tục theo thời gian. Vì vậy có thể lấy từng khung
hình, sau đó ẩn giấu những thơng điệp bí mật vào từng khung hình đó, sau
đó lưu thành một tệp video mới. Hơn nữa, trong video khơng chỉ có các
hình ảnh, mà cịn có cả âm thanh. Vì vậy ta hồn tồn có thể kết hợp ẩn mã
trong ảnh và ẩn mã trong âm thanh vào kỹ thuật ẩn mã trong video này.
Điều này chứng tỏ rằng: Một tệp video có thể ẩn giấu được một lượng rất
lớn thơng điệp bí mật.
1.5.4 Ẩn mã trong văn bản
Ẩn mã trong văn bản là kỹ thuật địi hỏi người gửi có trình độ cũng như
hiểu biết rất rõ về ẩn mã. Bởi trong tệp văn bản có q ít dữ liệu dư thừa để
có thể thay thế. Hơn nữa văn bản được gọi là “vật phủ” cũng dễ dàng bị sửa
đổi bới những bên không liên quan bằng cách sửa một vài ký tự hoặc thay
đổi định dạng mới cho tệp.
Ở đây có thể sử dụng phương pháp khoảng trắng mở để ản đi thông điệp
bí mật. Với phương pháp này khi thay đổi số lượng các khoảng trắng thì
nghĩa của câu ít bị ảnh hưởng, người đọc tình cờ sẽ khơng chú ý đến sự
thay đổi của các khoảng trắng. Trong phương pháp này có ba phương pháp
17


nhỏ: phương pháp khai thác khoảng trắng giữa các câu, giữa các từ và giữa

các dòng trong các văn bản được sắp chữ.
Ví dụ, ở đây thơng điệp có thể được giấu vào các khoảng trắng của cuối
dòng. Thường người ta sẽ giấu vào các dòng kết thúc của một đoạn văn bản
để tránh sự nghi ngờ của người thứ ba nhận được văn bản đó. Phương pháp
này dùng để áp dụng giấu các bit nhị phân.
1.5.5 Ẩn mã trong giao thức
Trong các giao thức như TCP, UDP, ICMP, IP,... đều có thể trở thành vật
phủ để ẩn mã. Trong mơ hình OSI có những kênh ngầm (covert channel),
người dùng có thể mạo danh thơng tin định danh trong header của TCP/IP
để giấu đi định danh thật của một hay nhiều tổ chức.
1.6 Một số ứng dụng của ẩn mã trong thực tế
Với sự hồn hảo của các tiện ích đa phương tiện số và những tiến bộ của
công nghệ, ẩn mã ngày càng phát triển và được ứng dụng khắp nơi.Trên
thực tế ẩn mã có thể được ứng dụng trong rất nhiều trường hợp, ví dụ như:
- Lưu trữ và đảm bảo các thơng tin bí mật: Trong ứng dụng này, việc đảm
bảo tính bí mật cho thơng điệp cần giấu chính là điều quan trọng nhất. Ẩn
mã cung cấp cho chúng ta khả năng che giấu đi sự tồn tại của dữ liệu mật,
gây khó khăn cho việc phát hiện có thơng tin được ẩn và tăng độ an tồn
của dữ liệu được mã hố. Trong thực tế, khi chúng ta sử dụng một kỹ thuật
ẩn mã, chúng ta nên chọn một môi trường nhúng phù hợp với kích thước
của dữ liệu cần giấu, đặc biệt, vật phủ càng lớn hơn so với thơng điệp thì
càng tốt và nên loại bỏ môi trường nhúng ban đầu để đảm bảo sự an tồn và
tính bí mật của thơng tin.
- Liên lạc bí mật: trong nhiều trường hợp, sử dụng mật mã có thể gây ra sự
chú ý ngồi mong muốn. Ngược lại, việc giấu tin trong một vật phủ nào đó
rồi gửi đi trên kênh truyền lại ít gây sự chú ý hơn. Ta có thể sử dụng ẩn mã
để gửi đi một bí mật thương mại, một bản vẽ hoặc các thông tin nhạy cảm.
- Gán nhãn: tiêu đề, chú giải, nhãn thời gian và các minh họa khác có thể
được nhúng vào ảnh, khi đó việc sao chép ảnh sẽ sao chép cả các dữ liệu
trong đó. Tuy nhiên chỉ chủ sở hữu của bức ảnh này mới có thể tách ra và

xem các thơng tin này vì họ có khóa mật. Ngồi ra, nhờ việc ẩn mã, họ có
thể gán từ khóa vào cơ sở dữ liệu ảnh để từ đó, việc tìm kiếm bức ảnh sẽ
nhanh chóng hơn. Đối với video, người ta có thể gán thời điểm diễn ra sự
kiện vào một khung ảnh để có thể đồng bộ hình ảnh với âm thanh. Đặc biệt,
ta cũng có thể gán số lần ảnh được xem để tính tiền thanh tốn theo số lần
xem.

18


- Xác thực thông tin và phát hiện xuyên tạc: một tập thơng tin được giấu
trong phương tiện, sau đó chính thơng tin này được sử dụng để nhận biết
xem dữ liệu trên phương tiện đó có bị chỉnh sửa gì khơng.
.

19


CHƯƠNG 2. KỸ THUẬT ẨN MÃ TRONG ẢNH
2.1

Giới thiệu chung về ảnh số

2.1.1 Khái niệm ảnh số
Ảnh số là một tập hợp các điểm màu nằm trên một bề mặt phẳng, nhằm
mục đích mơ tả, ghi lại những cảm nhận thị giác của con người hoặc một
đối tượng vật lý nào đó.
2.1.2 Điểm ảnh
Điểm ảnh – Pixel (Picture Element) là đơn vị cơ bản nhất cấu tạo nên
một hình ảnh, nó thường được hiểu như là một thành phần nhỏ nhất của

một hình ảnh.
Điểm ảnh – Pixel là một phần tử của ảnh số tại tọa độ

với độ xám

hoặc một màu nhất định. Kích thước và khoảng cách giữa các điểm ảnh đó
được chọn thích hợp sao cho mắt người cảm nhận được sự liên tục về
không gian và mức xám hoặc màu của ảnh số gần như ảnh thật. Điểm ảnh
được nhận biết như là những khối màu, hình vng, rất nhỏ. Một hình ảnh
có thể được cấu thành từ hàng triệu điểm ảnh, càng nhiều điểm ảnh thì hình
ảnh càng chi tiết và rõ nét.
Trong một hình ảnh, các điểm ảnh được sắp xếp gọn gàng thành cột và
hàng. Phép tính dùng để đo kích thước số điểm ảnh trên cột dọc và hàng
ngang của hình ảnh được gọi là Độ phân giải – Resolution. Khi nói một
hình ảnh có kích thước “779 x 498 pixel” tức là có 779 điểm ảnh trên hàng
ngang và 498 điểm ảnh trên hàng dọc. Hoặc, khi nói một màn hình có độ
phân giải là “1024 x 768 pixel” nghĩa là màn hình đó có 1024 hàng điểm
ảnh, và 768 cột điểm ảnh. Độ phân giải càng cao thì ảnh càng đẹp và rõ nét.
Mỗi một pixel có thể nhận một hoặc nhiều các bit tín hiệu điện tử, dùng
để kích hoạt chúng. Số lượng các màu sắc khác nhau trên hình ảnh phụ
thuộc vào số bit trên một pixel (Bits per pixel – bpp). Số bit mà pixel có thể
nhận được phân loại như sau:
- 1bpp (1bit trên một pixel): Đây là đặc trưng của loại màn hình
Monochrome Monitor (màn hình đen trắng). Mỗi một pixel có thể
được bật hoặc tắt, hoặc được gán giá trị hoạt động là 0 và 1. Khi một
pixel nhận giá trị 1, nó được bật, khi đó sẽ có màu xanh nhạt hoặc
màu vàng đậm. Khi một pixel nhận giá trị 0, nó ở trạng thái tắt, pixel
tắt có màu đen.

20



- 2bpp (2bit trên một pixel): Là đặc trưng của loại màn hình CGA
(Color Graphic Adaptor), cho phép hiển thị 4 màu. Một pixel sẽ nhận
được 2 bit tín hiệu, khi đó:
• Giá trị “00” biểu diễn màu đen.
• Giá trị “01” biểu diễn màu đỏ.
• Giá trị “10” biểu diễn màu xanh.
• Giá trị “11” biểu diễn màu trắng.
- 4bpp (4bit trên một pixel): Đây là đặc trưng của loại màn hình EGA
(Enhanced Graphics Adaptor), cho phép hiển thị 4 bit kết hợp với
nhau tạo thành 16 màu riêng biệt, được biểu diễn từ 0000 đến 1111.
- 8bpp (8bit trên một pixel): Đây là đặc trưng của loại màn hình VGA
(Video Graphics Adaptor), cho phép hiển thị 8 bit kết hợp thành 256
nhóm 8 bit từ 00000000 đến 11111111, tương đương với 256 màu.
- 24 bpp (24bit trên một pixel): Là đặc trưng của loại màn hình SVGA
(Super Video Graphics Adaptor), cho phép hiển thị 24 bit tín hiệu kết
hợp thành 16,7 triệu nhóm bit 24 khác nhau, tương đương với việc
có thể hiển thị 16,7 triệu màu.
2.2 Các định dạng ảnh để ẩn mã
Cấu trúc ảnh bao gồm 3 thành phần chính là: Header – chứa thơng tin
tệp ảnh; Dữ liệu ảnh – số liệu ảnh được mã hoá bởi kiểu mã hoá chỉ ra
trong phần Header và Bảng màu. Tuy nhiên mỗi định dạng ảnh lại có
những đặc trưng khác nhau, trong đó có một số định dạng được sử dụng
phổ biến như: Định dạng ảnh JPEG; Định dạng ảnh TIFF; Định dạng ảnh
PNG; Định dạng ảnh GIF và Định dạng ảnh BMP.
2.2.1 Định dạng ảnh JPEG
JPEG (Joint Photographic Experts Group) – là một trong những phương
pháp nén ảnh hiệu quả, có tỷ lệ nén ảnh tới vài chục lần [2]. Chính nhờ lý
do này mà định dạng ảnh JPEG trở thành định dạng phổ biến nhất để lưu

trữ ảnh trên Web và được hỗ trợ bởi tất cả các trình duyệt Web.
Tuy nhiên ảnh sau khi được giải nén sẽ khác với ảnh ban đầu. Chất
lượng của ảnh sẽ bị suy giảm sau khi giải nén.Cũng vì vậy nó khơng được
các nhiếp ảnh gia sử dụng. Trong quá trình nén dữ liệu của file JPEG, dữ
liệu ảnh trên các pixel bị thay đổi, các vùng ảnh q nhỏ khơng thể nén
được sẽ bị xố vĩnh viễn. Điều này gây ảnh hưởng tới màu sắc của bức ảnh.
Hơn nữa chất lượng ảnh dẽ giảm dần trong quá trình sử dụng khiến JPEG
được gọi là định dạng file “làm mất dữ liệu”
21


Ưu điểm:
o Lưu trữ ảnh 24-bit màu (lên tới 16 triệu màu)
o Màu sắc đa dạng, phù hợp với các ảnh cần chú trọng tới chi tiết màu
o Được sử dụng rộng rãi nhất
o Phù hợp với tất cả các hệ điều hành (Mac, PC, Linux)
Nhược điểm:
o Thường mất thông tin nhiều
o Sau khi nén, màu của ảnh nhìn khơng được thật
o Không hỗ trợ ảnh động
o Không hỗ trợ màu trong suốt (màu nền)
2.2.2 Định dạng ảnh TIFF
TIFF (Tag Image File Format) - là một định dạng file ảnh chất lượng
cao, định dạng ảnh này “không làm mất dữ liệu” của ảnh trong quá trình
lưu trữ hay giải nén. Chính nhờ ưu điểm này giúp TIFF trở thành định dạng
mẫu mực trong việc lưu trữ tư liệu hình ảnh.
Cấu trúc của định dạng ảnh TIFF bao gồm 3 phần:
o Phần Header IFH (Image File Header) có trong tất cả các tệp TIFF,
bao gồm 8 byte.
- 1 word: Chỉ ra kiểu tạo tệp trên máy tính PC hay Macintosh. Hai

loại này khác nhau rất lớn ở thứ tự các byte lưu trữ trong các số
dài 2 hay 4 byte. Nếu trường này có giá trị là 4D4Dh thì đó là ảnh
cho máy Macintosh, cịn nếu là 4949h thì là của máy PC.
- 1 word: Là số phiên bản, ln có giá trị là 42. Có thể coi đó là đặc
trưng của file TIFF vì nó khơng thay đổi kể cả khi được nén.
- 2 word: Là giá trị Offset theo byte tính từ đầu file tới cấu trúc
IFD.
o Phần thứ hai IFD (Image File Derictory): Nó khơng ở ngay sau IFH
mà vị trí của nó được xác định bởi trường Offset trong đầu tệp. Một
IFD bao gồm:
- 2 byte: chứa các DE (Derictory Entry).
- 12 byte: Là các DE xếp liên tiếp. Mỗi DE chiếm 12 byte.
- 4 byte: Chứa Offset trỏ tới IFD tiếp theo.
o Cấu trúc phần dữ liệu thứ 3: Các DE có độ dài cố định 12 byte và
gồm 4 phần:
- 2 byte: Chỉ ra dấu hiệu mà ảnh đã được xây dựng.
- 2 byte: Kiểu dữ liệu của tham số ảnh. Có 5 kiểu tham số cơ bản:
22


BYTE (1 byte)
ASCII (1 byte)
SHORT (2 byte)
LONG (4 byte)
RATIONAL (8 byte)
- 4 byte: trường độ dài (bộ đếm) chứa số lượng chỉ mục của kiểu
dữ liệu đã chỉ ra. Nó không phải là tổng số byte cần thiết để lưu
trữ.Để có số liệu này ta cần nhân số chỉ mục với kiểu dữ liệu đã
dùng.
- 4 byte: Đó là Offset tới điểm bắt đầu dữ liệu thực liên quan tới

dấu hiệu, tức là dữ liệu liên quan với DE không phải lưu trữ vật lý
cùng với nó nằm ở một vị trí nào đó trong file. Dữ liệu chứa trong
tệp thường được tổ chức thành các nhóm dịng (cột) qt của dữ
liệu ảnh.
Ưu điểm:
Là định dạng rất linh động, hỗ trợ nhiều kiểu nén khác nhau như JPEG,
LZW, ZIP.
o Lưu trữ thông tin về màu sắc và cả thông tin về ảnh (thời gian chụp,
máy chụp, tốc độ chụp,…)
o Có thể lưu trữ dưới dạng các layers.
Nhược điểm:
o Kích thước ảnh lớn nên thời gian truyền và không gian đĩa lưu trữ
lớn.
o Tốc tộ hiển thị ảnh chậm.
2.2.3 Định dạng ảnh PNG
PNG (Portable Network Graphics) – Là một định dạng hình ảnh sử dụng
phương pháp nén dữ liệu mới – không làm mất đi dữ liệu gốc. PNG được
hỗ trợ bởi thư viện tham chiếu Libpng, một thư viện nền độc lập bao gồm
các hàm của C để quản lý các hình ảnh PNG.
Một tập tin PNG bao gồm 8 – byte ký hiệu (89 50 4E 47 0D 0A 1A)
được viết trong hệ thống có cơ số 16, chứa các chữ “PNG” và 2 dấu xuống
dòng, ở giữa là xếp theo số lượng của các thành phần, mỗi thành phần đều
chứa thơng tin về hình ảnh. Cấu trúc dựa trên các thành phần được thiết kế
cho phép định dạng PNG có thể tương thích với các phiên bản cũ khi sử
dụng các “thành phần” trong tập tin.
PNG có cấu trúc như một chuỗi các thành phần, mỗi thành phần chứa kích
thước, kiểu, dữ liệu và mã sửa lỗi CRC ngay trong nó.

23



Chuỗi được gán tên bằng 4 chữ cái phân biệt chữ hoa, chữ thường.Sự
phân biệt này giúp bộ giải mã phát hiện bản chất của chuỗi khi nó khơng
nhận dạng được. Với chữ cái đầu, viết hoa thể hiện chuỗi này là cần
thiết.Chuỗi này chứa thông tin cần thiết để đọc được tệp và nếu bộ giải mã
không nhận dạng được chuỗi này thì việc đọc tệp sẽ được huỷ bỏ. Về cơ
bản thì định dạng PNG đem lại cho ta những ưu thế vượt trội hơn so với
các định dạng phổ thông khác hiện nay như JPG, GIF, BMP…. Những ưu
thế được thể hiện rõ sức mạnh hơn khi được sử dụng trong môi trường đồ
hoạ Web.
Ưu điểm:
o Nén không bị mất dữ liệu ảnh
o Cho chất lượng ảnh tốt hơn so với GIF, PNG thậm chí cịn cho ảnh
kích thước nhỏ hơn cả GIF
o Hỗ trợ màu trong suốt (màu nền) tốt hơn GIF
Nhược điểm:
o Không phù hợp với các ảnh kích thước lớn
o Khơng hỗ trợ ảnh động
o Chỉ được hỗ trợ bởi một số trình duyệt chứ không phải tất cả
2.2.4 Định dạng ảnh GIF
GIF (Graphics Interchange Format) – là một định dạng tập tin hình ảnh
bitmap cho các hình ảnh dùng ít hơn 256 màu sắc khác nhau và các hoạt
hình dùng ít hơn 256 màu sắc cho mỗi khung hình. Định dạng này thường
dùng cho sơ đồ, hình vẽ, nút bấm và các hình màu.GIF là định dạng nén dữ
liệu đặc biệt hữu ích cho việc truyền hình ảnh qua đường truyền lưu lượng
nhỏ. Đây là một giải pháp tốt cho hình ảnh trên mạng, cho các hoạt hình
nhỏ và ngắn.Định dạng được ra đời vào năm 1987 và nhanh chóng được
ứng dụng rộng rãi trên World Wide Web cho đến nay.
GIF sử dụng thuật tốn nén Loss less (khơng bị mất dữ liệu), điều đó
cho phép chúng tạo ra kích thước nhỏ mà không bị mất hoặc mờ bất kỳ chi

tiết nào của ảnh. Có hai phiên bản của định dạng GIF, cả hai đều được phân
phối rộng rãi.Phiên bản đầu tiên là GIF87a, có rất nhiều chức năng được
tạo dưới định dạng này. Phiên bản hiện tại là GIF89a, có bổ sung thêm một
số chức năng, trong đó chức năng lưu trữ các ký tự và dữ liệu ảnh trong
cùng một tệp. Hai phiên bản này có thể được phân biệt dựa vào 6 byte đầu
tiên của tập tin.

24


2.2.4.1. GIF87a
Phiên bản GIF87A Là định dạng GIF đầu tiên, ra mắt vào năm 1987, tất
cả các phần mền, ứng dụng hỗ trợ định dạng GIF đều có thể đọc được
GIF87a.
Hình 2.1 mơ tả về cấu trúc cơ bản của GIF87a.Mỗi tệp ảnh luôn bắt đầu với
một header và một bộ mô ta hiển thị, sau bộ mô tả hiển thị là một bộ bảng
màu tổng thê.Mỗi ảnh lưu trữ trong tệp bao gồm một bộ mô tả ảnh cục bộ,
một bảng màu cục bộ và một khối dữ liệu ảnh.Trường cuối cùng của mỗi
tệp GIF là một ký tự kết thúc để biểu thị sự kết thúc chuỗi dữ liệu GIF.

Hình 2.3: Cấu trúc ảnh GIF87a

o Header gồm 6 byte:
- 3 byte: ký hiệu của ảnh, luôn luôn là “GIF”
- 3 byte: Phiên bản định dạng GIF (87a hay 89a)
o Bộ mô tả hiển thị:
- 1 word: Chiều rộng màn hình hiển thị tính theo Pixels
- 1 word: Chiều cao màn hình hiển thị tính theo Pixels
- 1 byte: Thơng tin về màn hình và bản đồ màu
- 1 byte: Chỉ số màu nền

- 1 byte: Khuân dạng điểm ảnh
o Bộ mô tả ảnh cục bộ:
25


×