Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Надежная защита папки с файлами
 
 автор: Владимир55   (11.01.2008 в 20:11)   письмо автору
 
 

Хочу защитить находящуюся на компьютере (и на флешке) папку с файломи, содержащими конфиденциальную информацию.

Если заархивировать папку с использованием многозначного пароля, это надежно?

   
 
 автор: ddhvvn   (11.01.2008 в 21:00)   письмо автору
 
   для: Владимир55   (11.01.2008 в 20:11)
 

Думаю, да...

Но если не доверяете поищите спец софт, только учтите, есть действительно хорошие программы. И если, скажем, Вы забудете пароль, то уже никогда не восстановите свои данные.

P.S.: а еще есть классная флешка, только не помню чья...
Двойная защита: по паролю и по отпечаткам пальцев (запоминает 10 пальцев!!!). Классная вещь!

   
 
 автор: а-я   (11.01.2008 в 21:11)   письмо автору
 
   для: Владимир55   (11.01.2008 в 20:11)
 

я делаю простой архив... а потом меняю расширение...
типа простая картинка(песня)... при открытии пишет, что типа файл поврежден... на этом весь интерес обычно кончается... =)

   
 
 автор: Faraon   (12.01.2008 в 20:12)   письмо автору
 
   для: а-я   (11.01.2008 в 21:11)
 

И как Вы меняете расширение? Просто исправив расширение в конце файла?

   
 
 автор: Unkind   (12.01.2008 в 20:23)   письмо автору
 
   для: Faraon   (12.01.2008 в 20:12)
 

А как расширение еще меняют? :)

   
 
 автор: Faraon   (12.01.2008 в 20:24)   письмо автору
 
   для: Unkind   (12.01.2008 в 20:23)
 

Не ёрничайте. Можно поменять через многие программы.

   
 
 автор: Unkind   (12.01.2008 в 20:38)   письмо автору
 
   для: Faraon   (12.01.2008 в 20:24)
 

> Не ёрничайте. Можно поменять через многие программы.

При чем тут, к черту, программы? Вы сами спросили как, а не где.

   
 
 автор: Faraon   (12.01.2008 в 20:44)   письмо автору
 
   для: Unkind   (12.01.2008 в 20:38)
 

>Вы сами спросили как, а не где.
Что значит где?

   
 
 автор: Unkind   (12.01.2008 в 20:44)   письмо автору
 
   для: Faraon   (12.01.2008 в 20:44)
 

Очевидно, в каких программах.

   
 
 автор: Faraon   (12.01.2008 в 20:57)   письмо автору
 
   для: Unkind   (12.01.2008 в 20:44)
 

>Очевидно, в каких программах.

Если это вопрос? с Вашей стороны, например тот же самый редактор PHP Expert Edidor
Но я имею ввиду не по архивам, а по файлам.

   
 
 автор: Unkind   (12.01.2008 в 21:03)   письмо автору
 
   для: Faraon   (12.01.2008 в 20:57)
 

Еще раз: "И как Вы меняете расширение? Просто исправив расширение в конце файла?"
Меняют расширение одним способом - переименовывают. Поэтому этот вопрос очень странный.

   
 
 автор: Faraon   (12.01.2008 в 21:12)   письмо автору
 
   для: Unkind   (12.01.2008 в 21:03)
 

To Unkind
Я пытаюсь выяснить у человека,- (а-я) в чем прикол этого изменения, ниже или выше в данный момент я уже предоставил аргумент.

   
 
 автор: Faraon   (12.01.2008 в 20:26)   письмо автору
 
   для: а-я   (11.01.2008 в 21:11)
 

Так я потом поменяю это ваше замененное расширение на нормальное и архив будет читабельным.

   
 
 автор: Владимир55   (13.01.2008 в 00:41)   письмо автору
 
   для: Faraon   (12.01.2008 в 20:26)
 

*** Так я потом поменяю это ваше замененное расширение на нормальное и архив будет читабельным.***

Очевидно, что для этого надо:
а) предположить, что неоткрывающийся файл не открывается не из-за ошибок в коде, а из-за того, что кто-то умышленно изменил его расщирение. Лично я не раз встречал неоткрывающиеся файлы, но ни разу даже не попытался менять их расширения. Не факт, что кто-то вообще догадается это сделать;
б) надо догадаться, что расширение следует заменить именно на архив, а не на что-то другое. Хотя стандартных расширений не так уж много, но и это некоторая преграда для непрофессионалов.

