You are on page 1of 36

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

NHẬP MÔN BẢO ĐẢM VÀ AN NINH


THONG TIN
LAB 3 – TÌM HIỂU VÀ TRIỂN KHAI GIẢI PHÁP ẨN DỮ LIỆU

Duy Nguyen
KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG | UIT.EDU.VN
Phụ lục

I. Lý thuyết .................................................................................................................................................. 0
1. Giới thiệu ............................................................................................................................................... 0
2. Nhúng bit (LSB) .................................................................................................................................... 1
3. Che giấu và lọc ...................................................................................................................................... 2
4. Thuật toán và biến đổi ........................................................................................................................... 3
II. Những loại Steganography thông dụng ............................................................................................. 4
1. Steganography hình ảnh ........................................................................................................................ 4
2. Steganography video ............................................................................................................................. 5
3. Steganography audio ............................................................................................................................. 6
4. Steganography document ...................................................................................................................... 8
III. DEMO................................................................................................................................................. 10
1. Ẩn dữ liệu trong file ảnh ..................................................................................................................... 10
2. Ẩn dữ liệu trong video ......................................................................................................................... 14
3. Ẩn dữ liệu trong file audio .................................................................................................................. 20
4. Ẩn dữ liệu trong file document............................................................................................................ 25
Link DEMO và phần mềm ........................................................................... Error! Bookmark not defined.
I. Lý thuyết
1. Giới thiệu
Internet và phương tiện truyền thông đang phát triển mạnh và ngày càng phổ biến hơn. Do
vậy, yêu cầu truyền tải an toàn thông tin của dữ liệu cũng tăng lên. Vì lẽ đó, ngày càng xuất
hiện và phát triển các kỹ thuật tiên tiến khác nhau nhằm đảm bảo dữ liệu được lưu trữ và
truyền tải qua mạng một cách an toàn.

Ẩn giấu dữ liệu là quá trình bí mật nhúng những thông tin vào bên trong một source dữ
liệu mà không làm thay đổi tính chất, chất lượng của các source và sự cảm nhận của người
sử dụng. Ẩn dữ liệu là một nghệ thuật và khoa học của việc cho việc viết tin nhắn ẩn một
cách mà không ai ngoài người ẩn có thể phát hiện ra. Trong ẩn dữ liệu thông tin thực tế
không duy trì ở định dạng ban đầu của nó, mà nó được chuyển đổi thành một tập tin đa
phương tiện tương đương như hình ảnh, video hay âm thanh và các loại file khác. Khi
người gửi gửi qua mạng có thể thông báo cho người nhận để lấy thông điệp ẩn bên trong
nó. Kỹ thuật này ngày nay gọi là Steganograophy.
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Steganography kỹ thuật được phát triển để ẩn dấu dữ liệu với các định dạng như các file,
thông điệp, hình ảnh hoặc video bên trong các file, thông điệp, hình ảnh hoặc video khác.

Ngày nay, trên mạng Internet, những bức tranh hay bản nhạc có vẻ ngoài bình thường (như
bức ảnh trên) có rất nhiều, nhưng bên trong nó có thể ẩn chứa những thông tin bí mật. Ưu
thế này khiến Steganography ngày càng trở nên phổ biến và được ứng dụng rộng rãi. Ngoài
lĩnh vực an toàn dùng để che giấu sự tồn tại của thông tin, nó còn được dùng trong công
nghiệp giải trí và phần mềm như một kỹ thuật đánh dấu (watermarking) trên các hình ảnh,
âm nhạc hay phần mềm số để bảo vệ bản quyền tác giả, ngăn chặn mạo nhận, chống sao
chép, xác thực nội dung, cho phép giám sát hay lần ngược dấu vết các bản sao bất hợp
pháp.

2. Nhúng bit (LSB)


Các kỹ thuật được sử dụng rộng rãi nhất để ẩn dấu dữ liệu, sử dụng cách thêm và chèn các
bit có trọng số nhỏ nhất. Ví dụ: 11111111 là một số nhị phân 8 bit, bit tận cùng bên phải
được gọi là bit LSB vì sự thay đổi của nó có ảnh hưởng ít nhất tới giá trị của số. Khi đó,
nếu thay thế hay ghi đè LBS của mỗi byte bằng một giá trị khác sẽ gây nên sự thay đổi ít
nhất tới toàn tệp. Dữ liệu nhị phân của thông điệp sẽ được chia nhỏ ra và chèn vào LBS
của mỗi pixel trong file hình ảnh .

