Maison > Java > javaDidacticiel > le corps du texte

Comment masquer en toute sécurité les données sensibles dans votre application Android : l'obscurcissement est-il suffisant ?

Mary-Kate Olsen
Libérer: 2024-10-28 07:33:29
original
577 Les gens l'ont consulté

 How to Securely Hide Sensitive Data in Your Android App: Is Obfuscation Enough?

Masquage de données sensibles dans du code obscurci

Lors du déploiement de votre application Android, vous pouvez rencontrer des problèmes concernant l'exposition de données sensibles, telles que les URL de serveur, en code décompilé. Les techniques d'obscurcissement telles que ProGuard offrent une certaine protection, mais peuvent ne pas masquer efficacement toutes les chaînes.

Chiffrement et décodage des chaînes

Pour résoudre ce problème, envisagez de mettre en œuvre des mécanismes personnalisés d'encodage ou de chiffrement. les cordes. Pour une obscurité de base, vous pouvez utiliser la classe android.util.Base64. Cependant, cette approche offre une protection limitée car elle peut être facilement décodée.

Pour une protection plus renforcée, utilisez le cryptage via la classe javax.crypto.Cipher. Choisissez un chiffrement symétrique comme AES et stockez la clé de chiffrement en toute sécurité dans votre application. Cette méthode est plus fastidieuse que sécurisée, car la clé peut être exposée dans le fichier JAR.

Modification du code pour utiliser des chaînes chiffrées

Modifiez le code pour utiliser le code déchiffré. version de la chaîne sensible au lieu de la valeur brute. Cela implique généralement le déchiffrement de la chaîne au démarrage ou à l'initialisation de la classe ou de l'objet concerné. Exemple :

Avant :

<code class="java">public class Foo {
    private String mySecret = "http://example.com";

    ...
}</code>
Copier après la connexion

Après :

<code class="java">public class Foo {
    private String encrypted = "..." // Manually created encrypted string
    private String key = "..."; // Encryption key
    private String mySecret = MyDecryptUtil.decrypt(encrypted, key);

    ...
}</code>
Copier après la connexion

Solutions alternatives

Envisagez de faire appel à un tiers Solution DRM comme le service de licence de Google. Cela peut constituer une alternative plus sûre aux mécanismes de protection auto-implémentés, mais peut avoir ses propres limites et exigences.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!