LINUX.ORG.RU

Java защита секретных ключей

 , ,


1

4

Java код очень легко декомпилировать, а в коде у меня хранятся напрямую cliend_id и client_secret для обращения к API, мне так не очень нравится, допустим в Python можно вынести ключи в окружение сервера (ENV), как быть в Java для Android приложения?

★★★

Например можно зашифровать их. Только это защита от очень слабого взломщика. Если сильно захочется их вытащить — способов защитить нет. Настраивай в API минимум прав для этого ключа, чтобы тот, кто вытащит, не смог сделать ничего деструктивного.

Legioner ★★★★★
()

Например, хранить ключ к апи у скбя и передавать его с помощью ассиметричного шифрования

GblGbl ★★★★★
()

Самый простой и правильный способ — хранить secret на стороне серввера и клиенту, вообще-то, не давать. Тут вопрос, что за API. И зачем все это нужно.

Quickern ★★
()
Ответ на: комментарий от Legioner

Ну в принципе так и есть, я хотел сделать чтобы без ключа нельзя было бы зарегистрировать пользователя, и восстановление пароля, это единственные 2 метода, которые не требуют access token.

Int64 ★★★
() автор топика

у тебя баг в архитектуре - на клиенте не нужен секретный ключ

максимум что может оказаться на клиенте - приватный/секретный ключ юзера, но для этого в андроиде есть встроенные криптохоронилища и защита паролем

Deleted
()
Ответ на: комментарий от Deleted

Вообще эти 2 ключа нужны только для регистрации, восстановлении пароля и авторизации, дальше доступ к методам API только по Access Token

Int64 ★★★
() автор топика

cliend_id и client_secret для обращения к API

Ну проснифают твой траффик, хоть обзащищайся.

vasily_pupkin ★★★★★
()
Ответ на: комментарий от Legioner

СМС денег стоят ) После регистрации нужно подтверждать телефон как раз через СМС, хотелось чтобы нельзя было регистрироваться чтобы смс лишний раз не отправлялось, а то можно и скрипт написать чтобы на рандомные телефоны отправлял, тогда еще и заблокируют аккаунт с которого отправляю смс.

Int64 ★★★
() автор топика
Ответ на: комментарий от Int64

это паранойя, и хуже того никак не защитит от спама

Deleted
()
Ответ на: комментарий от Deleted

да, уже стоит ) еще ограничил количество запросов на регистрацию с одного устройства, но все же можно через curl тогда запросы делать, если будут ключи.

Int64 ★★★
() автор топика
Ответ на: комментарий от kovrik

За keyczar спасибо, надо по разбираться )

Int64 ★★★
() автор топика

Я тут мимо проходил и что-то не понял - декомпилировать проще чем выполнить printenv?

alozovskoy ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.