К сожалению, мне неизвестно, содержит ли двоичный код файла указание на его тип. Если содержит, то такая защита очень слаба.

   
 
 автор: kasmanaft   (13.01.2008 в 06:48)   письмо автору
 
   для: Владимир55   (13.01.2008 в 00:41)
 

Да, содержит... Но если вы назовете архив "IMG_0234.jpg" и положите его в папку к фоткам с аналогичными именами, вряд ли даже профессионалу придет в голову мысль смотреть двоичный код, "не обманул ли его кто-то" (если размер не выдаст). Но даже если заметит, изменит расширение - там архив запароленый... Главное, чтобы никто не помог эту нерабочую фотку удалить :). Поэтому я складываю все поглубже (куда-нибудь в windows\system32, например) и обзываю соответственно каким-нить "sys352.dll". Ему расширение менять, думаю, никому в голову не придет.
Проблем "с паролями на архивах" ниразу не замечал... В конце концов можно добавить к архиву "информацию для восстановления" (rar) или несколько экземпляров сделать.

   
 
 автор: Trianon   (13.01.2008 в 08:27)   письмо автору
 
   для: kasmanaft   (13.01.2008 в 06:48)
 

Проблема "с паролями на архивах" такая, что сколь-нибудь стойкий пароль довольно быстро забывается.
А сбросить его нельзя.

   
 
 автор: kasmanaft   (13.01.2008 в 11:35)   письмо автору
 
   для: Trianon   (13.01.2008 в 08:27)
 

И что Вы предлагаете?

PS я говорил о "matros (12.01.2008 в 03:09)"...

   
 
 автор: Unkind   (13.01.2008 в 13:22)   письмо автору
 
   для: kasmanaft   (13.01.2008 в 06:48)
 

Но даже непрофессионал может заметить странные различия в размерах файлов.

Между прочим, лично меня одна из многих неоткрывающихся картинок наоборот бы заинтересовала.

Кстати, RAR-архив можно сохранить после, допустим, GIF- или JPEG-потока и картинка открываться будет нормально. Открыв этот смешанный файл архиватором, RAR-архив тоже откроется без проблем :)

   
 
 автор: ddhvvn   (13.01.2008 в 14:58)   письмо автору
 
   для: Unkind   (13.01.2008 в 13:22)
 

Да, такой прием используется в некоторых защитных программах!

Только опять же вот, размер..... =)

   
 
 автор: Киналь   (13.01.2008 в 15:20)   письмо автору
 
   для: ddhvvn   (13.01.2008 в 14:58)
 

И не только в защитных, в атакующих тоже. Только там трояна приклеивают)

   
 
 автор: matros   (12.01.2008 в 03:09)   письмо автору
 
   для: Владимир55   (11.01.2008 в 20:11)
 

с поролями на архиве бывают проблемы,часто происходит так , что потом они не открывается.

   
 
 автор: pini-pini   (13.01.2008 в 19:52)   письмо автору
 
   для: matros   (12.01.2008 в 03:09)
 

<Sample> суперсекурный метод хранения паролей: программатором записать на старую флешку от биоса. Флешку хранить в старой матери прибитой к стене.
(c) http://Bash.Org.Ru/quote/38566

   
 
 автор: Eugene77   (13.01.2008 в 17:37)   письмо автору
 
   для: Владимир55   (11.01.2008 в 20:11)
 

Чтобы не забыть пароль можно
самому написать шифрующую-дешифрующую программку на PHP.
И положить её не во флешку.
Никакой троян не страшен на 100%
Только когда в расшифрованном виде - опасность сохранится.
А архиваторам серьёзные задачи я бы не доверял - слишком они стандартные во всём мире.
Трояны, которые поумней, думаю, их как раз и ищут, ориентируясь не только по расширению.

   
 
 автор: matros   (14.01.2008 в 01:59)   письмо автору
 
   для: Eugene77   (13.01.2008 в 17:37)
 

А лучше инфу хранить на съемных дисках, надежнее будет.

   
 
 автор: Владимир55   (14.01.2008 в 11:52)   письмо автору
 
   для: Eugene77   (13.01.2008 в 17:37)
 

"можно самому написать шифрующую-дешифрующую программку на PHP"

Вот эта идея мне особенно по душе. Да только не знаю, как к ней приступить. Дайте какую-нибудь стартовую информацию: как делаются такие программы?

   
 
 автор: yuk   (14.01.2008 в 15:52)   письмо автору
 
   для: Владимир55   (14.01.2008 в 11:52)
 

Из файла читается оперделенное количество символов или байт, обрабатываются каким-либо методом и записываются в новый файл.
Методов существует масса - замена, перестановка, использование побитовых операций и всяческие их комбинации, и т.д.
Главное потом самому ключ не забыть :)

   
 
 автор: Eugene77   (14.01.2008 в 19:56)   письмо автору
 
   для: Владимир55   (14.01.2008 в 11:52)
 

Сложного ничего нет
Рекурсивно обходите вложенные в вашу папку директории,
записывая в строковую переменную имена директорий и файлов,
предварительно зашифровав их и вставив удобные для вас разделители
Примерно вот так происходит обход:
<

?
function compress($resorce_dir){
    if(!($h = opendir($resorce_dir))) exit("Исходную директорию $resorce_dir не удалось открыть <br>");
    while(false !== ($f = readdir($h))){
        $ff = $resorce_dir.'/'.$f;
        echo "$ff <br>";
        if(is_dir($ff) and $f != '.' and $f != '..'){
            compress($ff,);
        }
           if(is_file($ff)){Вот этот код для шифрации и записи в переменную надо самостоятельно написать}
}

Здесь уместно будет только написать, что он может содержать например такую шифрующую функцию (да простит меня Трианон)

<?
    
function encrypt($plain_text){
    
$key '"Это тот самый секретный ключ, который сейчас можно спокойно забыть';

    
/* Open module, and create IV */
    
$td mcrypt_module_open('des''''ecb''');
    
$key substr($key0mcrypt_enc_get_key_size($td));
    
$iv_size mcrypt_enc_get_iv_size($td);
    
srand();
    
$iv mcrypt_create_iv($iv_sizeMCRYPT_RAND);

    
/* Initialize encryption handle */
    
if (mcrypt_generic_init($td$key$iv) != -1) {

        
/* Encrypt data */
        
$c_t mcrypt_generic($td$plain_text);
        
mcrypt_generic_deinit($td);
    }
    else  echo 
"ciphering error\n";
    
mcrypt_module_close($td);
    return 
$c_t;
    }


Дальше сохраняете переменную в файл. Потом её придётся парсить
функцией explode по вашим разделителям и расшифровав полученные отрывки сохранять их в файлы или если это названия директорий, соответственно создавать директории.

Для расшифровки пригодится что-то вроде этого:


    function decrypt($c_t){
    $key = 'Это тот самый секретный ключ, который сейчас можно спокойно забыть';
    /* Open module, and create IV */
    $td = mcrypt_module_open('des', '', 'ecb', '');
    $key = substr($key, 0, mcrypt_enc_get_key_size($td));
    $iv_size = mcrypt_enc_get_iv_size($td);
    srand();
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

        /* Reinitialize buffers for decryption */
        mcrypt_generic_init($td, $key, $iv);
        $p_t = mdecrypt_generic($td, $c_t);

        /* Clean up */
        mcrypt_generic_deinit($td);
        mcrypt_module_close($td);
    return $p_t;
    }



Желаю успеха!
А то если бы я лично увлекался написанием троянов, то в первую же очередь искал бы файлы, у которых содержимое не соответствует расширению. Именно потому, что мне самому такой способ прятанья в голову первым приходит.
А раскодировать пароль, который ставит rar, точно сказать не могу, но вроде не так уж трудно.

   
 
 автор: victoor   (16.01.2008 в 00:54)   письмо автору
 
   для: Eugene77   (14.01.2008 в 19:56)
 

запороленный rar вскрывается (друг вскрывал, сам не пробывал)..

Информация о расширении хранится в нескольких первых байтах файла - 2 или около того.. как вариант шифровки - запароленый архив (а можно и не архив, наверно), в который добавлено в начало, допустим, произвольных 4,5 байт (36 бит).. далее даем файлу какое-нибудь ничитаемое имя, совсем косое расширение ставим (или вообще убираем, бывают системные файлы вообще без расширений), пихаем в какую-нибудь системную папку, где файлы примерно такого объема... жалательно открыть и закрыть остальные файлы чем-либо блокнота с сохранением - чтобы время сохранения вашего файла не выбивалось из общего плана...

Как мне кажется, вероятность тогда обнаружить и открыть ваш файл минимальна..

   
 
 автор: Trianon   (16.01.2008 в 00:57)   письмо автору
 
   для: victoor   (16.01.2008 в 00:54)
 

>запороленный rar вскрывается (друг вскрывал, сам не пробывал)..

И какой был размер файлов и длина пароля?

Можете не отвечать. Просто не надо голословных передергиваний.

   
 
 автор: victoor   (16.01.2008 в 00:59)   письмо автору
 
   для: Trianon   (16.01.2008 в 00:57)
 

>И какой был размер файлов и длина пароля?
размер файла, если не ошибаюсь (дело было несколько лет назат), был порядка 20 метров, пароль что-то около 5-7 символов, но только цифры...

   
 
 автор: Trianon   (16.01.2008 в 01:10)   письмо автору
 
   для: victoor   (16.01.2008 в 00:59)
 

5-7 символов только цифр - это не пароль, считайте сами: это от сотни тысяч до десяти миллионов циклов перебора.
Соответствующей сложности пароль из латинских букв и цифр окажется длиной log(100000...10000000,26+26+10) = 3..4 символа

3-4 символа не пароль для любого алгоритма шифрования.

   
 
 автор: victoor   (16.01.2008 в 01:19)   письмо автору
 
   для: Trianon   (16.01.2008 в 01:10)
 

так это давно было.. мелкий я был.. да и особой нужны шифровать тот файл небыло, одно балавство...
а вообще, как я понимаю, сложность пароля влияет только на время подбора.. и при достаточной длине, пароль можно считать условно невзламываемым, т.к. для взлома потребуется настолько много времени, что потенциальный вероятных взломщик не будет его тратить (ну кроме случая, когда это какие-нибудь свехрсекретные и при этом сверхнужные данные типа всей базы данных того-же ЦРУ =) )

   
 
 автор: Trianon   (16.01.2008 в 01:28)   письмо автору
 
   для: victoor   (16.01.2008 в 01:19)
 

Я не знаю, кому нужна "вся база данных того же ЦРУ"
Я также не знаю ни потенциальных противников (конкурентов, инспекторов и т.п.) Владимира, ни их финансовых возможностей. Поэтому никаких предположений строить и советов давать не стал.

А впрочем, и зная, не стал бы. Уж больно это невеселое дело, давать советы в области криптологии.

   
 
 автор: Trianon   (16.01.2008 в 01:24)   письмо автору
 
   для: Eugene77   (14.01.2008 в 19:56)
 

>Здесь уместно будет только написать, что он может содержать например такую шифрующую функцию >(да простит меня Трианон)
> $td = mcrypt_module_open('des', '', 'ecb', '');
>А раскодировать пароль, который ставит rar, точно сказать не могу, но вроде не так уж трудно.

Не прощу. Алгоритм шифрования в rar является открытым. Вы вполне могли бы сравнить его стойкость со стойкостью des, которым предложили воспользоваться.

   
 
 автор: Eugene77   (16.01.2008 в 20:59)   письмо автору
 
   для: Trianon   (16.01.2008 в 01:24)
 

>
>Не прощу. Алгоритм шифрования в rar является открытым. Вы вполне могли бы сравнить его стойкость со стойкостью des, которым предложили воспользоваться.

Криптология - штука запутанная. и требующая сообразительности, которую я экономлю для более полезных целей.
Могу только сказать, что на первый поверхностный взгляд ни то ни другое серьёзного доверия не вызвало.
Если бы я делал шифрование для своих нужд, то что-нибудь добавил бы своё. Например:
разбил бы результат на две строки: одну из чётных битов, вторую из нечётных, а потом соединил бы их, после этого применил функцию шифрования повторно.

Ну теперь-то простите?!
Ведь я специально не стал излагать все подробности, и публиковать готовый код чтобы В. приделал бы к нему что-нибудь своё уникальное, тогда уж надёжно будет.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования