2009-12-09 29 views
6

Một nơi nào đó tôi phát hiện ra steganography .. cách lưu trữ hoặc ẩn thông tin trong một thông tin khác .. đôi khi hình ảnh nhất định cũng được sử dụng để ẩn thông tin .. Tôi có thể nhận được một ví dụ hoặc bất kỳ điều gì hơn nữa để biết thêm về cách này được thực hiện ... hoặc nếu ở tất cả là nó có thể sử dụng điều này trong phpLàm thế nào là steganography thực hiện trong php

+0

Đó là một câu hỏi rất rộng, và không phân loại tốt. Vui lòng thêm các thẻ thích hợp (PHP, v.v.). – Kenaniah

+0

Bạn có thể làm rõ lý do tại sao bạn muốn ẩn thông tin trong hình ảnh của mình. Nếu bạn muốn bảo vệ hình ảnh của mình thì bạn sẽ phải sử dụng các kỹ thuật có phần mạnh mẽ để chuyển đổi hình ảnh. Rất nhiều kỹ thuật stve ngây thơ có thể dễ dàng bị phá vỡ với các biến đổi hình ảnh cơ bản. –

+0

Trong thực tế, bạn không nói rõ rằng bạn muốn ẩn thông tin trong hình ảnh. Tất cả chúng ta đều giả định đó là trường hợp cho đến nay. –

Trả lời

6

Nói chung, nếu bạn nói về steganography, sau đó về cơ bản bạn đang nhồi thông tin vào nooks và crannies của tập tin hình ảnh. Bạn có thể sử dụng gần như bất kỳ thư viện hình ảnh nào ở đó miễn là thư viện hình ảnh không xác thực tệp hình ảnh đúng với lược đồ. Bạn có thể sử dụng gần như bất kỳ ngôn ngữ lập trình nào bạn ưa thích.

Có rất nhiều kỹ thuật. Dưới đây là một số chương trình dễ sử dụng.

  • Sử dụng định dạng hình ảnh lưu trữ hình ảnh theo khối. Bạn có thể di chuyển các khối để cho phép các khoảng trống trong tệp. Bạn sau đó có thể ẩn các chuỗi thông tin trong khoảng trống.
  • Chuyển đổi hình ảnh sang hình ảnh được lập chỉ mục . Khai báo một pallete lớn hơn số lượng màu sắc. Bây giờ, bạn có thể ẩn thông tin bổ sung trong các màu nhạt không được sử dụng trong hình ảnh.
  • Nếu bạn đang sử dụng định dạng hình ảnh có lớp, bạn có thể khai báo lớp trong đó kênh alpha là tối đa. Điều này khiến cho lớp là hoàn toàn trong suốt. Bạn có thể sử dụng kênh màu khác để ẩn dữ liệu của mình.

Có rất nhiều kỹ thuật khác. Hãy nhớ sử dụng lượng nén lớn và dữ liệu gây hiểu nhầm ngẫu nhiên để làm cho tệp hình ảnh trông hợp pháp.

+0

stenography = viết tắt, bạn có thể chỉnh sửa câu trả lời =) – Kurt

+0

cảm ơn :). Kiểm tra chính tả trình duyệt của tôi không có steganography trong từ điển (opera 10 tiếng Anh). Trả lời sửa lỗi –

3

Một cách phổ biến để làm steganography:

Hãy suy nghĩ về một 1024 x 768, 24-bit màu (ví dụ 8 bit màu đỏ, 8 bit của màu vàng, 8 bit màu xanh) hình ảnh. Bây giờ, bit ít quan trọng nhất của màu sắc trong hình ảnh không quan trọng lắm. Do đó, người ta có thể ẩn ba bit thông tin trong mỗi pixel.

Điều đó làm cho 1024 * 768 * 3/8 hoặc 294.912 byte thông tin có thể bị ẩn trong một hình ảnh lớn mà không làm giảm ảnh nhiều.

+1

24 bit bitmap màu không phải là rất phổ biến trên web mặc dù. –

+0

@Tom. PNG sử dụng nén không mất dữ liệu, vì vậy tôi giả sử PNG 24 bit, không phổ biến, có thể được sử dụng theo cách này? – Atli

+0

Đúng vậy. Cảm ơn bạn đã làm rõ. Điều này sẽ đúng với bất kỳ bitmap nén không bị mất nào. –

4

Here là một lớp học từ lớp php.org cho

Ẩn dữ liệu được mã hóa trong hình ảnh sử dụng steganography

Một số liên kết hữu ích từ Steganography page at wikipedia

Tại thêm một bản demo & mã nguồn cuối cùng trên here

Các vấn đề liên quan