1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tiểu luận môn toán học cho khoa học máy tính TÌM HIỂU GIẤU TIN TRONG ẢNH VÀ ỨNG DỤNG GIẤU TIN TRONG ẢNH BITMAP

49 359 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 49
Dung lượng 510,08 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các công nghệ bảo mật mới cần được nghiên cứu và ứng dụng vào trong thực tế đểkịp đáp ứng nhu cầu bảo vệ an toàn thông tinCHƯƠNG 2: TỔNG QUAN VỀ GIẤU TIN TRONG ẢNH VÀ CÁC KỸ THUẬT GIẤU T

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

-oOo -GVHD: PGS.TSKH Đỗ Văn Nhơn HV: Trương Hoài Phong

Mã số: CH1301048

TÌM HIỂU GIẤU TIN TRONG ẢNH VÀ ỨNG DỤNG GIẤU TIN

TRONG ẢNH BITMAP

TP HỒ CHÍ MINH, NĂM 2014

Trang 2

MỤC LỤC

CHƯƠNG 1 : MỞ ĐẦU 4

1.1 Giới thiệu: 4

1.2 An toàn thông tin là gì? 4

1.3 Vai trò của an toàn thông tin: 5

CHƯƠNG 2: TỔNG QUAN VỀ GIẤU TIN TRONG ẢNH VÀ CÁC KỸ THUẬT GIẤU TIN TRONG ẢNH 6

2.1 Giấu tin như thế nào? 6

2.2 Lịch sử của phương pháp giấu tin như thế nào? 7

2.2.1 Mục đích của giấu tin 8

2.2.2 Mô hình kỹ thuật giấu thông tin cơ bản 8

2.3 Các định dạng ảnh thường được sử dụng để giấu tin: 10

2.3.1 Định dạng ảnh IMG 10

2.3.2 Định dạng ảnh PCX: 10

2.3.3 Định dạng ảnh TIFF: 12

2.3.4 Định dang ảnh GIF: 12

2.3.5 Định dạng ảnh JPEG 13

2.4 Kỹ thuật được sử dụng để giấu tin trong ảnh: 14

2.4.1 Giấu tin theo khối bit đơn giản 14

2.4.1.1 Ý tưởng 14

2.4.1.2 Thuật toán giấu tin 14

2.4.2 Kỹ thuật giấu tin Wu M.Y và Lee J.H 15

2.4.2.1 Ý tưởng của thuật toán 16

2.4.2.2 Thuật toán giấu tin 16

2.4.3 Kỹ thuật giấu tin Chen-Pan-Tseng: 17

2.4.3.1 Ý tưởng: 17

Trang 3

2.4.3.2 Thuật toán 17

2.4.4 Kỹ thuật giấu tin LSB 19

2.4.4.1 Ý tưởng: 19

2.4.4.2 Thuật toán: 20

2.4.5 Kỹ thuật sử dụng phép biến đổi DCT 21

2.4.6 Kỹ thuật giấu tin thuận nghịch dựa trên dịch chuyển Histogram 22

2.4.6.1 Kỹ thuật giấu thuận nghịch NSAS 22

2.4.6.2 Kỹ thuật giấu thuận nghịch HKC 23

CHƯƠNG 3: ỨNG DỤNG GIẤU TIN TRONG ẢNH BITMAP 25

3.1 Tổng quan về ảnh Bitmap 25

3.1.1 Khái niệm về ảnh đen trắng, ảnh màu và ảnh đa mức xám 25

3.1.2 Cấu trúc tập tin ảnh bitmap: 27

3.2 Thuật toán: 29

3.3 Đặc điểm của thuật toán 33

3.4 Cài đặt: 33

CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 49

4.1 KẾT LUẬN 49

4.2 HƯỚNG PHÁT TRIỂN 49

DANH MỤC TÀI LIỆU THAM KHẢO 50

Trang 4

CHƯƠNG 1 : MỞ ĐẦU 1.1 Giới thiệu:

Ngày nay, cùng với sự phát triển mạnh mẽ của ngành khoa học công nghệ thông tin,internet đã trở thành một nhu cầu, phương tiện không thể thiếu đối với mọi người, việctruyền tin qua mạng ngày càng lớn Tuy nhiên, với lượng thông tin được truyền qua mạngnhiều hơn thì nguy cơ dữ liệu bị truy cập trái phép cũng tăng lên vì vậy vấn đề bảo đảm

an toàn và bảo mật thông tin cho dữ liệu truyền trên mạng là rất cần thiết

Để đảm bảo an toàn và bí mật cho một thông điệp truyền đi người ta thường dùngphương pháp truyền thống là mã hóa thông điệp theo một qui tắc nào đó đã được thỏathuậ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 đối phương về tầm quan trọng của thông điệp Thời gian gần đây đã xuất hiệnmột cách tiếp cận mới để truyền các thông điệp bí mật, đó là giấu các thông tin quantrọng trong những bức ảnh thông thường Nhìn bề ngoài các bức ảnh có chứa thông tincũng không có gì khác với các bức ảnh khác nên hạn chế được tầm kiểm soát của đốiphương Mặt khác, dù các bức ảnh đó bị phát hiện ra là có chứa thông tin trong đó thì vớicác khóa có độ bảo mật cao thì việc tìm được nội dung của thông tin đó cũng rất khó cóthể thực hiện được

Xét theo khía cạnh tổng quát thì giấu thông tin cũng là một hệ mã mật nhằm bảođảm tính an toàn thông tin, nhưng phương pháp này ưu điểm là ở chỗ giảm được khảnăng phát hiện được sự tồn tại của thông tin trong nguồn mang Không giống như mã hóathông tin là chống sự truy cập và sửa chữa một cách trái phép thông tin, mục tiêu của giấuthông tin là làm cho thông tin trộn lẫn với các điểm ảnh Điều này sẽ đánh lừa được sựphát hiện của các tin tặc và do đó làm giảm khả năng bị giải mã

Kết hợp các kỹ thuật giấu tin với các kỹ thuật mã hóa ta có thể nâng cao độ an toàncho việc truyền tin

1.2 An toàn thông tin là gì?

Khi mà nhu cầu trao đổi thông tin dữ liệu ngày càng lớn và đa dạng, các tiến bộ vềđiện tử viễn thông và công nghệ thông tin không ngừng được phát triển để nâng cao chất

Trang 5

lượng cũng như lưu lượng truyền tin thì biện pháp bảo vệ thông tin ngày càng được đổimới An toàn, bảo mật thông tin là một chủ đề rộng lớn, có liên quan đến nhiều lĩnh vựckhác nhau trong cuộc sống.

Vậy, an toàn, bảo mật thông tin là gì? Đó là việc đảm bảo an toàn cho thông tin gửicũng như thông tin nhận, giúp xác nhận đúng thông tin khi nhận và đảm bảo không bị tấncông hay thay đổi thông tin khi truyền đi Các hệ thống an toàn là những hệ thống cónhững dịch vụ có khả năng chống lại những tai họa, lỗi và sự tác động không mong đợi,các thay đổi tác động đến độ an toàn của hệ thống là nhỏ nhất Có ba đặc tính cơ bản của

an toàn thông tin đó là tính bí mật, tính toàn vẹn và tính sẵn sàng phục vụ Như vậy, ta cóthể hiểu, an toàn thông tin là việc đảm bảo các thuộc tính này Tuy nhiên, tùy vào mụcđích sử dụng thông tin, mà người ta có thể chú trọng đến thuộc tính này hơn thuộc tínhkia, hoặc tập trung đảm bảo thật tốt cho thuộc tính này mà không cần đảm bảo thuộc tínhkia Ví dụ, để công bố một văn bản nào đó thì người ta chú trọng đến việc làm sao để tàiliệu này không bị sửa đổi, còn đảm bảo bí mật thì không cần thiết

1.3 Vai trò của an toàn thông tin:

An toàn thông tin đang là vấn đề đang rất được quan tâm hiện nay, bởi xã hội pháttriển không ngừng dẫn đến nhu cầu trao đổi thông tin không ngừng tăng lên, các thông tinđòi hỏi được đảm bảo an toàn ở mức tốt nhất có thể trước sự tấn công để đánh cắp, cũngnhư sửa đổi thông tin

Ví dụ như, muốn trao đổi tiền với ngân hàng phải sử dụng thẻ tín dụng và hệ thốngmạng để thực hiện giao dịch, bây giờ giả sử giao dịch không an toàn, người dùng bị mất

số tài khoản và mã PIN thì tác hại là rất lớn Hay một ví dụ khác như khi truyền mộtthông tin tối mật từ chính phủ đến cơ quan chỉ huy quân sự, chẳng hạn thông tin nàykhông được đảm bảo tốt, để xảy ra tình trạng thông tin lọt vào tay kẻ khác hoặc bị sửa đổitrước khi đến nơi nhận thì hậu quả cũng thật khôn lường

Công nghệ thông tin đang ngày càng phát triển chóng, đồng thời cũng gia tăng cácnguy cơ xâm nhập thông tin dữ liệu vào các hệ thống thông tin Với kẻ tấn công, tùy theomục đích mà có những cách thức xâm nhập ngày càng tinh vi hơn, đòi hỏi yêu cầu bảo vệcần được cải tiến và phải hiệu quả hơn

Trang 6

Các công nghệ bảo mật mới cần được nghiên cứu và ứng dụng vào trong thực tế đểkịp đáp ứng nhu cầu bảo vệ an toàn thông tin

CHƯƠNG 2: TỔNG QUAN VỀ GIẤU TIN TRONG ẢNH VÀ CÁC KỸ THUẬT

GIẤU TIN TRONG ẢNH 2.1 Giấu tin như thế nào?

Cùng với sự phát triển của Internet và các phương tiện multimedia, nhiều vấn đềnhư: ăn cắp bản quyền, xuyên tạc thông tin, truy cập thông tin trái phép… cũng tăng theo,đòi hỏi phải tìm ra 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(Data Hiding), đã và đang được nghiên

Mục đích của giấu tin có hai khía cạnh chính:

Bảo mật cho dữ liệu đem giấu(embedded data), chẳng hạn như giấu thông tin mậttrong một đối tượng nào đó sao cho người khác không phát hiện được

Đảm an toàn bảo mật cho chính đối tượng được dùng để giấu dữ liệu vào(hostdata)

Kỹ thuật giấu tin đã được nghiên cứu và áp dụng trong nhiều môi trường dữ liệukhác nhau như trong dữ liệu đa phương tiện (text, image, audio, video), trong các sản

Trang 7

phẩm phần mềm, và gần đây là trong cơ sở dữ liệu quan hệ, trong đó thì dữ liệu đaphương tiện chiếm tỉ lệ chủ yếu trong kỹ thuật giấu tin.

