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

nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes

77 431 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Nghiên cứu Kỹ Thuật Dấu Tín Dùng Data Hiding Kết Hợp Với Hệ Mã AES
Trường học Trường Đại học Công nghệ Thông tin - Đại học Quốc gia Hà Nội
Chuyên ngành Kỹ thuật thông tin và truyền thông
Thể loại đề tài nghiên cứu
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 77
Dung lượng 1,95 MB

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

Nội dung

- Chống lại sự thoái thác trách nhiệm: hệ thống đảm - bảo một đối tác bất kỳ trong hệ thống không thể từ chối trách nhiệm về hành động mà mình đã thực hiện - Những kết quả nghiên cứu về

Trang 1

MỞ ĐẦU

Công nghệ Data hiding và mã hóa, với công nghệ này chúng có thể truyền tin cho mọi người trên các phương tiện đại chúng mà không bị phát hiện Cuộc cách mạng thông tin kỹ thuật số đã đem lại những thay đổi sâu sắc trong xã hội và trong cuộc sống của chúng ta Những thuận lợi mà thông tin kỹ thuật số mang lại cũng sinh ra những thách thức và cơ hội mới cho quá trình đổi mới Mạng internet toàn cầu đã biến thành một xã hội ảo nơi diễn ra quá trình trao đổi thông tin trong mọi lĩnh vực chính trị, quân sự, quốc phòng, kinh tế, thương mại…Và chính trong môi trường mở và tiện nghi như thế xuất hiện những vấn nạn, tiêu cực đang rất cần đến các giải pháp hữu hiệu cho vấn đề an toàn thông tin như nạn xuyên tạc thông tin, truy nhập thông tin trái phép, v.v Đi tìm giải pháp cho những vấn đề này không chỉ giúp ta hiểu thêm về công nghệ phức tạp đang phát triển rất nhanh này mà còn đưa ra những cơ hội kinh tế mới cần khám phá

Trải qua một loạt giai đoạn phát triển , data hiding và mã hóa ngày này càng trở lên tinh vi hơn cùng với sự phát triển của computer Với môi trường mạng mở, có rất nhiều loại thông tin, trong đó có các thông tin quí giá mà bạn không thể để người khác biết được Hiện nay cuộc chiến với các cracker vẫn chưa ngã ngũ, và có lẽ sẽ chẳng bao giờ ngã ngũ thì việc dùng các phương pháp mã hóa sẽ khiến cho những tên cracker sẽ để ý đến thông tin của bạn, và tất nhiên chúng sẽ tìm mọi cách để crack, vì vậy sẽ chẳng có gì là đảm bảo thông tin của bạn sẽ được an toàn Với công nghệ data hiding bạn có thể dấu một bài thơ tình vào một bức ảnh như bác anaconda mà không làm thay đổi bức ảnh (đối với cảm nhận của con người), như vậy chúng ta đã đánh lạc hướng được những tên cracker, thêm vào đó việc thực hiện crack trên mutimedia sẽ khó khăn hơn nhiều so với crack với các văn bản text Hiện này công nghệ data hiding

đã và đang phát triển ở mức độ cao hơn, đó là vấn đề bảo vệ bản quyền , công nghệ sử

Trang 2

Trang 1

dụng trong lĩnh vực này là water marking digital (thủy vân kĩ thuật số) trong đề tài này chúng em sẽ trình bày về công nghệ Data Hiding sử dụng mã hóa AES và một ứng dụng sử dụng công nghệ này

MỤC LỤC

CHƯƠNG I: GIỚI THIỆU ĐỀ TÀI 6

1.1 Giới thiệu về data hiding 7

1.2 Giới thiệu về mã hóa AES 10

CHƯƠNG 2: DATA HIDING VÀ MÃ HÓA AES 11

2.1Mô tả hệ thống ẩn dữ liệu 11

2.1.1 Khái niệm 11

2.1.2 Mô tả hệ thống ẩn dữ liệu: 12

2.2 Các yếu tố ảnh hưởng đến quá trình ẩn dữ liệu 13

2.2.1 Sự thay đổi trên đối tượng chứa là tối thiểu 13

2.2.2 Mức độ tránh các thao tác biến đổi trên đối tượng chứa 14

2.2.3 Số lượng dữ liệu nhúng: 14

2.2.4 Sự khó phát hiện bởi tri giác của con người – sự vô hình: 15

2.2.5 Không thể giải mã dữ liệu nhúng từ đối tượng chứa – Tính bảo mật: 15

2.3 Phân loại các kỹ thuật ẩn dữ liệu 15

2.3.1 Ẩn dữ liệu trên văn bản 16

2.3.1.1 Các kỹ thuật của Brassil 16

2.3.1.1.1 Nhúng dữ liệu bằng cách dịch chuyển dòng 16

2.3.1.1.2 Nhúng dữ liệu bằng cách dịch chuyển từ 17

2.3.1.1.3 Nhúng dữ liệu đặc trưng 17

2.3.1.2 Các kỹ thuật của Bender 18

2.3.1.2.1 Phương pháp khoảng trắng mở 18

Trang 3

Trang 2

2.3.1.2.2 Phương pháp cú pháp 20

2.3.1.2.3 Phương pháp ngữ nghĩa 20

2.3.2 Các kỹ thuật ẩn dữ liệu trên ảnh tĩnh: 20

2.3.2.1 Các hướng tiếp cận của các kỹ thuật ẩn dữ liệu trên ảnh tĩnh: 21

2.3.2.1.1 Hướng tiếp cận chèn vào bit LSB: 21

2.3.2.1.2 Phương pháp ngụy trang và lọc: 22

2.3.2.1.3 Các thuật toán và phép biến đổi: 22

2.3.2.2 Các kỹ thuật ẩn dữ liệu trên ảnh tĩnh: 23

2.3.2.2.1 Ẩn dữ liệu với tỉ lệ bit thấp: 23

2.3.2.2.1.1 Patchwork- cách tiếp cận thống kê: 23

2.3.2.2.1.2 Mã hóa kết cấu khối (texture block coding)-Cách tiếp cận trực quan: 27 2.3.2.2.2 Mã hóa với dữ liệu bit cao – Mã hóa affine: 28

2.3.2.2.2.1 Phương pháp nhúng dữ liệu vào các khối, chứa tối đa một bit dữ liệu: 29 2.3.2.2.2.2 Phương pháp nhúng dữ liệu vào các khối, mỗi khối chứa tối đa hai 33 2.3.2.2.2.3 Phân tích khả năng che dấu và kết quả thực nghiệm: 38

2.4 Thuật toán mã hóa AES 40

2.4.1 Quá trình mã hóa 40

2.4.1.1 Tham số, ký hiệu, thuật ngữ và hàm 40

2.4.1.2 Các bước thực hiện 40

2.4.1.3Kiến trúc của thuật toán Rijndael 41

2.4.1.4 Phép biến đổi SubBytes 42

2.4.1.5 Phép biến đổi ShiftRows 44

2.4.1.6 Phép biến đổi MixColumns 45

2.4.1.7 Thao tác AddRoundKey 47

2.4.1.8 Ví dụ về quà trình mã hóa: 49

2.4.2 Quá trình tạo khóa 56

Trang 4

Trang 3

2.4.2.1Chiều dài yêu cầu của khóa 56

2.4.2.2 Sự hạn chế của khóa 56

2.4.2.3 Các tham số của khóa: chiều dài khóa, kích thước block và số vòng 56

2.4.2.4 Gợi ý việc thực hiện dựa trên các nền tảng khác nhau 57

2.4.2.5 Mảng của các byte 57

2.4.3 GIẢI MÃ AES Error! Bookmark not defined 2.4.3.1 Giải mã: 63

24.3.2 InvShiftrows 64

2.4.3.3 InvSubBytes 64

2.4.3.4 InvMixColumns 64

2.4.3.5 Ví dụ mã hóa AES 65

Chương III.ƯNG DỤNG DATA HIDING KẾP HỢP VỚI MÃ HÓA 72

3.1 Mã hóa 72

3.2 Giải mã 72

3.3Ví dụ minh họa 73

KẾT LUẬN 75

1 Đánh giá: 75

2 Phát triển và hạn chế của đề tài: 75

TÀI LIỆU THAM KHẢO 76

Trang 5

Trang 4

DANH SACH CÁC HÌNH

Hình 1 Quá trình nhúng dữ liệu 3

Hình 2 Quá trình rút trích dữ liệu 13

Hình 3 Quá trình nhúng và rút trích dử liệu 14

Hình 4 Vòng lặp đơn trong thuật giải Patchwork 25

HÌnh 5 Hình dáng các mảnh 27

Hình 6 Sự sắp xếp các mảnh 27

Hình 7 Một ví dụ về phương pháp mã hóa kết cấu khối 28

Hình 8 Nhúng 3 bit vào ảnh 6 x 6 33

Hình 9 Ảnh F, ma trận khóa K vàma trận trọng lượngW 38

Hình 10 Ảnh F sau khi thực hiện toán tử XOR và ảnh chứa bị thay đổi dữ liệu 38

Hình 11 Mô tả Một chu kỳ mã hóa của phương pháp Rijndael (với Nb=4) 42

Hình 12 Sơ đồ mã hóa 71

Hình 13 Sơ đồ giải mã 72

Hình 14 Thể hiện sự thay đổi ảnh của quá trình ẩn dử liệu dung mà hóaAES 72

Hình 15 Thể hiện sự thay đổi ảnh a: quá trình rút trích dử liệu và giải mã.b Ảnh sau khi giải mã và xóa dữ liệu ẩn trên ảnh 73

Trang 6

Trang 5

DANH SÁCH CÁC BẢNG

Bảng 1 Mối quan hệ giữa n và độ tin cậy 26

Bảng 2 Thể hiện bảng thay thế S-box đƣợc sử dụng trong phép biến đổi SubBytes ở dạng thập lục phân 43

Bảng 3 Thể hiện bảng thay thế S-box đƣợc sử dụng trong phép biến đổi 44

Bảng 4 Giá trị di số shift(r, Nb) 44

Bảng 5 Thao tác MixColumns tác động lên mỗi cột của trạng thái 46

Bảng 6 Thao tác AddRoundKey tác động lên mỗi cột của trạng thái 48

Bảng 7 Bảng S-BOX có định dang mã hexa 50

Bảng 8 Minh họa các thông số của khóa 56

Bảng 9 Minh họa việc sắp xếp các bit trong mỗi byte 57

Bảng 10 Minh họa mảng của các trạng thái 58

Bảng 11: Thể hiện bảng thay thế S-box đƣợc sử dụng trong phép biến đổi InvShiftrows 63

Trang 7

Trang 6

CHƯƠNG I: GIỚI THIỆU ĐỀ TÀI

Mật mã và dấu tin (Cryptography) là ngành khoa học là ngành nghiên cứu các

kỹ thuật toán học nhằm cung cấp các dịch vụ bảo vệ thông tin [44] Đây là ngành khoa học quan trọng, có nhiều ứng dụng trong đời sống – xã hội

Khoa học mật mã đã ra đời từ hàng nghìn năm Tuy nhiên, trong suốt nhiều thế

kỷ, các kết quả của lĩnh vực này hầu như không được ứng dụng trong các lĩnh vực dân

sự thông thường của đời sống – xã hội mà chủ yếu được sử dụng trong lĩnh vực quân

sự, chính trị, ngoại giao Ngày nay, các ứng dụng mã hóa và bảo mật thông tin đang được sử dụng ngày càng phổ biến trong các lĩnh vực khác nhau trên thế giới, từ các lĩnh vực an ninh, quân sự, quốc phòng…, cho đến các lĩnh vực dân sự như thương mại điện tử, ngân hàng…Với sự phát triển ngày càng nhanh chóng của Internet và các ứng dụng giao dịch điện tử trên mạng, nhu cầu bảo vệ thông tin trong các hệ thống và ứng dụng điện tử ngày càng được quan tâm và có ý nghĩa hết sức quan trọng Các kết quả của khoa học mật mã ngày càng được triển khai trong nhiều lĩnhvực khác nhau của đời sống – xã hội, trong đó phải kể đến rất nhiều những ứng dụng đa dạng trong lĩnh vực dân sự, thương mại Các ứng dụng mã hóa thông tin cá nhân, trao đổi thông tin kinh doanh, thực hiện các giao dịch điện tử qua mạng đã trở nên gần gũi và quen thuộc với mọi người

Cùng với sự phát triển của khoa học máy tính và Internet, các nghiên cứu và ứng dụng của mật mã học ngày càng trở nên đa dạng hơn, mở ra nhiều hướng nghiên cứu chuyên sâu vào từng lĩnh vực ứng dụng đặc thù với những đặc trưng riêng Ứng dụng của khoa học mật mã không chỉ đơn thuần là mã hóa và giải mã thông tin mà còn bao gồm nhiều vấn đề khác nhau cần được nghiên cứu và giải quyết, ví dụ như chứng thực nguồn gốc nội dung thông tin (kỹ thuật chữ ký điện tử), chứng nhận tính xác thực

về người sở hữu mã khóa (chứng nhận khóa công cộng), các quy trình giúp trao đổi thông tin và thực hiện giao dịch điện tử an toàn trên mạng

Các ứng dụng của mật mã học và dấu tín để bảo vệ thông tin rất đa dạng và phong phú; tùy vào tính đặc thù của mỗi hệ thống bảo vệ thông tin mà ứng dụng sẽ có các

Trang 8

- Tính toàn vẹn thông tin: hệ thống bảo đảm tính toàn vẹn thông tin trong liên lạc hoặc giúp phát hiện rằng thông tin đã bị sửa đổi

- Xác thực các đối tác trong liên lạc và xác thực nội dung thông tin trong liên lạc

- Chống lại sự thoái thác trách nhiệm: hệ thống đảm

- bảo một đối tác bất kỳ trong hệ thống không thể từ chối trách nhiệm về hành động mà mình đã thực hiện

- Những kết quả nghiên cứu về mật mã cũng đã được đưa vào trong các hệ thống phức tạp hơn, kết hợp với những kỹ thuật khác để đáp ứng yêu cầu đa dạng của các hệ thống ứng dụng khác nhau trong thực tế, ví dụ như hệ thống bỏ phiếu bầu cử qua mạng, hệ thống đào tạo từ xa, hệ thống quản lý an ninh của các đơn vị với hướng tiếp cận sinh trắc học, hệ thống cung cấp dịch vụ đa phương tiện trên mạng với yêu cầu cung cấp dịch vụ và bảo vệ bản quyền sở hữu trí tuệ đối với thông tin số

1.1 Giới thiệu về data hiding

Cuộc cách mạng thông tin kỹ thuật số đã đem lại những thay đổi sâu sắc trong xã hội và trong cuộc sống của chúng ta Những thuận lợi mà thông tin kỹ thuật

số mang lại cũng sinh ra những thách thức và cơ hội mới cho quá trình đổi mới Sự ra đời những phần mềm có tính năng rất mạnh, các thiết bị mới như máy ảnh kỹ thuật số, máy quét chất lượng cao, máy in, máy ghi âm kỹ thuật số, v.v…, đã với tới thế giới tiêu dùng rộng lớn để sáng tạo, xử lý và thưởng thức các dữ liệu đa phương tiện (multimedia data) Mạng Internet toàn cầu đã biến thành một xã hội ảo nơi diễn ra quá trình trao đổi thông tin trong mọi lĩnh vực chính trị, quân sự, quốc phòng, kinh tế,

Trang 9

Trang 8

thương mại… Và chính trong môi trường mở và tiện nghi như thế xuất hiện những vấn nạn, tiêu cực đang rất cần đến các giải pháp hữu hiệu cho vấn đề an toàn thông tin như nạn ăn cắp bản quyền, nạn xuyên tạc thông tin, truy nhập thông tin trái phép v.v Đi tìm giải pháp cho những vấn đề này không chỉ giúp ta hiểu thêm về công nghệ phức tạp đang phát triển rất nhanh này mà còn đưa ra những cơ hội kinh tế mới cần khám phá

Yêu cầu của đề tài:

Data hiding là phương pháp đã và đang được nghiên cứu và ứng dụng rất mạnh mẽ

ở nhiều nước trên thế giới đó là phương pháp nhúng tin(che dấu thông tin) trong các phương tiện khác Đâ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ụng trong an toàn và bảo mật thông tin

Giấu thông tin (Steganography) là một kỹ thuật nhúng thông tin vào trong một nguồn

đa phương tiệ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 giấu

Từ Steganography bắt nguồn từ Hi Lạp và được sử dụng cho tới ngày nay, nó có nghĩa là tài liệu được phủ (covered writing) 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ập niê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ác công trình nghiên cứu Cuộc cách mạng số hoá thông tin và sự phát triển nhanh chóng của mạng truyề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ép hoà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ạng củ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ắp bản quyền, phân phối bất hợp pháp, xuyên tạc trái phép

Trang 10

Trang 9

Sự khác biệt chủ yếu giữa mã hoá thông tin và giấu thông tin là phương pháp mã hoá làm cho các thông tin hiện rõ là nó có được mã hoá hay không còn đối với phương pháp giấu thông tin thì người ta sẽ khó biết được là có thông tin giấu bên trong do tính chất ẩn (invisible) của thông tin được giấu Một khi những thông tin mã hoá bị phát hiện thì những tên tin tặc sẽ tìm mọi cách để triệt phá Và cuộc chạy đua giữa những người bảo vệ thông tin và bọn tin tặc vẫn chưa kết thúc tuyệt đối về bên nào Trong hoàn cảnh đó thì giấu thông tin trở thành một phương pháp hữu hiệu để che giấu thông tin mà các hacker không thể phát hiện ra

Giấu tin trong ảnh có hai khía cạnh: Một là bảo mật cho dữ liệu đem giấu (embedded data), thông tin mật được giấu kỹ trong một đối tượng khác sao cho người khác không phát hiện được Hai là bảo mật chính đối tượng được dùng để giấu dữ liệu vào (host data), chẳng hạn như ứng dụng bảo vệ bản quyền, phát hiện xuyên tạc thông tin (watermarking) Đây là ứng dụng cơ bản nhất của kỹ thuật giấu tin trong ảnh Một thông tin nào đó sẽ được nhúng vào trong một ảnh, giả sử hình ảnh cần được lưu thông trên mạng Để bảo vệ các sản phẩm chống lại hành vi lấy cắp hoặc làm nhái cần phải có một kỹ thuật để “dán tem bản quyền” vào sản phẩm này Việc dán tem hay chính là việc nhúng thuỷ vân cần phải đảm bảo không để lại một ảnh hưởng lớn nào đến việc cảm nhận sản phẩm Yêu cầu kỹ thuật đối với ứng dụng này là thuỷ vân phải tồn tại bền vững cùng với sản phẩm, muốn bỏ thuỷ vân này mà không được phép của người chủ sở hữu thì chỉ còn cách là phá huỷ sản phẩm

Để tìm hiểu sâu hơn về công nghệ giầu tin trong ảnh đề tài của chúng em đã tiến hành tìm hiểu các phương pháp để giấu tin, cách thức giấu tin và giấu các loại tin khác nhau như thế nào Ở đề tài này chúng em đã nghiên cứu cách thức giấu tin trong ảnh Bitmap, ảnh JPEG, ảnh Tif các loại tin được giấu như một đoạn văn bản, một tệp Word thậm chí là giấu ảnh trong ảnh…tuy nhiên do đây là một công nghệ hoàn toàn mới đối với nước ta nên trong quá trình tìm hiểu và phát triển đề tài chúng em còn gặp rất nhiều vấn đề khó khăn như tài liệu về đề tài không nhiều, các công cụ cũng như thuật toán để dùng cho công nghệ Data Hiding quá phức tạp …chính vì vậy đề tài của

Trang 11

Trang 10

chúng em còn nhiều vấn đề chưa thể hoàn thành được Chúng em mong được sự giúp

đỡ của các thầy cô trong khoa để đề tài này sẽ được hoàn thiện ở mức độ cao hơn như

có thể giấu được nhiều kiểu thông tin khác nhau và giấu trong nhiều loại dữ liệu khác nhau

1.2 Giới thiệu về mã hóa AES

Với tốc độ và khả năng xử lý ngày càng được nâng cao của các bộ vi xử lý hiện nay, phương pháp mã hóa chuẩn (Data Encryption Standard – DES) trở nên không

an toàn trong bảo mật thông tin Do đó, Viện Tiêu chuẩn và Công nghệ Hoa Kỳ (National Institute of Standards and Technology – NIST) đã quyết định chọn một chuẩn mã hóa mới với độ an toàn cao nhằm phục vụ nhu cầu bảo mật thông tin liên lạc của Chính phủ Hoa Kỳ cũng như trong các ứng dụng dân sự Thuật toán Rijndael

do Vincent Rijmen và Joan Daeman đã được chính thức chọn trở thành chuẩn mã hóa nâng cao AES (Advanced Encryption Standard) từ ngày

02 tháng 10 năm 2000

Phương pháp mã hóa Rijndael là phương pháp mã hóa theo khối (block cipher)

có kích thước khối và mã khóa thay đổi linh hoạt với các giá trị 128, 192 hay 256 bit Phương pháp này thích hợp ứng dụng trên nhiều hệ thống khác nhau từ các thẻ thông minh cho đến các máy tính cá nhân

Trang 12

Trang 11

CHƯƠNG 2: DATA HIDING VÀ MÃ HÓA AES

2.1.1 Khái niệm

a) Ẩn dữ liệu (data hiding) là thao tác nhúng dữ liệu vào các dạng lưu trữ

số hóa như tập tin văn bản, tập tin ảnh nhị phân, các tập tin âm thanh…, nhằm mục đích nhận diện, chú thích, bảo vệ bản quyền tác giả và truyền thông mật

b) Ẩn dữ liệu gồm hai quá trình: Nhúng dữ liệ (embedding) vào đối tượng nhúng và rút trích dữ liệu (extracting) từ đối tượng chứa Hay còn gọi là quá trình mã hóa và giải mã

c) Đối tượng nhúng là đối tượng được chọn để nhúng dữ liệ vào, đối tượng nhúng có ký hiệu: Cover<data type>, trong đó data type là loại đối tượng (văn bản, ảnh tĩnh, âm thanh, )

d) Đối tượng chứa là đối tượng sau khi đã được nhúng vào một lượng dữ

liệu, đối tượng chứ có ký hiệu là Stego<data type>

e) Dữ liệu được nhúng vào đối tượng chứa có thể là các ký hiệu, thông điệp hay các mẫu (pattern), dữ liệu này được gọi là dữ liệu nhúng

f) Các kỹ thuật ẩn dữ liệu nói chung còn có một hay nhiều khóa gọi là

stego-key, stego-key là tham số điều khiển quá trình nhúng dữ liệu nhằm hạn chế khả

năng dữ liệu núng bị phát hiện, hay nhằm lấy lại dữ liệu nhúng từ đối tượng chứa

g) Mỗi ứng dụng cụ thể có các rang buộc riêng trên các yếu tố tác động đến quá trình nhúng dữ liệu Các yếu tố đó có thể là số lượng dữ liệu nhúng, mức độ bất biến của dữ liệu nhúng khi đối tượng chứa bị thao tác bởi các phép biến đổi, mức độ bảo toàn dữ liệu nhúng trong các chuẩn nén mất dữ liệu

h) Các dữ liệu nhúng thường là thông tin về bản quyền, được nhúng vào các dạng truyền thông như văn bản, ảnh, âm thanh với số lượng tín hiệu bị suy biến tối thiểu để không ảnh hưởng nhiều đến đối tượng chứa

i) Bất cứ vị trí nào trong tín hiệu chứa (tín hiệu chứa là tín hiệu, dữ liệu của đối tượng chứa) đều có thể là mục tiêu của sự di chuyển hay phá hủy trong các chuẩn

Trang 13

I´ K´ M®I ¢

Và đầu ra là một đối tượng chứa (ảnh chứa)

Cấu trúc một quá trình ẩn dữ liệu thông thường:

Hình 1: Quá trình nhúng dữ liệu

Khi đó Stego Image (I’) là dữ liệu được truyền trên môi trường truyền

Cấu trúc một quá trình rút trích dữ liệu

Hình 2: Quá trình rút trích dữ liệu

Trang 14

Trang 13

Quá trình từ nhúng dữ liệu sang rút trích dữ liệu ẩn từ đối tƣợng chứa đƣợc mô

tả bằng sơ đồ sau:

Hình 3 Quá trình nhúng và rút trích dử liệu

Các kỹ thuật ẩn dữ liệu nói chung đều phải đáp ứng một số các yếu tố, các yếu

tố này thay đổi tùy theo từng ứng dụng cụ thể Sau đây là các yếu tố chung cho các kỹ thuật ẩn dữ liệu

2.2.1 Sự thay đổi trên đối tượng chứa là tối thiểu

Mục đích của ẩn dữ liệu là nhúng dữ liệu vào đối tƣợng chứa nhằm các mục đích riêng cho từng ứng dụng Tuy nhiên, ẩn dữ liệu không thể làm thay đổi giá trị sử dụng của đối tƣợng chứa vì:

Nếu ứng dụng của ẩn dữ liệu là bảo vệ quyền sở hữu trí tuệ thì đối tƣợng chứa – tác phẩm của tác giả không thể bị suy biến vì nhƣ thế thì tác phẩm đó mất đi giá trị và không cần bảo vệ bản quyền nữa

Trang 15

Trang 14

Nếu ứng dụng của ẩn dữ liệu là thêm thông tin chú thích thì đối tượng chứa quan trọng hơn, thông tin chú thích chỉ là phần chú thích thêm, vì vậy đối tượng chứa phải đảm bảo được chất lượng

Nếu ứng dụng ẩn dữ liệu là truyền thông mật, thì sự khác nhau giữa đối tượng gốc và đối tượng chứa phải rất nhỏ để tránh được sự nghi ngờ của người khác

2.2.2 Mức độ tránh các thao tác biến đổi trên đối tượng chứa

Còn gọi là tính bền vững của dữ liệu nhúng, đây là mức độ của dữ liệu nhúng không bị mất đi khi đối tượng chứa bị biến đổi bởi các thao tác Tính năng này là bắt buộc với tất cả các ứng dụng của ẩn dữ liệu Tuy nhiên, không có kỹ thuật nào có thể bất biến với tất cả các thao tác, mỗi kỹ thuật chỉ hỗ trợ cho tính bất biến đối với một số thao tác mà thôi Các thao tác trên đối tượng chứa có thể liệt kê như sau:

+ Văn bản: dịch chuyển từ, chi lại khoảng cách giữa các từ,…

+ Ảnh tĩnh: các phép biến đổi affine, nhiễu, các phép biến đổi phi hình học, lọc nhiễu,

+ Mô hình ba chiều: các phép biến đổi affine, biến đổi hình học, biến đổi phi hình học, sắp xếp lại lưới đa giác,…

2.2.3 Số lượng dữ liệu nhúng:

Tùy thuộc vào từng ứng dụng cụ thể mà yêu cầu về số lượng dữ liệu nhúng là nhiều hay ít Một số ứng dụng chỉ cần nhúng một bit đơn vào đối tượng chứa (ví dụ như ứng dụng đánh dấu đối tượng), một số ứng dụng lại yêu cầu số lượng dữ liệu nhúng phải lớn (các đoạn chú thích)

Tính năng này luôn tỉ lệ nghịch với tính bền vững của dữ liệu nhúng Một kỹ thuật nếu hỗ trợ tính năng bền vững của dữ liệu nhúng cao thì số lượng dữ liệu nhúng lại giảm đi đáng kể, và ngược lại nếu nâng cao số lượng dữ liệu nhúng thì dữ liệu nhúng đó lại ít khả năng tránh được các thao tác trên đối tượng chứa, tín hiệu chứa

Trang 16

Trang 15

càng bị nhiễu Các kỹ thuật hiện đại đều quan tâm đến hai tính năng này và muốn đồng thời nâng cao cả hai tính năng này

2.2.4 Sự khó phát hiện bởi tri giác của con người – sự vô hình:

Tính năng này gần giống với tính năng thay đổi tối thiểu trên đối tượng chứa, tuy nhiên lại có sự khác nhau rõ ràng: một đối tượng chứa có thể thay đổi ít nhưng dữ liệu nhúng lại trực quan, ngược lại dữ liệu nhúng có thể khó bị phát hiện trong khi thay đổi trên đối tượng chứ khá nhiều

Một số ứng dụng không cần tính năng này (ví dụ ứng dụng nhúng các lời chú thích, các logo vào đối tượng chứa), tuy nhiên đối với ứng dụng truyền thông mật thì đây là một trong số các tính năng quan trọng nhất Steganography phải bảo đảm không

để cho một người trung gian phát hiện, nghi ngờ đối tượng chứa chó chứa thông tin thêm vào Đối với Steganophy, việc phát hiện có dữ liệu nhúng trong đối tượng chứa gây ra một sự thất bại hoàn toàn: người trung gian có thể giải mã thông điệp, làm suy biến thông điệp hay chỉ đơn giản là hủy thông điệp đi

Trong Steganography, tính năng này cùng với hai tính năng số lượng dữ liệu nhúng và tính bền vững của dữ liệu nhúng, cả ba luôn tỉ lệ nghịch với nhau Nếu ứng dụng quá nhiều dữ liệu, thì khả năng bị phát hiện tăng cao và ngược lại, số lượng dữ liệu nhúng ít thì khả năng bị phát hiện giảm xuống

2.2.5 Không thể giải mã dữ liệu nhúng từ đối tượng chứa – Tính bảo mật:

Tính năng này đặc biệt quan trọng đối với ứng dụng Steganophy, vì mục đích chính của Steganophy là không để người thứ ba giải mã được thông điệp truyền đi

Tóm lại: không phải bất kỳ một ứng dụng của ẩn dữ liệu nào cũng phải tuyệt

đối tuân theo tất cả các tính năng trên Mỗi ứng dụng chỉ quan tâm đặc biệt đến một số tính năng phù hợp với mục đích của ứng dụng đó

2.3 Phân loại các kỹ thuật ẩn dữ liệu

Trang 17

Trang 16

2.3.1 Ẩn dữ liệu trên văn bản

2.3.1.1 Các kỹ thuật của Brassil

Brassil và một số nhà nghiên cứu khác đã xác định một vấn đề cần giải quyết là

sự phân phối bất hợp pháp các văn bản qua các phương tiện điện tử hiện đại, ví dụ như thư điện tử Các phương tiện như trên cho phép các xâm phạm trên các bản sao chép văn bản mà chưa có sự đồng ý của tác giả hay không trảtiền bản quyền Để chống lại

sự xâm phạm bản quyền này, Brassil đã đưa ra mộtphương pháp đánh dấu trên các văn bản với một từ mã duy nhất mà người đọckhông thể phát hiện, nhưng có thể sử dụng

để xác định người nhận hợp lệ vănbản đó chỉ bằng cách thao tác trên văn bản đó

Kỹ thuật của Brassil là sử dụng một từ mã (có thể là một số nhị phân) được nhúng vào văn bản bằng cách thay đổi các đặc trưng riêng của văn bản

Bằng cách gắn mỗi bit của từ mã vào các đặc trưng của văn bản, ta có thể mã hóatừ mã đó Dạng đặc trưng xác định một phương pháp mã hóa riêng Brassil đưa ra

ba đặc trưng trong văn bản sau:

2.3.1.1.1 Nhúng dữ liệu bằng cách dịch chuyển dòng

Trong phương pháp này, các dòng trong văn bản sẽ được dịch chuyển để nhúng

dữ liệu Phương pháp này được áp dụng cho dạng tập tin văn bản hay hìnhảnh của trang văn bản

Phương pháp này di chuyển mỗi hai dòng của văn bản hoặc lên hoặc xuống 1/300 inch Brassil thấy rằng phương pháp này làm việc đặc biệt tốt, và dữ liệu nhúng trong văn bản vẫn được rút trích hoàn chỉnh được, ngay cả sau khivăn bản đã bị sao chép ra 10 lần

Tuy nhiên, phương pháp này là kỹ thuật ẩn dữ liệu trên văn bản dễ thấy nhất đối với người đọc Hơn nữa, phương pháp có thể bị đánh bại sau khi văn bản được đo khoảng cách giữa hai dòng, việc chia khoảng cách giữa hai dòng ngẫu nhiên hay đồng

Trang 18

Phương pháp thực hiện như sau: với mỗi dòng văn bản, tìm ra các khoảng cách lớn nhất và bé nhất, khoảng cách lớn nhất được giảm xuống một lượng, vàkhoảng cách

bé nhất cũng được tăng thêm một lượng như trên, như vậy sẽ giữ nguyên chiều dài của dòng văn bản và gây ra ít thay đổi nhận thấy được trên văn bản Nhúng dữ liệu bằng cách dịch chuyển từ ít bị người đọc nhận biết hơn phương pháp dịch chuyển dòng, vì khoảng cách giữa hai từ kế nhau trong một dòng thường bị dịch chuyển để hỗ trợ cho

sự sắp chữ trong văn bản.Tuy nhiên, phương pháp dịch chuyển từ có thể bị phát hiện

và bị đánh bại bằng hai phương pháp sau:

Nếu một người biết được thuật toán sử dụng trong định dạng sắp xếp chữ văn bản, khoảng cách thật sự giữa hai từ có thể được đo và so sánh với khoảng cách trong văn bản gốc Sự khác biệt trong khoảng cách sẽ chứa dữ liệunhúng

Bằng cách chia lại khoảng cách giữa các từ được dịch chuyển, hay dịch chuyển ngẫu nhiên các từ trong văn bản, một người khác có thể làm mất đi từ mã

2.3.1.1.3 Nhúng dữ liệu đặc trưng

Đây là phương pháp thứ ba của Brassil Giống như hai phương pháp trên, phương pháp này cũng hỗ trợ cả trên ảnh nhị phân của văn bản hay trên tập tin định

Trang 19

Trang 18

