HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA AN TỒN THƠNG TIN
BÀI TẬP LỚN MÔN HỌC
KĨ THUẬT GIẤU TIN
Đề tài:
BIẾN THỂ CỦA THUẬT TỐN ẨN MÃ LSB ĐỂ
GIẤU THƠNG TIN TRONG ẢNH RGB
Sinh viên thực hiện:
NGUYỄN VĂN THÀNH AT150452
HÀ VĂN THIỆU AT150255
PHÙNG VĂN THÀNH AT150451
NGUYỄN TIẾN SỸ AT131044
NGUYỄN TIẾN DŨNG AT140108
Nhóm 12
Giảng viên hướng dẫn:
ThS. HOÀNG THU PHƯƠNG
Hà Nội, 02-2022
TÓM LƯỢC
Kĩ thuật giấu tin đã được nổi lên như một kỹ thuật nổi bật để truyền đạt
thơng tin bí mật trong một định dạng đa phương tiện thích hợp. Trong kĩ thuật
ẩn mã hình ảnh, phương pháp thay thế bit ít quan trọng nhất (LSB) là phổ biến
nhưng dễ bị tấn cơng bảo mật. Kể từ đây, nó ln luôn cấp thiết để làm cho kỹ
thuật ẩn mã mạnh mẽ hơn và an tồn hơn. Bài báo này trình bày một cách tiếp
cận mới để ẩn thông điệp văn bản trong ảnh đỏ-lục-lam (RGB) dựa trên kỹ thuật
LSB. Không giống như kỹ thuật LSB tiêu chuẩn, nơi các bit thơng báo được
nhúng trực tiếp vào các vị trí LSB, thuật tốn đề xuất của chúng tơi mã hóa các
bit thơng báo này trước khi nhúng vào các vị trí LSB. Q trình nhúng và mã
hóa này được thực hiện trên cơ sở của hầu hết các giá trị bit quan trọng (MSB)
của RGB và khái niệm về tỷ lệ chẵn và lẻ của các điểm ảnh tương ứng. Mục tiêu
chính của phương pháp được trình bày là để cải thiện độ mạnh và chất lượng
hình ảnh của stego-image.Hiệu suất của chất lượng hình ảnh stego được đo bằng
bình phương sai số trung bình (MSE),tỷ lệ tín hiệu trên nhiễu đỉnh (PSNR), đo
độ tương đồng về cấu trúc (SSIM), tỷ lệ bit (BR),và phân tích biểu đồ. Kết quả
thực nghiệm và các nghiên cứu so sánh đã tiết lộ rằng kỹ thuật được đề xuất có
thể che giấu thơng điệp một cách hiệu quả, với rất ít sự khác biệt giữa ảnh phủ
và ảnh stego. Kết quả cũng cho thấy rằng cách tiếp cận được đề xuất có thể
nhúng lượng thơng tin hợp lý.
Từ khóa:Kĩ thuật ẩnn mã trên ảnh số, LSB, MSB, tính chẵn lẻ, ảnh RGB
MỤC LỤC
TĨM LƯỢC........................................................................................................ii
DANH MỤC HÌNH ẢNH....................................................................................i
DANH MỤC BẢNG...........................................................................................ii
CHƯƠNG 1. GIỚI THIỆU................................................................................1
CHƯƠNG 2. CÁC CƠNG TRÌNH LIÊN QUAN............................................3
CHƯƠNG 3. LÝ THUYẾT LIÊN QUAN........................................................5
3.1. Thuật toán LSB cổ điển..............................................................................5
3.2. Khái niệm chẵn lẻ.......................................................................................6
CHƯƠNG 4. PHƯƠNG PHÁP LUẬN ĐƯỢC ĐỀ XUẤT.............................7
4.1. Mô tả model................................................................................................7
4.2. Giải thích q trình mã hóa và giải mã.......................................................8
4.2.1. Các bước mã hóa................................................................................10
4.2.2. Các bước giải mã................................................................................11
CHƯƠNG 5. KẾT QUẢ VÀ THẢO LUẬN...................................................13
5.1. Cài đặt thử nghiệm và đánh giá chất lượng ảnh.......................................13
5.2. So sánh với các phương pháp tốt nhất hiện tại.........................................16
CHƯƠNG 6. KẾT LUẬN.................................................................................18
TÀI LIỆU THAM KHẢO................................................................................19
DANH MỤC HÌNH ẢNH
Hình 3.1. Ví dụ về nhúng 0/1 vào chuỗi nhị phân................................................5
Hình 3.2. Kĩ thuật LSB.........................................................................................5
Hình 4.1. Cấu trúc tổng thể của phương pháp (a) Quá trình mã hóa (b) Q trình
giải mã...................................................................................................................8
Hình 4.2. Thủ tục lấy giá trị chẵn lẻ......................................................................9
Hình 4.3. Các bước chọn kênh màu......................................................................9
Hình 4.4. Q trình mã hóa...................................................................................9
Hình 4.5. Q trình giải mã................................................................................10
Hình 5.1. Ảnh phủ và ảnh stego của Lena: (a) Ảnh phủ và biểu đồ RGB (b) Ảnh
Stego và biểu đồ RGB.........................................................................................16
DANH MỤC BẢNG
Bảng
Bảng
Bảng
Bảng
Bảng
Bảng
1. Ví dụ về khái niệm chẵn lẻ.....................................................................6
2. Hoạt động nhúng bit thông điệp vào kênh............................................10
3. Nhúng thông điệp sử dụng q trình mã hóa........................................11
4. Giải nén thơng điệp bằng cách giải mã................................................12
5. Kết quả đánh giá hiệu quả của thuật toán.............................................15
6. So sánh phương pháp này với phương pháp khác................................16
CHƯƠNG 1. GIỚI THIỆU
Lĩnh vực nghiên cứu che giấu thông tin đã thu hút nhiều nhà nghiên cứu
trong việc làm ra các kỹ thuật đáng tin cậy để đảm bảo bảo vệ nội dung kỹ thuật
số khỏi nhiều các cuộc tấn công bảo mật, đặc biệt là trong miền trực tuyến.
Những kỹ thuật như vậy được thấy trong lịch sử bao gồm mật mã, thủy vân và
ẩn mã [1-2]. Một trong những cách tiếp cận phổ biến là kĩ thuật ẩn mã - nghệ
thuật và khoa học che giấu thông tin bằng cách nhúng tin nhắn trong phương
tiện phủ như tệp văn bản, hình ảnh, âm thanh hoặc video [3]. Ví dụ, trong kỹ
thuật ẩn mã bằng hình ảnh, phương tiện phủ là hình ảnh, theo đó thơng tin được
nhúng bằng cách thay đổi một số thành phần không cần thiết của hình ảnh đó.
Thơng thường, trong kĩ thuật ẩn mã hình ảnh, có hai phương pháp của thuật
tốn ẩn mã là miền biến đổi và miền không gian. Ẩn mã trong miền biến đổi
hình ảnh bao gồm thực hiện hàng loạt thay đổi ảnh phủ trước khi ẩn thông tin.
Biến đổi cosin rời rạc (DCT), biến đổi fourier (FT) và biến đổi wavelet rời rạc
(DWT) là một số kỹ thuật được sử dụng cho mục đích này [4]. Mặt khác,ẩn mã
trong miền khơng gian hình ảnh thường sử dụng kỹ thuật thay thế trực tiếp bit ít
quan trọng nhất (LSB) - mã hóa ở mức LSB [5].
Kỹ thuật ẩn mã hình ảnh LSB là một cách tiếp cận phổ biến do tính khơng bị
phát hiện tốt hơn và khả năng chịu tải [6]. Mặc dù nó đơn giản, nhưng LSB
truyền thống dễ bị khai thác vì xác suất phát hiện mật báo cao. Do đó, một loạt
các phương pháp đã được đề xuất dựa trên kỹ thuật thay thế LSB. Hầu hết các
cách tiếp cận hiện có cố gắng chọn một vùng hoặc các luồng bit của ảnh phủ và
nhúng một thơng báo,cái mà thường được mã hóa dựa trên mật mã hoặc các
hàm tốn học khác,với một khóa bí mật được sử dụng để giải mã thơng điệp [78]. Mặc dù hiệu suất của các phương pháp này là tốt hơn so với phương pháp
thay thế LSB, nhưng q trình trao đổi khóa bí mật là thách thức cũng như về
hiệu quả tổng thể, thường thì những phương pháp đó khơng khai thác triệt để.
Chúng tơi đề xuất một phiên bản sửa đổi của kĩ thuật LSB cái mà có thể làm
tăng khả năng nhận biết và tính mạnh mẽ của kỹ thuật ẩn mã hình ảnh LSB.
Thay vì lưu trữ các bit thơng điệp trực tiếp trong vị trí LSB, mỗi bit thơng điệp
được mã hóa và đặt vào một trong 3 kênh của điểm ảnh RGB. Việc lựa chọn
một kênh cụ thể được thực hiện trên cơ sở các bit MSB của điểm ảnh RGB đó,
trong khi các giá trị chẵn lẻ của kênh đã chọn đó làm sai lệch q trình mã hóa
của bit thơng điệp. Mặc dù thuật tốn được đề xuất có thể được áp dụng cho
1
khơng mất các định dạng hình ảnh như BMP, GIF, PNG hoặc TIF, chúng tôi chỉ
tập trung vào định dạng ảnh màu TIF 24-bit cho mục đích thí nghiệm.
Phần cịn lại của bài báo được sắp xếp như sau: Phần 2 mô tả các công việc
được thực hiện trong ẩn mã, đặc biệt là ẩn mã hình ảnh RGB, trong khi Phần 3
trình bày lý thuyết liên quan - thuật toán LSB cổ điển và khái niệm chẵn lẻ - cần
thiết cho nghiên cứu hiện tại. Các mô tả về mơ hình được đề xuất và các quy
trình mã hóa và giải mã được trình bày trong Phần 4. Trong Phần 5, kết quả thí
nghiệm và thảo luận được đưa ra. Cuối cùng, Phần 6 bao gồm kết luận và các
nghiên cứu trong tương lai.
2
CHƯƠNG 2. CÁC CƠNG TRÌNH LIÊN QUAN
Gần đây, sự phổ biến của phương pháp LSB đã thu hút nhiều nhà nghiên
cứu trong sửa đổi hoặc kết hợp kỹ thuật LSB tiêu chuẩn trong kỹ thuật ẩn mã
hình ảnh. Một số các cuộc khảo sát về kỹ thuật ẩn mã hình ảnh đã nêu bật các
cách tiếp cận khác nhau [4-9]. Saha, et. al.,[10] đề xuất một lược đồ để ẩn các
thơng điệp trong hình ảnh 24 bit bitmap, nơi các giá trị điểm ảnh có nhiểu nhất
và sự sửa đổi các điểm ảnh đó được tính tốn để ẩn thơng tin.Ta quan sát thấy
rằng hiệu quả của phương pháp tiếp cận được đánh giá cao là do số lượng điểm
ảnh đủ điều kiện, với số lượng điểm ảnh đủ điều kiện vừa phải sẽ tạo ra kết quả
tốt hơn. Mặt khác, Islam [11] đã sử dụng ảnh bitmap 24 bit để nhúng thơng điệp
bằng cách sử dụng trình tạo luồng và khái niệm chẵn lẻ. Một luồng được xây
dựng bằng cách tổng hợp các LSB của 8 byte điểm ảnh và sau đó giá trị chẵn lẻ
của các điểm ảnh này quyết định cách nhúng thông báo. Khái niệm này là hiệu
quả, nhưng khả năng nhúng thấp. Akhtar, et. al., [12] đã sử dụng chiến lược đảo
ngược bit theo cách sao cho số lượng LSB của các điểm ảnh bị thay đổi ít hơn.
Chiến lược này nâng cao đáng kể khả năng không thể nhận ra nhưng yêu cầu
thêm bộ nhớ để ghi lại các lần đảo ngược. Jung và Yoo [13] đề xuất kết hợp
phép nội suy và thay thế LSB cho dữ liệu ẩn. Phương pháp nội suy, xử lý trước
ảnh phủ để có dung lượng và chất lượng tốt hơn, chia tỷ lệ lên và xuống của ảnh
phủ, trong khi đó, phương pháp thay thế LSB được áp dụng để nhúng. Dữ liệu
bí mật có thể được lấy từ hình ảnh stego mà khơng cần thêm thơng tin.
Juneja và Sandhu [14] đã đề xuất một kỹ thuật phát hiện cạnh. Điểm ảnh của
các cạnh của ảnh phủ được phát hiện bằng bộ lọc phát hiện cạnh nâng cao và
các thông báo được nhúng vào các LSB của các điểm ảnh sử dụng số giả ngẫu
nhiên. Tương tự như vậy, Jain, et. al., [15] cũng sử dụng kỹ thuật phát hiện cạnh
để nhúng tin nhắn vào ảnh phủ. Chakraborty, et. al., [16] đã phát minh ra công
cụ dự đốn cạnh có tên là Trình phát hiện cạnh trung bình đã sửa đổi (MMED)
cùng với chiến lược thích ứng để chọn phần cạnh của ảnh phủ. Sau đó,khối nhị
phân được nhúng vào vùng cạnh của ảnh phủ. Kết quả cho thấy khả năng nhúng
tốt hơn.Wu, et. al., [17] đề xuất một lược đồ sử dụng phương pháp thay thế LSB
và phương pháp phân biệt giá trị điểm ảnh. Phương pháp này nhúng nhiều dữ
liệu bí mật hơn vào các khu vực cạnh hơn là các khu vực mịn trong ảnh phủ. Ở
đây các khu vực trước đây sử dụng thay thế LSB và các khu vực sau sử dụng
các phương pháp giá trị điểm ảnh tương ứng. Tyagi, et. al., [18] đã mở rộng
3
cách tiếp cận trong đó sự khác biệt của các giá trị điểm ảnh cùng với tổng giá trị
điểm ảnh của hai điểm ảnh liên tiếp được xử lý để ẩn dữ liệu bí mật. Tuy nhiên,
Mandal và Das [19] đã sử dụng phương pháp sự khác nhau của giá trị điểm ảnh
để nhúng thơng điệp bí mật vào từng thành phần của điểm ảnh trong ảnh màu.
Một phương pháp khác được đề xuất bởi Das và Tuithung [20] là sử dụng
mã hóa Huffman cho việc nhúng các thơng điệp. Mã hóa Huffman được thực
hiện trên thơng điệp bí mật trước khi được nhúng ở LSB của từng cường độ
điểm ảnh của ảnh phủ. Cùng thời điểm, luồng bit được mã hóa Huffman cũng
như bảng Huffman cũng được nhúng vào ảnh phủ cho các cơ sở độc lập của
stego-image. Sun [1] cũng lựa chọn bảng Huffman và mã hóa Huffman để
nhúng dữ liệu bí mật vào cạnh ảnh phủ. Đồng thời, một kỹ thuật hiệu chỉnh
được gọi là hiệu chỉnh 2^k được giới thiệu để giảm thiểu sự khác biệt giữa stego
và hình ảnh bìa.
Nhiều nhà nghiên cứu cũng đã mở rộng mối quan tâm đến việc nhúng thông
điệp không chỉ trong vị trí LSB đầu tiên mà cịn ở vị trí LSB cao hơn, thường
được gọi là phương pháp thay thế K-bit LSB. Parvez và Gutub [21] đã đề xuất
các giá trị cường độ RGB của điểm ảnh. Trong cách tiếp cận của họ, thành phần
màu thấp hơn chứa nhiều bit hơn thành phần màu cao hơn,với nhiều hơn một sự
thay thế bit LSB xảy ra trong thành phần màu thấp hơn. Phương pháp thay thế
K-bit trong ẩn mã hình ảnh có thể được tìm ra bởi Liao, et al. al., [22] và Nag,
et. al., [23] trong đó 4 bit LSB của ảnh phủ được thay thế. Mặc dù nhúng dữ liệu
trong các lớp LSB cao hơn dễ bị tấn công hơn so với những dữ liệu được nhúng
trong các lớp thấp hơn, điều này làm tăng độ méo hình ảnh trong stego-image.
Để giảm thiểu điều này, các phương pháp LSB thích hợp và tối ưu đã được sử
dụng trong một số tài liệu bao gồm [24-26].
4
CHƯƠNG 3. LÝ THUYẾT LIÊN QUAN
3.1. Thuật toán LSB cổ điển
Trong kỹ thuật này, các bit của thông báo được nhúng trực tiếp vào LSB
của
ảnh phủ theo một trình tự xác định. Việc sửa đổi này không gây ra bất kỳ tác
động nào đến nhận thức của con người do biên độ thay đổi là nhỏ. Về điều kiện
của ảnh RGB 24-bit, mỗi điểm ảnh được lấy từ ba màu cơ bản: đỏ, lục và lam,
và mỗi màu cơ bản được biểu diễn bằng 8 bit. Người ta có thể lưu trữ 3 bit trong
mỗi pixel bằng cách thay đổi một chút của mỗi thành phần màu đỏ, lục và lam.
Ví dụ: bên trong hình ảnh 24-bit, chúng tơi có ba pixel liền kề (9 byte), được thể
hiện trong Hình 3 .1 (a). Giả sử, chúng tôi muốn ẩn ký tự ‘a’ (mã ASCII của ‘a’
là 97, là 01100001 trong hệ nhị phân). Xếp chồng 8 bit này theo thứ tự trên LSB
của 9 byte ở trên, chúng ta nhận được kết quả như trong Hình 3 .1(b), (trong đó
các bit in đậm và gạch chân biểu thị các thay đổi). Bằng cách này, các bit thơng
báo có thể được nhúng trong ảnh phủ tạo ra hình ảnh stego mà từ đó bit thơng
điệp có thể được trích xuất. Hình 3 .2, mơ tả quy trình tổng thể của kĩ thuật
LSB này.
Hình 3.1. Ví dụ về nhúng 0/1 vào chuỗi nhị phân
5
Hình 3.2. Kĩ thuật LSB
3.2. Khái niệm chẵn lẻ
Thơng thường, khái niệm chẵn lẻ được sử dụng nhiều trong truyền thông
dữ liệu để phát hiện lỗi [27]. Đây là kỹ thuật gửi một bit dư thừa để xác minh
tính tồn vẹn của dữ liệu nhận được. Trong bài báo này, chúng tôi chỉ định nghĩa
'chẵn lẻ' là số các số 1 trong một luồng nhị phân nhất định. Nếu như một dịng
các bit có độ dài cụ thể L có số các số nhị phân 1 là chẵn, tính chẵn lẻ của dịng
này được coi là tính chẵn và chúng tôi mô tả điều này là 1. Mặt khác, khi luồng
các bit có độ dài cụ thể L có số các số nhị phân 1 là lẻ, tính chẵn lẻ của luồng
này được coi là tính lẻ và chúng tơi mô tả giá trị này là 0 (xem Bảng 1). Chúng
tơi có thể dễ dàng tính tốn liệu một luồng là chẵn hay lẻ bằng cách chỉ cần thực
hiện XNOR của tất cả các bit của một luồng. Ví dụ, nếu B X1X2X3 ... Xn có
độ dài n bit, thì tính chẵn lẻ là X1xnorX2xnorX3xnor ... Xn. Giá trị này là
1 hoặc 0, đại diện cho chẵn và lẻ tương ứng.
Bảng 1. Ví dụ về khái niệm chẵn lẻ
Dịng bit (L=8)
11010111
11010101
Tính chẵn lẻ
1, chẵn
0, lẻ
6
CHƯƠNG 4. PHƯƠNG PHÁP LUẬN ĐƯỢC ĐỀ XUẤT
Trong phần này, chúng tơi trình bày giải pháp được đề xuất của chúng tơi
theo trình tự mơ tả model, mã hóa và giải mã các thuật tốn và giải thích về mã
hóa và q trình giải mã.
4.1. Mơ tả model
Phương pháp chúng tôi đề xuất sử dụng ảnh RGB 24-bit làm ảnh bìa. Giống
như các ảnh RGB 24-bit khác, mỗi ảnh bìa là một tập hợp các pixel và mỗi
pixel được biết diễn bởi ba byte kênh màu đỏ xanh lá và xanh dương trong đó.
Ở Hình 4 .3(a), trong q trình nhúng, những pixel của anh bìa chuyển đổi
thành một mảng byte kênh màu đỏ, xanh lá và xanh dương hoặc là thành các
khối. Tiếp theo, giá trị MSB của ba byte này(gồm các kênh màu đỏ, xanh là và
xanh dương) trong các pixel hoạt động như một chỉ báo(thị) xác định bit thông
điệp được giữ trong kênh nào. Sau quá trình lựa chọn kênh phù hợp, lúc này
các bit thơng điệp được nhúng vào kênh đã chọn bằng cách mã hóa. Việc mã
hóa được thức hiện với các khái niệm kiểm tra chẵn lẻ. Nếu các giá trị chẵn lẻ
trong kênh được chọn trùng với bit thơng điệp, thì sẽ khơng có sự thay đổi LSB
của kênh đã chọn. Cịn nếu không bit LSB của kênh đã chọn được chuyển đổi.
Bằng cách này tồn bộ thơng điệp được nhúng vào ảnh bìa. Trong quá trình giải
nén được thể hiện ở Hình 4 .3(b). Những pixel của ảnh stego được biển đổi
thành một mảng byte của kênh RGB nơi mà MSB của 3 bytes lựa chọn kênh
thích hợp chứa các bit thông điệp. Cuối cùng, giá trị chẵn lẻ của kênh được chọn
cho biết bit thông điệp mong muốn. Bằng cách này tồn bộ thơng điệp có được
bằng cách tổng hợp các bit thông điệp lại. Lưu ý rằng sơ đồ dưới đây trong Hình
4 .3, mơ tả ngắn gọn tồn bộ khái niệm, trong khi các mã giả được trình bày
trong phần phụ sau đây mơ tả giải thích chi tiết về phương pháp.
7
a)
b)
Hình 4.3. Cấu trúc tổng thể của phương pháp (a) Q trình mã hóa (b) Q trình giải
mã
4.2. Giải thích q trình mã hóa và giải mã
Đoạn mã giả sau mơ tả cách mà thơng điệp được mã hóa tại ảnh bìa và giải
mã từ ảnh stego. Chúng tơi đã đề ra xét các kí hiệu sử dụng trong quá trình mã
hóa và giải mã của chúng tơi:
M:thơng điệp dài n-bit
Mi: thơng điệp dài 1-bit
Ic: ảnh bìa
:Khối pixel 8-bit từ ảnh bìa (kênh đỏ)
[j] chỉ ra bit thứ j trong khối
:Khối pixel 8-bit từ ảnh bìa (kênh xanh lá)
[j] chỉ ra bit thư j trong khối
8
:Khối pixel 8-bit từ ảnh bìa (kênh xanh dương)
[j] chỉ ra bit thư j trong
khối
Is: ảnh stego
:Khối pixel 8-bit từ ảnh stego (kênh đỏ)
[j] chỉ ra bit thư j trong khối
:Khối pixel 8-bit từ ảnh stego (kênh xanh lá)
[j] chỉ ra bit thư j trong
khối
:Khối pixel 8-bit từ ảnh stego (kênh xanh dương)
[j] chỉ ra bit thư j
trong khối
Hình 4.4. Thủ tục lấy giá trị chẵn lẻ
Hình 4.5. Các bước chọn kênh màu
Hình 4.6. Q trình mã hóa
9
Hình 4.7. Q trình giải mã
4.2.1. Các bước mã hóa
Để nhúng thơng điệp vào ảnh bìa,Hình 4 .6, cho thấy q trình mã hóa cùng
với các thủ tục được mơ tả ở Hình 4 .4, Hình 4 .5. Theo các thuật tốn, Để ẩn bit
thơng điệp Mi đến một pixel cụ thể của ảnh bìa Pi(=Pir or Pig or Pib) trong Ic, MSB
của các kênh Pir, Pig, và Pib được thu thập và thực hiện bởi hoạt động modunlo trên
nó bằng 3. Giá trị mod này tạo ra bất kì giá trị nào trong các giá trị 0, 1, 2 ứng với các
kênh màu tương ứng đỏ, xanh lá và xanh dương. Bằng cách này, kênh riêng biệt được
chọn để nhúng. Sau đó, giá trị chẵn lẻ của kênh màu được chọn Pix (= Pir or Pig or
Pib) sẽ so sanh với bit thông điệp Mi. Điều này rất quan trọng bởi vì nó cho biết các
bit thơng điệp đã được mã hóa trong kênh đó. Chẳng hạn, nếu giá trị chẵn lẻ của Pix là
chẵn(p =1) và bit thông điệp bằng 1, bit LSB của kênh sẽ không bị thay đổi, nhưng
trong trường hợp bit thông điệp bằng 0, LSB đơn lẻ trong kênh Pix đó được chuyển
đổi. Tất cả các hoạt động mã hóa khả thi có thể được mô tả ở Bảng 2.
Bảng 2. Hoạt động nhúng bit thông điệp vào kênh
Trường
hợp
1
2
3
4
Chẵn lẻ của kênh Bit thông điệp
Hoạt động trong LSB của kênh
Chẵn(1)
Chẵn(1)
Lẻ(0)
Lẻ(0)
Không
Chuyển đổi bit
Chuyển đổi bit
Không
1
0
1
0
Để minh họa q trình mã hóa, chúng tơi lấy một bit thơng điệp là 1100 và bốn
pixel của ảnh bìa, với những pixel chứa đựng các kênh R, G và B. Với bit thông
điệp đầu tiên là 1 sẽ được nhúng vào một trong các kênh của pixel đầu tiên.
MSB của ba kênh là 101(hệ nhị phân) = 5(hệ thập phân) và sau khi thực hiện
phép tính 5 mod 3 được kết quả là 2. Lưu ý rằng phép mod 3 cho biết số lượng
kênh. Vì vậy, theo thuật tốn, kênh xanh dương sẽ được chọn để nhúng thông
điệp. Bây giờ, kênh xanh dương này có một số lẻ 1, nên giá trị chẵn lẻ của kênh
bằng 0. Vì giá trị chẵn lẻ khác so với bit thông điệp. Vị trí LSB của kênh xanh
10
dương sẽ chuyển đổi cho biết thông điệp đã được nhúng. Và như thế bit thông
điệp đầu tiên đã nhúng thành cơng. Tương tự với 3 bit cịn lại của thơng điệp sẽ
được nhúng ở 3 pixel cịn lại. Bảng 3 mơ tả q trình này. Nó cũng được quan
sát rằng chỉ có hai LSB 4 pixel đã được thay đổi để nhúng 4 bit thông điệp.
Bảng 3. Nhúng thông điệp sử dụng q trình mã hóa
Pixel
Kênh Giá trị kênh ở MSB
dạng nhị phân của ba
kênh
Kênh
được
chọn(MSB
mod 3)
1
R
1001010
101 = 5
G
00011100
B
11001110
R
11110000
G
10001111
B
01001110
R
01001010
G
10001101
B
00110000
R
00001111
G
00001101
B
10000000
2
3
4
Bit
thông
điệp
2B
Giá trị
chẵn lẻ
của
kênh
được
chọn
0
110 = 6
0R
1
1
010 = 2
2B
1
0
001 = 1
1G
0
0
1
Giá trị
của kênh
ở dạng
nhị phân(
ảnh
stego)
1000101
0
0001110
0
1100111
1
1111000
0
1000111
1
0100111
0
0100101
0
1000110
1
0011000
1
0000111
1
0000110
1
1000000
0
4.2.2. Các bước giải mã
Quá trình giải mã bắt đầu với thuật tốn giải mã được chuẩn bị ở Hình 4 .
7 và những thủ tục được thêm vào ở Hình 4 .4 và Hình 4 .5. Để giải nén bit
thơng điệp bí mật Mi từ pixel ảnh stego Pi′=(Pir′, Pig′, Pib′) ở Is. Cụ thể kênh
11
Pix′ (từ MSB của Pir′, Pig′, Pib′) được chọn bởi phép tính mơ-đun các bit với 3.
Kênh được chọn này chứa thông điệp mong muốn, nhận được từ các giá trị chẵn
lẻ của kênh này. Khi là chẵn(P=1) giá trị chẵn lẻ của Pix′ cho thấy bit thông
điệp là 1, còn khi là lẻ (P = 0) giá trị chẵn lẻ của Pix′ chỉ ra bit thông điệp là 0.
Quá trình lặp lại cho đến khi tất cả các bit thông điệp được giải nén. Cho thấy
thông điệp được giải nến giống với thơng điệp được nhúng.
Giải thích cho q trình giải mã với ví dụ, chúng tơi lấy 4 pixel của ảnh stego từ
kết quả mã hóa trước đó(tại bảng 4). MSB của pixel thứ nhất là 101(hệ nhị
phân) = 5(hệ thập phân) và sau khí thực hiện phép tốn mod 3 được 2. Vì vậy,
bit thơng điệp đầu tiên có thể tìm được từ các phần màu xanh dương. Bởi giá trị
chẵn lẻ của thành phần màu xanh dương là chẵn(P = 1), bit thông điệp là 1.
Tương tự, những bit thơng điệp khác có thể được giải nén từ các pixel cịn lại.
Bảng 4, mơ tả q trình giải mã. Hơn nữa, khi quan sát hai bảng 3 và 4, ta thấy
được những bit thông điệp giống nhau trước q trình mã hóa và sau q trình
giải mã.
Bảng 4. Giải nén thông điệp bằng cách giải mã
Pixel
Kênh Giá trị của kênh ở
dạng nhị phân( ảnh
stego)
1
R
G
B
R
G
B
R
G
B
R
G
B
2
3
4
1001010
00011100
11001111
11110000
10001111
01001110
01001010
10001101
00110001
00001111
00001101
10000000
MSB
của
ba
kênh
101
=5
Kênh
được
chọn(MSB
mod 3)
2B
Bit thông
điệp
Giá trị chẵn
lẻ của kênh
được chọn
1
1
110
=6
0R
1
1
010
=2
2B
0
0
001
=1
1G
0
0
12
CHƯƠNG 5. KẾT QUẢ VÀ THẢO LUẬN
5.1. Cài đặt thử nghiệm và đánh giá chất lượng ảnh
Một số thí nghiệm đã được thực hiện để đánh giá hiệu quả của kĩ thuật.
Hình ảnh 18 màu (24 bit) với kích thước 512 x 512 ở định dạng TFT được sử
dụng làm vật phủ. Những hình ảnh này được lấy từ Cơ sở dữ liệu hình ảnh
USC-SIPI (có tại Đối với trường hợp Chèn một
thơng điệp bí mật, một loạt các số giả ngẫu nhiên được tạo ra và các luồng bit
của những số này được nhúng vào các ảnh phủ. Thử nghiệm cũng được mô
phỏng bằng MATLAB 10 cũng như như Java SE trên Windows 7. Bốn phương
pháp khác nhau bao gồm MSE (bình phương lỗi trung bình), PSNR (tỷ lệ tín
hiệu trên nhiễu đỉnh), SSIM (đo độ tương đồng về cấu trúc) và tỷ lệ bit (BR) đã
được hợp nhất để đánh giá hiệu quả của phương pháp đề xuất. Phương trình (1)
- (5) hiển thị các số liệu so sánh này.
MSE là lỗi bình phương tích lũy giữa ảnh phủ và hình ảnh nhúng thơng điệp
tương ứng của nó:
MSE =
(1)
(2)
Trong đó m và n biểu thị chiều cao và chiều rộng của hình ảnh tương ứng.
I (i, j) và K (i, j) lần lượt đại diện cho các giá trị pixel của ảnh phủ và ảnh
stego. , và chỉ ra lỗi bình phương trung bình trong các kênh màu đỏ, xanh lục
và xanh lam tương ứng.
PSNR là một phép đo thống kê được sử dụng để đánh giá chất lượng hình ảnh
hoặc video kỹ thuật số [28]. PSNR được tính bằng decibel (dB) và được định
nghĩa như sau:
PNSR =
(3)
13
SSIM cũng được sử dụng để đánh giá chất lượng giữa hình ảnh gốc và hình ảnh
stego. Chỉ số này cho kết quả tốt hơn PSNR và MSE, không phù hợp với nhận
thức của con người. SSIM được định nghĩa là [29]:
SSIM(x, y) =
(4)
Trong đó µx là trung bình của X , µ y là trung bình của Y , x2 là phương sai của
X, y2 là phương sai của Y, và là hiệu phương sai của XY. C1 và C2 là các hằng
số với C1 = (K1L)2 , và C2 = (K2L)2 . L cũng là phạm vi động của các giá trị
pixel. k1 và k2 có các giá trị mặc định lần lượt là 0.01 và 0.03.
BR là phép đo cho biết số lượng bit chính xác được thay đổi trong hình ảnh
khi nhúng các bit bí mật, tức là, tạo ra hình ảnh stego. Nó có thể được đo bằng
phần trăm:
BR = x 100%
(5)
Sau khi nhúng các thơng điệp bí mật có dung lượng đầy đủ vào mười tám ảnh
phủ khác nhau, kết quả của ảnh stego cho mỗi ảnh phủ được tạo ra và sau đó là
MSEavg, PSNR, Các giá trị SSIM, BR của ảnh stego đã được tính tốn. Bảng 5,
cho thấy sự so sánh kết quả của thuật toán được đề xuất giữa ảnh phủ và ảnh
stego mười tám ảnh 512 * 512 (24 bit màu sắc). Bên cạnh đó, dung lượng nhúng
của mỗi ảnh là 262000 bit. Người ta quan sát thấy rằng đối với tất cả mười tám
ảnh stego, giá trị trung bình của các giá trị MSE avg nằm trong khoảng từ
0,034680 đến 0,243265 ± 0,055779, giá trị PSNR nằm trong khoảng 54,27 dB
đến 62,73dB ± 2,289, SSIM giá trị nằm trong khoảng từ 0,999459 đến 0,999932
± 0,000109, giá trị BR nằm trong khoảng 0,2869 và 0,6237 ± 0,0988.
Bảng 5. Kết quả đánh giá hiệu quả của thuật toán
Ảnh màu kích thước MSEavg
(512*512)
Lena
Baboon
0.03468
0.075003
PSNR SSIM
BR %
62.73
59.38
0.2869
0.4160
0.999869
0.999852
14
Peppers
Sailboat
Tiffany
Splash
Airplane
San Francisco
Oakland
Woodland Hills
Foster City
Earth from space
Downtown
Shelter Island
Point Loma
North Island
NAS
Golden Gate
Miramar NAS
Min*
Max*
SD*
0.088937
0.178271
0.123618
0.150689
0.046782
0.048762
0.058895
0.067621
0.171427
0.133684
0.073296
0.061529
0.086513
0.106189
58.64
55.62
57.21
56.35
61.43
61.25
60.43
59.83
55.79
56.87
59.48
60.24
58.76
57.87
0.999782
0.999811
0.999459
0.999898
0.999932
0.999915
0.999924
0.999731
0.999795
0.999801
0.999878
0.999910
0.999883
0.999812
0.4622
0.5943
0.5042
0.5273
0.3200
0.3395
0.3531
0.3823
0.5769
0.5200
0.4059
0.3639
0.4497
0.4679
0.243265
0.064429
0.034680
0.243265
0.055779
54.27
60.04
54.27
62.73
2.289
0.999789
0.999899
0.999459
0.999932
0.000109
0.6237
0.3781
0.2869
0.6237
0.0988
Hình 5 .8(a), cho thấy ảnh phủ và ảnh stego tương ứng của Lena với các ô
biểu đồ màu cho cả ba kênh. Có thể thấy rằng có rất ít sự khác biệt trong biểu đồ
ảnh phủ và ảnh stego của Lena. Đối với các hình ảnh khác, các đặc điểm tương
tự thu được
R
G
B
R
G
B
(a)
(b)
Hình 5.8. Ảnh phủ và ảnh stego của Lena: (a) Ảnh phủ và biểu đồ RGB (b) Ảnh Stego
và biểu đồ RGB
Từ các kết quả thử nghiệm trên, rõ ràng là mỗi ảnh stego gần như tương tự với
ảnh phủ tương ứng và cho thấy mức độ ẩn mã tốt hơn. Vì vậy, chất lượng hình
15
ảnh giảm sút sau khi nhúng các thơng điệp bí mật không thể phân biệt được.
Phương pháp đề xuất của chúng tơi là mạnh mẽ và an tồn theo nghĩa là thuật
toán thay đổi một số lượng bit nhỏ trong quá trình nhúng một tin nhắn lớn và
làm cho văn bản thơng báo khó xác định. Bên cạnh đó, nếu người phân tích
stego vẫn phát hiện ra ảnh stego của chúng tơi, khơng dễ dàng để tìm ra các bit
thơng tin nhúng vào do phương pháp này không nhúng thông điệp trực tiếp tại
các vị trí LSB.
5.2. So sánh với các phương pháp tốt nhất hiện tại
Để có được khả năng thành công của hệ thống, chúng tôi đã so sánh nó với
một số các cơng trình trước đây được thực hiện LSB trên ảnh. Đối với mục đích
so sánh, giống nhau ảnh bìa có cùng độ phân giải (512 * 512) đã được xem xét.
Bảng 6. So sánh phương pháp này với phương pháp khác
Phương pháp ẩn
mã
Mandal and Das [19]
Lin, et. al., [30]
Wu, et. al., [17]
Islam [11]
Abduallah, et. al., [31]
Our proposed method
Our Proposed Method
Ảnh phủ
(512*512)
Lena
Lena
Airplane
Lena
Lena
Lena
Airplane
Dung lượng(Bits)
145,787
20,032
409,752
98,285
609,129
262,000
262,000
PSNR của ảnh
stego đơn vị(dB)
42.26
53.78
40.13
60.35
32.87
62.73
61.43
Từ Bảng 6, có thể thấy rằng cách tiếp cận nêu trên của chúng tơi có thể tạo ra
năng suất và giá trị PSNR so với các cách tiếp cận của Mandal và Das [19],
Lin, et. al., [30] và Islam [11]. Hơn nữa, mặc dù các phương pháp được đề xuất
bởi Wu, et. al., [17] và Abduallah, et. al., [31] có khả năng ẩn mã cao hơn so với
cách tiếp cận của chúng tơi, xét về khía cạnh của PSNR thì cách tiếp cận của
chúng tơi vượt trội so với họ. Nói chung, phương pháp của chúng tơi có thể tạo
ra kết quả tốt hơn so với những người khác về giá trị PSNR. Tuy nhiên, cách
tiếp cận của chúng tôi đã không luôn tạo ra giá trị dung lượng lớn hơn nhưng nó
khơng tạo ra kết quả cạnh tranh. Các giải thích có thể được diễn đạt theo những
cách sau:
Trong kỹ thuật ẩn mã, người ta luôn mong muốn tăng dung lượng thông điệp
và nâng cao khả năng ẩn thông điệp (PSNR trong trường hợp của chúng tôi).
Tuy nhiên, dung lượng thông điệp và mức độ ẩn thông điệp xung đột với nhau
16
[10-32]. Do đó, khơng thể đồng thời tối đa hóa mức độ ẩn thông điệp và dung
lượng của thông điệp [33]. Thông thường, những phương pháp tạo ra dung
lượng ẩn mã tốt có thể khơng tốt ở tạo ra giá trị PSNR và ngược lại. Các đặc
điểm quan sát được trong Bảng 6 đã thể hiện điều này. Do đó, các nhà nghiên
cứu luôn phải đánh đổi một trong hai. Vì trọng tâm của chúng tơi là giảm khả
năng nhận biết ẩn mã, chúng tôi phải đánh đổi bằng dung lượng ẩn mã tạo ra.
Tuy nhiên không hao hụt quá nhiều
17
CHƯƠNG 6. KẾT LUẬN
Trong bài báo này, chúng tôi đã nghĩ ra một cách tiếp cận mới để ẩn thông
báo trong ảnh RGB khơng mất dữ liệu. Nó trình bày một phương pháp ẩn mã
hình ảnh LSB được cải tiến trong đó mỗi bit thơng điệp được mã hóa được
nhúng vào một trong ba kênh RGB (vật chỉ thị / bộ chọn) trên cơ sở các MSB
của các kênh, với việc mã hóa thu được dựa trên các giá trị chẵn lẻ của kênh đã
chọn đó. Kết quả thử nghiệm chứng minh rằng phương pháp của chúng tơi có
chủ yếu cho thấy những cải thiện đáng kể về tính khơng thể nhận ra và độ chắc
chắn. Mặc dù hiệu suất không cao lắm, nhưng phải hy sinh khả năng chịu tải
cao hơn cho độ không thể nhận ra cao hơn. Đóng góp chính của nghiên cứu này
là số lượng các bit thơng điệp bí mật được mã hóa thành các vị trí LSB một cách
hiệu quả bằng cách thay đổi một cách tương đối một số bit của ảnh phủ và
khơng có sự tham gia trực tiếp của bất kỳ khóa stego nào. Kế hoạch của chúng
tơi đơn giản trong việc tạo ra ảnh stego chất lượng và khả thi cho các trường
giấu tin chẳng hạn như kĩ thuật ẩn mã trong âm thanh / video. Trong tương lai,
chúng tôi có thể mở rộng nghiên cứu của chúng tơi bằng cách thêm nhiều bit
LSB (K^th LSB bit). Điều này có thể cải thiện năng lực của kĩ thuật ẩn mã hình
ảnh. Bên cạnh đó, sử dụng phương trình biến đổi khác trong việc lựa chọn kênh
thích hợp có thể tăng cường bảo mật của ảnh stego.
18
TÀI LIỆU THAM KHẢO
[1]
S. Sun, “A Novel Edge Based Image Steganography with 2k
Correction and Huffman Encoding”,Information Processing Letters.,
vol. 116, no. 2, (2016), pp. 93-99.
[2]
E. Zielińska, W. Mazurczyk and K. Szczypiorski, “Trends in
Steganography", Commun. ACM., vol. 57,(2014), pp. 86-95.
[3]
A. K. Mandal, M. Kaosar, M. O. Islam and M. D. Hossain, “An
Approach for Enhancing Message Security in Audio Steganography”,
Proceedings of the 16th International Conference on Computer and
Information Technology (ICCIT), Khulna, Bangladesh, (2014) April
20-23.
[4]
M. S. Subhedar and V. H. Mankar, “Current Status and Key Issues
in Image Steganography: A survey”,Computer Science Review., vol.
13–14, no. 11, (2014), pp. 95-113.
[5]
Y. J. Chanu, T. Tuithung and K. M. Singh, “A Short Survey on
Image Steganography and Steganalysis Techniques”, Proceedings of
the 3rd National Conference on Emerging Trends and Applications in
Computer Science (NCETACS), India, (2012) April 30-31.
[6]
N. Hamid, A. Yahya, R. B. Ahmad and O. M. Al-Qershi, “Image
Steganography Techniques: An Overview”, International Journal of
Computer Science and Security (IJCSS)., vol. 6, no.1, (2012), pp. 168187.
[7]
X. Niu, M. Ma, R. Tang and Z. Yin, “Image Steganography Via
Fully Exploiting Modification Direction”, International Journal of
Security and Its Applications., vol. 9, no. 20, (2015), pp. 243-256.
[8]
A. Cheddad, J. Condell, K. Curran and P. Mc Kevitt, “Digital
Image Steganography: Survey and Analysis of Current Methods”,
Signal Processing., vol. 90, no. 3, (2010), pp. 727-752.
[9]
S. Ashwin, J. Ramesh, S. A. Kumar and K. Gunavathi, “Novel and
Secure Encoding and Hiding Techniques using Image Steganography:
A Survey”, Proceedings of the International Conference on Emerging
Trends in Electrical Engineering and Energy Management
(ICETEEEM), India, ( 2012) December 13-15.
19
[10] A. Saha, S. Halder and S. Kollya, “Image Steganography using 24bit Bitmap Images”, Proceedings of the 14th International Conference
on Computer and Information Technology (ICCIT), Bangladesh,
(2011) Noveber 22-24.
[11] M. O. Islam, “A High Embedding Capacity Image Steganography
using Stream Builder and Parity Checker”, Proceedings of the 15th
International Conference on Computer and Information Technology
(ICCIT), Dhaka, Bangladesh, (2012) Noveber 22-24.
[12] N. Akhtar, S. Khan and P. Johri, “An Improved Inverted LSB
Image Steganography”, Proceedings of the International Conference
on Issues and Challenges in Intelligent Computing Techniques
(ICICT), (2014) February 7-8.
[13] K. H. Jung and K. Y. Yoo, “Steganographic Method Based on
Interpolation and LSB Substitution of Digital Images”, Multimedia
Tools and Applications., vol. 74, (2014), pp. 2143-2155.
[14] M. Juneja and P. S. Sandhu, “An Improved LSB Based
Steganography Technique for RGB Color Images”, International
Journal of Computer and Communication Engineering., vol. 2, (2013),
pp. 513-517.
[15] N. Jain, S. Meshram and S. Dubey, “Image Steganography Using
LSB and Edge Detection Technique”,International Journal of Soft
Computing and Engineering (IJSCE)., vol. 223, (2012), pp 1-12.
[16] S. Chakraborty, A. S. Jalal and C. Bhatnagar, “LSB Based Non
Blind Predictive Edge Adaptive Image Steganography”, Multimedia
Tools and Applications., (2016), pp. 1-15.
[17] H. C. Wu, N. I. Wu, C.-S. Tsai and M.-S. Hwang, “Image
Steganographic Scheme Based on Pixel-value Differencing and LSB
Replacement Methods," IEEE Proceedings-Vision, Image and Signal
Processing,vol. 152, (2005), pp. 611-615.
[18] A. Tyagi, R. Roy and S. Changder, “High Capacity Image
Steganography Based on Pixel Value Differencing and Pixel Value
Sum”, Proceedings of the Second International Conference on
Advances in Computing and Communication Engineering (ICACCE),
(2015) May 12-14.
20