2011-01-29 2 views
0

Есть ли способ, которым я могу знать хэш всего или часть исполняемого файла приложения iOS, до того, как я отправил свое приложение на утверждение?Объект Формат файла на iOS (получение SHA512 хэша установленного приложения)

Можно ли включить в мое приложение волшебную константу, чтобы я мог использовать ее приблизительное положение в качестве отправной точки для получения хэша SHA512 большей части исполняемого файла? Я хотел бы добавить дополнительные исполняемые механизмы проверки в мое приложение.

EDIT: После некоторых поисков на сайте Apple Developer я столкнулся с спецификацией формата файла Mach-O.

+0

Вы хотите проверить свой исполняемый файл приложения? Это довольно легко взломать - если можно изменить код, он также может изменить часть проверки хэша. С какими конкретными угрозами вы хотите справиться? –

+0

Выберите некоторый код honeypot для контрольной суммы и скройте хэш-результат (-ы) где-то, казалось бы, несущественный (случайные байты заполнения в пакете сообщений с высокими оценками приложений или что-то еще). Конечно, кто-то может легко взломать это, но почему бы даже подумать, чтобы посмотреть там? – hotpaw2

+0

@Eugene - Да, я хочу проверить свой собственный исполняемый файл. Фактически, ключ шифрования для кода Javascript (сам код зашифрован) второй половины операции, которую я хочу защитить, основан на хэше исполняемого файла + отдельном IV. Существуют также некоторые другие меры защиты, которые я не могу здесь обсуждать, но они основаны на криптографических хэшах, процедурно сгенерированном запутывании и сроках выполнения сервером. – StCredZero

ответ

0

Apple шифрует части исполняемого файла, поэтому любой файл хэш перед отправкой может быть недействительным в распределенном приложении.

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

Смежные вопросы