2017-01-07 1 views
2

Я разрабатываю приложение для Android, а некоторые из кодов очень конфиденциальны и конфиденциальны. Я делаю алгоритм шифрования в свой код для повышения безопасности.Наличие .apk может извлечь исходный код. Безопасно ли приложение для Android?

Но недавно я прочитал, когда люди, имеющие файл .apk, могут извлечь исходный код java со 100% правильным Source.

Не только, что люди также могут получить .apk из Google Play Store Source

ли это означает, что люди, кто мой .apk может просмотреть все свой исходный код (Java, XML-макет, библиотеку)? Если да, вся моя напряженная работа над безопасным приложением не достигается.

+2

Возможно, вам стоит подумать о том, чтобы сделать ваше приложение безопасным, а не пытаться помешать людям увидеть ваш исходный код. У вас есть конфиденциальные учетные данные, жестко закодированные в приложении? Или вы не хотите, чтобы люди копировали ваши макеты? Потому что кто-то может просто попытаться воссоздать ваше приложение, даже не глядя на исходный код. –

+0

Я поместил функцию шифрования, которая включает в себя проприетарные коды команд scsi. Его не должны видеть другие люди. Его штраф, если воссоздать, но если проприетарная команда просочилась, это опасно для меня. Да, я должен сделать свое приложение более безопасным после этого –

ответ

3

Да, надеюсь, существует способ предотвращения других от ваших трудовых проектов full source code. Включите ProGuard для вашего приложения для Android. ant позвонит ProGuard, чтобы сфотографировать ваш код. Ваш код будет чем усаживается столько, сколько possible.Many функций и переменных имя будет заменено термоусадочной форме, что никто не может расшифровать и понять вообще :)

Подробнее здесь: https://developer.android.com/studio/build/shrink-code.html

Note that enabling ProGuard takes build time much more than normal build time.So better to do it before release of your app.

2

Процесс называется Android Reverse Engeneering. Как сказал @ ash12, вы можете использовать ProGuard для обфускации исходного кода. Но тогда это будет серьезный компромисс с точки зрения безопасности, если вы сохраните учетные данные своего приложения, такие как токены api, пароли и т. Д. В источнике.

Также вы можете взглянуть на DexGuard, который является коммерческим вариантом ProGuard. Это позволяет также шифровать файлы макета и обфускать содержимое манифеста и других файлов ресурсов (вместе со многими другими вещами).

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