Библиотеки Decompiling Objective-C

Я только что закончил библиотеку в Objective C, который я скомпилировал как Статическая Библиотека для распределения.

Я хотел знать, какие возможности декомпилировать это - там.

  • Вы знаете какое-либо программное обеспечение, которое может сделать это?
  • Если так, как я мог защитить меня лучше?

Править: Мой статический lib сделан для iPhone / ARM

Я создал алгоритм, который в зависимости от некоторых параметров приложения, это может выполнить как демонстрация или как полный код. Вы init объект с X переменными и разблокировали полную версию. Я задавался вопросом, смогут ли они видеть этот алгоритм, таким образом, они смогут создать ключевой генератор.

44
задан Cy. 25 February 2010 в 19:16
поделиться

3 ответа

Непонятно, что вы пытаетесь защитить от . Да, его можно реконструировать. Самым простым инструментом является otool , часть стандартного дистрибутива разработчика:

otool -tV <library>

Отсюда они запускают такие вещи, как IDA Pro , который поддерживает iPhone и очень удобен для такого рода. работы. Между тем, я очень удивлен, что еще не видел переделки otx для iPhone / ARM. Я не удивлюсь, если в конце концов появится один из них. И, конечно же, есть gdb, если вы пытаетесь понять, как идут дела и какие данные находятся в различных точках.

Если у вас есть более подробная информация о том, от чего вы пытаетесь защитить себя, вы можете найти несколько целенаправленных ответов. Кроме того, прочтите комментарии Чака.

59
ответ дан 26 November 2019 в 21:39
поделиться

Если он выполняется, его можно декомпилировать. Objective-C особенно легко декомпилировать в читаемый код благодаря его динамическим функциям. Если вы хотите немного усложнить задачу, вы можете написать большую часть своего кода на простом языке C и удалить исполняемый файл - что, конечно же, имеет компромисс, который усложняет управление дизайном вашего приложения. Но будьте честны с собой: если кто-то захочет взломать ваш код, вы не сможете его остановить. У взломщиков практически неограниченное количество времени и энтузиазма, и они будут рады любым новым усилиям, которые вы приложите, чтобы их остановить. Никто еще не создал программного обеспечения, которое невозможно взломать, и крупнейшие корпорации мира пытались это сделать. Вы не добьетесь большего успеха, чем они, особенно если вам нужно спросить об этом в Stack Overflow.

Потратьте время, которое вы бы потратили на предотвращение декомпиляции, и используйте его, чтобы улучшить свой продукт - это даст гораздо лучшую рентабельность инвестиций.

83
ответ дан 26 November 2019 в 21:39
поделиться

ChanceGetsDecompiled = ExpectedGainFromBeingDecompiled / PopularityOfLibrary

Ну, если вы действительно хотите знать, я бы попробовал декомпилировать его самостоятельно. Вы не сказали, для PPC, Intel или ARM, что имеет значение. Вот декомпилятор для Intel i386 Decompiler

Я не знаю, что вы можете сделать (я не думаю, что это возможно), чтобы ограничить это. Код всегда может быть подвергнут обратной разработке. Радуйтесь, что вы не используете java или .net. Их декомпиляция так хороша.

5
ответ дан 26 November 2019 в 21:39
поделиться