Mặc dù có một số nhược điểm của phương pháp này, vì tương đối dễ dàng thực hiện, nên
kỹ thuật này trở nên phổ biến. Phương pháp này sử dụng bit mỗi điểm ảnh trong hình ảnh,

1
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

thật sự cần thiết cho việc sử dụng một định dạng nén thông minh, để các thông tin sẽ không
bị sai lạc bên trong thuật toán nén của các định dạng.

Các bước để ẩn dấu dữ liệu bằng phương pháp LSB đối với hình ảnh:

 Chuyển thông điệp bí mật cần giầu sang dạng chuỗi nhị phân.
 Chèn mỗi 3 bit của thông điệp vào LSB của các pixel liên tiếp trong file ảnh cho
đến khi hết thông điệp.
 Lưu lại bức ảnh mới đã chứa thông điệp mật được chèn.

Việc thực hiện giấu thông tin bằng LSB này hoàn toàn thực hiện được bằng một đoạn
code ngắn mà bạn tự viết ra. Nếu không bạn có thể sử dụng các phần mềm có sẵn trên
mạng để thực hiện thay. Ở đây mình thử nghiệm bằng phần mềm Stenography Tool và
thấy nó thực hiện khá tốt. Ảnh sau khi che dấu thông tin nhìn chẳng khác gì ảnh gốc.

3. Che giấu và lọc

Che giấu và lọc là kỹ thuật, thường có thể sử dụng 24 bit cho mỗi pixel của ảnh, công
nghệ này có thể dùng cả ảnh màu và ảnh trắng đen. Có một cách tiếp cận khác để che giấu
một thông điệp. Những phương pháp này có hiệu quả tương tự như dạng hình mờ, tạo dấu
trong một hình ảnh. Điều này có thể đạt được bằng cách thay đổi độ sáng của các thành
phần hình ảnh. Trong khi mặt nạ có thể làm thay đổi các thuộc tính có thể nhìn thấy ở một
hình ảnh, nó có thể thực hiện một cách mà mắt người sẽ thể nhìn thấy, kỹ thuật này mạnh
hơn so với kỹ thuật nhúng bit.

2
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Hình ảnh khi được sử dụng phương pháp Mask and filter để chèn thông điệp

4. Thuật toán và biến đổi

Một kỹ thuật steganography nhằm che giấu dữ liệu dựa trên các chức năng toán học
trong các thuật toán nén. Ý tưởng là để che giấu các bit dữ liệu trong các hệ số quan trọng
nhất.

Một lợi thế quan trọng của hình ảnh JPEG qua các định dạng khác là phương pháp nén của
nó. Nó cho phép những hình ảnh chất lượng cao được lưu trữ trong các tập tin tương đối
nhỏ. Các dữ liệu nén được lưu trữ dưới dạng số nguyên nhưng để tính toán cho quá trình
lượng tử hóa đòi hỏi phải tính toán phải làm tròn. Lỗi giới thiệu bằng cách làm tròn xác
định tính trạng lossy của phương pháp nén JPEG. Hình ảnh JPEG sử dụng cosine rời
rạc(DCT) các kỹ thuật dùng để nén hình ảnh. DCT là "một kỹ thuật để thể hiện một dạng
sóng như một tổng trọng số của cosin" [10]. Trong một tập tin JPEG, hình ảnh được tạo
thành từ các hệ số DCT. Khi một tập tin được steganographically nhúng vào một hình ảnh
JPEG, các mối quan hệ của các hệ số này được thay đổi. Thay vào đó các bit thực tế trong
hình ảnh được thay đổi như trong LSB steganography, nó là mối quan hệ của các hệ số với
nhau mà thay đổi.

3
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Ngoài DCT, hình ảnh có thể được xử lý với biến đổi Fourier nhanh (FFT). FFT là "một
thuật toán để tính toán biến đổi Fourier của một tập hợp các giá trị dữ liệu rời rạc" [11].
Các FFT thể hiện một tập hợp hữu hạn các điểm dữ liệu về tần số thành phần của nó. Nó
cũng giải quyết các vấn đề nghịch đảo giống hệt nhau xây dựng lại một tín hiệu từ các dữ
liệu tần số.

