Обычно эта история выглядит так: «Клиент шифрует с помощью ключа publi c - сервер расшифровывает с помощью очень надежно хранимого закрытого ключа».
Ну, у меня противоположная проблема. В мобильном приложении , Я использую библиотеку веб-службы, API которой требует 2 секретных ключа из моей личной учетной записи этой службы. Любой, у кого есть доступ к этим 2 секретным ключам, может использовать их для вызова API той же службы, как если бы это было из моего приложения. , Я определенно не хочу встраивать эти ключи в приложение, поскольку декомпиляция может легко их испортить. ключ к приложению. Затем приложение расшифрует их с помощью закрытого ключа, хранящегося в самом приложении.
Я знаю, что это все еще небезопасно, но, по крайней мере, простая атака «человек посередине» или бинарный анализ декомпиляции не будет кричать: «Здесь ключи сервисного API, приходите и возьмите их!». Его цель состоит в том, чтобы кому-то было труднее получить эти ключи ключи.
Как вы думаете, это будет хорошей идеей? Есть ли у вас другие альтернативы?