Site icon Nhạc lý căn bản – nhacly.com

Giới thiệu kỹ thuật giấu tin trong ảnh STEGANOGRAPHY – Security Daily

1. Giới thiệu

Ngày nay chúng ta thường nghe nói đến Steganography. Đó là một hình thức che dấu sự tồn tại của thông điệp. Khác với Cryptography thì Steganography ẩn đi các thông tin cần giữ bí mật trong các dữ liệu vô hại để đối phương không thể biết được sự hiện diện của thông điệp.

Thực chất Steganography đã được con người biết tới từ rất lâu rồi. Năm 440 trước công nguyên, người Herodotus (Người Hy Lạp xa xưa) đã cạo trọc đầu các nô lệ tin cậy rồi xăm lên đó các thông điệp và chờ tóc mọc lại. Mục đích của việc này là nhằm gửi tin đi trong cuộc chiến tranh giữa người Herodotus và Persians (Người Ba Tư).

Trong cuộc cách mạng của Mỹ, mực không màu cũng được sử dụng để trao đổi thông điệp giữa người Mỹ và người Anh.

Trong các cuộc chiến tranh thế giới, Steganography cũng được sử dụng. Người Đức đã sử dụng mực không màu để viết các dấu chấm nhỏ lên phía trên và dưới các chữ cái bằng cách thay đổi chiều cao các chữ trong đoạn văn bản. Trong chiến tranh thế giới thứ nhất, các tù nhân cũng sử dụng mã Morse để gửi thư về nhà bằng cách viết các dấu chấm và gạch ngang lên các chữ cái i,j,t,f.

Trong chiến tranh thế giới thứ 2, các gián điệp của Đức đã sử dụng đoạn văn bản sau:

“Apparently neutral’s protest is thoroughly discounted and ignored. Isman hard hit. Blockade issue affects for pretext embargo on by-products, ejecting suets and vegetable oils.”

Bằng cách đọc những chữ thứ 2 của các từ ta sẽ được đoạn thông điệp sau:

“Pershing sails for NY June 1”.

Ngày nay trên mạng có rất nhiều đoạn nhạc hay các bức hình tưởng chừng như bình thường nhưng nó lại chứa các thông tin hoàn toàn bí mật. Điều này càng làm cho Steganography càng trở nên phổ biến.

Dưới đây là hình ảnh minh họa cho điều này:
Ngày nay tất cả chúng ta thường nghe nói đến Steganography. Đó là một hình thức che dấu sự sống sót của thông điệp. Khác với Cryptography thì Steganography ẩn đi những thông tin cần giữ bí hiểm trong những tài liệu vô hại để đối phương không hề biết được sự hiện hữu của thông điệp. Thực chất Steganography đã được con người biết tới từ rất lâu rồi. Năm 440 trước công nguyên, người Herodotus ( Người Hy Lạp rất lâu rồi ) đã cạo trọc đầu những nô lệ an toàn và đáng tin cậy rồi xăm lên đó những thông điệp và chờ tóc mọc lại. Mục đích của việc này là nhằm mục đích gửi tin đi trong cuộc cuộc chiến tranh giữa người Herodotus và Persians ( Người Ba Tư ). Trong cuộc cách mạng của Mỹ, mực không màu cũng được sử dụng để trao đổi thông điệp giữa người Mỹ và người Anh. Trong những cuộc cuộc chiến tranh quốc tế, Steganography cũng được sử dụng. Người Đức đã sử dụng mực không màu để viết những dấu chấm nhỏ lên phía trên và dưới những vần âm bằng cách biến hóa chiều cao những chữ trong đoạn văn bản. Trong cuộc chiến tranh quốc tế thứ nhất, những tù nhân cũng sử dụng mã Morse để gửi thư về nhà bằng cách viết những dấu chấm và gạch ngang lên những vần âm i, j, t, f. Trong cuộc chiến tranh quốc tế thứ 2, những gián điệp của Đức đã sử dụng đoạn văn bản sau : Bằng cách đọc những chữ thứ 2 của những từ ta sẽ được đoạn thông điệp sau : Ngày nay trên mạng có rất nhiều đoạn nhạc hay những bức hình tưởng chừng như thông thường nhưng nó lại chứa những thông tin trọn vẹn bí hiểm. Điều này càng làm cho Steganography càng trở nên thông dụng. Dưới đây là hình ảnh minh họa cho điều này :

anh1

Bức ảnh trên có chứa một thông điệp mà nếu chỉ nhìn bằng mắt thường thì khó có thể nhận thấy được.