Các biến đổi wavelet là một sự biến đổi chức năng cơ sở đó khu trú ở tần số. Các phương
pháp nén wavelet là tốt hơn lúc đại diện cho quá độ, chẳng hạn như hình ảnh của các ngôi
sao trên bầu trời đêm. Điều này có nghĩa rằng "yếu tố của một số tín hiệu dữ liệu đó là
thoáng qua có thể được đại diện bởi một lượng thông tin nhỏ hơn sẽ là trường hợp nếu
chuyển đổi một số khác, chẳng hạn như các cosin rời rạc biến rộng rãi hơn, đã được sử
dụng" [12]. Ép Wavelet là tốt cho các đặc tính tín hiệu thoáng qua nhưng không cho mịn,
tín hiệu định kỳ.

Nhiều phương pháp chuyển đổi tên miền là không phụ thuộc vào các định dạng hình ảnh
để các thông điệp ẩn được giữ lại sau khi chuyển đổi giữa các định dạng lossless và lossly.

Ẩn dữ liệu:

Các bước thực hiện để có những DCT hay biến đổi wavelet của ảnh bìa và tìm các hệ số
dưới một ngưỡng cụ thể. Thay thế các bit với bit được ẩn (ví dụ, sử dụng LSB chèn) và sau
đó lấy nghịch đảo và lưu nó như là một hình ảnh thường xuyên.

Phục hồi dữ liệu:


Để trích xuất các dữ liệu ẩn đi các biến đổi của hình ảnh sửa đổi và tìm các hệ số dưới một
ngưỡng cụ thể. Trích xuất các bit dữ liệu từ các hệ số và kết hợp các bit vào một thông điệp
thực sự.

II. Những loại Steganography thông dụng


1. Steganography hình ảnh

4
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Là che giấu hay ẩn một dữ liệu quan trong bên dưới một file ảnh bất kỳ, với những file
định dạng ảnh được chèn các thông tin nằm bên dưới chúng, sao cho người xem không
nhận biết được sự thay đổi giữa file ảnh gốc và file ảnh được chèn, từ đó có thể ẩn giấu dữ
liệu quan trọng. Các định dạng hình ảnh được hỗ trợ ẩn dữ liệu thông dụng là file PNG,
JPEG...

Khi sử dụng một bức ảnh màu 24bit. Một bit của từng thành phần màu đỏ, xanh lá, xanh
dương có thể được sử dụng, các màu là sự kết hợp của các màu trên, Màu tối nhất có giá

trị 0, màu sáng nhất có giá trị 255, vậy tổng cộng có 3 bit có thể được lưu trong từng pixel.
Với một bức ảnh độ phân giải 800 x 600 chứa một số lượng 1.440.000 bits (180.000 bytes)
dữ liệu ẩn.

2. Steganography video

Là quá trình che giấu thông tin bí mật trong 1 video (có đuôi định dạng mp4, mpa,
MPG4, flv…) . Việc bổ sung các thông tin này cho các video là không dễ dàng để nhận
biết được bằng mắt thường do sự thay đổi của các điểm ảnh là không đáng kể .

Phương pháp này hoạt động nhờ sự chia nhỏ thông tin bí mật thành các index và đặt các
index vào khung của video. Với sự chia nhỏ các index này các frame của video sẽ chứa các
thông tin mật. Vì thế cơ chế hoạt động dựa trên việc ẩn trong file hình ảnh và file âm thanh.

5
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Thao tác được sử dụng để bổ sung thông tin dữ liệu bí mật tại thời gian của quá trình biến
đổi hành động trong video. Do đó 1 số lượng lớn các thông tin bí mật sẽ được ẩn giấu trong
file video khi di chuyền các hình ảnh và âm thanh.

3. Steganography audio

Là quá trình ẩn giấu thông tin quan trọng bên dưới một file audio, người dùng không
thể nhận biết được sự khác biệt khi nghe. Điều này giúp cho thông tin được ẩn giấu an toàn
và không bị phát hiện. Các định dạng audio thông dụng được ẩn dữ liệu là đuôi: MP3,
WAV…

Trong xử lý tín hiệu âm thanh, tín hiệu tuần tự được xử lý thành một chuỗi bit số. Quá
trình này bao gồm việc lấy mẫu và chuyển các mẫu này thành các mức điện áp hay mức
tín hiệu, sau đó lại được chuyển thành giá trị số nhờ một sơ đồ gọi là điều chế mã xung.
Thiết bị thực hiện chuyển đổi này gọi là bộ mã, giải mã (codec). Điều chế mã xung chỉ
cung cấp giá trị xấp xỉ của tín hiệu tương tự ban đầu. Nếu âm tuần tự được đo ở mức nào
đó thì nó được chuyển thành giá trị 5 trong điều chế mã xung và tạo nên sai số lượng tử.
Các ứng dụng âm thanh khác nhau xác định một số mức điều chế mã xung khác nhau để
sai số này gần như không thể phát hiện được bởi tai của con người. Mạng điện thoại chuyển
mỗi mẫu tiếng nói thành một giá trị 8 bit (0 - 255), trong khi đó, các ứng dụng nhạc thường
dùng các giá trị 16 bit (0 - 65, 535).

Các tín hiệu tương tự cần được lấy mẫu ở tốc độ bằng 2 lần thành phần tần số cao nhất
của tín hiệu ban đầu để có thể khôi phục được chính xác từ các mẫu. Trong mạng điện
thoại, tiếng nói con người nằm trong dải tần từ 0 - 4000 Hz (mặc dù chỉ khoảng 400 - 3400
Hz thực sự được dùng để tải tiếng nói); bởi vậy, tiếng nói được lấy mẫu ở tần số 8000 Hz.
Trong khi đó, các ứng dụng âm nhạc lấy toàn bộ phổ của tai con người (20 - 20.000 Hz)
và nói chung dùng tốc độ lấy mẫu là 44,1 kHz.

6
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Các tệp âm thanh thực tế được làm nhỏ hơn nhờ dùng các kỹ thuật nén khác nhau, trong
một số trường hợp thấp chỉ khoảng 11 kHz. Tuy nhiên, tất cả các giải pháp này đều làm
giảm phần nào chất lượng âm thanh

Hình: So sánh hình ảnh ở mức tín hiệu của một tệp mang âm thanh kiểu WAV trước (hình trên)
và sau khi (hình dưới)

Audio Steganography sử dụng các cơ chế ẩn giấu dữ liệu LSB coding (chèn bit), Tone
Insertion

7
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Hình: mô tả ẩn thông điệp và lấy thông điệp

4. Steganography document

Tương tự như các phương pháp Steganography trong hình ảnh, audio, video.
Steganography document là phương pháp ẩn giấu thông tin bí mật trong file documents.
Các file documents sử dụng để chứa dữ liệu có định dạng đuôi là.txt, .pdf, .doc….

Hình: mô tả ẩn thông điệp và lấy thông điệp

Lợi dụng đặc tính vật lý của hệ thống máy tính và những khoảng trống trong file document
như vỏ bọc để nhúng dữ liệu văn bản dựa theo cấu trúc (Binary File Format). Với kỹ thuật
này người dùng có thể ẩn 63 byte trong 34KB , kích thước bìa tài liệu với thông tin về kích

8
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

thước của tài liệu rổng 10/11KB. Ngoài ra bằng cách sử dụng công cụ Track Change không
ảnh hưởng đến dữ liệu ẩn tại Stego- tài liệu thư gửi hoặc sao chép.

Các kỹ thuật mã hóa trong văn bản:

Mã hóa thông tin trực tiếp trong văn bản

 Dựa vào cú pháp


 Dựa vào ngữ nghĩa
 Phương pháp P.Wayner method
 Dựa vào bản dịch: sử dụng sai sót trong quá trình dịch văn bản trong máy dể giải
quyết vấn đề thông tin dịch không hợp lý.

Dựa vào định dạng văn bản.

 Phương pháp không gian mở (Open Space method): Dựa vào không gian trống chưa
sử dụng như khoảng trắng, không gian trống ở cuối dòng khi kết thúc 1 câu…
 Dịch dòng trong văn bản: dòng văn bản được dịch chuyển theo chiều dọc (di chuyển
lên hoặc xuống) theo các bit thông điệp bí mật.
 Dịch chuyển ký tự: Từ mã mã hóa trong một tài liệu bằng cách thay đổi vị trí nằm
ngang hay thẳng đứng của các từ trong các dòng văn bản.
 Tính năng mã hóa: Dựa vào các tính năng như hình, kích cở hoặc vị trí trong file
document.
 Chất lượng màu sắc: dựa vào chast lượng màu, độ sáng và cường độ của từng đối
tượng mà mắt thường con người không thể nhìn thấy được…

Dựa vào cấu trúc tập tin

 Raw Memory Dumps/ Unstructured Formats (RMD)


 Chunk based Formats (CBF)
 Định dang thư mục Directory based Formats (DBF)

9
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

 Hiện nay có nhiều công cụ dung để mã hóa thông tin bí mật trong document như:
Merge streams, Office XML, Data Stash, FoxHole, WbStego …
III. DEMO
1. Ẩn dữ liệu trong file ảnh

