Как стать автором
Обновить

Комментарии 18

«100 миллионов пользователей загружают более миллиона пользователей на сервера Dropbox каждый день» — нет ли тут ошибки?
Спасибо, поправил.
Хм, какая отличная рекурсия была.
НЛО прилетело и опубликовало эту надпись здесь
Действительно, открыли бы уже давно исходники своего клиента.
Если раньше у них могли быть сомнения, то теперь бояться поздно нечего (:
До последнего времени существовали сомнения относительно возможности реверс-инжиниринга сильно обфусицированных приложений, написанных на Python.
Эм… Я не пишу на Питоне, но вот же была статья habrahabr.ru/post/189772/ о трудностях обфускации Питоновского кода.
Ну, так вы почитайте, какие мега костыли там предлагают.
У дропбокса всё серьёзнее. :)
Они применили сразу несколько техник, начиная от смены опкодов и заканчивая шифрованием pyc файлов, а я предложил просто шифровать py файлы. Так что у дропбокса костылей побольше будет, но и защита, относительно, понадёжнее.
Ну о том и разговор :)
Интересно, зачем они это делали, у Dropbox ведь вполне вменяемый публичный API.
Либо я чего-то путаю, либо что-то тут не так :) Всегда считал, что "«распаковка» исходного кода" это нечто иное, нежели реверс-инжиниринг. Реверс-инжинирингу обфускация исходного кода никак не должна мешать, так как в нём при разработке приходится отталкиваться от имеющегося функционала, а не кода… само собой наличие исодников сильно упростит процесс (и сделает его бесполезным?), но всё равно его смысл в другом…

Поправьте, если ошибаюсь.
Насколько вижу я, это все же реверс-инжиниринг. Ведь в приложении не обычный Python байт-код, а неким образом преобразованный. Соответственно и интерпретатор другой.
Так что чтобы расшифровать исходники на Python, нужно сначала зареверсить интерпретатор и понять, какие преобразования были применены.
>> 100 миллионов пользователей загружают более миллиона файлов на сервера Dropbox каждый день

У меня одного стоит автоматическая синхронизация кода проектов в Дропбокс?
Для проектов больше подходят SVN/GIT/Mercurial/etc.
Я наверное неправильно выразился. Конечно есть репозиторий, но коммиичу я туда только выполненые таски. В промежутках между коммитами, для сохранности изменные файлы синхронизируются в дропбокс, синхронизацию выполняет IDE.
Для этого больше подходят Git/Mercurial/etc
Они больше подходят для контроля версий, а не для бэкапов и сихронизации рабочей копии.
Его не так уж и сложно расковыривать до некоторого уровня, я при минимальных навыках реверс-инжиниринга вполне смог вытащить всякие «скрытые» команды, которые можно в командный сокет посылать, а это уже кое-что, как минимум можно более удобный десктопный клиент/плагин написать. И не я один такой умный, в интернете/гитхабе можно достаточно результатов «расковыривания» найти, люди просто не особо пиарятся на этом.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации