Các tấn công và biện pháp khắc phục của kỹ thuật giấu tin

Một phần của tài liệu Bảo mật thông tin trên cơ sở giấu tin trong ảnh (Trang 66)

TIN

Một tấn công trên hệ thống giấu tin là việc đối phương tìm cách khôi phục lại thông tin hoặc phá huỷ thông tin trong môi trường mang tin. Thông thường đối phương sẽ kiểm tra tính bền vững và an toàn của toàn bộ hệ thống giấu tin, từ kỹ thuật nhúng dữ liệu cho tới kiến trúc của toàn bộ hệ thống. Tính bền vững và an toàn của kỹ thuật giấu tin thể hiện thông qua việc đối phương không thể phát hiện ra sự tổn tại của thông tin trong môi trường hoặc là có một sự không dứt khoát trong việc đưa ra quyết định. Một tấn công có hiệu quả không cần thiết phải loại bỏ thông tin ra khỏi môi trường mà chỉ cần đơn giản là gây ra sự mất đồng bộ.

Có một số các tấn công cũng như các biện pháp phòng chống được đăng trên các tài liệu r6,1 6 J 9 Ị. Hầu hết các tấn công tập trung vào các kỹ thuật giấu tin và các kiểu watermark cụ thể vì đối phương có đầy đủ hiểu biết về các thuật toán watermark. Các nhà phân tích có thể tiến hành các thử nghiệm trên nhiều loại mẫu (có watermark và không có watermark) và có thể quan sát kết quả trong cùng thời gian. Chương này sẽ giới thiệu một kiểu tấn công và các biện pháp phòng chống, sau

đó sẽ trình bày cụ thể một tấn công điển hình đó là tấn công "thay th ế khối" (block replacement attack).

3.5.1 Các tấn công dựa vào hệ thông thị giác (Visual Attacks)

Có hai hình thức tấn công dựa vào đặc điểm hệ thống thị giác của con người, đó là các tấn công dựa vào miền bit LSB (H 3.4(a), H3.4(b)) và tấn công thông qua các phép lọc ảnh (H 3.5).

3.5.2 Các phép xử lý sỏ

Các tấn công loại này gồm: phép xử lý số trên bảng màu hay thao tác sửa đổi môi trường mang tin

3.5.3 Các phép phân tích thống kê

Ở các tấn công này, người ta sử dụng các thao tác toán học đối với môi trường có thể phát hiện sự tồn tại của thông tin ẩn trong môi trường

H 3.4(b) Miền bit LSB của ảnh gốc [6]

H 3.5 Bằng cách áp dụng phép lọc vào miền bít LSB của ảnh cho thấy có thông tin giấu [6]

3.5.4 Kiểu tấn công "thay thê khối " (block replacement attack) trên

các watermark bền vững

3.5.4.1 Giới thiệu phương pháp tấn công

Đây là một kiểu tấn công có thể loại bỏ các watermark ẩn bền vững, ý tưởng ở đây là thay thế một khối ảnh bởi một khối khác gần đó. ý tưởng này xuất phát từ một thuật toán được đưa ra để che lỗi, chẳng hạn để phục hổi lại các khối bị hỏng. Các khối bao quanh khối bị hỏng được sử dụng để suy ra thông tin về đường viền

sau đó đưa ra một phép nội suy về các khối bị mất. Hình H 3.6 minh hoạ cho ý tưởng của thuật toán này.

(H 3.6 Minh hoạ phép nội suy tìm viền cho các khối bị hỏng [19])

Trong tấn công kiểu "thay thế khối bit": các khối thuộc viền của ảnh được giữ nguyên, tất cả các khối còn lại được thay thể bởi bản nội suy của chúng. Các phép thay thể được tiến hành dựa trên cơ sở từng khối. Hình 3.7 minh hoạ các phép thay thế này: trước tiên một ảnh được chia thành các khối 4 x 4 hoặc 8 x 8 . Với mỗi khối loại trừ các khối trên viền ảnh sẽ có một phép nội suy từ các khối lân cận. Khối ban đầu sẽ được thay thể bởi kết quả thu được từ phép nội suy. Việc thay thế được thực hiện có lựa chọn, chẳng hạn khối gốc sẽ được giữ lại nếu trong kết quả nội suy có nhiều thay đổi.

K h ố i c á n q u a n tâm

(H 3.7 Minh hoạ các phép thay thế khối sử dụng phép nội suy viền [191)

Chúng ta có thể thấy việc loại bỏ từng khối một như vậy về cơ bản loại bỏ được các watermark nhúng trong mỗi khối.

Tấn công nêu trên có thể được coi như một phép lọc thông thấp phi tuyến. Các thông tin nhúng trong một vùng cục bộ sẽ bị mất bằng một phép loại bỏ đi các điểm thuộc vùng đó thậm chí ngay cả việc nhúng không được thực hiện trong vùng điểm (ví dụ nhúng trong các khối nằm trong miền điều chế cosin rời rạc). Tấn công nêu trên có thể mở rộng ra nhiều cách giải dựa trên cấu trúc của kỹ thuật watermark.

Có một số cách để hạn chế hiệu quả của tấn công nêu trên. Việc thay thế khối được dựa trên một giả thiết là các thông tin cục bộ có thể được dự đoán từ các khối lân cận. Điều này đúng đối với các vùng "trơn" và các vùng có viền mở rộng qua một số khối khác. Tuy nhiên có một đặc điểm nhỏ là một khối đơn thì không thể dự đoán theo kiểu như vậy được. Điều này gợi ý việc sử dụng các khối rộng cho việc nhúng để chống lại kiểu tấn công nêu trên. Ví dụ nhúng một watermark trong một khối 16 X 16 thuộc miền DTC thì sẽ khó tấn công hơn nhiều so với việc nhúng watermark đó trong một khối 8 x 8 thuộc miền DTC. Thậm chí tấn công tỏ ra không có hiệu quả đối với các ảnh có độ phân giải thấp.

Một số thực nghiệm [19] cho thấy tấn công trên không có hiệu quả đối với kỹ thuật nhúng sử dụng kỹ thuật trải phổ toàn bộ ảnh trong một miền cosin rời rạc.

Một biện pháp khắc phục khác được đưa ra trên cơ sở thêm các dư thừa vào các watermark, ví dụ nhúng cùng một watermark vào một nhóm 4 khối. Điều này cho phép watermark bị mất có thể được phục hổi một phần từ các khối lân cận. Tuy nhiên watermark hay dữ liệu được nhúng theo cách tiếp cận này cũng có thể không có khả năng phục hổi.

PHỤ LỤC

A. CHƯƠNG TRÌNH GIẤU TIN TRONG ẢNH 1. Giới thiệu

Mục đích của chương trình: chương trình được xây dựng để mô phỏng việc giấu tin trong ảnh đa cấp xám bằng thuật toán giấu tin trong trong miền bít LSB.

Chương trình gồm hai modul chức năng chính là : module giấu thông tin và modul khôi phục thông tin. Quá trình giấu tin sử dụng một dãy giả ngẫu nhiên để rải các bít thông tin vào miền LSB của ảnh. Quá trình khôi phục thông tin sẽ sử dụng lại dãy giả ngẫu nhiên này để lấy thông tin từ miền LSB. Thông tin cần giấu có thể được mã hoá trước khi nhúng vào ảnh thông qua một thuật toán mã hoán vị đơn giản. Trong trường hợp khôi phục thông tin thì sau khi thông tin được tách ra khỏi ảnh sẽ được áp dụng lại thuật toán mã hoá trên để giải mã.

Ngoài ra chương trình bổ xung một số chức năng khác hỗ trợ cho việc kiểm tra kết quả giấu tin. (adsbygoogle = window.adsbygoogle || []).push({});

2. Sơ đổ th u ậ t toán của các chức năng chính

2.1 Sơ đồ thuật toán thực hiện giấu 1 byte thông tin

color = màu cua điêm anh

colõrlmấsK == color jp&fk And &H I

L a y r a đ íê m anil c ó g iấ u tin tiế p th e o

Value = Value Or byte_mask

r

B ỹ te_ m asỉc’: * '2

3.1 Hàm sinh một sô'nguyên từ một chuối ký tự

Public Function GenPassword(ByVal password As String) As Long Dim Value As Long

Dim ch As Long Dim shiftl As Long Dim shift2 As Long Dim i As Integer Dim str_len As Integer

shiftl = 3 shift2 = 17

s t r j e n = Len(password)

For i = 1 To str_len

ch = Asc(Mid$(password, i, 1)) Value = Value Xor (ch * 2 A shiftl) Value = Value Xor (ch * 2 A shift2)

shift 1 = (shift 1 + 7) Mod 19 shift2 = (shift2 + 13) Mod 23 Next i

GenPassword = Value End Function

3.2 Thú tục lấy một điểm ảnh chưa được giấu thông tin

P u b lic S u b GetPos(ByVal used_positions As Collection, ByVal iWidth As Integer,

ByVal iHeight As Integer, ByRef r As Integer, ByRef c As Integer, ByRef pixel As Integer)

Dim position_code As String On Error Resume Next Do

r = Int(Rnd * iWidth) c = Int(Rnd * iHeight)

pixel = Int(Rnd * 3 )' Lấy byte bất kỳ trong 3 byte biểu diễn điểm ảnh position_code = "(" & r & & c & & pixel & ")"

used_positions.Add position_code, position_code

If Err.Number = 0 Then Exit Do Err. Clear

Loop End Sub

3.3 Thủ tục tách các byte biểu diễn màu của một điểm ảnh

P u b lic S u b UnRGB(ByVal color As OLE_COLOR, ByRef r As Byte, ByRef g As Byte, ByRef b As Byte)

r = color And &HFF&

g = (color And & H FF 00& )\& H 100& b = (color And & H F F 0 0 0 0 )\& H 10000 End Sub (adsbygoogle = window.adsbygoogle || []).push({});

Public Sub EncodeByte(ByVal pic As PictureBox, ByVal Value As Byte, ByVal u se d p o sitio n s As Collection, ByVal iWidth As Integer, ByVal iHeight As Integer) On Error GoTo ErrSub

Dim i As Integer

Dim byte_mask As Integer Dim r As Integer

Dim c As Integer Dim pixel As Integer Dim clrr As Byte Dim clrg As Byte Dim clrb As Byte

Dim color_mask As Integer

byte_inask = 1 For i = 1 To 8

' Lấy một điểm ảnh bất kỳ chưa được giấu tin GetPos used_positions, iWidth, iHeight, r, c, pixel

' Tách các màu của điểm ảnh

ƯnRGB pic.Point(r, c), clrr, clrg, clrb

' Kiểm tra xem có cần thay đổi giá trị của bit LSB hiện tại không If Value And byte_mask Then

color_ma.sk = 1 Else

color_ma.sk = 0

End If

' Thay màu mới Select Case pixel Case 0

clrr = (clrr And &HFE) Or color_mask Case 1

clrg = (clrg And &HFE) Or color_mask Case 2

clrb = (clrb And &HFE) Or color_mask End Select

' Cập nhạt màu mới vào ảnh

pic.PSet (r, c), RGB(clrr, clrg, clrb) byte_mask = byte_mask * 2

Next i

ErrSub:

If Err.Number <> 0 Then

MsgBox (Err.Number & vbCrLf & Err.Description), vbCritical + vbOKOnly, "Error)"

Exit Sub End If End Sub

Public F u n ctio n DecodeByte(ByVal pic As PictureBox, ByVal usecLpositions As Collection, ByVal iWidth As Integer, ByVal iHeight As Integer) As Byte

On Error GoTo ErrSub Dim Value As Integer Dim i As Integer

Dim byte_mask As Integer Dim r As Integer

Dim c As Integer Dim pixel As Integer Dim clrr As Byte Dim clrg As Byte Dim clrb As Byte

Dim color_mask As Integer

byte_mask = 1 For i = 1 To 8 (adsbygoogle = window.adsbygoogle || []).push({});

' Lấy một điểm giấu tin thứ nhất

GetPos used_positions, iWidth, iHeight, r, c, pixel

' Tách các byte biểu diễn màu của điểm ảnh UnRGB pic.Point(r, c), clrr, clrg, clrb

' Thay màu mới Select Case pixel Case 0

color_mask = (clrr And &H1)

color_mask = (clrg And &H1) Case 2

color_mask = (clrb And &H1) End Select

If color_mask Then

Value = Value Or byte_mask End If byte__mask = byte_mask * 2 Next i DecodeByte = CByte(Value) ErrSub: If Err.Number <> 0 Then

MsgBox (Err.Number & vbCrLf & Err.Description), vbCritical + vbOKOnly, "Error)"

End If

End Function Case 1

B. CÁC KẾT QUẢ THƯ Đ ư ợ c TỪCHƯƠNG TRÌNH 1. G iấu văn bản tro n g ảnh

Ảnh môi trường:

• 8 bit - Grayscale • Kích thước 600 X 450

Thông tin giấu:

• Kích thước: 421 bytes • Nội dung:

Đây là một kiểu tấn công có thể loại bó các watermark ẩn bền vững, ý tưởng ở đây là thay thế một khối ảnh bởi một khối khác gần đó. ý tưởng này xuất phát từ một thuật toán được đưa ra để che lỗi, chẳng hạn để phục hồi lạ i các khối bị hỏng. Các khối bao quanh khối bị hỏng được sử dụng để suy ra thông tin về đường viền sau đó đưa ra một phép nội suy về các khối bị mất. Hình H 3.6 minh hoạ cho ý tưởng của thuật toán này.

Ảnh môi trường: • 8 bit - Grayscale • Kích thước 700 X 525 Ảnh thông tin: • 8 bit - Grayscale • Kích thước 200 X 150 2 . G iấ u ản h tro n g ản h

(H la ảnh môi trường trước khi giấu thông tin)

V

KẾT LUẬN CHUNG

Luận văn tốt nghiệp đã thực hiện nhiệm vụ nghiên cứu phương pháp bảo mật thông tin trên cơ sở giấu tin trong ảnh. Luận văn đã đạt được các kết quả nghiên cứu chính như sau:

1. Giới thiệu tổng quan bài toán bảo mật thông tin, từ đó xác định vai trò quan trọng của kỹ thuật giấu tin trong lĩnh vực bảo mật thông tin. Các nội dung khái quát vể kỹ thuật giấu tin trong môi trường multimedia và các phân ỉoại của kỹ thuật giấu tin đã được trình bày.

2. Nghiên cứu một số vấn đề có liên quan tới kỹ thuật giấu tin trong ảnh như các đặc điểm kỹ thuật của một loại môi trường mang tin thông dụng là các file hình ảnh từ đó phân loại và đánh giá các nhóm phương pháp giấu tin trong ảnh để chọn ra một phương pháp đơn giản và phổ thông, đó là kỹ thuật giấu tin LSB.

3. Các thuật toán giấu tin trong môi trường ảnh đã được nghiên cứu, bao gồm các thuật toán xử lý trên ảnh đen trắng (thuật toán giấu tin trong khối bít), ảnh đa cấp xám và ảnh màu (thuật toán giấu tin LSB). Thuật toán LSB đã được phân tích một cách chi tiết dưới góc độ thống kê. Trình bày một số tấn công và biện pháp khắc phục đối với kỹ thuật giấu tin.

4. Đưa ra một chương trình thực hiện chức năng giấu tin để mô phỏng kỹ thuật giấu tin trong ảnh đa cấp xám.

Kết quả của luận văn có thể được sử dụng để phát triển các vấn đề về lý thuyết của kỹ thuật giấu tin trong ảnh, nếu được quan tâm và đầu tư về thời gian và công sức thì có thể phát triển chương trình mô phỏng trong luận văn thành một ứng dụng thực tiễn nhằm thực hiện các chức năng xử lý của kỹ thuật giấu tin.

[1] Eugene T. Lin and Edward J. Delp (1998), "A Review o f Data Hiding in D ig ita l Images", School of Electical and Computer Engineering Purdue University West Lafayette, Indiana, pp. 15-39

[2] Chandramouli Rajaratnam and Nasir Memon (1998), "Analysis o f LSB Based Image Steganography Techniques", Stevens Institute of Technology - Electrical and Computer Engineering Hoboken, NJ 07030, pp. 1-4 (adsbygoogle = window.adsbygoogle || []).push({});

[3] Jessica Fridrich, Miroslav Goljan and RuiDu, "Reliable Detection o f LSB Steganography in C olor and Grayscale Images", SUNY Binghamton Department of EE, pp. 1-4

[4] Ross J.Anderson and Fabien A.p. Petitcolas (1998), "On The Lim its o f Steganography", IEEE Journal of Selected Areas in Communications, pp. 474-481

[5] Kamran Ahsan and Deepa Kundur (1999), "Practical Data H iding in TC P/IP", University of Toronto, Ontario Canada, pp. 1-8

[6] Ben Lee (2002), "Steganography", A PowerPoint Presentation about Technical of Data Hiding, ECE 478, pp. 1-10

[7] Gustavus J. Simmons (1984), "Prisoners' Problem and the Subliminal Channel", CRY PT083 - Advanced in Cryptology, pp. 51-67

[8] Fabien A.p. Petitcolas, Ross J.Anderson and Markus G.Kuhn (1998),

"Attacks on Copyright M arking Systems” , Second workshop on information hiding, in vol. 1525 of Lecture, Notes in Computer Science, Portland, Oregon, USA 14-17, pp. 218-238

[9] Neil F. Johnson, Sushil Jajodia (2001), "Steganalysis o f Images Created Using Current Steganography Software", Center for Secure Information Systems, George Mason University, Fairfax, Virgina 22030- 4444, pp. 20-28

[10] M. Swanson, M. Kobayashi and A. Tewfik (1998), "Multimedia Data Embedding and Watermarking Technologies", Proceeding of the IEEE, Vol. 86, No.6, pp. 1064-1087

[11] R. Wolfgang, c. Podilchuk and E. Delp (1999), "Perceptual Watermarks fo r Images and Video", Proceeding of the IEEE. (website: http://www.ece.purdue.edu/~ace)

[12] N. Johnson and s. Jajodia (1998), "Stenalysis o f Images Created Using Current Steganography Software", Lecture Notes in Computer Science, Vol.

1525, pp. 273-289

[13] I. Cox, J. Kilian, T. Leghton and T. Shamoon (1997), "Secure Spread Spectrum Watermarking fo r M ultim edia” , IEEE Transaction On Image Processing, Vol. 6, No. 12, pp. 1673-1687

[14] I. Cox and M. Miller (1997), "A Review o f Watermarking and the Importance o f Perceptual Modeling", Proceeding of the SPIE/IST&T Conference on Human Vision and Electronic Imaging II, Vol. 3016, San Jose, CA, pp. 92-99

[16 [17 [18 [19 [20 [21 [22 [23 [15 [51] [52] [53] [54] [55] [56] [57] [58] [59] [S10]

G. Reddy, M. Krishna and R. Babu (2002), "Steganographic Anim ation", A Powerpoint Presentation about Steganographic Animation GIF Images

J. Davidson (2002), "Information H iding: The New D ig ita l Age", A Powerpoint Presentation about Information Hiding.

Yu-Yuan Chen, Hsiang-Kuang Pan and Yu-Chee Tseng (2000), "A Secure Data Hiding Scheme f o r Two-Color Images", IEEE Symp. on Computers and Communications, pp. 1-10

Min Wu, Edward Tang and Bede Liu (2000), "Data Hiding in D ig ita l Binary Image", Electrical Engineering Dept., Princeton Univ., Princeton, NJ 08544, pp. 1-4

Min Wu (2001), "Multimedia Data Hiding", Princeton University, pp. 190- 222

W. Bender, D. Gruhl, N. Morimoto and A. Lu (1996), "Techniques f o r Data Hiding", IBM System Journal, Vol. 35, No. 3&4, pp. 1-35

W. Bender, W. Butera, D. Gruhl, R. Hwang, F. J. Paiz and S. Pogreb (1996),

"Application fo r Data H iding", IBM System Journal, pp. 1-25

Donovan Artz (2001), "D igital Steganography: Hiding Data within D ata” ,

Spotlight Journal, Los Alamos National Laboratory, pp. 1-6

H. E. Burdick (1997), "D igital Imaging: Theory and Applications", McGraw- Hill, pp. 34-55

MÔT SÔ PHÂN MÊM VÀ WEBSITE THAM KHÀO

UnZign software: http://altern.org/watermark

Stirmark software: http://www.cl.cam.ac.uk/~fapp2/watermarking/stirmark http://members.tripod.com/steganography/stego.html http://www.cl.cam.ac.uk/~fapp2/steganography/ http://www.iks-jena.de/mitarb/lutz/security/stegano.html http://www.dcs.ed.ac.uk/home/mxr/gfx/2d-hi.html http://www.atalasoft.com/png.asp http://www.boutell.com/faq/oldfaq/jpeggif.htm http://www.soapplab.auckland.ac.nz/info/formats/gif.htm http://www.candit.leeds.ac.uk/Topics/Images/Gif.htm

(adsbygoogle = window.adsbygoogle || []).push({});

Một phần của tài liệu Bảo mật thông tin trên cơ sở giấu tin trong ảnh (Trang 66)