[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Шифровка файлов
Mihaz
Привет всем уважаемым знатокам. Вопрос таков: Как зашифровать файлы хранящиеся на сервере средствами php?
1.Файлы могут быть больших объемов(мультимедиа).
2.Делать это желательно максимально быстро.
P.S. Существует ли шифрование на лету для серверных языков?




Спустя 5 минут, 43 секунды (27.09.2011 - 20:07) alex12060 написал(а):
Mihaz

Что значит "шифровать" файл?
Из 1.jpg превращять его в f31acs3aaowj93s.jpg ?
или внутренний код шифровать?
А обратимо или нет?
А для чего?
А какие файлы должен шифровать?
А что значит "шифрование на лету"? А бывает другое шифрование? На земле? Стоя?

Я ничего не понял толком из этих 4-х строчек в общем. Опиши вопрос подробней...

Спустя 10 часов, 2 минуты, 35 секунд (28.09.2011 - 06:10) Mihaz написал(а):
1. Шифровать содержимое файла, сделать его недоступным для чтения.
2.Обратимо
3.Юзер хранит конфиденциальную инфу на сервере. При теоретическом взломе инфа должна быть зашифрована.
4.Любые.(Видео,звуковые,текстовые)
5.Boxcryptor - шифрует данные на лету. Т.е. не надо нажимать кнопочки "шифровать" и ждать процесса, данные шифруются сразу при копировании. Дешифрация происходит автоматически при чтении файла.
P.S. Нашел что есть Mryptor, вот пытаюсь узнать про него побольше...может кто работал?

Спустя 5 часов, 12 минут, 26 секунд (28.09.2011 - 11:22) Guest написал(а):
Разобрался вроде с Mcrypt. ВСе шифрует и дешифрует. Единственный вопрос, как работать с большими файлами. Скажем файил 500мб, не то что зашифровать его прочесть не удаеться.Как вариант только разбивать по кускам, по кускам шифровать.Затем обратный процесс. Но что то меня это отпугивает...

Спустя 2 минуты, 9 секунд (28.09.2011 - 11:24) Mihaz написал(а):
офтоп. Меня одного после того как залогинюсь редиректет на главную страницу форума?

Спустя 20 минут, 57 секунд (28.09.2011 - 11:45) Семён написал(а):
Mihaz
Скорее всего может глупо может нет, но я бы для таких целей написал бы на java такого рода шифратор, т.е. поясню:
1) Юзер сам перед отправкой, в контейнере выбирает файл, файл шифруется, и уже в зашифрованном виде отправляется на сервер
2) Когда нужно получить файл, юзер скачивает зашифрованный файл и опять сам на своей стороне его и расшифровывает.
Скорость будет гораздо выше. и морок меньше будет с сервером.

Спустя 4 минуты, 2 секунды (28.09.2011 - 11:49) Mihaz написал(а):
Семён
ДЕло в том что я не знаком с явой. Она может использовать какойнить безопасный метод шифрования?
А так идея не плохая.

Спустя 1 час, 59 секунд (28.09.2011 - 12:50) Семён написал(а):
Mihaz
Глаза боятся, руки делают, учебник по Java и вперёд!
Неделя или две изучения и контейнер будет готов! На сколько я помню расширение называется JCE

Спустя 2 часа, 43 минуты, 22 секунды (28.09.2011 - 15:34) Mihaz написал(а):
Что то вроде получалось шифровать данные и расшифровывать их , до того момента пока не поместил это дело в функцию.ДАльше все пошло плохо... Кто пользовался mcrypt_encrypt , может объяснить толком как она работает???? Что не понятно.
string mcrypt_encrypt ( string $cipher , string $key , string $data , string $mode [, string $iv ] )

Зачем тут string $iv И что это такое ? Я понял что оно генерируетсяь рендомно каждый раз.
Получаем мы эту string $iv вот таким образом

$alg=MCRYPT_BLOWFISH;
$mode=MCRYPT_MODE_CBC;
$iv = mcrypt_create_iv (mcrypt_get_iv_size ($alg, $mode),MCRYPT_RAND);

Я так понимаю что тут MCRYPT_RAND это случайное число? Почему тогда когда я его заменяю скажем 123456 работать не хочет? Или это не число?
ЗАтем , Насколько я понял чтобы расшифровать зашифрованный фаил, нужно точно знать какой MCRYPT_RAND был сгенирирован при шифровке. Если это так то как его получить чтобы передать*? Или сохранять само значение $iv ? ТАм в нем кракозябры какие то.

Читая мануалы я понял что есть еще функции mcrypt_ generic... а это что такое???
Затем там можно еще открывать модуль ,а можно не открывать. Кто может подробно расписать как ей пользоваться и для чего какой пункт нужен. Думаю данная инфа будет полезна не только мне.

Спустя 15 часов, 11 минут, 46 секунд (29.09.2011 - 06:45) Mihaz написал(а):
Что никого нет, что может помоч разобраться с данной функцией? Может у кого есть подробный мануал, с номальным переводом, ни как на php.su ?

Спустя 2 часа, 27 минут, 30 секунд (29.09.2011 - 09:13) Семён написал(а):
Mihaz
Да просто нет желания даже помогать при виде того, что ты собрался через mcrypt прогонять объёмы данных выше 50mb.
Да и собственно такой способ не даст 100% гарантию того, что файл не будет перехвачен, т.е. юзер сначала загружает обычный файл, затем в фоне ты его начнёшь перекодировать, создашь 2-ую копию (уже закодированную), а с 1-ой можно делать что угодно...

Спустя 9 минут, 17 секунд (29.09.2011 - 09:22) Mihaz написал(а):
Никогда нет 100% гарантии. Если нет желания помогать, тему можно пропустить мимо.
Спасибо всем ответившим, вопрос решен. Фаил 700мб, кодируем 60 сек.

Спустя 2 минуты, 52 секунды (29.09.2011 - 09:25) Семён написал(а):
А что будет если тебе 20-30 человек отправят файлик такой?

Спустя 10 минут, 37 секунд (29.09.2011 - 09:36) Mihaz написал(а):
Я где то писал что одновременно будет кодироваться фаил у 30 пользователей?
я задавал в полне конкретный вопрос :
Как зашифровать файлы хранящиеся на сервере средствами php?
P.S. Тему можно закрыть.

Спустя 4 минуты, 53 секунды (29.09.2011 - 09:41) Семён написал(а):
Mihaz
Веб-приложение подразумевает уже под собой многопользовательское приложение.
Если тебе глубоко накакать, что тебе говорят, твой алгоритм практически идентичен этому:
<?php echo system('zip -P myKey encrypted.zip non-encrypted.txt'); ?>

Только места будет меньше занимать.

Спустя 6 дней, 16 минут, 49 секунд (5.10.2011 - 09:57) Mihaz написал(а):
Семён
Я уважаю ваше мнение, и большое вас свасибо что вы хотели помочь,но вы обсалютно меня не слушали. "Многопользовательнгость" не подразумевалась ни в коем образе. Доступ имеет 1-2 человека. Но даже если развивать тему и приложение использовало бы 20 человек, то надо просто покупать хороший сервер.К тому же вероятность, что все одновременно начнут кодировать файлы по 500мб, ничтожна мала. Данный фаил вообще наврятли будет использоваться, но предусматреть такую возможность надо было. В связи с чем, я и создавал тему и просил совета. К тому же подразумевается использование https. Насчет перехвата данных,это уж надо хорошо замарочиться, чтобы перехватывать такие объему. И если бы у меня стояла такая цель, то я бы использовал трояна, а не перехватывал данные...
Как пример можно посмотреть на облака. Где данные храняться в шифрованном виде, и шифруються на стороне сервера. Объем трафика таких сервисов огромен. Так что, нет ничего невозможного.
ТЕму всеже прошу закрыть
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.