2. Quá trình mã hóa và giải mã của Stegranography

Tiếp theo ta sẽ cùng tìm hiểu về ẩn thông tin trong Steganography. Đầu tiên, thông điệp và bức ảnh ban đầu sẽ được đưa vào trong bộ mã hóa (encoder). Trong bộ mã hóa, một bộ giao thức sẽ được thực thi để nhúng thông điệp vào trong bức ảnh. Kiểu của giao thức sẽ phụ thuộc vào kiểu của thông điệp và cách ta nhúng. Ví dụ hình dưới đây sẽ cho ta thấy giao thức để ẩn thông điệp trong các bức ảnh.
Bức ảnh trên có chứa một thông điệp mà nếu chỉ nhìn bằng mắt thường thì khó hoàn toàn có thể nhận thấy được. Tiếp theo ta sẽ cùng khám phá về ẩn thông tin trong Steganography. Đầu tiên, thông điệp và bức ảnh bắt đầu sẽ được đưa vào trong bộ mã hóa ( encoder ). Trong bộ mã hóa, một bộ giao thức sẽ được thực thi để nhúng thông điệp vào trong bức ảnh. Kiểu của giao thức sẽ nhờ vào vào kiểu của thông điệp và cách ta nhúng. Ví dụ hình dưới đây sẽ cho ta thấy giao thức để ẩn thông điệp trong những bức ảnh .

Khóa là cần thiết trong quá trình giấu thông tin. Người gửi có thể dùng khóa chính để mã hóa và người nhận có thể dùng khóa công khai để giải mã. Điều này có thể giảm thiểu khả năng bên thứ 3 biết được thông điệp và giải mã.

3. Một số cơ chế trong Stegranography

3.1 Cơ chế ẩn thông điệp trong văn bản hoặc đoạn ký tự

Đối với các tài liệu giấy thì khi bạn copy, bạn có thể sẽ không vi phạm bản quyền vì chất lượng của các tài liệu này khác nhau. Tuy nhiên đối với các tài liệu trên máy tính thì các bản copy sẽ giống hệt các bản gốc nên bạn rất dễ vi phạm bản quyền. Sở dĩ có thể biết được là do trong các tài liệu này đã được chèn thêm vào một số đoạn text để đánh dấu. Những đoạn này là ẩn với người dùng và bằng mắt thường khó có thể nhận biết được. Chúng ta chỉ có thể giải mã nhờ máy tính thì mới có thể nhìn thấy được.
Khóa là thiết yếu trong quy trình giấu thông tin. Người gửi hoàn toàn có thể dùng khóa chính để mã hóa và người nhận hoàn toàn có thể dùng khóa công khai minh bạch để giải thuật. Điều này hoàn toàn có thể giảm thiểu năng lực bên thứ 3 biết được thông điệp và giải thuật. Đối với những tài liệu giấy thì khi bạn copy, bạn hoàn toàn có thể sẽ không vi phạm bản quyền vì chất lượng của những tài liệu này khác nhau. Tuy nhiên so với những tài liệu trên máy tính thì những bản copy sẽ giống hệt những bản gốc nên bạn rất dễ vi phạm bản quyền. Sở dĩ hoàn toàn có thể biết được là do trong những tài liệu này đã được chèn thêm vào 1 số ít đoạn text để lưu lại. Những đoạn này là ẩn với người dùng và bằng mắt thường khó hoàn toàn có thể phân biệt được. Chúng ta chỉ hoàn toàn có thể giải thuật nhờ máy tính thì mới hoàn toàn có thể nhìn thấy được .

Dưới đây  là một số cách để ẩn đoạn text trong văn bản.

3.1.1 DỊCH CHUYỂN VỊ TRÍ  DÒNG

Chúng ta sẽ dịch chuyển vị trí của các dòng một khoảng nhỏ khoảng 1/300 inch. Điều này rất khó có thể phát hiện bằng mắt thường vì khoảng cách thay đổi khá nhỏ. Chúng ta chỉ có thể phát hiện nhờ máy tính bằng cách đo khoảng cách giữa các dòng. Trong các khoảng trống đó ta có thể chèn vào các bit 0 hoặc 1, do đó trong toàn bộ văn bản, ta có thể ẩn đi một lượng thông tin khá lớn.

3.1.2 DỊCH CHUYỂN VỊ TRÍ TỪ

Cơ chế này cũng giống như dịch chuyển vị trí dòng, nhưng ta sẽ dịch chuyển vị trí các từ. Sau đó tùy vào khoảng trống đó nằm bên trái hay bên phải từ mà ta quy định nó là bit 0 hay bit 1. Dịch trái sẽ là bit 0 còn dịch phải sẽ là bit 1.

Dưới đây là một ví dụ:
Dưới đây là một số ít cách để ẩn đoạn text trong văn bản. 3.1.1 DỊCH CHUYỂN VỊ TRÍ DÒNG Chúng ta sẽ di dời vị trí của những dòng một khoảng chừng nhỏ khoảng chừng 1/300 inch. Điều này rất khó hoàn toàn có thể phát hiện bằng mắt thường vì khoảng cách đổi khác khá nhỏ. Chúng ta chỉ hoàn toàn có thể phát hiện nhờ máy tính bằng cách đo khoảng cách giữa những dòng. Trong những khoảng trống đó ta hoàn toàn có thể chèn vào những bit 0 hoặc 1, do đó trong hàng loạt văn bản, ta hoàn toàn có thể ẩn đi một lượng thông tin khá lớn. 3.1.2 DỊCH CHUYỂN VỊ TRÍ TỪ Cơ chế này cũng giống như di dời vị trí dòng, nhưng ta sẽ di dời vị trí những từ. Sau đó tùy vào khoảng chừng trống đó nằm bên trái hay bên phải từ mà ta lao lý nó là bit 0 hay bit 1. Dịch trái sẽ là bit 0 còn dịch phải sẽ là bit 1. Dưới đây là một ví dụ :

Trong ví dụ trên, dòng thứ nhất các chữ có vị trí không bị thay đổi. Còn dòng thứ 2 các chữ bị dịch trái hoặc phải để mã hóa cho chuỗi 01000001(65-A). Nếu không so sánh với chuỗi ban đầu thì ta khó có thể nhận biết được chuỗi đó có bị thay đổi hay không.

3.1.3 CHÈN VÀO KHOẢNG TRẮNG CUỐI MỖI DÒNG

Một cách khác để ẩn đoạn text là sử dụng các khoảng trắng. Bằng cách vận dụng khéo léo các khoảng trắng, ta có thể lưu trữ được một lượng lớn các bit. Các khoảng trắng ở cuối mỗi dòng có thể bị bỏ qua và không hiện lên các bởi các ứng dụng đọc văn bản. Trong toàn bộ văn bản, ta có thể có đủ không gian để lưu trữ chuỗi bí mật. SNOW là một chương trình sử dụng cơ chế này. Bạn có thể tham khảo theo link sau:  Trong ví dụ trên, dòng thứ nhất những chữ có vị trí không bị biến hóa. Còn dòng thứ 2 những chữ bị dịch trái hoặc phải để mã hóa cho chuỗi 01000001 ( 65 – A ). Nếu không so sánh với chuỗi khởi đầu thì ta khó hoàn toàn có thể phân biệt được chuỗi đó có bị biến hóa hay không. 3.1.3 CHÈN VÀO KHOẢNG TRẮNG CUỐI MỖI DÒNG Một cách khác để ẩn đoạn text là sử dụng những khoảng chừng trắng. Bằng cách vận dụng khôn khéo những khoảng chừng trắng, ta hoàn toàn có thể tàng trữ được một lượng lớn những bit. Các khoảng chừng trắng ở cuối mỗi dòng hoàn toàn có thể bị bỏ lỡ và không hiện lên những bởi những ứng dụng đọc văn bản. Trong hàng loạt văn bản, ta hoàn toàn có thể có đủ khoảng trống để tàng trữ chuỗi bí hiểm. SNOW là một chương trình sử dụng chính sách này. Bạn hoàn toàn có thể tìm hiểu thêm theo link sau : http://www.darkside.com.au/snow/index.html. 3.1.4 ẨN THÔNG ĐIỆP TRONG NỘI DUNG CỦA CÁC ĐOẠN VĂN BẢN KHÁC Một trong những cách khác để ẩn thông điệp là ta đổi khác cấu trúc của văn bản khởi đầu sao cho nghĩa không bị đổi khác để mà ta hoàn toàn có thể tàng trữ được thông điệp. TextHide là một chương trình sử dụng chính sách này. Bạn hoàn toàn có thể truy nhập vào link sau và khám phá thêm : http://www.compris.com/TextHide/en/. Ngoài ra ta hoàn toàn có thể ẩn thông điệp trong những đoạn email spam. Điểu này hoàn toàn có thể triển khai bởi chương trình SpamMimic theo link sau : http://www.spammimic.com. Ở đây mình sẽ thêm chuỗi “ Hi ! How are you ? ” vào email spam :

