Tài liệu Xây dựng ứng dụng giấu tin trong ảnh

  • Số trang: 55 |
  • Loại file: PDF |
  • Lượt xem: 148 |
  • Lượt tải: 0
nhattuvisu

Đã đăng 27127 tài liệu

Mô tả:

-1- PHẦN MỞ ĐẦU 1. Lý do chọn đề tài Ngày nay, cuộc sống ngày càng phát triển kéo theo đó là sự bùng nổ mạnh mẽ của khoa học và công nghệ. Công nghệ thông tin đã và đang là một trong nhiều lĩnh vực nắm vai trò quan trọng trong cuộc sống. Các tài liệu, thông tin trên bàn giấy ngày ngày đang dần được thông tin hóa và lưu trữ vào các hệ cơ sở dữ liệu trên máy tính. Bên cạnh đó, các thông tin được truyền đi qua mạng ngày càng lớn lên theo nhu cầu của mọi người. Tuy nhiên, với lượng thông tin ngày càng tăng thì đi đôi với việc cất giữ và truyền tải thông tin cần quan tâm nhiều đến vấn đề bảo đảm an toàn và bảo mật thông tin là rất cần thiết. Mã hóa thông tin là phương pháp đảm bảo an toàn và bảo mật thông tin theo phương pháp truyền thống theo một qui tắc nào đó được thỏa thuận trước giữa người gửi và người nhận. Tuy nhiên, phương pháp này thường gây nên sự chú ý của ánh mắt đối phương với thông điệp. Một hướng tiếp cận mới trong lĩnh vực an toàn và bảo mật thông tin, đó là giấu đi sự hiện diện của các thông tin quan trọng trong những bức ảnh thông thường. Sự khác biệt giữa bức ảnh có giấu thông tin và những bức ảnh thông thường là rất nhỏ nên hạn chế được sự chú ý và nghi ngờ của đối phương. Mặt khác, dù các bức ảnh có giấu thông tin bị phát hiện là có chứa thông tin trong đó 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 vì quá trình giấu tin có kết hợp với các khóa có độ bảo mật cao. Nhìn ở góc độ tổng quát thì giấu thông tin cũng là một hệ mã mật nhằm đảm bảo an toàn thông tin nhưng phương pháp này có ưu điểm là giảm được khả năng phát hiện được sự tồn tại của thông tin. Khác với mã hóa thông tin là chống sự truy cập và sửa chữa một cách trái phép, mục tiêu của giấu thô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ã. Chính vì vậy, đề tài “Xây dựng ứng dụng giấu tin trong ảnh” hy vọng sẽ góp phần giúp cho việc đảm bảo an toàn thông tin cho các thông điệp. 2. Lịch sử nghiên cứu 2.1 Trên thế giới  Hide and seek v5.0 -2Ứng dụng Hide and seek do Colin Maroney viết để giấu tin vào ảnh GIF. Ứng dụng chạy trên nền DOS. Tư tưởng chủ đạo là giấu ngẫu nhiên nên nếu lượng thông tin cần giấu nhỏ thì nó sẽ được trải đều khắp ảnh. Tuy nhiên nếu lượng thông tin nhiều thì các vùng thay đổi dày hơn, dễ bị phát hiện. Hạn chế của chương trình là chỉ giấu được tối đa 19,000 byte vì màn hình hiển thị chỉ sử dụng một số kỹ thuật giấu tin trong ảnh với kích thước 320 x 480 điểm ảnh. Nếu sử dụng bé hơn kích thước này sẽ xuất hiện vùng đen quanh ảnh. Hình 1 : Giao diện chính ứng dụng Hide and seek -3 S-tool Chương trình S-tool viết tắt của Steganography tool, một chương trình được phát triển bởi Peter Gutmann. Chương trình có thể giấu tin trong ảnh BMP, GIF và tệp âm thanh, Với giao diện kéo thả tiện dụng cho người dùng, chương trình chạy trên nền Windows 98/ME/2000. Hình 2 : Giao diện chương trình S-tool 2.2 Trong nƣớc Hiện nay trong nước đã có một số tổ chức, trường học quan tâm và nghiên cứu đến lĩnh vực giấu tin ngày càng nhiều hơn như một số viện nghiên cứu khoa học, viện công nghệ thông tin, trường Đại Học Công Nghệ thuộc Đại Học Quốc Gia Hà Nội và TP. HCM, Đại Học Đà Nẵng. Năm 2007, PGS.TS Nguyễn Văn Tảo đã nghiên cứu và đề xuất thuật toán giấu tin mật không phụ thuộc vào bít thông tin đang cần giấu và giá trị các điểm ảnh trong khối ảnh gốc để tiến hành biến đổi khối ảnh gốc. Thuật toán có tên gọi là thuật toán giấu tin HT. Thuật toán HT với ý tưởng biến đổi chuổi bít dữ liệu gốc cho thỏa mãn với điều kiện nhúng các dãy bít cần giấu tương ứng. -43. Mục tiêu nghiên cứu Đề tài được thực hiện với mục tiêu xây dựng một phần mềm cho phép giấu thông tin số cần bảo mật vào trong một đối tượng dữ liệu số khác, sao cho sự biến đổi của môi trường sau khi đã giấu tin là rất khó nhận biết. Cụ thể phần mềm cho phép giấu một thông điệp vào đối tượng là một bức ảnh nhằm đảm bảo tính an toàn và bảo mật. Nội dung chi tiết gồm : - Các thuật toán giấu tin trong ảnh trong miền quan sát. - Định dạng ảnh màu Bitmap. - Xây dựng giao diện cho phép nhập một thông điệp cần che giấu vào một bức ảnh màu Bitmap. - Xây dựng thêm một số chức năng mở rộng (giấu một tập tin văn bản vào ảnh, giấu một ảnh bảo mật vào ảnh, giấu các tập tin âm thanh vào ảnh) . 4. Đối tƣợng và phạm vi nghiên cứu 4.1. Đối tƣợng nghiên cứu - Các thuật toán giấu tin trong ảnh. - Các loại ảnh số, ảnh đen trắng, ảnh xám, Bitmap, JPEG, PNG... 4.2. Phạm vi nghiên cứu - Thuật toán giấu tin trong ảnh theo phương pháp tiếp cận miền quan sát, miền không gian. - Ảnh màu định dạng Bitmap. 5. Phƣơng pháp nghiên cứu - Tìm hiểu nguồn gốc khái niệm giấu tin từ các nguồn bách khoa toàn thư như Wikipedia, Johnson & Johnson Technology Consultants (www.jjtc.com). - Tìm hiểu về các định dạng ảnh màu Bitmap thông qua các website hổ trợ. - Tìm hiểu về các thuật toán giấu thông tin trong ảnh số. -56. Những đóng góp mới của đề tài và những vấn đề mà đề tài chƣa thực hiện đƣợc 6.1 Những đóng góp mới - Giúp cho việc thực hiện giấu thông điệp bảo mật vào ảnh màu được thực hiện một cách dễ dàng. - Kết hợp thuật toán mã hóa tăng cường thêm tính bảo mật và độ an toàn cho thông tin. - Hổ trợ thêm chức năng giấu ảnh bảo mật trong ảnh. - Hổ trợ chức năng giấu tập tin âm thanh phim ảnh có phần mở rộng .mp3, .mp4, .wmv, .flv, .avi vào ảnh. - Hổ trợ chức năng giấu các tập tin văn bản, tài liệu thông dụng như Word, Excel, PDF và tập tin dữ liệu nén có phần mở rộng .rar . - Giao diện thân thiện hổ trợ ngôn ngữ tiếng Việt giúp người sử dụng dể dàng thao tác. 6.2 Những vấn đề chƣa thực hiện đƣợc - Đề tài chưa hổ trợ giấu trong nhiều định dạng ảnh. Để phát triển hơn, trong tương lai đề tài cần được mở rộng, cho phép môi trường giấu thông tin trên nhiều định dạng ảnh. -67. Kết cấu của đề tài Luận văn được chia làm ba phần : phần mở đầu, phần nội dung và phần kết luận. Phần mở đầu Nêu lý do chọn đề tài, tổng quan tình hình phát triển, mục tiêu nghiên cứu của đề tài, đối tượng, phạm vi, phương pháp nghiên cứu cũng như những đóng góp mới của đề tài. Bên cạnh đó chỉ ra mặt hạn chế mà đề tài chưa thực hiện được để giúp mọi người có cái nhìn rõ hơn. Phần nội dung chính: gồm 4 chương  Chƣơng 1 : Tổng quan an toàn thông tin và giấu tin trong ảnh Trong chương này sẽ trình bày khái quát về cơ sở lý thuyết an toàn thông tin và giấu tin trong ảnh, các phương pháp bảo vệ thông tin, lịch sử nguồn gốc thuật ngữ giấu tin, các khái niệm về giấu tin trong ảnh số.  Chƣơng 2 : Các thuật toán giấu tin trong ảnh Tìm hiểu các thuật toán giấu tin trong miền quan sát. Trong chương này nhóm sẽ trình bày một số thuật toán nổi bật trong phương pháp giấu tin bằng các bít ít quan trọng, khái niệm về bít ít quan trọng trong ảnh, ý tưởng và cách thực hiện của thuật toán.  Chƣơng 3 : Tổng quan về ảnh bitmap Nêu chi tiết cấu trúc định dạng ảnh Bitmap. Trong chương này nhóm sẽ trình bày sơ lược về các loại ảnh thông dụng hiện nay và các khái niệm về ảnh trắng đen, đa cấp xám, ảnh màu.  Chƣơng 4 : Xây dựng chương trình Nêu cách xây dựng chương trình và các chức năng mà chương trình hổ trợ. Nêu cách giấu thông điệp vào ảnh, cách lấy lại thông điệp đã giấu khi nhận được bức ảnh chứa thông tin và trình bày kết quả sau thời gian nghiên cứu. Phần kết luận Đưa ra những kết luận và kiến nghị về chương trình đã xây dựng. -7- CHƢƠNG 1: TỔNG QUAN AN TOÀN THÔNG TIN VÀ GIẤU TIN TRONG ẢNH 1.1. Một số khái niệm cơ bản về an toàn thông tin Trong cuộc sống, con người luôn có nhu cầu trao đổi thông tin với nhau. Những thông tin được trao đổi rất phong phú và được truyền trên nhiều dạng khác nhau ví dụ như dùng thư tay, sóng điện từ, hay internet,… 1.1.1. Khái niệm thông tin Vậy, thông tin là gì? Theo lý thuyết thông tin thì thông tin được định nghĩa là vật liệu đầu tiên được gia công trong hệ thống truyền tin. Thực ra thông tin là toàn bộ những gì con người cảm nhận về thế giới xung quanh thông qua các giác quan của mình. [2] 1.1.2. Khái niệm an toàn, bảo mật thông tin Ngày nay, 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 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 đổi mớ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ực khá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ửi cũ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ấn công hay thay đổi thông tin khi truyền đi [2]. 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ính kia, 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ính kia. 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ài liệu này không bị sửa đổi, còn đảm bảo bí mật thì không cần thiết. -81.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át triể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ũng như 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ống mạ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ột thô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ày khô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 đổi trước khi đến nơi nhận thì hậu quả cũng thật khôn lường. Từ đó, ta có thể thấy vai trò của an toàn thông tin là vô cùng quan trọng trong tất cả các lĩnh vực trong cuộc sống chứ không riêng gì lĩnh vực công nghệ thông tin. 1.1.4. Các phƣơng pháp bảo vệ thông tin 1.1.4.1. Phƣơng pháp bảo vệ thông thƣờng Đây là phương pháp hành chính để bảo vệ thông tin, thông tin được đăng ký và được bảo vệ bởi các cơ quan hành chính nhưng thông tin chỉ được bảo vệ hạn hẹp trong một số lĩnh vực nhất định. Chẳng hạn, thông tin về hồ sơ của cán bộ tình báo sẽ được đảm bảo chỉ cấp trên quản lý anh ta mới được biết, và đảm bảo thông tin được bí mật tuyệt đối và không được truyền đến bất kỳ ai. 1.1.4.2. Phƣơng pháp bảo vệ vật lý Đây là phương pháp bảo vệ thông tin dùng các biện pháp kỹ thuật vật lý nhằm đảm bảo thông tin bí mật, chống xem trộm và không bị sửa đổi. Chẳng hạn dùng thư có niêm phong khi niêm phong bị gỡ ra thì nó đã bị xem trộm. Hoặc dùng khóa bảo vệ tủ tài liệu. Hoặc dùng hộp mật mã để bảo vệ thông tin.... 1.1.4.3. Phƣơng pháp bảo vệ dùng phần mềm Đây là phương pháp được quan tâm nhất bởi môi trường truyền tin hiện nay là môi trường mạng, đây là môi trường dễ xâm nhập nhất, đồng thời dữ liệu dễ xảy ra sự cố nhất. Biện pháp bảo vệ dùng phần mềm vừa đáp ứng được các nhu cầu của an toàn thông tin, vừa tỏ ra rất có hiệu quả đặc biệt trong môi trường mạng. -9Biện pháp bảo vệ thông tin sử dụng phần mềm thực ra là dùng các thuật toán mã hóa, hay dùng một thông tin khác làm vỏ bảo vệ hoặc kết hợp cả hai. Trong đó phương pháp thứ hai dùng một thông tin khác làm vỏ bảo vệ chính là sử dụng dữ liệu đa phương tiện như hình ảnh, audio, video,… để làm lớp vỏ bọc cho thông tin giấu trong đó, đồng thời kết hợp với những phương pháp mã hóa để thông tin được bảo vệ an toàn hơn. Đây cũng là vấn đề được chú trọng trình bày trong báo cáo này. 1.2. Tổng quan về giấu tin trong ảnh 1.2.1. Khái niệm che giấu thông tin Qua nghiên cứu các phương pháp giấu tin, ta có thể định nghĩa nó như sau: Giấu thông tin là kỹ thuật nhúng (embedding) một lượng thông tin số nào đó vào trong một đối tượng dữ liệu số khác[4]. Một trong những yêu cầu cơ bản của giấu tin là đảm bảo tính chất ẩn của thông tin được giấu đồng thời không làm ảnh hưởng đến chất lượng của dữ liệu gốc. Có thể coi nghệ thuật giấu tin là một nhánh của ngành mật mã với mục tiêu nghiên cứu các phương pháp che giấu thông tin mật. Ngành mật mã (Cryptology) Mật mã (Crytography) Giấu thông tin (Data Hiding) Thủy vân số (Watermarking) Giấu tin (Steganography) Hình 1.1 : Sơ đồ ngành mật mã Sự khác biệt chủ yếu giữa mã hoá thông tin và giấu thông tin là mã hoá làm biến đổi thông điệp ban đầu đi tức là giấu đi ý nghĩa của thông tin, còn với giấu thông tin thì người ta sẽ khó biết được là có thông tin giấu bên trong hay không tức là giấu đi sự hiện diện của thông tin. Về bản chất giấu tin gần với nén dữ liệu hơn. Tóm lại giấu -10tin và mã hóa có mối quan hệ mật thiết với nhau, cùng xây dựng một hệ thống an toàn và bảo mật thông tin. Kỹ thuật giấu thông tin nhằm mục đích đảm bảo an toàn và bảo mật thông tin ở hai khía cạnh. Một là bảo mật cho dữ liệu được đem giấu (embedded data), chẳng hạn như giấu tin mậ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ông phát hiện được (steganography), hai là bảo mật cho chính đối tượng được dùng để giấu tin (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).... Hai khía cạnh khác nhau này dẫn đến hai khuynh hướng kỹ thuật chủ yếu của giấu tin. Khuynh hướng thứ nhất là giấu tin mật (Steganography). Khuynh hướng này tập trung vào các kỹ thuật giấu tin sao cho thông tin giấu được nhiều và quan trọng là người khác khó phát hiện được một đối tượng có bị giấu tin bên trong hay không. Khuynh hướng thứ hai là thuỷ vân số (watermarking). Khuynh hướng thuỷ vân số đánh giấu vào đối tượng nhằm khẳng định bản quyền sở hữu hay phát hiện xuyên tạc thông tin. Thuỷ vân số có miền ứng dụng lớn hơn nên được quan tâm nghiên cứu nhiều hơn và thực tế đã có nhiều những kỹ thuật dành cho khuynh hướng này. 1.2.2. Phân loại các kỹ thuật giấu tin Do kỹ thuật giấu thông tin số mới được hình thành trong thời gian gần đây nên xu hướng phát triển chưa ổn định. Nhiều phương pháp mới, theo nhiều khía cạnh khác nhau đang và chắc chắn sẽ được đề xuất, bởi vậy một định nghĩa chính xác, một sự đánh giá phân loại rõ ràng chưa thể có được. Sơ đồ phân loại trên được Fabien A. P. Petitcolas đề xuất năm 1999.[11] Có thể chia lĩnh vực giấu tin thành hai hướng lớn là thủy vân số và giấu tin mật [4]. Giấu tin mật quan tâm đến các ứng dụng sao cho người khác khó phát hiện nhất việc có tin được giấu và nếu có phát hiện tin được giấu thì việc giải tin cũng khó thực hiện nhất. Phạm vi ứng dụng của thủy vân đa dạng hơn, tùy theo mục đích của hệ thủy vân mà người ta lại chia thành các hướng nhỏ như thủy vân dễ vỡ và thủy vân bền vững. -11- Giấu thông tin Giấu tin mật Thủy vân số Thủy vân bền vững Thủy vân ẩn Thủy vân hiện Thủy vân dễ vỡ Thủy vân ẩn Thủy vân hiện Hình 1.2 : Phân loại kỹ thuật giấu tin (Fabien A.P. Petitcolaset al., 1999) Sơ đồ phân loại này khái quát về ứng dụng và kỹ thuật giấu thông tin, dựa vào đó có thể chia lĩnh vực giấu tin ra làm hai hướng lớn, đó là watermarking (thủy vân) và steganography (giấu tin, viết phủ). Steganography (giấu tin, viết phủ) là lĩnh vực nghiên cứu việc nhúng các mẩu tin mật vào một môi trường phủ. Trong quá trình giấu tin để tăng bảo mật có thể người ta dùng một khoá viết mật khi đó người ta nói về Intrinsic Steganography (giấu tin có xử lý). Khi đó để giải mã người dùng cũng phải có khoá viết mật đó. Chú ý rằng khoá này không phải là khoá dùng để lập mật mã mẩu tin, ví dụ nó có thể là khoá để sinh ra hàm băm phục vụ rải tin vào môi trường phủ. Ngược lại nếu không dùng khoá viết mật thì người ta chỉ giấu tin đơn thuần vào môi trường phủ thì khi đó người ta nói về Pure Steganography (giấu tin đơn thuần). Watermarking (thủy vân, thuỷ ấn) là kỹ thuật nhúng một biểu tượng vào trong ảnh môi trường để xác định quyền sở hữu ảnh môi trường, chống sự giả mạo và xuyên tạc thông tin. Kích thước của biểu tượng thường nhỏ (từ vài bit tới vài nghìn bit). Kỹ thuật này cho phép đảm bảo nguyên vẹn biểu tượng khi ảnh môi trường bị biến đổi bởi các phép thao tác như lọc (filtering), nén mất dữ liệu (lossy compression), hay các biến đổi hình học,... Tuy nhiên, việc đảm bảo nguyên vẹn biểu tượng không kể đến khi có sự tấn công dựa trên việc hiểu rõ thuật toán và có bộ giải mã trong tay. Thông tin giấu -12là một định danh duy nhất, ví dụ định danh người dùng thì khi đó người ta gọi là Fingerprinting (nhận dạng vân tay, điểm chỉ). Nếu như watermarking (thủy vân, thủy ấn) quan tâm nhiều đến ứng dụng giấu các mẩu tin ngắn nhưng đòi hỏi độ bền vững lớn của thông tin cần giấu (trước các biến đổi thông thường của tệp dữ liệu môi trường) thì steganography lại quan tâm tới ứng dụng che giấu các bản tin đòi hỏi độ bí mật và dung lượng càng lớn càng tốt. Đối với từng hướng lớn này, quá trình phân loại theo các tiêu chí khác có thể tiếp tục được thực hiện, ví dụ dựa theo ảnh hưởng các tác động từ bên ngoài có thể chia watermark thành hai loại, một loại bền vững với các tác động sao chép trái phép, loại thứ hai lại cần tính chất hoàn toàn đối lập: dễ bị phá huỷ trước các tác động nói trên. Cũng có thể chia watermark theo đặc tính, một loại cần được che giấu để chỉ có một số người tiếp xúc với nó có thể thấy được thông tin, loại thứ hai đối lập, cần được mọi người nhìn thấy. Xét về tính chất thuỷ ấn giống giấu tin ở chỗ tìm cách nhúng thông tin mật vào một môi trường. Nhưng về bản chất thì thuỷ ấn có những nét khác ở một số điểm :  Giấu tin là giấu đi thông tin vào vật mang tin rồi sau đó cần tách lại tin, còn thủy ấn tìm cách biến tin giấu thành một thuộc tính của vật mang.  Khác với giấu tin, mục tiêu của thuỷ ấn là nhúng thông tin không lớn thường là biểu tượng, chữ ký hay các đánh dấu khác vào môi trường phủ nhằm phục vụ việc xác nhận bản quyền.  Chỉ tiêu quan trọng nhất của giấu tin là dung lượng, của một thuỷ ấn là tính bền vững. Điểm khác nữa giữa thuỷ ấn và giấu tin là thuỷ ấn có thể vô hình hoặc hữu hình trên ảnh mang. 1.2.3. Vài nét về lịch sử giấu tin Các kỹ thuật giấu tin đã được đề xuất và sử dụng từ xa xưa, và sau này đã được phát triển ứng dụng cho nhiều lĩnh vực. Từ Steganography bắt nguồn từ Hi-Lạp với ý 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ệ. Có lẽ những ghi chép sớm nhất về kỹ thuật giấu thông tin thuộc về sử gia Hy-Lạp Herodotus. Khi bạo chúa Hy-Lạp Histiaeus bị vua Darius bắt giữ ở Susa vào thế kỷ thứ năm trước Công Nguyên, ông ta đã gửi một thông báo bí mật cho con rể của mình là Aristagoras ở Miletus. Histiaeus đã cạo trọc đầu của -13một nô lệ tin cậy và xăm một thông báo trên da đầu của người nô lệ ấy. Khi tóc của người nô lệ này mọc đủ dài người nô lệ được gửi tới Miletus. Một câu chuyện khác về thời Hy-Lạp cổ đại cũng do Herodotus ghi lại. Môi trường để ghi văn bản chính là các viên thuốc được bọc trong sáp ong. Demeratus, một người Hy-Lạp, cần thông báo cho Sparta rằng Xerxes định xâm chiếm Hy-Lạp. Để tránh bị phát hiện, anh ta đã bóc lớp sáp ra khỏi các viên thuốc và khắc thông báo lên bề mặt các viên thuốc này, sau đó bọc lại các viên thuốc bằng một lớp sáp mới. Những viên thuốc được để ngỏ và lọt qua mọi sự kiểm tra một cách dễ dàng. Mực không màu là phương tiện hữu hiệu cho bảo mật thông tin trong một thời gian dài. Người Romans cổ đã biết sử dụng những chất sẵn có như nước quả, nước tiểu và sữa để viết các thông báo bí mật giữa những hàng văn tự thông thường. Khi bị hơ nóng, những thứ mực không nhìn thấy này trở nên sẫm màu và có thể đọc dễ dàng. Ý 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 hàng loạt công trình nghiên cứu giá trị. 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 nhiều 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... 1.2.4. Một số ứng dụng của kỹ thuật giấu tin Bảo vệ bản quyền tác giả: Đây là ứng dụng cơ bản nhất của kỹ thuật thủy vân số. Một thông tin nào đó mang ý nghĩa quyền sở hữu tác giả gọi là thủy vân sẽ được nhúng vào trong các sản phẩm, thủy vân đó chỉ một mình chủ sở hữu hợp pháp các sản phẩm đó có và được dùng làm minh chứng cho bản quyền sản phẩm. Yêu cầu kỹ thuật đối với ứng dụng này là thủy vân phải tồn tại bền vững cùng với sản phẩm, muốn bỏ thủy vân này mà không được phép của người chủ sở hữu thì chí có cách là phá hủy sản phẩm[18]. Giấu tin mật: Các thông tin giấu được trong trường hợp này càng nhiều càng tốt, việc giải mã để nhận được thông tin cũng không cần phương tiện chứa ban đầu. -14Các yêu cầu mạnh về chống tấn công của kẻ thù không cần thiết lắm thay vào đó là thông tin giấu phải đảm bảo tính ẩn. Xác thực thông tin hay phát hiện xuyên tạc thông tin: Một tệp các thông tin sẽ được giấu trong phương tiện chứa sau đó được sử dụng để nhận biết xem dữ liệu trên phương tiện gốc đó có bị thay đổi không. Các thủy vân nên được ẩn để tránh sự tò mò của kẻ thù, hơn nữa việc làm giả các thủy vân hợp lệ hay xuyên tạc thông tin nguồn cũng cần được xem xét. Trong các ứng dụng thực tế người ta mong muốn tìm được vị trí bị xuyên tạc cũng như phân biệt được các thay đổi. Yêu cầu chung đối với ứng dụng này là khả năng giấu thông tin cao và thủy vân không cần bền vững[4]. Giấu vân tay hay dán nhãn: Thủy vân trong những ứng dụng này được sử dụng để nhận diện người gửi hay người nhận của một thông tin nào đó. Ví dụ các vân khác nhau sẽ được nhúng vào các bản sao khác nhau của thông tin gốc trước khi chuyển cho nhiều người [6]. Với ứng dụng này thì yêu cầu là đảm bảo độ an toàn cao cho các thủy vân tránh sự xóa dấu vết trong khi phân phối. Kiểm soát sao chép: Các thủy vân trong trường hợp này được sử dụng để kiểm soát sao chép đối với các thông tin. Các thiết bị phát ra thủy vân thường được gắn sẵn vào trong các hệ thống đọc/ghi. Các ứng dụng loại này cũng yêu cầu thủy vân phải được đảm bảo an toàn và cũng sử dụng phương pháp phát hiện thủy vân đã giấu mà không cần thông tin gốc. 1.2.5. Khái niệm về giấu tin trong ảnh số Giấu tin trong ảnh số là một phần của khái niệm giấu thông tin với việc sử dụng ảnh số làm phương tiện mang tin. Giấu thông tin trong ảnh số có nhiều ứng dụng trong thực tế như trong việc xác định quyền sở hữu, chống xuyên tạc thông tin và gửi thông điệp một cách an toàn. Ngày nay, giấu tin trong ảnh nhận được nhiều sự quan tâm của các cá nhân, tổ chức, trường đại học trong việc nghiên cứu về lĩnh vực này. Giấu tin trong ảnh là thủ thuật giấu thông tin cùng với dữ liệu ảnh nhưng chất lượng ảnh lại ít bị thay đổi. Một đặc điểm của giấu thông tin trong ảnh đó là thông tin được giấu trong ảnh một cách vô hình. Dựa vào đặc điểm này ta có thể ứng dụng vào cách truyền thông tin mật cho nhau mà người khác không thể biết được, vì sau quá trình xử lý giấu thông tin thì chất lượng ảnh gần như không thay đổi, đặc biệt đối với ảnh màu. -151.2.6. Một số đặc điểm của việc giấu thông tin trên ảnh số Giấu tin trong ảnh là kỹ thuật đảm bảo an toàn và bảo mật thông tin. Do dó, để đáp ứng được các tiêu chí bảo mật thông tin ta thường đánh giá kỹ thuật giấu tin trong ảnh dựa vào các đặc điểm sau:  Tính vô hình của thông tin được giấu : Khái niệm này dựa trên đặc điểm của hệ thống thị giác của con người. Đối với một người có thị giác bình thường sẽ không phân biệt được ảnh trước khi giấu và ảnh sau khi giấu. Trong khi, giấu tin trong ảnh yêu cầu tính vô hình của thông tin giấu ở mức độ cao thì thủy vân lại chỉ yêu cầu ở một cấp độ nhất định. Chẳng hạn như người ta áp dụng thủy vân cho việc gắn một biểu tượng mờ vào một chương trình truyền hình để bảo vệ bản quyền.  Số lượng thông tin được giấu : Lượng thông tin giấu so với kích thước ảnh môi trường cũng là một vấn đề cần quan tâm trong một thuật toán giấu tin. Rõ ràng là có thể chỉ giấu một bit thông tin vào mỗi ảnh mà không cần lo lắng về độ nhiễu của ảnh nhưng như vậy sẽ rất kém hiệu quả khi mà thông tin cần giấu có kích thước lớn. Các thuật toán đều cố gắng đạt được mục đích làm thế nào để giấu được nhiều thông tin nhất mà không gây ra nhiễu đáng kể.  Tính an toàn và bảo mật thông tin : Thuật toán nhúng tin là yếu tố để đánh giá độ an toàn và bảo mật thông tin. Đối với giấu tin trong ảnh thì đây là yêu cầu rất quan trọng. Yêu cầu này dường như khá đơn giản đối với ảnh màu bởi mỗi điểm ảnh được biểu diễn bởi nhiều bit, nhiều giá trị và khi ta thay đổi một giá trị nhỏ nào đó thì chất lượng ảnh thay đổi không đáng kể, thông tin giấu khó bị phát hiện, nhưng đối với ảnh đen trắng mỗi điểm ảnh chỉ là đen hoặc trắng, và nếu ta biến đổi một bit từ trắng thành đen và ngược lại thì sẽ rất dễ bị phát hiện. Do đó, yêu cầu đối với các thuật toán giấu thông tin trong ảnh màu và giấu thông tin trong ảnh đen trắng là khác nhau. Trong khi đối với ảnh màu thì các thuật toán chú trọng vào việc làm sao giấu được càng nhiều thông tin càng tốt thì các thuật toán áp dụng cho ảnh đen trắng lại tập trung vào việc làm thế nào để thông tin giấu khó bị phát hiện nhất [3], [9], [10]. -16 Chất lượng của ảnh sau khi giấu thông tin : Các thuật toán thực hiện giấu thông tin trên phần dữ liệu của ảnh. Dữ liệu ảnh bao gồm phần header, bảng màu (có thể có) và dữ liệu ảnh. Do vậy mà kích thước ảnh trước hay sau khi giấu thông tin là như nhau. Để thực hiện giấu tin trong ảnh, trước tiên ta cần xử lý số hóa ảnh. Có nhiều loại ảnh đã được chuẩn hóa như: JPEG, PCX,BMP,... Do đó, quá trình số hóa các dạng ảnh cũng khác nhau. 1.2.7. Các phƣơng pháp giấu tin Có nhiều hướng tiếp cận trong kỹ thuật giấu tin trong ảnh nhưng phổ biến hiện nay có ba phương pháp :  Giấu tin trong miền quan sát: Hay được áp dụng trên các ảnh Bimap không nén, các ảnh dùng bảng màu. Ý tưởng chính của phương pháp này là lấy từng bít của mẩu tin mật rồi rải nó lên ảnh mang tin, thay đổi bít có trọng số thấp của ảnh bằng các bít của mẫu tin mật. vì khi thay đổi các bít có trọng số thấp thì không ảnh hưởng đến chất lượng ảnh, và mắt người không cảm nhận được. Nổi bật trong phương pháp này là sử dụng thuật toán biến đổi LSB (Least Significant Bit).  Giấu tin trong miền không gian, tần số: Phương pháp này dựa vào các kỹ thuật biến đổi ảnh, lợi dụng việc biến đổi ảnh từ miền biểu diễn này sang miền biểu diễn khác để giấu các bít tin. Một ví dụ của hệ thống sử dụng phương pháp này là "Jpeg-Jsteg", phần mềm này nhúng thông tin bằng cách điều chế các hệ số của phép biến đổi Cosin rời rạc theo các bít tin cần giấu và sự làm tròn lỗi khi lượng hoá. Một số các phương pháp khác thuộc nhóm này sử dụng ảnh như mô hình vật lý với các dải phổ thể hiện mức năng lượng. Khi đó giấu tin giống như việc điều chế một tín hiệu dải hẹp vào một dải tần rộng. Các phép biến đổi nổi bật của phương pháp này như là biến đổi DCT, DFT, Wavelet.  Các phương pháp sử dụng mặt nạ giác quan: kỹ thuật của phương pháp này là dựa trên nguyên lý đánh lừa hệ thống giác quan của con người. “Mặt nạ” ở đây ám chỉ hiện tượng mắt người không cảm nhận được một tín hiệu nếu nó ở bên cạnh một tín hiệu nhất định nào đó. -171.2.8. Mô hình chung của kỹ thuật giấu tin trong ảnh Một hệ thống giấu tin trong ảnh bao gồm 2 phần chính: chèn tin (giấu tin) và tách tin (lấy tin) (Hình 1.3) . Thông tin mật Ảnh gốc Giấu tin Ảnh chứa tin Khóa a) Chèn tin Ảnh gốc Ảnh chứa tin Tách tin Thông tin mật Khóa b) Tách tin Hình 1.3 : Quá trình giấu tin và tách tin Các thành phần trong một hệ giấu tin trong ảnh:  Thông tin mật: là một thông điệp hay tệp văn bản mà ta muốn giấu đi sự xuất hiện.  Ảnh gốc: ảnh được dùng làm môi trường nhúng tin vào, còn gọi là ảnh phủ.  Khóa: khóa bảo mật tham gia vào quá trình giấu tin nhằm tăng thêm tính bảo mật và an toàn thông tin.  Ảnh chứa tin: là ảnh sau khi đã qua quá trình nhúng tin vào, còn gọi là ảnh kết quả. -181.3. Tiểu kết Qua tìm hiểu về các khái niệm an toàn và bảo mật thông tin, nguồn gốc, phương pháp, ứng dụng của giấu tin trong ảnh để có được cơ sở lý thuyết. Nhóm nghiên cứu sẽ bắt đầu tìm hiểu kỹ về các thuật toán giấu tin trong ảnh từ đó đưa ra hướng xây dựng chương trình. -19- CHƢƠNG 2: CÁC THUẬT TOÁN GIẤU TIN TRONG ẢNH Giấu tin trong ảnh chiếm tỷ lệ lớn trong các chương trình ứng dụng, hệ thống giấu tin đa phương tiện. Ngoài yêu cầu đảm bảo an toàn thông tin thì giấu tin trong ảnh đòi hỏi cần đáp ứng được số lượng thông tin được giấu bên trong ảnh. Sử dụng thuật toán giấu tin cho phù hợp với nhu cầu là hết sức quan trọng. Phổ biến trong phương pháp giấu tin trong miền quan sát là thuật toán LSB (Least Significant Bit), thuật toán có thể sử dụng trên ảnh màu để che giấu thông tin mà không làm thay đổi dung lượng của ảnh sau khi giấu. 2.1. Tổng quan về các thuật toán giấu tin trong ảnh 2.1.1 Giấu tin theo khối bít đơn giản Ý tưởng cơ bản của kỹ thuật này là chia ảnh gốc thành các khối nhỏ và trong mỗi khối nhỏ sẽ giấu một bit thông tin. Quá trình giấu tin: Với mỗi ma trận bit F kích thước m x n và bit mật b đang cần giấu, tiến hành biến đổi F thành F‟ để giấu bit b sao cho: SUM(F‟) mod 2 = b Như vậy, mỗi lần giấu một bit, có thể xảy ra hai trường hợp: SUM(F) mod 2 = b, khi đó ta giữ nguyên khối ảnh F. Trường hợp ngược lại chọn ngẫu nhiên một bit trong khối F và tiến hành đảo giá trị của bit này để được khối ảnh mới F‟. Quá trình tách tin: Khi nhận được ảnh giấu tin, việc giải mã tin sẽ được thực hiện theo các bước sau: - Chia ảnh thành các khối có kích thước giống với kích thước khối đã sử dụng khi thực hiện giấu, đây là khóa để giải mã. - Với mỗi khối ảnh đã giấu tin F‟ được chọn theo thứ tự như quá trình giấu tin, thực hiện tách lấy bit thông tin đã giấu theo công thức: b = SUM(F‟) mod 2 (1) - Như vậy, sau khi xét hết các khối bit đã giấu, ta thu được một chuỗi bit, chuỗi này là thông tin các bit mật đã giấu trước đó. -20Lược đồ giấu tin theo khối bit đơn giản giấu được 1 bit thông tin vào trong một khối ma trận bit F kích thước m x n mà chỉ thay đổi tối đa 1 bit. 2.1.2 Thuật toán giấu tin Wu-Lee Kỹ thuật giấu tin theo khối bit đơn giản thể hiện độ an toàn không cao với việc sử dụng duy nhất kích thước khối là khóa cho quá trình giấu tin, ảnh chứa thông tin giấu cũng bị dễ phát hiện do kỹ thuật có thể sẽ đảo bit trong cá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ận trong khối. Kỹ thuật giấu tin trên ảnh nhị phân do M.Y.Wu và J.H.Lee vẫn trên tư tưởng giấu một bit thông tin vào một khối ảnh gốc nhưng khắc phục được phần nào những tồn tại nêu trên bằng cách được thêm khóa K cho việc giấu tin và đưa thêm các điều kiện để đảo bit trong mỗi khối, theo điều kiện đó các khố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. [7] Thuật toán giấu tin biến đổi khối ảnh F thành F‟ để giấu 1 bit b được thực hiện sao cho: SUM( K  F‟) mod 2 = b (2) Công thức (2) cũng được sử dụng cho quá trình tách lấy tin đã giấu. Thuật toán giấu tin Wu-Lee giấu được 1 bit thông tin vào một khối m x n bit và chỉ phải thay đổi tối đa 1 bit trong F. 2.1.3 Thuật toán giấu tin Chan-Pan-Tseng Trên cơ sở thuật toán của Wu-Lee như đã trình bày trong mục trên, các tác giả Yu Yan Chen, Hsiang Kuang Pan và Yu Chee Tseng đã phát triển một kỹ thuật giấu tin mới, thuật toán giấu tin CPT. Kỹ thuật này sử dụng một ma trận khóa K và một ma trận trọng số W trong quá trình giấu tin và tách thông tin. [9] Quá trình biến đổi khối ảnh F thành F‟ kích thước m x n để giấu r bit thông tin b = b1b2…br được thực hiện sao cho: SUM (( F‟  K )  W ) = b mod ( 2r ) (3) Công thức (3) được sử dụng để tách chuỗi bit b = b1b2…br từ khối ảnh F‟. Tóm tắt nội dung thuật toán CPT Dữ liệu vào: - Xét trên một ma trận nhị phân F = (Fij)mxn - Kết hợp 1 ma trận khóa nhị phân cấp m x n : K = (Kij)mxn
- Xem thêm -