2.2 Lịch sử của phương pháp giấu tin như thế nào?

Trong một quá trình phát triển lâu dài, nhiều phương pháp bảo vệ thông tin đãđược đưa ra trong đó giải pháp dùng mật mã học là giải pháp được ứng dụng rộng rãinhất Các hệ mã mật đã được phát triển nhanh chóng và được ứng dụng rất phổ biến chođến tận ngày nay Thông tin ban đầu sẽ được mã hoá thành các ký hiệu vô nghĩa, sau đó

sẽ được lấy lại thông qua việc giải mã nhờ khoá của hệ mã Đã có rất nhiều những hệ mãphức tạp được sử dụng như DES, RSA, NAPSACK và phương pháp này đã được chứngminh thực tế là rất hiệu quả và được ứng dụng phổ biến Nhưng ở đây ta không định nói

về các hệ mã mật mà ta tìm hiểu về một phương pháp đã và đang được nghiên cứu và ứngdụng rất mạnh mẽ ở nhiều nước trên thế giới đó là phương pháp giấu tin (data hiding).Đây là phương pháp mới và phức tạp, nó đang được xem như một công nghệ chìa khoácho vấn đề bảo vệ bản quyền, nhận thực thông tin và điều khiển truy cập … ứng dụngtrong an toàn và bảo mật thông tin

Đầu tiên các câu chuyện kể về kĩ thuật giấu thông tin được truyền qua nhiều thế

hệ, ý tưởng về che giấu thông tin đã có từ hàng nghìn năm về trước nhưng kĩ thuật nàyđược dùng chủ yếu trong quân đội và trong các cơ quan tình báo Mãi cho tới vài thậpniên gần đây, giấu thông tin mới nhận được sự quan

tâm của các nhà nghiên cứu và các viện công nghệ thông tin với rất nhiều công trìnhnghiên cứu Cuộc cách mạng số hóa thông tin và sự phát triển nhanh chóng của mạngtruyền thông là nguyên nhân chính dẫn đến sự thay đổi này Những phiên bản sao chéphoàn hảo, các kĩ thuật thay thế, sửa đổi tinh vi cộng với sự lưu thông phân phối trên mạngcủa các dữ liệu đa phương tiện đã sinh ra rất nhiều những vấn đề nhức nhối về nạn ăn cắpbản quyền, phân phối bất hợp pháp, xuyên tạc trái phép…đây là lúc công nghệ giấu tinđược chú ý và phát triển

Giấu thông tin là một kĩ thuật nhúng thông tin vào trong một nguồn đa phươngtiện gọi là các phương tiện chứa mà không gây ra sự nhận biết về sự tồn tại của thông tin

Trang 8

giấu Phương pháp giấu tin là làm cho người ta khó có thể biết được có thông tin giấu bêntrong đó do tính chất ẩn của thông tin được giấu.

2.2.1 Mục đích của giấu tin

Giấu tin có hai mục đích:

 Bảo mật cho những dữ liệu được giấu

 Bảo đảm an toàn (bảo vệ bản quyền) cho chính các đối tượng chứa dữ liệu giấutrong đó

Có thể thấy hai mục đích này hoàn toàn trái ngược nhau và dần phát triển thànhhai lĩnh vực với những yêu cầu và tính chất khác nhau

Hình: Hai lĩnh vực chính của kỹ thuật giấu thông tin

Kỹ thuật giấu thông tin bí mật (Steganography): với mục đích đảm bảo an toàn

và bảo mật thông tin tập trung vào các kỹ thuật giấu tin để có thể giấu được nhiều thôngtin nhất Thông tin mật được giấu kỹ trong một đối tượng khác sao cho người khác khôngphát hiện được

Kỹ thuật giấu thông tin theo kiểu đánh giấu (watermarking) để bảo vệ bản

quyền của đối tượng chứa thông tin tập trung đảm bảo một số các yêu cầu như đảm bảotính bền vững… đây là ứng dụng cơ bản nhất của kỹ thuật thuỷ vân số

2.2.2 Mô hình kỹ thuật giấu thông tin cơ bản

Để thực hiện giấu tin cần xây dựng được các thủ tục giấu tin Các thủ tục này sẽthực hiện nhúng thông tin cần giấu vào môi trường giấu tin Các thủ tục giấu tin thườngđược thực hiện với một khóa giống như các hệ mật mã để tăng tính bảo mật Sau khi giấutin ta thu được đối tượng chứa thông tin giấu và có thể phân phối đối tượng đó trên kênh

Trang 9

thông tin Để giải mã thông tin cần nhận được đối tượng có chứa thông tin đã giấu, sửdụng thủ tục giải mã cùng với khóa đã dung trong quá trình giấu để lấy lại thông tin.Giấu thông tin vào phương tiện chứa và tách lấy thông tin là hai quá trình trái ngượcnhau và có thể mô tả qua sơ đồ khối của hệ thống trong đó:

 Thông tin cần giấu tuỳ theo mục đích của người sử dụng, nó có thể là thông điệp(với các tin bí mật) hay các logo, hình ảnh bản quyền

Hình: Lược đồ chung cho quá trình giấu tin

Tách thông tin từ các phương tiện chứa diễn ra theo quy trình ngược lại với đầu ra

là các thông tin đã được giấu vào phương tiện chứa Phương tiện chứa sau khi tách lấythông tin có thể được sử dụng, quản lý theo những yêu cầu khác nhau

