TIỂU LUẬN AN TOÀN VÀ BẢO MẬT DỮ LIỆU MỘT SỐ KỸ THUẬT GIẤU TIN TRONG ẢNH 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. Bên cạnh 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.
Trang 1ĐẠI HỌC DUY TÂN
TIỂU LUẬN
AN TOÀN VÀ BẢO MẬT DỮ LIỆU
Đề tài:
MỘT SỐ KỸ THUẬT GIẤU TIN TRONG ẢNH
Giảng viên: PGS-TS TRỊNH NHẬT TIẾN
Học viên : TRẦN ĐÌNH HOÀNG HUY
Lớp : K7MCS
Trang 2MỤC LỤC
ĐẶT VẤN ĐỀ 3
GIẢI QUYẾT VẤN ĐỀ 4
I TỔNG QUAN VỀ GIẤU TIN 4
1 Giấu tin 4
2 Các yêu cầu cở bản của hệ giấu tin trên ảnh tĩnh 5
2.1 Một số đặc điểm và tính chất của hệ giấu tin 5
2.2 Tính chất bền vững của giấu tin 6
2.3 Thông tin dùng để giấu trong ảnh 6
II MỘT SỐ KỸ THUẬT GIẤU TIN TRONG ẢNH 7
1 Giới thiệu ảnh Bitmap 7
2 Sơ đồ hệ thống giấu tin 8
2.1 Quá trình nhúng tin 8
2.2 Quá trình giải và phát hiện tin 8
3 Các kỹ thuật giấu tin trong ảnh 9
3.1 Kỹ thuật chèn vào các bit ít quan trọng của một điểm ảnh (LSB) 9
3.2 Kỹ thuật Patchwork 10
3.3 Kỹ thuật dùng mặt nạ tri giác 11
3.4 Kỹ thuật thao tác trên các hệ số của phép biến đổi DCT 11
4 Các đặc trưng của giấu thông tin trong ảnh 11
4.1 Phương tiện chứa có dữ liệu tri giác tĩnh 12
4.2 Giấu tin trong ảnh tác động lên dữ liệu ảnh nhưng không thay đổi kích thước ảnh 12
4.3 Đảm bảo yêu cầu chất lượng ảnh sau khi giấu thông tin 12
4.4 Thông tin trong ảnh sẽ bị biến đổi nếu có bất kỳ một biến đổi nào trên ảnh 13
4.5 Không cần ảnh gốc khi giải mã ảnh 13
5 Sự khác nhau giữa giấu tin trong ảnh đen trắng với ảnh màu 13
III XÂY DỰNG CHƯƠNG TRÌNH GIẤU TIN BỀN VỮNG TRONG ẢNH 15
1 Giới thiệu thuật toán giấu tin 15
2 Chương trình giấu tin 17
KẾT LUẬN 19
TÀI LIỆU THAM KHẢO 20
Trang 3ĐẶT VẤ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 Bên cạnh 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 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 đã thúc đẩy khả năng 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 đã tạo ra những cơ cấu ảo - nơi diễn ra các 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 các giải pháp hữu hiệu nhằm đảm bảo an toàn thông tin, chống lại các nạn ăn cắp bản quyền, xuyên tạc thông tin, truy nhập thông tin trái phép v.v Việc 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 tạo ra những cơ hội phát triển mới
Trong một thời gian dài, nhiều phương pháp bảo vệ thông tin đã được đưa ra, trong đó có phương pháp giấu tin trong ảnh Mục đích của phương pháp này là che giấu thông tin là làm cho dữ liệu trở nên không thể nghe thấy hay nhìn thấy Điều đó
có nghĩa là đối phương không nhận thấy sự tồn tại của dữ liệu đã được nhúng dù có
cố gắng nhìn thật cẩn thận vào môi trường có giấu dữ liệu Phương pháp này đã có nhiều ứng dụng trong thực tế Vì vậy việc nghiên cứu phương pháp bảo vệ thông tin này không chỉ có ý nghĩa trên lý thuyết mà cả thực tiễn Do đó, để thực hiện tiểu luận môn an toàn và bảo mật dữ liệu tôi đã chọn đề tài: Một số kỹ thuật giấu tin trong ảnh
Trang 4GIẢI QUYẾT VẤN ĐỀ
I TỔNG QUAN VỀ GIẤU TIN
1 Giấu tin
Giấu thông tin là một kỹ thuật nhúng (giấu) một lượng thông tin số nào đó vào trong một đối tượng dữ liệu khác
Môi trường giấu tin có thể là bất kỳ đối tượng dữ liệu số nào, nhưng phổ biến hơn cả là ảnh số Đối với ảnh nhị phân (ảnh đen trắng) mỗi điểm ảnh được biểu diễn bởi một bit nên khi có thay đổi, các bit dễ bị phát hiện Do đó rất khó giấu tin vào đó một cách an toàn Việc nghiên cứu về các phương pháp giấu tin trong ảnh nhị phân trước hết để giải quyết những khó khăn này Ngoài ra bản thân các thuật toán giấu tin trong ảnh nhị phân có thể được sử dụng làm cơ sở để phát triển các thuật toán giấu tin trong ảnh màu Ảnh đa mức xám hay trong các môi trường đa phương tiện khác một cách rất hiệu quả
Các phương pháp giấu tin trong ảnh nhị phân thường giấu tin theo khối bit và
sử dụng thuộc tính chẳn lẻ của các khối bit để khôi phục lại thông tin Một thuật toán giấu tin khá phổ biến là thuật toán WL của M.Wu và J Lee Trong thuật toán
WL, môi trường giấu tin là một ảnh nhị phân (có thể được coi như một ma trận nhị phân, mỗi phần tử của ma trận là 1 bit) được chia ra thành các khối m*n bit, mỗi khối giấu được một bit thông tin bằng cách thay đổi nhiều nhất là một bit trong khốí
Ưu điểm của thuật toán này là tương đối đơn giản Nhược điểm của thuật toán này là
tỉ lệ giấu tin thấp vì mỗi khối chỉ giấu được một bit thông tin, và độ an toàn chưa cao vì với giả thiết đối phương đã biết sử dụng thuật toán WL thì chúng chỉ cần xác định được m và n và ma trận khoá thì chúng sẽ tìm ra tin giấu
Thuật toán CPT của Y.Chen, H.Pan, Y.Tseng cũng có tư tưởng giấu tin theo khối bit nhưng mỗi khối có thể giấu được một dãy r bit bằng cách thay đổi nhiều nhất hai bit trong khối Như vậy so với thuật toán WL, thuật toán CPT có tỉ lệ giấu tin cao hơn nhiều, trong khi số bit cần thay đổi cũng rất ít Ví dụ với khối 8*8 thì với thuật toán WL ta chỉ giấu được 1 bit nhưng với thuật toán CPT có thể giấu được đến
6 bit Thuật toán CPT sử dụng một ma trận trọng số nhằm giấu được một dãy nhiều bit vào trong mỗi khối, và ma trận trong số này cũng chính là một thành phần bí mật
Trang 5cùng với ma trận khoá Do vậy độ an toàn của thuật toán CPT sẽ cao hơn của thuật toán WL
2 Các yêu cầu cở bản của hệ giấu tin trên ảnh tĩnh
Cũng giống như các loại thông tin khác, an toàn ảnh số cũng là điều rất được quan tâm hiện nay Đối với các bức ảnh có yêu cầu cao trong việc tôn trọng bản quyền hay chống các xuyên tạc thì vấn đề này đòi hỏi phải có những kỹ thuật hỗ trợ
Để giải quyết vấn đề này ta có thể quan tâm theo 3 khía cạnh sau: mã hoá dữ liệu ảnh, kiểm tra truy cập trên các trang web chứa ảnh cần bảo vệ và cuối cùng là nhúng tin vào các bức ảnh này Mối quan hệ giữa giấu tin và an toàn thông tin được thể hiện
2.1 Một số đặc điểm và tính chất của hệ giấu tin
- Phương tiện chứa là ảnh 2 chiều tĩnh
- Giấu tin trên ảnh tác động lên dữ liệu nhưng không làm thay đổi kích thước ảnh
- Kỹ thuật giấu phụ thuộc vào tính chất của hệ thống tri giác con người
- Khi giải tin có thể cần hoặc không cần ảnh gốc
Yêu cầu bắt buộc đối với giấu tin ẩn là thông điệp giấu phải ẩn bên trong ảnh sao cho mắt thường không nhìn thấy được Có loại giấu tin nhưng thông tin nhúng lại cho nhì thấy công khai về chủ quyền sở hữu Giấu tin ẩn được sử dụng mục đích
An toàn ảnh số
Mã hoá thông tin
-Xoá trộn thông tin
- Thực hiện trong
suốt quá trình
truyền
- Sử dụng khoá
công cộng hoăc
khoá bí mật
Giấu tin
-Phát hiện sự thay đổi
- Mã các thông tin liên quan đến bản quyền
An toàn site
- Firewalls
- Vấn đề truy cập
- Sử dụng các ảnh công cộng có chất lượng thấp
Mối quan hệ giữa giấu tin và an toàn ảnh
Trang 6gài bí mật các thông tin xác định chủ quyền sở hữu và các thông tin sẽ được sử dụng như bằng chứng về quyền sở hữu tài liệu đó nếu có tranh chấp
2.2 Tính chất bền vững của giấu tin
Tính chất này là quan trọng nhất của hệ giấu tin bền vững Nghĩa là hệ giấu tin phải chống lại được các phép biến đổi, hay các tấn công có chủ định
2.3 Thông tin dùng để giấu trong ảnh
Một câu hỏi đầu tiên đối với hệ giấu tin là thông tin gì sẽ được giấu vào bên trong ảnh Kiểu giấu tin hay dùng nhất là một chuỗi các ký tự Chuỗi ký tự được nhúng trực tiếp lên ảnh mang những thông tin như tác giả, tiêu đề hay ngày tháng, hay thông tin bản quyền… Tuy nhiên sử dụng chuỗi ký tự lại bị một hạn chế, đó là mỗi ký tự biểu diễn bằng nhiều bit nếu như vì một lý do nào đó một bit bị lỗi thì sẽ làm sai cả ký tự và do đó chỉ cần một phép biến đổi đơn giản như phép biến đổi JPEG cũng có thể làm cho tin giấu sai lệch rất nhiều Chúng ta cũng có thể dùng ảnh
để giấu khi đó ta sẽ có ảnh trong ảnh Khi giải tin thì một số điểm ảnh sai nhưng hình tổng thể được giữ nguyên Trong kỹ thuật gần đây , người ta sử dụng giấu tin là một chuỗi bit sinh ngẫu nhiên theo một luật phân phối xác suất nào đó và sau đó sử dụng các lý thuyết xác suất thống kê để chứng thực giấu tin
Trong các loại giấu tin thì giấu tin ẩn và bền vững là loại được quan tâm nghiên cứu nhiều nhất vì ý nghĩa ứng dụng lớn của nó như đã nói ở phần trên Do vậy, hai tính chất quan trọng nhất của hệ giấu tin mà các nhà nghiên cứu đang cố gắn đạt được là thuộc tính ẩn và thuộc tính bền vững Nhưng đây là sự mấu chốt của
sự phức tạp vì hai thuộc tính này mâu thuẩn nhau Nếu như để bảo đảm thuộc tính
ẩn, giấu tin phải đựơc giấu trong những vị trí ít có ý nghĩa tri giác nhất, ít bị chú ý nhất thì để đảm bảo được thuộc tính bền vững, giấu tin phải chịu được những phép
xử lý ảnh phổ biến như dịch chuyển hay nén ảnh JPEG Ví dụ như phép nén JPEG loại bỏ ở ảnh những thông tin ít có tính tri giác nhất để làm giảm kích thước của ảnh
mà vẫn đảm bảo được chất lượng ảnh Khi đó thì những dữ liệu của tin giấu nằm trong vùng này sẽ bị mất đi hoặc bị biến đổi sai lệch hoàn toàn
Trang 7II MỘT SỐ KỸ THUẬT GIẤU TIN TRONG ẢNH
1 Giới thiệu ảnh Bitmap
Bitmap là định dạng ảnh do Microsoft đề xuất, có phần mở rộng là BMP và được sử dụng rộng rãi trong các ứng dụng trên Windows Dữ liệu ảnh bitmap là một
ma trận điểm ảnh, mỗi điểm ảnh được biểu diễn bởi một số bit, thông thường là 8 bit hoặc 24 bit
Các thuộc tính tiêu biểu của một tập tin ảnh BMP (cũng như file ảnh nói chung) là + Số bit trên mỗi điểm ảnh (bit per pixel), thường được ký hiệu bởi n Một ảnh BMP n-bit có 2n màu Giá trị n càng lớn thì ảnh càng có nhiều màu, và càng rõ nét hơn Giá trị tiêu biểu của n là 1 (ảnh đen trắng), 4 (ảnh 16 màu), 8 (ảnh 256 màu), 16 (ảnh 65536 màu) và 24 (ảnh 16 triệu màu) Ảnh BMP 24-bit có chất lượng hình ảnh trung thực nhất
+ Chiều cao của ảnh (height), cho bởi điểm ảnh (pixel)
+ Chiều rộng của ảnh (width), cho bởi điểm ảnh
Cấu trúc tập tin ảnh BMP bao gồm 4 phần
+ Phần đầu [Bitmap Header (14 bytes)]: giúp nhận dạng tập tin bitmap
+ Phần thông tin [Bitmap Information (40 bytes)]: lưu một số thông tin chi tiết giúp hiển thị ảnh
+ Phần bảng màu [Color Palette (4*x bytes)], x là số màu của ảnh: định nghĩa các màu sẽ được sử dụng trong ảnh
+ Phần dữ liệu (Bitmap Data): đây chính là nơi sẽ được dùng để giấu tin
Đặc điểm nổi bật nhất của định dạng BMP là tập tin hình ảnh thường không được nén bằng bất kỳ thuật toán nào Khi lưu ảnh, các điểm ảnh được ghi trực tiếp vào tập tin - một điểm ảnh sẽ được mô tả bởi một hay nhiều byte tùy thuộc vào giá trị n của ảnh Do đó, một hình ảnh lưu dưới dạng BMP thường có kích cỡ rất lớn, gấp nhiều lần so với các ảnh được nén (chẳng hạn GIF, JPEG hay PNG)
Định dạng BMP được hỗ trợ bởi hầu hết các phần mềm đồ họa chạy trên Windows, và cả một số ứng dụng chạy trên MS-DOS Ngay từ Windows 3.1, Microsoft đã cho ra đời phần mềm PaintBrush, một phần mềm hỗ trợ vẽ hình ảnh đơn giản và lưu hình ảnh được vẽ dưới dạng BMP 16 hay 256 màu Tuy nhiên, do kích thước tập tin ảnh BMP quá lớn, định dạng BMP không phù hợp để trao đổi hình ảnh qua mạng Internet (do hạn chế về tốc độ truyền dữ liệu) Do đó, các trang
Trang 8web thường sử dụng ảnh dạng GIF, JPEG hay PNG Các định dạng này hỗ trợ các thuật toán nén hình ảnh, vì vậy có thể giảm bớt kích cỡ của ảnh
2 Sơ đồ hệ thống giấu tin
2.1 Quá trình nhúng tin
là chiều dài của tin giấu và bức ảnh sau khi nhúng tin là I’ Hàm nhúng E nhận bức ảnh I và tin giấu W và nó sinh ra một bức ảnh mới I’ được gọi là ảnh đã được nhúng Bức ảnh trước khi được nhúng tin có thể được chuyển sang miền tần số hoặc
xử lý trực tiếp ở miền không gian ảnh Điều này phụ thuộc vào kỹ thuật giấu tin lựa chọn Ta có thể ký hiệu quá trình nhúng tin theo biểu thức toán học sau:
E(f, W) = I’ đối với kỹ thuật giấu tin trong miền tần số, trong đó f là các hệ số sau khi thực hiện biến đổi
Khi bức ảnh được đưa lên mạng hoặc đưa ra các kênh truyền thông công cộng thì có thể có các tấn công Kết quả của các tấn công này là bức ảnh J được sinh ra Minh hoạ hình 2.1
2.2 Quá trình giải và phát hiện tin
Trong quá trình phát hiện và giải tin có thể cần bức ảnh gốc I Hàm phát hiện tin nhận bức ảnh J (là bức ảnh đã được nhúng tin hoặc chưa nhúng tin hoặc đã bị thay đổi), là bức ảnh cần nhận lại tin W hoặc cần những khẳng định về nó (đã bị thay đổi chưa, ai là người sở hữu, có bị xuyên tạc hay không) Ta ký hiệu quá trình này bằng biểu thức toán học D(J, I) = W’ W’ sau đó có thể được so sánh bằng hàm C(W, W’)
Miền không gian hoặc miền biến đổi
Nhúng tin (E)
Các tấn công
Dãy tin W
Ảnh gốc I
Ảnh nhúng
Quá trình nhúng tin
Trang 9Theo sơ đồ hệ thống nhúng và giải tin, ta có một số nhận xét sau:
- Trước khi bức ảnh I được nhúng tin, nó được biến đổi sang miền tần số.Vì nếu thực hiện trên miền không gian ảnh thì tin nhúng có độ bền không cao, dễ bị phá
vỡ bởi các tấn công đơn giản
- Chuỗi tin được nhúng trong ảnh có thể là dãy các bit nhị phân Các phương pháp giấu tin thực hiện giấu từng bit của chuỗi tin vào từng khối nhỏ trong ảnh Thông thường chuỗi nhị phân này được sinh ra một cách ngẫu nhiên từ một khoá K
Để tăng tính ngẫu nhiên, người ta có sử dụng các kỹ thuật sinh chuỗi số ngẫu nhiên khác nhau Chuỗi nhị phân này cũng có thể nhận được từ cách chuyển một chuỗi ký
tự hay một số sang dạng nhị phân
- Trong quá trình nhúng tin, từng khối ảnh khác nhau có thể giấu lượng tin khác nhau Đối với các khối ảnh là biên thì lượng tin giấu vào đây phải ít để tránh làm thay đổi chất lượng ảnh Các khối có độ lệch giữa các giá trị thấp thì có thể giấu tin nhiều hơn
3 Các kỹ thuật giấu tin trong ảnh
3.1 Kỹ thuật chèn vào các bit ít quan trọng của một điểm ảnh (LSB)
+ Kỹ thuật:
Miền không gian hoặc miền biến đổi
Giải tin (E)
So sánh (C)
Dãy tin gốc W
Ảnh J
Tin nhúng thu được
Miền không gian hoặc miền biến đổi Ảnh gốc I
Quá trình giải và phát hiện tin
Trang 10Thông thường khi chuyển 1 bức ảnh tương tự sang định dạng số, người ta thường chọn 1 trong ba cách thể hiện màu sau:
những màu này là tổ hợp của ba màu cơ bản Red, Green, Blue có giá trị từ 0 đến 255
- 8 bit màu: Mỗi điểm ảnh có giá trị màu là 1 trong 256 màu được chọn từ bảng màu
- 8 bit xám: Mỗi điểm ảnh có giá trị là 1 trong 256 cấp độ xám
Các kỹ thuật giấu tin trong miền không gian được thực hiện bằng cách thay đổi trực tiếp giá trị màu hoặc cường độ sáng của các điểm ảnh được chọn Một kỹ thuật giấu tin được sử dụng trong không gian ảnh là kỹ thuật chèn vào các bit ít quan trọng nhất của các điểm ảnh Phương pháp giấu tin LSB thực hiện bằng cách thay đổi các bit ít quan trọng của mỗi màu trong 24 bit màu hoặc chèn vào các bit ít quan trọng của ảnh 8 bit
+ Tính bền vững:
Phương pháp chèn vào các bit ít quan trọng rất dễ bị tấn công bởi các phép biến đổi, thậm chí là những phép thông thường và ít quan trọng nhất
Các phương pháp nén mất mát thông tin, chẳng hạn như JPEG gần như phá vỡ các thông tin giấu Vấn đề là lỗ hổng của hệ thống tri giác của con người mà phương pháp chèn các bit ít quan trọng cố gắn khai thác, ít nhạy cảm với sự thay đổi nhỏ các giá trị màu của màu xanh hay độ chói, cũng giống với những gì các phương pháp nén mất mát thông tin dựa vào để giảm dung lượng bức ảnh
Các phép biến đổi trên ảnh cũng dễ dàng làm mất các thông tin bị nhúng Nói tóm lại, phương pháp chèn vào các bit ít quan trọng là phương pháp giấu tin ít bền vững
Do tính chất tỉ lệ dữ liệu giấu cao nên phương pháp này thích hợp cho việc giấu thông tin mật nơi mà tính bền vững ít được quan tâm
3.2 Kỹ thuật Patchwork
+ Kỹ thuật:
Patchwork là kỹ thuật được phát triển bởi Bender cùng các đồng sự của ông và được xuất bản trong tạp chí IBM system năm 1996