![]() |
Зашифровать zip
Всем привет. Попробовал библиотеку FZip для создания zip файла. Но теперь не могу догадаться, как зашифровать этот файл. Вернее сейчас файл открывается через обычный winrar, но я неоднократно видел, как у многих других людей, при попытке открыть файл выскакивает ошибка. Вот как бы сделать примерно также?
Код AS3:
|
есть же нативные средства
|
да я че то не вкуриваю что компрессить надо
|
bytearray конечно же,куда предварительно надо поместить свои данные.
Добавлено через 4 минуты upd:так я не вкурил проблема сжать или сжать и запаролить? |
undefined byteArray получается только из файлов,которые закидываются в архив. Криптовать надо сам архив, а как это сделать - пока без понятия.
Код AS3:
Цитата:
|
на эту тему тут немало копий сломано.Если подитожить: лучше шифровать банальным ксором и ключ хранить в отдельной флэшке,заэмбеженной в основную.Код в конце прообфусцировать.
Для бинарных данных вполне подойдет. |
undefined а ты сам пробовал такое сделать? Или у тебя все ресурсы в открытом виде лежат?
|
Да, так и делаю. Только не ксором, а rc4-шифром и ключ хранится рядом с шифром. Защита скорее психологическая просто мы не можем распространять контент в "чистом" виде.
Добавлено через 2 минуты Нужна надежность - храни все на сервере |
Спасибо. Вроде получилось. Попробовал несколько типов шифрования и всё же остановился на rc4. Он самый быстрый оказался, некоторые по 2 минуты криптовали и декриптовали,а тут за 5 секунд и готово. Но вот на счет xor-а. Он лучше rc4? И еще вопрос. Как безпалева пароль хранить? Ты выше написал что в отдельной флешке, а как примерно это должно выглядеть?
|
Цитата:
|
Цитата:
Цитата:
(a xor b) xor b=a.Т.е. зашифровав сообщение 2 раза,получаем исходный текст. Ксором лучше не шифровать тексты и файлы, о структуре которых имеется априорная инфа. Цитата:
Цитата:
Код AS3:
Цитата:
|
Цитата:
|
можно,но стартовать такая флэшка будет неоправдано долго.Плюс большой оверхед по памяти.Плюс чтоб подменить ресурс придется пересобирать все с нуля.
|
Цитата:
Цитата:
|
Цитата:
Цитата:
|
Цитата:
|
грузить по мере надобности
|
undefined и сколько памяти в процессе по максимуму может висеть, чтобы все гуд было?
|
А что значит "сколько памяти может висеть?
|
undefined какой объем ресурсов можно прогрузить при старте, чтобы было норм? Ограничение есть? Что такого в том, что они будут в памяти, если занимают её не так много
|
Цитата:
Конечно, если данных там сильно меньше чем весит флэшка, можно и заэмбедить их. Кстати, еще один плюс подгрузки ресурсов по мере надобности -их можно освободить как только надобность пропадет. |
undefined но ведь есть средняя статистика по памяти, как на андройд так и на пк. Занимается ведь оперативная память, верно? И если например 300мб памяти занято чем-то, это ведь вполне нормально, сейчас на девайсах 1гб+, ну про пк ваще молчу.
Цитата:
|
Цитата:
Цитата:
Это общепринятая практика. Прикинь что бы было если бы старкрафт на старте грузил сразу все ассеты. И держал их всегда в памяти |
Цитата:
Godwarlock, я не встречал еще ни одной игры, где ассеты были бы хорошо защищены. Как-то попадалась игра, в которой ассеты были зашифрованы, а меня попросили их вытащить. Я даже не стал заморачиваться с поиском ключа. Просто запустил эту игру, дождался когда она загрузится в браузере, и сделал дамп памяти для процесса плеера. Этот дамп потом просто декомпилировал и вытащил все, что было нужно. Вообще, даже в эйр графику мало кто реально шифрует. В основном попадаются (да я и сам так делаю) файлы уже в формате Bitmap, сохраненные в файл через ужатый методом compress, алгоритмом lzma. И делается это потому, что они в таком виде весят меньше png. Бывает встречаются файлы зашифрованные XOR'ом. Там просто байты местами поменены. Расшифровывается за несколько минут даже не очень продвинутым хакером. Подобные темы поднимаются здесь с завидной регулярностью. Шифровать что-то или нет, дело твое. Скорее всего твоя графика нафиг никому не нужна, и ты просто потеряешь время на все эти шифрования. Но самое главное, для расшифровки требуется много процессорных ресурсов. Дело даже не в памяти. Твоя игра просто подвиснет, на время расшифровки, потому что флеш - однопоточный. |
caseyryan
Цитата:
Цитата:
Цитата:
Цитата:
|
Цитата:
|
Цитата:
п.с. На счет пустого аргумента. 100% защита существует) Не выкладывай файлы никуда, и никто у тебя их не сопрет) Цитата:
Вот набор методов, позволяющих это сделать (использую на андроиде. Позволяет сэкономить до 30 - 40% объема файла, в сравнении с png). Вместе с распаковкой, по времени получается примерно так же, как загрузка простых PNG и декодирование их в Bitmap. Так что выигрыша или проигрыша во времени работы нет. Есть только выигрыш по памяти устройства Код AS3:
|
caseyryan спасибо) На днях попробую твой метод
|
caseyryan, очень круто. Прямо то что доктор прописал :) Сохранить бы это добро куда-нибудь, чтобы потом не забыть. У меня единственный вопрос. Выходит, что для использования твоих решений нужно сначала свои ассеты загружать в программу, а затем уже из BitmapData сохранять на диск в виде сжатых ByteArray-ев, правильно? Или специальную сервисную прогу написать, которая это будет делать?
|
Цитата:
|
| Часовой пояс GMT +4, время: 01:54. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.