Member
Статус: Не в сети Регистрация: 04.03.2008 Откуда: Москва
Всем привет.
Дело такое .. Нужно написать прогу для шифрования видеофайлов. самых простых, ну , например, .avi
в Visual Studio 2005
То есть программа должна открывать видео, затем по какому-нибудь алгоритму шифровать и сохранять в новый файл , и чтобы этот новый файл можно было просмотреть только при помощи ключа.
буду рад любым умным мыслям.
_________________ В наших глазах крики "Вперёд!", в наших глазах окрики "Стой!" ... в наших глазах закрытая дверь что тебе нужно - выбирай..
Advanced member
Статус: Не в сети Регистрация: 30.08.2003 Откуда: Санкт-Петербург
I_AM_EGOR тут не принципиально какой входный поток данных будет.
вкратце логика примерно такая:
- считываем X битов с файла
- накладываем маску XOR на эти X битов
- записываем шифрованные X битов в файл
- переходим к следующим X битам.
Если битов в файле не хватает, то добиваем 00-ками.
X - чем больше, тем лучше.
Для XOR'а использовать не просто пароль, а некую хеш-функцию от него. Например, MD5 (почитать про то, что это такое в инете).
До кучи выводной файл можно защитить подсчитыванием контрольной суммы...
Для расшировки алгоритм аналогичный.
А вообще все уже есть -
а) Винрар с паролем и уровнем сжатия Store
б) EFS - встроенное шифрование в винду на уровне профилей пользователей (но пользоваться не рекомендую)
в) PGP (PGPDisk)
ну, и т.д. Зачем изобретать велосипед???
_________________ {:€ дед в законе :-) нородный окодемег почетный пользователь OpenSuSE 11.3 Ремонт и модернизация ноутбуков IBM (Lenovo) ThinkPad
Member
Статус: Не в сети Регистрация: 04.03.2008 Откуда: Москва
Root всё банально - нужно писАть бакалавр. Достаточно будет монофункциональной проги с простым графическим интерфейсом. Сейчас читаю про MD5 - да , для меня сложновато..
ты не мог бы немного подробней про эти строчки
- накладываем маску XOR на эти X битов
- записываем шифрованные X битов в файл
?
_________________ В наших глазах крики "Вперёд!", в наших глазах окрики "Стой!" ... в наших глазах закрытая дверь что тебе нужно - выбирай..
Advanced member
Статус: Не в сети Регистрация: 30.08.2003 Откуда: Санкт-Петербург
I_AM_EGOR Смотри. Все просто. Есть чудесная операция XOR. Великий смысл этой операции заключается в том, что
если C = A XOR B, то C XOR B дает нам опять A. Т.е. эта операция как раз удобна для шифрования-расшифроки. Вместо A подсовываем кусок из тех данных, что мы хотим зашифровать. B - твой ключ. Полученное значение C пишем в файл. После этого для расшифровки все в обратном порядке все тем же ключом B.
Вместо B можешь использовать пароль, но это плохо. Потому что тогда алгоритм легко вскрыть. Поэтому берешь, считаешь значение MD5 от пароля и уже его используешь в качестве ключа шифрования. Библиотек готовых алгоритмов MD5 в инете лежит не просто много, а дофига. А из алгоритмов, связанных с криптографией, энтот один из самых легких и наиболее используемых.
_________________ {:€ дед в законе :-) нородный окодемег почетный пользователь OpenSuSE 11.3 Ремонт и модернизация ноутбуков IBM (Lenovo) ThinkPad
Member
Статус: Не в сети Регистрация: 04.03.2008 Откуда: Москва
Root и правда просто , когда на пальцах расписано. Умеешь объяснять , значит , не препод =)
Спасибо.
Если в процессе буду тупить , ещё чего-нибудь спрошу , ок? или лучше в личку?
_________________ В наших глазах крики "Вперёд!", в наших глазах окрики "Стой!" ... в наших глазах закрытая дверь что тебе нужно - выбирай..
Advanced member
Статус: Не в сети Регистрация: 09.03.2004 Откуда: Кишинёв
Root писал(а):
А из алгоритмов, связанных с криптографией, энтот один из самых легких и наиболее используемых.
И наверное самый элементарный для вскрытия . Мне кажется можно что-то и посерьзнее придумать(тут уж от энтузиазма зависит). Для начала можно почитать про алгоритмы симметричных шифров, сеть фейстеля... информации море(можно и готовое использовать, но не интересно). Не обязательно делать шифр на нобелевскую премию, но иметь хотя бы несколько кругов перестановок/подстановок было бы неплохо .
Хотя не совсем понятно при чём тут видеофайлы. Для них достаточно будет шифровать только заголовок.
Advanced member
Статус: Не в сети Регистрация: 30.08.2003 Откуда: Санкт-Петербург
mein Тут не требуется гипершифрования - всего лишь показать, что человек умеет писать алгоритм Так что, я думаю, что в познавательных целях вышеописанного мною алгоритма хватит
I_AM_EGOR ищем в интернете информацию про AVI-формат (на самом деле это контейнер). Смотрим размер заголовка. Скорее всего он фиксирован. Шифруем. При расшифровке просто берем эти N байтов и расшифровываем. Если заголовок переменной длины, то придется исхитряться - либо искать доп. заголовки, либо писать размер шифрованных данных.
_________________ {:€ дед в законе :-) нородный окодемег почетный пользователь OpenSuSE 11.3 Ремонт и модернизация ноутбуков IBM (Lenovo) ThinkPad
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения