私はAndroidアプリケーションを持っており、その中にhtpps経由で送信する文字列がいくつかあります。 Androidアプリケーションのハードコードされた文字列(パスワードなど)をapkファイルから読み取れないように暗号化することは可能ですか?私が正しくあなたの質問を理解していれば
よろしく、文字列を暗号化しています
答えて
だから、あなたは(例えばstrings.xml
中)のAndroid APKファイル内の暗号化された文字列を格納します。これが当てはまる場合は、暗号化された文字列をどこにでも保存することができます。
これらの文字列を復号化するには、キーが必要です。どこに鍵を格納しても、このチェーンの弱いリンクになります。あなたのアプリがリバースエンジニアリングされ、誰かがキーを持っていれば、あなたのストリングは暗号化されなくなります。
あなたの質問に答えるには、いいえ、必要なことをすることはできません。
この文字列で何をしたいのか説明してください。 サーバーにパスワードを送信して何らかの承認を行うだけの場合は、MD5などのハッシュ関数を使用してthode値を隠すことができます。ハッシュされたパスワードは、サーバー側でハッシュされたパスワードと比較することができます。 暗号化されたテキストを受信側で復号化する場合は、暗号化アルゴリズムを使用する必要があります。 DES(何らかの種類の暗号化キーが必要になります)。
私はサーバー上に、ユーザー名とパスワードで保護されたPHPスクリプトのフォルダを持っています。私はAndroidのアプリからスクリプトを実行するためにこれらの値をhttpsで送信しています。問題はもちろん、私のapkファイルに純粋な形で存在するので、誰もが目の瞬きでそれらを読むことができます。 – cplusogl
What is the most appropriate way to store user settings in Android applicationと他の質問の全体をチェックしてください。基本的に難読化して暗号化して拡張することもできますが、ルーツを持つデバイスやネットワークスニッフィング攻撃に対して完全に安全ではありません。それはどこにでも当てはまると言われています。実装しようとする努力のレベルと保護しているデータとの間で最良の妥協点を見いだします。
- 1. 暗号化/復号化方法に暗号化された文字列に '/'が含まれていない
- 2. 配列を文字列として暗号化する
- 3. Java文字列を暗号化
- 4. OpenSSL ECCを使用してテキスト文字列を暗号化/復号化する
- 5. C#とObjectiveの文字列暗号化
- 6. エンティティフレームワークの暗号化接続文字列
- 7. Linuxでの文字列暗号化
- 8. 文字列暗号化の問題
- 9. Android SDKの文字列の暗号化
- 10. クロスプラットフォームの文字列の暗号化
- 11. JavaScript文字列の暗号化と復号化ですか?
- 12. grailsのクエリ文字列paramsを暗号化します
- 13. ASP.Net Web.configのデータベース接続文字列を暗号化します
- 14. ジェネリックハンドラでJavascriptと復号化のクエリ文字列暗号化
- 15. JavaとPHPの間の文字列の暗号化/復号化
- 16. クエリ文字列パラメータの暗号化/復号化?シルバーライトのUsabe?
- 17. 文字列の暗号化が機能し、byte []配列型の暗号化が機能しません
- 18. apache.commons.codecを使用してJavaクライアントで文字列を暗号化(.NETで暗号化)する方法Base64?
- 19. opensslコマンドラインを使用して文字列を暗号化します
- 20. PHPで暗号化された文字列をC#で復号化していますか?
- 21. RSA(Java)で長い文字列を暗号化
- 22. 暗号化を使用している奇妙な文字
- 23. Javaの信頼性の低い文字列のRSA暗号化/復号化
- 24. phpでの文字列の暗号化と復号
- 25. クエリ文字列暗号化を使用したREST API認証
- 26. 異なる出力を生成する文字列暗号化/復号化クラス
- 27. AndroidとJavaで異なる文字列を暗号化/復号化する
- 28. Android:暗号化による文字列のセキュリティの強化
- 29. 暗号化されたデータが返るなし文字列
- 30. .NETで文字列を暗号化する方法は?
偉大な答え。 Bruce Schneier氏は次のように述べています。「鍵管理は暗号化の最も難しい部分であり、しばしば安全なシステムのアキレス腱です。これはまさにここのケースです。 – Tiago