Khi đó ta được email sau :

Dear Friend, Especially for you – this breath-taking
news ! If you no longer wish to receive our publications
simply reply with a Subject: of “REMOVE” and you will
immediately be removed from our database. This mail
is being sent in compliance with Senate bill 2116 ,
Title 8 ; Section 309. This is not multi-level marketing
. Why work for somebody else when you can become rich
within 65 weeks ! Have you ever noticed how many people
you know are on the Internet & society seems to be
moving faster and faster. Well, now is your chance
to capitalize on this ! We will help you turn your
business into an E-BUSINESS and decrease perceived
waiting time by 150% ! You are guaranteed to succeed
because we take all the risk ! But don’t believe us
. Mr Ames of Iowa tried us and says “Now I’m rich,
Rich, RICH”. This offer is 100% legal ! We beseech
you – act now ! Sign up a friend and you get half off
! God Bless ! Dear Friend ; This letter was specially
selected to be sent to you. This is a one time mailing
there is no need to request removal if you won’t want
any more. This mail is being sent in compliance with
Senate bill 1620, Title 9, Section 302. THIS IS
NOT MULTI-LEVEL MARKETING. Why work for somebody else
when you can become rich in 41 DAYS. Have you ever
noticed people love convenience plus most everyone
has a cellphone. Well, now is your chance to capitalize
on this. We will help you deliver goods right to the
customer’s doorstep & turn your business into an E-BUSINESS
. The best thing about our system is that it is absolutely
risk free for you ! But don’t believe us. Ms Anderson
of Hawaii tried us and says “I was skeptical but it
worked for me” ! We are licensed to operate in all
states ! We BESEECH you – act now ! Sign up a friend
and you get half off ! God Bless .

3.2 Cơ chế ẩn thông điệp trong tệp tin âm thanh

Định dạng MP3 là định dạng phổ biến của các file nhạc.Do đó ta có thể sử dụng chúng để ẩn các đoạn text trong đó.Có nhiều công cụ có thể giúp bạn ẩn thông tin trong file .MP3 và  MP3Stego là một chương trình trong số đó. Dưới đây là giao diện của chương trình này:
Định dạng MP3 là định dạng phổ cập của những file nhạc. Do đó ta hoàn toàn có thể sử dụng chúng để ẩn những đoạn text trong đó. Có nhiều công cụ hoàn toàn có thể giúp bạn ẩn thông tin trong file. MP3 và MP3Stego là một chương trình trong số đó. Dưới đây là giao diện của chương trình này :

Khi ẩn thông điệp bạn cần phải chọn thông điệp là file có định dạng .txt và file âm thanh có định dạng .wav. Bạn có thể dùng phần mềm để chuyển đổi file âm thanh từ định dạng .mp3 về .wav.
Khi ẩn thông điệp bạn cần phải chọn thông điệp là file có định dạng. txt và file âm thanh có định dạng. wav. Bạn hoàn toàn có thể dùng ứng dụng để quy đổi file âm thanh từ định dạng. mp3 về. wav .

Còn đây là giao diện khi bạn muốn giải thuật :

Bạn cần chọn file .mp3 đã bị ẩn thông điệp ở trong rồi click vào button “DECODE FILE”. Khi đó file .txt của bạn sẽ được tách ra khỏi file nhạc .mp3.

Trong phần trên mình đã trình bày với các bạn tổng quan về SteganoGraphy và một số cơ chế cơ bản để ẩn thông điệp trong các file văn bản, hình ảnh, âm thanh. Trong phần sau mình sẽ trình bày kỹ hơn về cơ chế ẩn thông điệp trong file ảnh.

Tài liệu tham khảo:

  1. Steganography and Digital Watermarking
  2. https://en.wikipedia.org/wiki/Steganography
  3. Một số tài liệu khác trên Internet.

Bạn cần chọn file. mp3 đã bị ẩn thông điệp ở trong rồi click vào button “ DECODE FILE ”. Khi đó file. txt của bạn sẽ được tách ra khỏi file nhạc. mp3. Trong phần trên mình đã trình diễn với những bạn tổng quan về SteganoGraphy và 1 số ít chính sách cơ bản để ẩn thông điệp trong những file văn bản, hình ảnh, âm thanh. Trong phần sau mình sẽ trình diễn kỹ hơn về chính sách ẩn thông điệp trong file ảnh .

Exit mobile version