PHP - чтение скрытого текста из bmp - пример программы на PHP
Primary tabs
более подробные пояснения к тому, что происходит здесь = http://fkn.ktu10.com/?q=node/4317
скрывался текст таким образом
А вот пример чтения из картинки:
<?php include 'lib.php'; $offset = 123; // откуда начнём читать $file_handle = fopen("rf2000.bmp", "r"); // получаем дескриптор файла (для чтения и записи) // b в "rb" указывает ,что мы собрались читать бинарный файл $barr = array();// массив байтов файла while ($data = fread($file_handle, 1)) // читаем по одному байту { // получаем массив двоичных чисел //$barr[] = str_pad(base_convert(bin2hex($data), 16, 2), 8, '0', STR_PAD_LEFT);// дополняем до 8-ми символов $barr[] = bin2hex($data);// получим данные в шестинатеричном виде } $tarr = array(); $n = 1; // счётчик битов в байтах скрытого текста, который мы извлекаем $m = 1; // счётчик извлечённых байтов $c = count($barr); for ($i = $offset; $i < $c; $i++) { $symb = str_to_arr(str_pad(base_convert($barr[$i], 16, 2), 8, '0', STR_PAD_LEFT));// получаем очередной байт в виде 8 бит(массив) $tarr[$m][$n] = $symb[7];// берём самый младший $n++; if ($n == 9) { //echo '<br>--a$ ' . $tarr[$m]; $tarr[$m] = chr(base_convert(arr_to_str($tarr[$m]), 2, 10)); // сразу получаем очередной символ echo $tarr[$m]; $n = 1; $m++; } } echo '<br>'; print_line($tarr);
ПРИМЕЧАНИЕ: реализацию пользовательских функций (lib.php) для данного примера можно найти здесь = http://fkn.ktu10.com/?q=node/4315
- Log in to post comments
- 3440 reads