Trang 10

Hình: Lược đồ chung cho quá trình giải mã

Hình vẽ chỉ ra các công việc giải mã thông tin đã giấu Sau khi nhận được đốitượng phương tiện chứa có giấu thông tin, quá trình giải mã được thực hiện thông quamột bộ giải mã tương ứng với bộ nhúng thông tin cùng với khoá của quá trình nhúng Kếtquả thu được gồm phương tiện chứa gốc và thông tin đã giấu Bước tiếp theo thông tin đãgiấu sẽ được xử lý kiểm định so sánh với thông tin ban đầu

2.3 Các định dạng ảnh thường được sử dụng để giấu tin:

Cấu trúc ảnh nói chung gồm 3 phần chính: Header, dữ liệu, bảng màu Tuy nhiênmỗi loại ảnh có những đặc trưng khác nhau, định dạnh một số loại ảnh cơ bản:

2 byte tiếp theo: chứa độ dài mẫu tin Đó là độ dài của dãy các byte kề liền nhau mà

dãy này sẽ được lặp lại một số lần nào đó Số lần lặp này sẽ được lưu trữ trong byte đếm.Nhiều dãy giống nhau được lưu trong một byte Đó là cách lưu trữ nén

4 byte tiếp: mô tả kích cỡ pixel.

2 byte tiếp: số pixel trên một dòng ảnh.

2 byte cuối: số dòng ảnh trong ảnh.

Ảnh IMG được nén theo từng dòng Mỗi dòng bao gồm các gói (pack) Các dònggiống nhau cũng được nén thành một gói

2.3.2 Định dạng ảnh PCX:

Định dạng ảnh PCX là một trong những định dạng ảnh cổ điển nhất Nó sử dụngphương pháp mã loạt dài RLE để nén dữ liệu ảnh Quá trình nén và giải nén được thựchiện trên từng dòng ảnh Thực tế, phương pháp giải nén PCX kém hiệu quả hơn so vớikiểu IMG Tệp PCX gồm 3 phần: đầu tệp (header), dữ liệu ảnh (image data) và bảng màu

mở rộng

Cấu trúc tệp ảnh dạng PCX

Trang 11

Hình: Cấu trúc ảnh PCX

Header của tệp PCX có kích thước cố định gồm 128 byte và được phân bố nhưsau:

 1 byte: chỉ ra kiểu định dạng Nếu là kiểu PCX/PCC nó có giá trị là 0Ah

 1 byte: chỉ ra version sử dụng để nén ảnh, có thể có các giá trị sau:

- 0: version 2.5

- 2: version 2.8 với bảng màu

- 3: version 2.8 hay 3.0 không có bảng màu

- 5: version 3.0 có bảng màu

 1 byte: chỉ ra phương pháp mã hoá Nếu là 0 thì mã hoá theo phương pháp BYTEPACKED, nếu không là phương pháp RLE

 1 byte: số bit cho một điểm ảnh plane

 1 word: toạ độ góc trái trên của ảnh Với kiểu PCX nó có giá trị là (0,0); còn PCCthì khác (0,0)

 1 word: toạ độ góc phải dưới

 1 word: kích thước bề rộng và bề cao của ảnh

Trang 12

 1 byte: số bit plane mà ảnh sử dụng Với ảnh 16 màu, giá trị này là 4, với ảnh 256màu (1 pixel/ 8 bit) thì số bit plane lại là 1.

 1 byte: số bytes cho một dòng quét ảnh

 1 word: kiểu bảng màu

 Phần header IFH (Image File Header) có trong tất cả các tệp TIFF và gồm 8 byte

- 1 word: chỉ ra kiểu tạo tệp trên máy tính

- 1 word: version

- 2 word: giá trị Offset theo byte tính từ đầu file tới cấu trúc IFD

 Phần thứ hai IFD (Image File Directory): 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 gồm:

- byte: chứa các DE (Directory 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

 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

- 4 byte trường độ dài

- 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) quétcủa dữ liệu ảnh

2.3.4 Định dang ảnh GIF:

Ảnh GIF (Graphics Interchange Format) Là một định dạng tập tin hình ảnh bitmapcho 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

Trang 13

màu cho mỗi khung hình Gif 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ềnlư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ỏ

Ảnh JPEG là một trong những định dạng của phương pháp nén ảnh JPEG(Joint

Photographic Experts Group) Do đó sự mất mát thông tin có thể xảy ra khi tiến hành

nén và sau giải nén thì tập tin ảnh sẽ khác với ảnh ban đầu, chất lượng ảnh bị suy giảmkhi giải nén, sự suy giảm này tăng theo hệ số nén

Ưu điểm của loại tập tin ảnh này là nếu được giấu tin thì có thể truyền trên mạngbởi nó nhẹ hơn ảnh định dạng BMP rất nhiều lần Mặt khác nó được hỗ trợ trên nhiềutrình duyệt

2.4 Kỹ thuật được sử dụng để giấu tin trong ảnh:

2.4.1 Giấu tin theo khối bit đơn giản

Trang 14

2.4.1.1 Ý tưởng

Đây là kỹ thuật đơn giản nhất trong các kỹ thuật giấu tin mật trong ảnh Ýtưởng cơbản của thuật toán là chia một ảnh gốc thành các khối nhỏ và mỗi khốinhỏ sẽ giấu 1 bitthông tin Thuật toán này dùng cho cả ảnh đa mức xám, ảnh màuvà ảnh đen trắng nhưng

để dễ trình bày thuật toán ta sẽ sử dụng ảnh đen trắng (nhị phân)

2.4.1.2 Thuật toán giấu tin

Vào:

- Một file ảnh Bitmap nhị phân F

- Thông điệp bí mật cần giấu P

- (m*n) là kích thước khối dùng để giấu 1 bit thông tin

Ra: Một file ảnh đã giấu tin F‟.

- Quá trình giấu tin:

Bước 1 Kiểm tra khả năng giấu hết thông tin vào ảnh:

Số khối kích thước mxn có được là: (M div m) x (N div n)

Nếu (M div m) x (N div n) < s thì không đủ số khối để giấu hết thông tin.Ngược lại thực hiện các bước 2, 3

Bước 2 Chia ma trận I thành các khối kích thước mxn, ký hiệu là Fi (i=1 s).

Bước 3 Tiến hành giấu tin:

Lần lượt giấu các bit pi của P vào từng khối Fi (i=1 s) theo nguyên tắc:

Với SUM(Fi) được định nghĩa là tổng các phần tử của Fi

Nếu SUM(Fi) mod 2 = pi thì giữ nguyên Fi

Ngược lại chọn ngẫu nhiên một bit trong Fi rồi đảo bit này

Như vậy, ta luôn được: pi = SUM(Fi) mod 2 (1)

Trang 15

Bước 4: Xây dựng ảnh mới F‟ từ mảng dữ liệu ảnh mới I”

Hình Sơ đồ mô tả thuật toán Giấu tin theo khối bit đơn giản 2.4.2 Kỹ thuật giấu tin Wu M.Y và Lee J.H

Kỹ thuật giấu tin theo khối bit đơn giản thể hiện độ an toàn không cao vớiviệc sửdụng duy nhất kích thước khối (m*n) là khoá cho quá trình giấu tin, đồngthời ảnh chứathông tin giấu cũng dễ bị phát hiện do kỹ thuật có thể đảo bit trongcác khối ảnh toàn màuđen hoặc toàn màu trắng dẫn tới sự bất thường ở vị trí bitđảo so với các điểm lân cậntrong khối

Năm 1998, Wu M.Y và Lee J.H đã đề xuất một kỹ thuật mới giấu tin trongảnh đentrắng Kỹ thuật này vẫn dựa trên tư tưởng giấu một bit thông tin vào mộtkhối ảnh gốcnhưng đã khắc phục được phần nào những nhược điểm nêu trên để cóđược độ an toàn cao

Trang 16

hơn và chất lượng ảnh sau khi giấu tốt hơn Bằng cách sử dụngthêm ma trận khoá K choviệc giấu tin và đưa thêm các điều kiện để đảo bit trongmỗi khối, theo điều kiện đó cáckhối ảnh gốc toàn màu đen hoặc toàn màu trắng sẽkhông được sử dụng để giấu tin.

2.4.2.1 Ý tưởng của thuật toán

Thuật toán Wu-Lee được áp dụng cho ảnh nhị phân có ý tưởng chính là: Mộtảnh nhịphân dùng làm môi trường giấu tin cũng được chia thành các khối đều nhaucó kích thước(m*n) Thông tin mật được giấu vào mỗi khối này bằng cách thay đổinhiều nhất một bitcủa khối Quá trình biến đổi khối ảnh F thành F‟ để giấu 1 bit piđược thực hiện sao chođạt được bất biến SUM(K^F‟) mod 2 = pi Công thức nàycũng được sử dụng cho quátrình tách lấy tin đã giấu (K là một ma trận nhị phâncũng có kích thước m*n được sửdụng làm khóa nhằm tăng tính bảo mật của thuậttoán giấu tin)

2.4.2.2 Thuật toán giấu tin

a) Dữ liệu vào:

- Ma trận điểm ảnh nhị phân F dùng làm môi trường giấu tin (F được chiathànhcác khối Fi(m*n))

- K(m*n) là một ma trận nhị phân được sử dụng làm khóa

- Chuỗi bit P = p1p2p3p4 là thông tin cần giấu vào ảnh F

Trang 17

Bước 3:

Giấu pi vào trong khối Fi

IF (Si mod 2 = pi) THEN

Thực hiện giấu mà không cần thay đổi bit nào của Fi (vì khi đó đãđạt đượcbất biến)

ELSE IF (Si = 1) THEN

Chọn ngẫu nhiên bit (j,k) của Fi thảo mãn đồng thời Fj,k = 0 vàKj,k = 1 sau đóchuyển bit Fi(j,k) thành 1

ELSE IF (Si = Sum(K) -1) THEN

Chọn ngẫu nhiên bit (j,k) của Fi thỏa mãn đồng thời Fi(j,k) = 1 vàKj,k = 1 sauđó chuyển bit Fi(j,k) thành 0

(mod 2r) Công thứcnày cũng được sử dụng để tách chuỗi bit đã giấu b1b2 br từ khốiảnh F‟ Lược đồCPT cho phép giấu r bit thông tin vào một khối ảnh nhị phân kích thướcm×n (với2r < m×n) bằng cách chỉ thay đổi nhiều nhất 2 bit trong khối ảnh gốc Trước khi

đi vào phần chi tiết của kỹ thuật này ta tìm hiểu một số khái niệmdùng trong thuật toán

Trang 18

- r: Số lượng bit sẽ nhúng trong mỗi một khối ảnh Fi(m*n).

- B : là lượng thông tin cần giấu gồm k*r bit, k sẽ là số khối ảnh giấu

b) Ra:

- Ma trận ảnh đích F’ chứa B F’ được tạo từ các khối Fi’, Mỗi Fi’ thu được từ

- khối Fi tương ứng sau khi đã giấu r bit thông tin từ B

Bước 1: Tính ma trận T=Fi K, Tính ma trận P = T W

Bước 2: Tính tổng Sum = SUM(P)

Bước 3: Với ma trận T và với mọi w=1,2,…,2r-1 ta xác định tập hợp Sw nhưsau:

Sw={(j,k)|(W[i,j]=w T[i,j]=0) ν (W[j,k] =2r –wT[j,k]=1)}

Dễ nhận thấy Sw là tập hợp các tọa độ (i,k) của ma trận Fi sao cho khi đảo bitFi[i,j]thì Sum ở bước hai tăng lên w đơn vị Thực vậy, ta có:

Trường hợp 1: Nếu W[i,j]=w và T[i,j]=0

Khi đó đảo bit Fi[i,j] sẽ làm cho T[j,k]=1, do đó Sum tăng lên w

Trường hợp 2: Nếu W[j,k] =2r –w và T[j,k]=1

Khi đó đảo bit Fi[i,j] sẽ làm T[i,j]=0, do đó Sum sẽ giảm đi 2r-1-w, tức là tănglên w theo mod 2r

Từ định nghĩa của tập Sw ta có: Sw’ =Sw

Bước 4: Ký hiệu d=(b1b2 br) –SUM(P)(mod2r)

Ta cần thực hiện việc đảo bit trên Fi để được Fi’ sao cho tổng Sum tính được

ở bước 2 khi thay Fi bởi Fi’ sẽ tăng lên d

- Nếu d=0, không cần thay đổi Fi

- Nếu d 0 ta thực hiện các công việc sau:

 Chọn h bất kỳ thuộc tập {1,2,3…,2r-1} sao cho Shd và S-(h-1)d 

Trang 19

 Chọn phần tử (j,k) bất kỳ thuộc Shd và đảo bit Fi[j,k]

 Chọn phần tử (u,v) bất kỳ thuộc S-(h-1)d và đảo bit Fi[u,v]

Rõ ràng là để tăng Sum lên d, ta có thể chọn hai tập khác trống Shd và 1)d.Thật vậy, hai tập này chứa các vị trí bit trong khối Fi mà ta có thể đảo để tăng Sumlên

S-(h-dh và –(h-1)d một cách tương ứng, kết quả cuối cùng là Sum sẽ tăng lên hd+(-(h-1)d) =d;Tương tự như các tập Sw khác ta cũng có thể coi tập S0 là tập chứa các vị trímà khiđảo những bit có vị trí này trên Fi, thì sẽ tăng Sum lên 0 Kết quả này cũngđạt được nếu

ta không đảo bất kỳ bit nào trên Fi Vì vậy, ta có thể coi S0 là tập trốngvà khi nói đảo 1bit có vị trí thuộc tậpS0 có nghĩa là không làm gì

2.4.4 Kỹ thuật giấu tin LSB

LSB của một điểm ảnh có vị trí tương tự như chữ số hàng đơn vị của một sốtựnhiên, khi bị thay đổi, giá trị chênh lệch giữa số cũ và số mới sẽ ít nhất, so vớikhi ta thayđổi giá trị của chữ số hàng chục hoặc hàng trăm Việc xác định LSB củamỗi điểm ảnhtrong một bức ảnh phụ thuộc vào định dạng của ảnh và số bit màudành cho mỗi điểm ảnhcủa ảnh đó

LSB (Least Significant Bit) là bit có ảnh hưởng ít nhất tới việc quyết địnhmàu sắccủa mỗi điểm ảnh, vì vậy khi ta thay đổi bit này thì màu sắc của điểm ảnhmới sẽ gần nhưkhông khác biệt so với điểm ảnh cũ.Ví dụ trong ảnh 256 màu (8 bit màu) Mỗi điểm ảnhcần 8 bit để biểu diễn.Ta thực hiện tách bit cuối cùng (bit ít quan trọng nhất) ra để xử lý

Trang 20

Thay đổi giá trị của bit này thì sẽ thay đổi giá trị của điểm ảnh lên hoặcxuống đúngmột đơn vị, ví dụ như giá trị điểm ảnh là 234 thì khi thay đổi bit cuốicùng nó sẽ mang giátrị mới là 235 nếu đổi bit cuối cùng từ 0 thành 1 Với sự thayđổi đó thì cấp độ màu củađiểm ảnh sẽ không bị thay đổi nhiều và với khả năng cảmnhận của mắt người sẽ khó màphát hiện được sự khác biệt

2.4.4.2 Thuật toán:

Mục đích của phương pháp là chọn ra các bit ít quan trọng (ít làm thay đổichấtlượng của ảnh nền) và thay thế chúng bằng các bit thông tin cần giấu Để khóbị phát hiện,thông tin giấu thường được nhúng vào những vùng mắt người kémnhạy cảm với màu sắc.Với ảnh 24 bit, mỗi màu được chứa trong 3 byte, theo thứ tựtừ trái sang phải, byte đầutiên chứa giá trị biểu thị cường độ màu lam (B), byte thứhai chứa giá trị biểu thị cường độmàu lục (G), byte thứ ba chứa giá trị biểu thịcường độ màu đỏ (R) Như vậy, mỗi màuđược xác định bởi một số nguyên có giátrị trong khoảng 0 – 255

 Quá trình giấu tin:

Tư tưởng của thuật toán là chọn ngẫu nhiên một điểm ảnh, với mỗi điểm ảnh,chọnngẫu nhiên một byte màu, sau đó giấu bit tin vào bit màu có trọng số thấpnhất Để tăngtính bảo mật, thông tin thường được nhúng vào các vùng trong ảnhmà mắt người kémnhạy cảm Đối với ảnh 24 bit màu, mỗi điểm ảnh được chứatrong 3 byte, như vậy mỗimàu được xác định bởi 1 số nguyên có giá trị trong miềntừ 1 đến 256 Thuật toán thay thế

k bit có trọng số nhỏ nhất sử dụng trong ảnh 24 bitmàu, có thể biểu diễn qua các bướcsau:

Bước 1: Thông tin cần giấu được biểu thị bởi luồng bit, và luồng bit này được

chia nhỏthành các cụm k bit: EiB, EiG, EiR.Điểm ảnh thứ i ký hiệu Hi chứa 24 bit đượctách ra làm 3 byte riêng Bi, Gi, Riứng với màu xanh lục, xanh lam, đỏ Từ các byte này,lại tách ra các khối k bit cuốikí hiệu Bik, Gik, Rik

Trang 21

Bước 2: Thay thế Bik, Gik, Rik bởi các giá trị tương ứng EiB, EiG, EiRMỗi

điểm ảnh mới nhận được, ký hiệu Hi’ sẽ mang 3 × (8 - k) bit có trọng sốcao cho thông tin

về ảnh, và 3 × k bit trọng số thấp cho thông tin giấu Gọi ảnh nhậnđược sau khi thay thế

là H’

 Quá trình tách tin:

 Tách các thông tin bằng cách tách từ mỗi điểm ảnh 3 cụm k bit từ các byte Bi,

Gi, Ri, và chắp lại thành bản tin giấu

 Kỹ thuật này tuy đơn giản, nhưng nếu bản tin trước khi giấu đã được mã hóa vàtrật tự giấu tin được chọn theo một quy luật nào đó, thì việc tách thông tin từ H’ sẽ không

đơn giản.

2.4.5 Kỹ thuật sử dụng phép biến đổi DCT

Để khảo sát hệ thống rời rạc, trong nhiều trường hợp, chúng ta thường biếnđổi hệthống rời rạc đó sang một miền biến số khác Có nhiều phép biến đổi khácnhau biến đổitín hiệu và hệ thống rời rạc sang miền miền tần số liên tục hay sangmiền tần số rời rạc.Mỗi phép biến đổi có những thuận lợi riêng, tùy theo yêu cầukhảo sát mà ta sẽ lựa chọnphép biến đổi phù hợp Trong trường hợp khảo sát miềnkhông gian ảnh người ta thườngbiến đổi miền không gian rời rạc tín hiệu các điểmảnh sang miền tần số rời rạc bằng cácphép biến đổi như Fourier, Cosin rời rạc haywavelet (sóng lăn)…vv

Phép biến đổi cosin rời rạc: Biến đổi cosin rời rạc viết tắt là DCT (DiscreteCosin

Transform) được đưa ra bởi Ahmed và các đồng nghiệp của ông vào năm1974 Từ đó chođến nay, nó được sử dụng rất phổ biến trong nhiều kỹ thuật xử lýảnh số nói riêng và xử lýtín hiệu số nói chung Trong các kỹ thuật thủy vân ảnh dựatrên phép biến đổi dữ liệu ảnhsang miền tần số cho phép biến đổi DCT được sửdụng nhiều nhất Lý do ở đây là phépbiến đổi DCT đã được dùng trong dạng chuẩnảnh JPEG Nếu áp dụng DCT thì cũng theochuẩn của JPEG và do đó sẽ tránh đượcmất thủy vân do phép nén JPEG

Phép biến đổi Fourier rời rạc: Phép biến đổi Fourier rời rạc viết tắt là

DFT(Discrete Fourier Transform) là một công cụ toán học được dùng để chuyểncáchbiểu diễn tín hiệu và hệ thống rời rạc hoặc liên tục sang miền tần số rời rạc Thựcchấtcủa cách biểu diễn này là lấy từng điểm rời rạc trên vòng tròn đơn vị trong mặtphẳng Z

Trang 22

để biểu diễn Việc biểu diễn trong miền tần số rời rạc đặc biệt hiệu quả khixuất hiện cácthuật toán tính toán nhanh DFT ta gọi là phép biến đổi Fourier nhanhFFT(Fast FourierTransform).

2.4.6 Kỹ thuật giấu tin thuận nghịch dựa trên dịch chuyển Histogram

Trong thời gian gần đây giấu tin mật trong đa phương tiện ngày càng trở nênphổbiến trong môi trường truyền thông công cộng Tuy nhiên với các kỹ thuật nhưgiấu vàocác bit có trọng số thấy LSB, hay giấu tin vào các khối điểm ảnh, sau khitách thông điệp,khó khôi phục lại được ảnh gốc ban đầu Trong khi đó một vài lĩnhvực nghiên cứu như yhọc, quân đội hoặc nghiên cứu thực nghiệm vật lý phân tử hạtnhân vv, nó đòi hỏi khôngnhững tách đúng thông điệp giấu mà còn khôi phục xấpxỉ đúng ảnh gốc ban đầu

Vào năm 2001, phương pháp giấu thuận nghịch đầu tiên được đề xuất bởiHonsingercùng các đồng nghiệp, từ đó đến nay nhiều kỹ thuật giấu thuận nghịchdựa trên dịchchuyển histogram của ảnh được công bố Sau đây chúng ta đi tìm hiểuhai thuật toán giấutin NSAS do Ni cùng các đồng nghiệp đề xuất và kỹ thuật HKCdo Hwang cùng các đồngnghiệp đề xuất Với hai kỹ thuật này, họ chỉ ra rằng nó cóđộ phức tạp tính toán thất,không làm thay đổi nhiều nội dung ảnh

2.4.6.1 Kỹ thuật giấu thuận nghịch NSAS

Năm 2006, Ni và các đồng nghiệp đưa ra lược đồ giấu tin thuận nghịchNSAS trênảnh dựa vào dịch chuyển histogram của ảnh Sau đây là Thuật toán giấu tin:

Bước 1: Tìm một điểm không (zero) và điẻm cực trị (peak), đây là hai điểm có

giátrị cấp xám của điểm ảnh trong lược đồ histogram của ảnh nhỏ nhất và lớn nhất.Đểđơn giản ta ví du điểm zero ở vị trí 255 (h(255)=0) và điểm peak ở vị trí154(h(154)=2859)

Bước 2: Quét toàn bộ ảnh theo thứ tự từ trái sang phải và từ trên xuống dưới.

Cácđiểm ảnh có giá trị cấp xám nằm trong khoảng [155,254] được tăng lên 1 giá trị, nósẽlàm cho tần số của 155=0

Trang 23

Hình Histogram của ảnh cùng điểm peak và điểm zero

Bước 3: Nhúng bit thông điệp “0” và “1” lần lượt vào các giá trị xám 154 và

155theo nguyên tắc sau: Giả sử điểm ảnh đang xét là 154 kiểm tra bit cần nhúng, nếulàbit “1” thì điểm ảnh 154 sẽ tăng lên 1, ngược lại nếu bit cần giấu là “0” thì điểm ảnh154vẫn giữ nguyên

Cuối cùng chúng ta nhận được ảnh sau khi giấu tin Người nhận sau khi cóảnh này

có thể khôi phục lại thông điệp và ảnh gốc bằng kỹ thuật ngược lại

2.4.6.2 Kỹ thuật giấu thuận nghịch HKC

Trong kỹ thuật NSAS, khả năng giấu thông điệp phụ thuộc vào độ lớn củađiểmpeak, như ví dụ trên khả năng giấu lượng thông tin không quá 2859 bit trongảnh Để cảitiến vấn đề này, Hwang và các đồng nghiệp đã đề xuất kỹ thuật giấuthuận nghịch HKC

Sau đây là thuật toán:

Bước 1: Tìm một điểm peak (ví dụ đó là vị trí 154 trong ảnh a) và hai điểm min

(đólà điểm 23 và 255) Điểm peak và hai điểm min tương ứng với số điểm ảnh của chúng

là lớn nhất và nhỏ nhất trong ảnh

Bước 2: Nhằm để khôi phục chính xác ảnh gốc, một bản đồ định vị dùng để lưu

trữthông tin vị trí của các điểm ảnh (như là điểm peak, điểm min bên trái điểmpeak,lượng điểm nảh ban đầu của điểm min bên trái và điểm min bên phải điểmpeak)trong lược đồ HKC

Bước 3: Khởi tạo không gian để giấu tin Các điểm ảnh được định vị

tronghistogram năm ở bên trái giữa điểm peak và điểm min bên trái sẽ dịch sang trái

Trang 24

mộtđiểm ảnh Tương tự, các điểm ảnh được định vị nằm ở bên phải giữa điểm peakvàđiểm min bên phải sẽ dịch sạng phải một điẻm ảnh.

Bước 4: Giấu thông tin vào trong ảnh Nếu điểm ảnh đang xét có giá trị bằng

peak-2hoặc bằng peak+2 thì kiểm tra bit cần nhúng: nếu là bit “1” thì điểm ảnh có giá trịlàpeak sẽ tăng lên 1, điểm ảnh có giá trị là peak+2 sẽ giảm đi một, còn nếu bit thôngđiệp

là “0” thì vẫn giữ nguyên

Hình Histogram của ảnh cùng điểm peak và hai điểm zero

Ngày đăng: 23/05/2015, 10:16

HÌNH ẢNH LIÊN QUAN

Hình vẽ chỉ ra các công việc giải mã thông tin đã giấu. Sau khi nhận được đối  tượng phương tiện chứa có giấu thông tin, quá trình giải mã được thực hiện thông qua  một bộ giải mã tương ứng với bộ nhúng thông tin cùng với khoá của quá trình nhúng - Tiểu luận môn toán học cho khoa học máy tính TÌM HIỂU GIẤU TIN TRONG ẢNH VÀ ỨNG DỤNG GIẤU TIN TRONG ẢNH BITMAP
Hình v ẽ chỉ ra các công việc giải mã thông tin đã giấu. Sau khi nhận được đối tượng phương tiện chứa có giấu thông tin, quá trình giải mã được thực hiện thông qua một bộ giải mã tương ứng với bộ nhúng thông tin cùng với khoá của quá trình nhúng (Trang 9)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w