dạng văn bản Đặc trưng của văn bản có thể bị thay đổi hay không bị thay đổi phụ thuộc vào từ mã Việc nhúng các bit vào văn bản có thể bằng cách kéo dài hay cắt ngắn các nét trên cùng của các kí tự như b, d, h, Trước khi mã hóa, các dòng trên của các kí tự được kéo dài hay cắt ngắn, sau đó sẽ bị thay đổi một lần nữa để mã hóa dữ liệu đặc biệt Điều này tránh được sự rút trích dữ liệu công khai, vì chiều cao các kí tự trong văn bản gốc không được biết Và dĩ nhiên, quá trình giải mã cần phải có các ảnh gốc Phương pháp mã hóa đặc trưng có thể thực hiện trên một lượng dữ liệu nhúng lớn, vì một văn bản có nhiều đặc trưng Phương pháp này có thể bị đánh bại bằng cách điều chỉnh lại chiều dài các kí tự theo một giá trị cố định

2.3.1.2 Các kỹ thuật của Bender

Các văn bản ở dạng số rất khó chứa dữ liệu ẩn (trong khi văn bản trên giấy thì

dễ hơn) Các văn bản ở dạng số ít có các thao tác biến đổi như trên ảnh, nhưng nếu văn bản xuất hiện một từ hay một câu lạ thì dễ dàng bị người đọc phát hiện Bender đưa ra

ba phương pháp chính sử dụng cho ẩn dữ liệu trên vănbản:

Phương pháp khoảng trắng mở sử dụng các khoảng trắng không được sử dụng trong các trang in

Phương pháp cú pháp sử dụng các dấu câu

Phương pháp ngữ nghĩa thao tác dựa trên nghĩa của các từ

2.3.1.2.1 Phương pháp khoảng trắng mở

Bender đưa ra hai lý do của việc sử dụng khoảng trắng để mã hóa

Thứ nhất, khi thay đổi số lượng các khoảng trắng thì nghĩa của câu ít bị ảnh hưởng

Thứ hai, người đọc tình cờ sẽ không chú ý đến sự thay đổi của các khoảng trắng

Trang 20

Trang 19

Trong phương pháp này lại có ba phương pháp 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ữ

Phương pháp khai thác khoảng trắng giữa các câu:mã hóa một chuỗi nhị phân vào văn bản bằng cách đặt một hay hai khoảng trắng sau mỗi kí tự kết thúc, ví dụ như một câu trong văn xuôi, một dấu chấm phẩy (;) trong ngôn ngữ C, Một khoảng trắng

mã hóa 0, hai khoảng trắng mã hóa 1 Phương pháp này không hiệu quả, nó cần phải

có một văn bản lớn để mã hóa một lượng bit nhỏ (một bit trên một câu tương ứng với

tỉ lệ dữ liệu là 1bit/160 byte với giả thuyết một câu trung bình có 80 kí tự) Phương pháp này cũng phụ thuộc vào cấu trúc của văn bản Hầu hết các trình xử lý văn bản đều xử lý khoảng trắng sau mỗi câu

Phương pháp khai thác khoảng trắng sau mỗi dòng: dữ liệu mã hóa cho phép xác định số khoảng trắng sau mỗi dòng Hai khoảng trắng mã hóa một bit, bốn khoảng trắng mã hóa hai bit, tám khoảng trắng mã hóa ba bit, Phương pháp này có thể thực hiện trên mọi loại văn bản, vì nó không bị người đọc phát hiện do những khoảng trắng thêm vào nằm ngoài phạm vi của văn bản Nó còn mã hóa được số lượng bit nhiều hơn phương pháp trên Trong phương pháp khai thác khoảng trắng sau mỗi câu, văn bản sau khi đã nhúng dữ liệu, qua các chương trình như thư điện tử có khả năng bị cắt mất khoảng trắng Vấn đề duy nhất của phương pháp khai thác khoảng trắng sau mỗi dòng

là không thể lấy lại dữ liệu nhúng được sau khi văn bản chứa đã qua các thao tác sao chép trên giấy

Phương pháp khai thác các khoảng trắng ngay sau các từ: một khoảng trắng mã hóa bit 0, hai khoảng trắng mã hóa bit 1 Phương pháp này cho kết quả vài bit trên một dòng Để xác định khoảng trắng nào là của dữ liệu nhúng, khoảng trắng nào là của văn bản, Bender sử dụng phương pháp mã hóa giống như phương pháp của Manchester Manchester sử dụng một nhóm bit để đại diện cho một bit “01” được giải mã thành 1,

“10” là 0, “00” và “11” là rỗng

Trang 21

Trang 20

Ví dụ: chuỗi được mã hóa là “1000101101” thì được giải mã thành “001”, trong khi chuỗi “110011” là rỗng

Phương pháp khoảng trắng hiệu quả trong các văn bản định dạng ASCII.Một số

dữ liệu có khả năng bị mất khi văn bản được in ra

2.3.1.2.2 Phương pháp cú pháp

Hai phương pháp cú pháp và ngữ nghĩa có thể kết hợp song song Trong nhiều tình huống sau khi mã hoá, văn bản có số lượng dấu câu nhiều hay có dấu câu sai, nhưng lại không ảnh hưởng lớn đến ngữ nghĩa trong văn bản Ví dụ cụm từ “bread, butter, and milk” và “bread, butter and milk” cả hai đều dùng dấu phẩy đúng Bất cứ khi nào trong câu sử dụng dạng thứ nhất thì mã hóa 1, dạng thứ hai thì mã hóa 0 Trong một số ví dụ còn sử dụng các từ viết tắt, viết gọn Phương pháp này chỉ mã hóa được vài bit trên 1Kb văn bản Phương pháp cú pháp còn bao gồm cả cách thay đổi trong cách thức diễn đạt và cấu trúc văn bản mà không làm thay đổi ngữ nghĩa Phương pháp này rõ ràng có hiệu quả hơn phương pháp khoảng trắng, nhưng khả năng khai thác của nó bị giới hạn

2.3.1.2.3 Phương pháp ngữ nghĩa

Phương pháp này cũng tương tự như phương pháp cú pháp Phương pháp ngữ nghĩa dùng giá trị chính hay phụ đồng nghĩa Ví dụ từ “big” có thể thay bằng“large” (Hình 8) Khi giải mã, từ có ý nghĩa chính sẽ đại diện cho giá trị 1, từ có ý nghĩa phụ

sẽ đại diện cho giá trị 0.Tuy nhiên phương pháp này có thể làm thay đổi ngữ nghĩa của câu, mặc dù từ thay thế cùng nghĩa, nhưng sắc thái của câu đã bị thay đổi (các từ được dùng thích hợp trong từng ngữ cảnh)

2.3.2 Các kỹ thuật ẩn dữ liệu trên ảnh tĩnh:

Ảnh tĩnh là một đối tượng rất thích hợp cho ẩn dữ liệu, nhất là trong Steganography vì các yếu tố sau đây:

Trang 22

được rải ngẫu nhiên trên ảnh chứa

2.3.2.1 Các hướng tiếp cận của các kỹ thuật ẩn dữ liệu trên ảnh tĩnh:

 Chèn vào bit thấp nhất LSB (Least Significant Bit)

 Các kỹ thuật lọc và mặt nạ

 Các thuật toán và các phép biến đổi

2.3.2.1.1 Hướng tiếp cận chèn vào bit LSB:

Phương pháp chèn bit vào LSB là phương pháp được biết nhiều nhất trong kỹ thuật ẩn dữ liệu Đây là một hướng tiếp cận thông dụng, đơn giản để nhúng thông tin vào ảnh Nhưng phương pháp này có nhược điểm là dễ bị tấn công bởi các thao tác

trên ảnh Một sự chuyển đổi từ dạng GIF hay BMP sang dạng nén mất dữ liệu (ví dụ như JPEG) có thể hủy hết thông tin ẩn trong ảnh

Khi sử dụng kỹ thuật LSB cho ảnh 24 bit màu, mỗi pixel có 3 bit được dùng để

mã hóa dữ liệu (vì mỗi pixel được biểu diễn bằng 3 byte) Sự thay đổi trên pixel khó bị mắt người nhận ra Ví dụ, kí tự A có thể được ẩn trong 3 pixel

Giả sử 3 pixel của ảnh gốc có giá trị nhị phân như sau:

( 00100111 11101001 11001000 )

( 00100111 11001000 11101001 )

( 11001000 00100111 11101001 )

Trang 23

Chỉ có các bit LSB in đậm bị thay đổi Các kỹ thuật chèn vào bit LSB cải tiến là

dữ liệu có thể được ẩn trong bit thấp nhất và bit thấp thứ hai trong byte mà mắt người vẫn không thể nhận ra sự thay đổi

Sử dụng kỹ thuật LSB trong ảnh 8 bit màu phải cẩn thận hơn đối với ảnh 24 bit màu vì sự thay đổi màu sắc rõ hơn

2.3.2.1.2 Phương pháp ngụy trang và lọc:

Kỹ thuật ngụy trang và lọc ẩn thông tin bằng cách đánh dấu một ảnh bằng một

ký hiệu mờ Các kỹ thuật nhúng dấu hiệu thích hợp với ảnh hơn, các kỹ thuật đó có thể được áp dụng trên ảnh tĩnh mà không sợ ảnh hưởng của định dạng ảnh nén mất dữ

liệu Bằng cách che phủ, hoặc ngụy trang một tín hiệu mờ, hệ thống thị giác của người HVS không thể nhận biết được sự thay đổi trên ảnh

Về mặt kỹ thuật, nhúng dấu hiệu không phải là một dạng của Steganography Trong khi Steganography dấu dữ liệu trong ảnh, nhúng dấu hiệu mở rộng thông tin của ảnh và trở thành một thuộc tính của ảnh chứa, cung cấp các chi tiết về bản quyền, giấy phép, quyền sỡ hữu

Các kỹ thuật ngụy trang thích hợp hơn cho các ảnh nén dạng JPEG hơn là các

kỹ thuật LSB vì chúng có thể miễn dịch trước các thao tác nén hay xén ảnh

2.3.2.1.3 Các thuật toán và phép biến đổi:

Hiện nay trên Internet, ảnh JPEG đã trở nên phong phú vì là chuẩn nén tốt, chất lượng cao và tỉ lệ nén cao Nguyên lý cơ bản trong chuẩn nén JPEG là phép biến đổi cosin rời rạc DCT (Discrete Cosine Transform) DCT là phép biến đổi nén mất dữ liệu,

vì giá trị cosin không thể tính toán chính xác được và các lỗi trong tính toán có thể

Trang 24

Hai kỹ thuật phổ rộng khác nhau được gọi là dãy trực tiếp và nhảy tần số Kỹ thuật dãy trực tiếp dấu thông tin bằng cách thay đổi pha của tín hiệu dữ liệu với một chuỗi số giả ngẫu nhiên mà cả người gửi và người nhận đều biết Kỹ thuật nhảy tần số phân chia băng thông có sẵn thành nhiều kênh truyền và nhảy giữa các kênh truyền đó (cũng được chèn bằng một dãy số giả ngẫu nhiên)

2.3.2.2 Các kỹ thuật ẩn dữ liệu trên ảnh tĩnh:

Các kỹ thuật ẩn dữ liệu trên ảnh tĩnh được chia thành hai loại theo kích thước

dữ liệu nhúng:

 Ẩn dữ liệu với tỉ lệ bit thấp, lượng dữ liệu được nhúng trong ảnh rất ít,

có kỹ thuật chỉ nhúng một bit vào ảnh vì thế tính bền vững của dữ liệu nhúng cao

 Ẩn dữ liệu với tỉ lệ bit cao, lượng dữ liệu được nhúng cao hơn nhiều và

do đó tính bền vững cũng thấp hơn

2.3.2.2.1 Ẩn dữ liệu với tỉ lệ bit thấp:

Hai kỹ thuật điển hình là Patchwork và mã hóa kết cấu khối Patchwork nhúng một bit đơn vào ảnh với một giá trị tin cậy cao dựa trên phân phối Gaussian Mã hóa kết cấu khối dựa trên các vùng đồng nhất trên ảnh

2.3.2.2.1.1 Patchwork- cách tiếp cận thống kê:

Trang 25

Trang 24

Patchwork là một hướng tiếp cận theo phương pháp thống kê, dựa trên các dãy

số giả ngẫu nhiên[15] Patchwork nhúng vào ảnh chứa một số thống kê đặc thù, chứa một hàm phân phối Gaussian sao cho mắt người không thể nhận ra

Hình 3.1 mô tả một phương pháp Patchwork dùng một vòng lặp đơn Hai mảnh

A, B được chọn ngẫu nhiên, mảnh A có màu sáng trong khi mảnh B có màu tối

Một số liệu thống kê duy nhất sẽ cho biết dấu hiệu có xuất hiện hay không

Patchwork có đặc điểm là không phụ thuộc vào nội dung của ảnh chứa và kỹ thuật này

có khả năng tránh được các biến đổi phi hình học

Để minh họa, ảnh chứa trong ví dụ này có mức sáng 256, hệ thống lượng

tử tuyến tính sẽ bắt đầu từ 0 và tất cả các mẫu không phụ thuộc vào các mẫu

khác, hay nói chính xác hơn là các mẫu độc lập với nhau

Hình 4 Vòng lặp đơn trong thuật giải Patchwork

Nguyên lý thuật giải:

 Sử dụng lý thuyết thống kê, hàm phân phối Gaussian để mã hóa

 Chọn một khóa để tạo một dãy số ngẫu nhiên

 Dựa vào các số trên dãy số ngẫu nhiên, chọn ra mỗi lần hai mảnh trên

Trang 26

Trang 25

ảnh chứa, một mảnh có giá trị sáng (A-ai) và một mảnh có giá trị tối hơn (B-bi)

 Trừ vào ai một lượng δ và cộng vào bi một lượng δ Đối với mức sáng

256 thì δ có giá trị từ 1 đến 5

 Lặp lại quá trình n lần (thông thường n ≈10000)

 Sử dụng hàm phân phối Gaussian để tính S với độ tin cậy tốt Nếu S

dương thì giá trị mã hóa là 1, nếu S âm thì mã hóa 0 Sau đây là bảng số liệu mô tả mối quan hệ giữa n và độ tin cậy, với δ = 2 :

Bảng 1 Mối quan hệ giữa n và độ tin cậy

Vì n hoặc δ tăng, nên đồ thị hàm phân bố của S ′n dịch chuyển qua phải Sau đây là một số cải tiến của phương pháp Patchwork:

 Các mảnh bao gồm nhiều pixel tốt hơn các mảnh chỉ có một pixel

 Kết hợp với mã affine hay các thông tin heuristic dựa trên đặc điểm

nhận biết sẽ làm phương pháp này mạnh hơn Mã hóa Patchwork nhạy với các phép biến đổi affine, nếu các điểm trên ảnh chứa bị dịch chuyển bới các phép tịnh tiến hay biến đổi tỉ lệ thì dữ liệu nhúng sẽ bị mất

Trang 27

Trang 26

 Patchwork có khả năng chống lại các thao tác xén ảnh, nếu các mảnh

không nằm trong phạm vi bị xén thì dữ liệu nhúng vẫn giữ nguyên

Hình dáng của mảnh:

Hình 3.2 mô tả ba loại hình dáng mảnh và sự phân bố tương ứng với mảnh đó Hình 3.2 a) mảnh nhỏ, cạnh sắc, kết quả là phần lớn năng lượng của mảnh tập trung ở phần tần số cao của mảnh: dễ bị mất dữ liệu khi qua thao tác nén mất dữ liệu Hình 3.2 b) thì năng lượng tập trung ở phần tần số thấp Hình 3.2.c) phân phối năng lượng đều ở phần tần số cao và tần số thấp

HÌnh 5 Hình dáng các mảnh

Lựa chọn hình dáng mảnh tối ưu nhất phụ thuộc vào từng loại ảnh và các thao tác trên ảnh Nếu ảnh chứa có định dạng là JPEG thì mảnh có dạng như hình 3.2b) là tối ưu nhất vì năng lượng phân bố tại phần tần số thấp Nếu trên ảnh chứa có thao tác tăng độ tương phản thì mảnh như hình 3.2a) là tốt nhất Nếu trong trường hợp không biết các thao tác trên ảnh thì chọn mảnh như hình 3.2c) là tốt nhất

Sự sắp xếp các mảnh cũng ảnh hưởng đến hiệu quả của phương pháp Hình 3.3

mô tả ba phương pháp sắp xếp mảnh Hình 11a) là sắp xếp theo dạng lưới thẳng,

phương pháp này ít được sử dụng khi n lớn vì HSV rất nhạy với dạng này Hình 3.3b)

là sắp xếp theo dạng lục giác đều Hình 3.3c) là sắp xếp theo ngẫu nhiên

Trang 28

Trang 27

Hình 6 Sự sắp xếp các mảnh

Phương pháp Patchwork có vài giới hạn: thứ nhất là tỉ lệ dữ liệu mã hóa thấp, chỉ phù hợp cho các ứng dụng mã hóa với tỉ lệ dữ liệu thấp, thứ hai là các pixel trong ảnh chứa phải được ghi nhớ và không được di chuyển

2.3.2.2.1.2 Mã hóa kết cấu khối (texture block coding)-Cách tiếp cận trực quan:

Phương pháp này ẩn dữ liệu trong những mẫu kết cấu ảnh ngẫu nhiên và liên tiếp Kỹ thuật này được thực hiện bằng cách sao chép một vùng ảnh từ một mẫu kết cấu ngẫu nhiên trên ảnh đến một vùng khác có kết cấu tương tự

Hình 7 Một ví dụ về phương pháp mã hóa kết cấu khối

Quá trình giải mã:

Trang 29

Trang 28

 Tự động đặt hai ảnh tương quan chồng lên nhau (ảnh gốc và ảnh sau khi nhúng dữ liệu) Việc này sẽ làm hiện ra các đỉnh mà ở đó có các vùng chồng chéo lên nhau

 Dịch chuyển ảnh Sau đó trừ giá trị ảnh gốc với ảnh sao chép của nó

Gán giá trị 0 cho mép bìa ảnh nếu cần thiết

 Điều chỉnh kết quả và giới hạn nó để nó chỉ gồm những giá trị gần 0

Ảnh chứa dữ liệu sẽ thấy được các giá trị đó

Nếu ảnh chứa dữ liệu ẩn bị thao tác bằng các phép biến đổi thì cả hai vùng sẽ bị thay đổi như nhau vì chúng là hai vùng đồng nhất có kết cấu giống nhau

Nếu chọn lựa vùng có kích thước hợp lý, phần bên trong của khối thay đổi như nhau qua hầu hết các phép biến đổi phi hình học

Mã hóa kết cấu khối không phải là không có bất lợi Hiện nay, kỹ thuật này cần

có các thao tác của con người để chọn lựa vùng nguồn và vùng đích có kích thước

thích hợp và ước lượng ảnh hưởng trực quan của các biến đổi trên ảnh Thật ra có thể

tự động hóa quá trình này bằng cách sử dụng một máy tính nhận dạng kết cấu các

vùng sao chép và dán lên ảnh Tuy nhiên, kỹ thuật này không có tác dụng với ảnh

thiếu vùng có kích thước kết cấu vừa phải và kết cấu liên tiếp

2.3.2.2 2 Mã hóa với dữ liệu bit cao – Mã hóa affine:

Mã hóa dữ liệu với tỉ lệ bit cao có thể có rất ít tác động lên ảnh chứa, nhưng nó không có khuynh hướng tránh được các biến đổi trên ảnh chứa Hình thức thông

thường nhất là thay thế bit thấp nhất của độ chói bằng dữ liệu nhúng

Không có một kỹ thuật đã biết nào tránh được tất cả các phép biến đổi hay tổ hợp các phép biến đổi Đối với tổ hợp các phép biến đổi, thường người ta sử dụng

thêm một kỹ thuật khác để hỗ trợ Kỹ thuật hỗ trợ này rất quan trọng đối với các phép biến đổi affine, và nó giữ lại sự đồng bộ cho luồng dữ liệu mã hóa

Trang 30

Trang 29

Sau đây là hai phương pháp của Yu –Yuan Chen , Hsiang – Kuang Pan và Yu – Chee Tseng ở khoa Khoa học máy tính trường Đại học Trung tâm quốc gia Đài Loan Hai phương pháp này nhúng dữ liệu bằng cách thay thế các bit trong dữ liệu ảnh,

chúng không tránh được các phép biến đổi affine, nhưng số lượng dữ liệu được nhúng lớn và khả năng một người thứ ba giải mã được là rất khó, tuy nhiên cả hai phương

pháp đều sử dụng ảnh nhị phân làm đối tượng nhúng

2.3.2.2 2.1 Phương pháp nhúng dữ liệu vào các khối, mỗi khối chứa tối đa một bit dữ liệu:

Phương pháp này nhúng dữ liệu bằng cách chia ảnh ra thành các khối kích

thước bằng nhau, mỗi khối được nhúng tối đa một bit dữ liệu Dữ liệu của mỗi khối là các bit LSB của từng pixel trong ảnh

Trang 31

- Nếu TRUE: nhảy đến bước 3 để nhúng 1 bit vào Fi

- Nếu FALSE: trong khối Fi sẽ không có dữ liệu được nhúng

Bước 3:

Giả sử bit cần được nhúng là b

(a) If ( SUM ( Fi Ù K ) mode 2 =b ) then

Giữ nguyên Fi

(b) Else if SUM ( Fi Ù K ) = SUM ( K ) - 1 then

Chọn ngẫu nhiên một bit [Fi]j,k =0 với [K]j,k =1 và đổi [Fi]j,k =1

c) Else if SUM ( Fi Ù K ) =1 - then

Chọn ngẫu nhiên một bit [Fi]j,k =1 với [K]j,k =1 và đổi [Fi]j,k = 0

Trang 32

Vỏ SUM ( Fi đỉ K ) = SUM ( F ỉ K ) Ẹ 1 Dấu + xảy ra trong trường hợp

[ Fi ] j ,k =0, dấu – xảy ra trong trường hợp , [ Fi ] j ,k = 1

Biểu thức liởn quan:

0 < SUM ( Fi đỉ K ) < SUM ( K ) Þ SUM ( Fi đỉ K ) ã b mod 2

Xờt 3 giõ trị của SUM ( Fi ỉ K ) :

SUM ( Fi ỉ K ) = 1 :thớ SUM ( Fi đ K ) = SUM ( Fi ỉ K ) + 1 ,ỉ, phải tăng

SUM ( Fi ỉ K )

thởm một giõ trị để thỏa điều kiện (3.2)

Nởn ta chọn ngẫu nhiởn một i [Fi ] j,k = 0 với K j ,k = 1 vỏ thay đổi [ Fi ] j ,k = 1

Trang 33

Trang 32

SUM ( Fi Ù K ) = SUM ( K ) - 1 : SUM ( Fi ¢ K ) = SUM ( Fi Ù K ) - 1 , phải giảm SUM ( Fi Ù K ) đi một giá trị để thỏa điều kiện (3.2) Nên chọn ngẫu nhiên một [

Fi ] j ,k = 1 với K j ,k = 1 và thay đổi [ Fi ] j , k = 0

Với các giá trị còn lại của SUM ( Fi Ù K ) nếu tăng hay giảm SUM ( Fi Ù K ) một giá trị thì vẫn thỏa điều kiện (3.2) Chọn ngẫu nhiên một [ Fi ] j ,k với K j ,k = 1và , [ Fi ] j ,k ¢ là phần bù của [ Fi ] j ,k

 Xét SUM ( F3 Ù K ) = 3 thỏa (3.1), b2=1 thỏa (a) nên giữ nguyên F3

 Xét SUM ( F4 Ù K ) = 4 thỏa (3.1), và SUM ( F4 Ù K ) = SUM ( K ) - 1

thỏa (c), lấy ngẫu nhiên [F2]2,3 = 1 với K2,3 =1 và đổi 2 2,3 2 2,3 [F]

=0=[F] ¢

Hình 8 Nhúng 3 bit vào ảnh 6 x 6 Đánh giá thuật giải:

Do sử dụng toán tử logic AND nên: SUM ( Fi Ù K ) không bao giờ vƣợt quá SUM (K)

Trang 34

Trang 33

So sánh giữa F và F ¢ tại những vị trí hàng i, cột j tương ứng, nếu hai giá trị khác nhau thì tại đó K i,j =1 và ngược lại K i,j =0 Như vậy, khi so sánh tất cả các hần

tử của F và F¢ thì ta có thể suy ra toàn bộ ma trận K, K không còn là bí mật nữa

Nếu K có nhiều giá trị 1 thì sự khác nhau giữa F và F¢ gia tăng, gây nên

sự nghi ngờ có chứa dữ liệu Nhưng nếu K có nhiều giá trị 0 thì thuật giải cũng không

hoàn toàn khả thi

Nếu F có tất cả các giá trị hoàn toàn là 1 thì khả năng nghi nghờ chứa dữ liệu gia tăng và suy luận ra K dễ dàng Nhưng nếu F có nhiều giá trị 0 thì tỉ lệ ẩn dữ

liệu không cao

Tóm lại, việc chọn K và F phù hợp là điều quan trọng Phương pháp mã hoá dữ

liệu này không an toàn cao, số lượng dữ liệu được chứa không nhiều

2.3.2.2 2.2 Phương pháp nhúng dữ liệu vào các khối, mỗi khối chứa tối đa hai bit dữ liệu:

Phương pháp này là phương pháp cải tiến phương pháp trên Nó bảo đảm tỉ lệ

ẩn của dữ liệu cao hơn, do dùng một ma trận trọng lượng W Phương pháp này cũng dựa trên phép toán mod và toán tử logic Å Ở mỗi khối m´ n, sẽ có r bit được nhúng với 2r- 1£ mn , nhưng chỉ làm thay đổi tối đa 2 bit trên ma trận chứa

Ký hiệu:

F: ma trận điểm ảnh, sẽ chứa dữ liệu được nhúng, giả sử là F được chia thành k khối F i có kích thước m´ n Sau các bước thực hiện, F sẽ bị thay đổi thành ma trận F¢

K: ma trận khóa Nó là một ma trận m´ n, được chọn ngẫu nhiên phù

hợp theo từng trường hợp Các giá trị trong K là 0 hoặc 1

W: ma trận trọng lượng m´ n, với [W] i,j ∈ {1 2r –1} Cách sắp xếp các

giá trị được chọn ngẫu nhiên

r: số lượng bit được nhúng vào một khối m´ n, r thỏa2r- 1£ mn

B: các thông tin được nhúng, B gồm kr bit, k là số lượng khối của F

A 1 , A 2 là hai ma trận m´ n, toán tử A 1 ⊗ A 2 là toán tử mà " i,j i=1 m,

Trang 35

" k Î {1… 2r –1}, k phải xuất hiện ít nhất một lần trong W (3.6)

Ma trận W được chọn ngẫu nhiên thỏa điều kiện và theo từng trường hợp

Với m hàng n cột, W có thể có các lựa chọn sau:

Có 2r –1 giá trị, vì thế để chọn giá trị cho mn phần tử có: 2r 1Cmn-

Ta có thể sắp xếp ngẫu nhiên các giá trị: (2r –1)! cách

Với mn - 2r –1 giá trị còn lại có thể sắp xếp ngẫu nhiên:

(2r−1)mn−(2r−1)

Vậy: số lần chọn lựa W : C2mn 1 *(2r - 1)!*(2r - 1) mn- 2 – 1

Ví dụ:m = n = 8 và r = 5 Ta có C64 31!*3133 cách chọn W

Vì thế tỉ lệ bảo mật thông tin rất cao nếu W không được công bố

Vì phương pháp này dùng toán tử mod: b1b2 br = SUM (( Fi Å K ) Ä W )

Fi sẽ được chuyển thành i F¢ bằng cách lấy phần bù của một giá trị nào đó

trong Fi để thỏa công thức sau:

SUM (( Fi ¢Å K ) Ä W ) º b1b2 br (mod 2r )

Trang 36

Đây là biểu thức chênh lệch giữa tổng và giá trị được nhúng, để giải mã

theo công thức (3.8) ta phải tăng tổng thêm một giá trị d

Đặt S w = S w¢ với w º w¢mod 2r

Khi d=0 không cần thay đổi Fi

Nếu d ≠ 0, thực hiện các bước sau:

Trang 37

Trang 36

Chọn ngẫu nhiên một h Î {0,1…,2r-1} với điều kiện Shd ¹ Æ và S-(h-1)d ≠Æ

Chọn ngẫu nhiên một bộ (j,k) Î Shd và lấy phần bù của [Fi]j,k

Chọn ngẫu nhiên một bộ (j,k) Î S-(h-1)d và lấy phần bù của [Fi]j,k

Để tăng tổng thêm một lƣợng d, ta dùng hai tập khác rỗng Shd và S-(h-1)d

Tổng sẽ tăng thêm hd + (- (h-1)d) = d Tuy nhiên ta phải gán giá trị cho các tập S0, S2.r, S2.2r, S3.2r… luôn rỗng

Theo điều kiện của W, phải có tối thiểu một [W]j,k = w Nếu

[Fi]j ,k ∧ [K]j ,k = 0 thì lấy phần bù của [F i ] j,k sẽ làm tăng tổng thêm w , nhƣ

vậy

Sw ≠ ∅ Nhƣ vậy [ Fi ] j ,k Ù[ K ] j ,k = 1 , thì khi lấy phần bù [Fi]j,k sẽ làm giảm tổng đi w, hay tăng tổng lên 2r-w (mod 2r), nhƣ vậy tập S 2 - w ¹ Æ , với w ¹ 2r-1 vì w=2r-w lúc đó S2 - w ¹ Æ

Trang 38

Ta sẽ kiểm tra lần lượt các giá trị của h:

Đầu tiên h=1, nếu Sd ¹ Æ thì h=1là giải pháp được chọn, nếu trái lại thì

S- d ¹ Æ theo bổ đề 1

h=2, nếu S2d ¹ Æ thì h=2 được chọn, ngược lại 2d S- ¹ Æ theo bổ đề 1

Tiếp tục kiểm tra, nếu tất cả Si đều là rỗng thì S2 ¹ Æ theo bổ đề 2

Và với 2r-1, $ h sao cho 2r-1 là bội số của d

Như vậy luôn tìm được một h cho vấn dề

Các ma trận được mô tả như hình dưới đây Thực hiện các bước:

F1: SUM (( F1 Å K ) Ä W ) º 0(mod 8) Và dữ liệu nhúng là 001, ta phải tăng tổng thêm 1 Vì [ F1 Å K ]2,4 = 0 và [W]2,4 = 1 ta có thể lấy phần bù của [F1]2,4

F2: SUM (( F2 Å K ) Ä W ) º 2 , dữ liệu nhúng là 010, không cần phải thay đổi F2

F3: SUM (( F3 Å K ) Ä W ) º 2 , dữ liệu nhúng là 000, ta phải tăng tổng thêm 6 bằng cách lấy phần bù của [F3]4,4

F4: SUM (( F4 Å K ) Ä W ) º 4 , dữ liệu nhúng là 001, ta phải tăng tổng thêm 5 bằng cách lấy phần bù của [F4]2,2 và [F4]3,2 Vì không có một bộ chỉ số nào

Ngày đăng: 18/06/2014, 21:39

HÌNH ẢNH LIÊN QUAN

Hình 2: Quá trình rút trích dữ liệu - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Hình 2 Quá trình rút trích dữ liệu (Trang 13)
Hình 1: Quá trình nhúng dữ liệu - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Hình 1 Quá trình nhúng dữ liệu (Trang 13)
Hình 3 Quá trình nhúng và rút trích dử liệu - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Hình 3 Quá trình nhúng và rút trích dử liệu (Trang 14)
Hình 3.1 mô tả một phương pháp Patchwork dùng một vòng lặp đơn. Hai mảnh  A, B đƣợc chọn ngẫu nhiên, mảnh A có màu sáng trong khi mảnh B có màu tối - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Hình 3.1 mô tả một phương pháp Patchwork dùng một vòng lặp đơn. Hai mảnh A, B đƣợc chọn ngẫu nhiên, mảnh A có màu sáng trong khi mảnh B có màu tối (Trang 25)
Bảng 1 Mối quan hệ giữa n và độ tin cậy - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Bảng 1 Mối quan hệ giữa n và độ tin cậy (Trang 26)
Hình dáng của mảnh: - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Hình d áng của mảnh: (Trang 27)
Hình 7. Một ví dụ về phương pháp mã hóa kết cấu khối - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Hình 7. Một ví dụ về phương pháp mã hóa kết cấu khối (Trang 28)
Hình 6. Sự sắp xếp các mảnh - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Hình 6. Sự sắp xếp các mảnh (Trang 28)
Hình 9  Ảnh F, ma trận khóa K vàma trận trọng lƣợngW. - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Hình 9 Ảnh F, ma trận khóa K vàma trận trọng lƣợngW (Trang 39)
Bảng  2   Thể  hiện  bảng  thay  thế  S-box  đƣợc  sử  dụng  trong  phép  biến  đổi  SubBytes ở dạng thập lục phân - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
ng 2 Thể hiện bảng thay thế S-box đƣợc sử dụng trong phép biến đổi SubBytes ở dạng thập lục phân (Trang 44)
Bảng 6.  Thao tác AddRoundKey tác động lên mỗi cột của trạng thái - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Bảng 6. Thao tác AddRoundKey tác động lên mỗi cột của trạng thái (Trang 49)
Bảng 8 Minh họa các thông số của khóa - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Bảng 8 Minh họa các thông số của khóa (Trang 58)
Bảng 10 Minh họa mảng của các trạng thái - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Bảng 10 Minh họa mảng của các trạng thái (Trang 59)
Bảng 9 Minh họa việc sắp xếp các bit trong mỗi byte - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Bảng 9 Minh họa việc sắp xếp các bit trong mỗi byte (Trang 59)
Bảng 11: Thể  hiện  bảng  thay  thế  S-box  đƣợc  sử  dụng  trong  phép  biến  đổi - nghiên cứu kỹ thuật dấu tín dùng data hiding kết hợp với hệ mã aes
Bảng 11 Thể hiện bảng thay thế S-box đƣợc sử dụng trong phép biến đổi (Trang 65)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w