Phần mềm OpenPuff v4.00

Phần mềm có khả năng nén và ẩn các định dạng media thông dụng

 Video: 3gp, mp4..


 Ảnh: jpg, png..
 Audio: mp3…

Phần mềm có hỗ trợ bảo mật, khóa thông điệp bằng password để đảm bảo không bị mất
thông điệp. Phần mềm này còn hỗ trợ tách thông tin ẩn giấu.

10
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Phần mềm quick stego

Chọn open image để chọn ảnh

11
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Sau khi Chọn ảnh cần giấu phần mềm sẽ tính file tối thiểu để chèn vào có dung lượng tối
thiều bao nhiêu, phần mềm này có đặc biệt ta có thể chèn vào đồi thời nhiều file ảnh

12
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Chỗ này ta có thể viết trực tiếp thong điệp bên phải hoặc thêm file text chọn open text

Cuối cùng chọn Hide Text và lưu file ảnh cuối cùng

13
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Kết quả khi người nhận được file ảnh này, sử dụng phần QuickStego để lấy thông điệp
được giấu bên trong file ảnh.

2. Ẩn dữ liệu trong video

Mở OpenPull v4.00 với giao diện

14
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Chọn Hide

Các bước thực hiện ẩn thông điệp

15
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

1. Nhập password, có thể nhập nhập 3 pass cho A, B, C nhưng cũng có thể nhập 2 pasword
hoặc tối thiểu phải nhập password cho A
2. Data chọn Browse để link tới file thông tin muốn ẩn trong video.
3. chon Add để link tới nơi chứa file video.

Sau đó, chọn Hide Data để tiến hành ẩn dữ liệu.

Chọn nơi lưu file video đã có dữ liệu ẩn.

16
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Kết quả sau khi hoàn tất ẩn dữ liệu bên dưới file video

17
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Các bước thực hiện tách dữ liệu được ẩn trong file video

Tương tự các bước như ẩn dữ liệu

18
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Tiếp theo chọn unhide và chọn nơi lưu fife chứa thông thi đã bị hide trong video

19
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Chỉ những bước đơn giản với công cụ OpenPuff ta có thể dễ dàng ẩn một thông tin quan
trọng trong file video

3. Ẩn dữ liệu trong file audio

Giao diện chính của phân mềm DeepSound 1.4. Với phần bên trái là cây thư mục để lựa
chọn file, phần bên phải của phần mềm là thông tin file được lựa chọn

20
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Bước tiếp theo nhóm tiến hành lựa chọn file audio để thực hiện chèn thông điệp vào dưới
file audio này tiếp tục chọn “add secret files” theo hình dưới

Thông tin của file được đính kèm thông điệp được hiện lên ở phần phải của phần mềm như
hình dưới

21
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Kết quả bên phải giao diện phần mềm hiển thị thông điệp được nén trong file audio

22
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Tiếp tục lựa chọn lưu kết quả theo đường dẫn, output format với các định dang audio khác
nhau

Kết quả ta có file đuôi .wav

23
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

24
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Có thể làm bước tương tự để lấy file thông điệp ẩn dưới file audio này một cách dễ dàng
bằng cách mở lại file audio có chứa thống điệp. Với file audio có chứa thông điệp thì sẽ
hiện thông điệp đã ẩn bên phải giao diện màn hình như hình trên.

4. Ẩn dữ liệu trong file document

Công cụ sử dụng : openpuff.

Các bước ẩn thông tin.

Mở chương trình OpenPuff

Chọ Hide để mở giao diện làm việc

25
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Thực hiện lần lượt các thao tác.

 Nhập password
 chọn file muốn giấu
 chọn file dung để giấu dữ liệu.

26
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Chọ Hihe Data để tiến hành ẩn dữ liệu.

Kết quả sau khi hoàn tất thành công ẩn thông điệp với file document

27
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

28
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Lấy dữ liệu đã được ẩn

Mở công cụ OpenPuff

Chọ Unhide để lấy dữ liệu ẩn.

29
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Nhập password (là password đã được nhập để ẩn dữ liệu)

Chọn file document chữa dữ liệu đã được giấu ở Add Cariers

30
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

Chọn Unhide để lấy dữ liệu ẩn.

Chọn vị trí lưu.

Kết quản hoàn tất quá trình lấy thông điệp trong file document đã ẩn

31
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

32
Th.S Nguyễn Duy
Bộ Môn An Toàn Thông Tin

33

You might also like