Lib_vault - Ресурсы под замком
Вложений: 3
Представляю вам первую версию библиотеки для работы с зашифрованными пакетами ресурсов. Для чего это нужно? Для ограждения ресурсов вашего мидлета от любопытных глаз и кривых рук взломщиков. Конечно, защита пока не идеальна, нужно будет ещё добавить шифрование заголовка и скроллинг битов, но пока можно пользоваться и такой версией, защита уже вполне есть и лучше пока пользоваться такой чем вообще никакой.
Подробно опишу последовательность действий при создании зашифрованного пакета с ресурсами, чтобы потом не возникало вопросов что делать и как. В последующих версиях запаковщика нужно будет делать аналогичные действия, сами разберетесь. Итак, для начала нужно создать пакет с нашими ресурсами. Для этого запускаем запаковщик (он прилагается к данной статье, на момент написания самая свежая версия запаковщика это 3). Нажимаем кнопку "Добавить" и выбираем файлы, которые нужно поместить в архив. У меня получилось примерно такой архивчик: Потом поставьте галочку напротив строчки "Использовать шифрование" и наберите в текстовой строчке пароль для доступа к вашему архиву. Ещё в качестве дополнительной меры можно добавлять фейковый (ложный, поддельный) файл в начало архива. Как видно из скриншота, я туда поместил файл с картинкой под названием "lock.png". Всё, теперь нажимаем кнопку "Запаковать", программа спросит имя файла и путь сохранения. Я указал название "logo.png". Архив готов. При создании архива появилось окошко с числом "2894". Запишем это число на бумажечке, оно нам ещё пригодится. Можете попробовать открыть полученный файл на компьютере, картинка откроется совершенно нормально, без ругани, что файл как-то странно перегружен. Ну и что, что такая маленькая картинка занимает 16 Кб. Может я ламер и запаковал картинку в плохом формате сжатия :-D Теперь приступаем к созданию нашего приложения. Перед тем как начать, кратко опишу функции, которые поддерживает библиотека Lib_vault: PHP код:
Думаю у вас не возникнет дополнительных вопросов. PHP код:
|
Ответ: Lib_vault - Ресурсы под замком
Либа работает нормально... распаковывает...
а вот Ресурпакер - при распаковке кажется глючит.... 1- если неуказать смещение(при наличии "ложного" файла) - то прога Зависает и за несколько секунд пишет сотни и тысячи файлов с лабудой в каталог распаковки... 2 - если Указать смещение - то распаковка происходит, но - все русурсы распаковывает с одним расширением PNG хотя, как в примере там были три типа (png, txt, mid) и размер Распакованных ресурсов неявляется истинным - он равен размеру упакованного файла (в примере 3 файла по 16Кб...) --- может подправите Пакер? а так, усё работает... :-) |
Ответ: Lib_vault - Ресурсы под замком
|
Ответ: Lib_vault - Ресурсы под замком
Пакер пока в разработке, еще не сделаны некоторые проверки корректности входных данных.
Вообще распаковщик делался скорее для проверки упаковщика, чем для использования. А выход из указанной ситуации один - в следующей сборке сделаю создание информационного файла для пакета, в котором будут указаны все необходимые для распаковки данные, вплоть до пароля(естественно, этот файл не должен быть доступен "злоумышленнику"). |
Ответ: Lib_vault - Ресурсы под замком
Какой алгоритм шифрования используется?
Если вы считаете, что мой вопрос раскрывает секретность, то Вам сюда - http://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B8%D0%BD%D1%86%D0%B8%D0%BF_%D0%9A% D0%B5%D1%80%D0%BA%D0%B3%D0%BE%D1%84%D1%84%D1%81%D0 %B0 Цитата:
И, если я не ошибаюсь, создание крипто-прог возможно только по лицензии ФАПСИ ? |
Ответ: Lib_vault - Ресурсы под замком
Тут принцип несколько другой. Сам алгоритм не защищен и может быть легко получен любым декомпилятором. Для усложнения жизни хакерам сам ключ можно не хранить в программе, а получать его, скажем, из сети Интернет. Сам алгоритм шифрования самый простой из возможных, напоминает скорее шифрацию в полиморфик вирусах, чем реально стойкие современные криптоалгоритмы.
ФАПСИ осталось не у дел. Я уверен, что опытные криптографы даже не зная алгоритма шифрования и его ключа всё равно смогут взломать данную защиту причем в рекордно короткие сроки (менее чем за 1 день). |
Ответ: Lib_vault - Ресурсы под замком
Цитата:
|
Ответ: Lib_vault - Ресурсы под замком
ACSII это вообще то первые 128 символов, а с ними как раз никаких проблем не возникает. А вот вторые 128 символов кодируют как кто захочет, кто в cp1251, кто в КОИ, кто в ISO8859-5. Хз. Возможно это в реальной жизни кодировка ISO, во всяком случае алгоритмы у cp1251 и ANSI(ISO?) совершенно разные.
|
Ответ: Lib_vault - Ресурсы под замком
Мой текстовый редактор при сохранении в ANSI сохраняет в WINDOWS-1251
|
Ответ: Lib_vault - Ресурсы под замком
Odd, а может напишешь шифровальшик на php? Или можешь мне в асю написать и разьяснить алоритм шифровки, попробую сам)
|
Ответ: Lib_vault - Ресурсы под замком
Почему-то либа распаковывает тестовый файл (тот что в архиве), а если сам собираешь - не распаковывает.
|
Ответ: Lib_vault - Ресурсы под замком
А встроенный распаковщик программы распаковывает?
|
Ответ: Lib_vault - Ресурсы под замком
Где-то при сборке допустил глюк. Читай по внимательней 1 пост.
|
Ответ: Lib_vault - Ресурсы под замком
Да. Пытался сделать архив 1 в 1 как в тесте - ни каких ошибок не выскакивает, просто картинки/текст - не показывает.
|
Ответ: Lib_vault - Ресурсы под замком
Цитата:
|
Часовой пояс GMT +4, время: 10:41. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot