Comme beaucoup de gens - je développe une application avec une base de code partagée (Windows Store + Android + MonoTouch + [plus tard] WP8).Y at-il un stockage sécurisé dans Android via Monodroid out of the box?
En outre, comme avec de nombreuses applications, j'ai l'état local que je dois persister pour cette application.
Une information que je stocke est un jeton d'authentification pour l'utilisateur connecté. Sur la plate-forme Windows Store, j'ai mis en place le stockage avec un mélange de paramètres d'itinérance (ApplicationData.Current.RoamingSettings
) pour les données auxiliaires du jeton (nom d'utilisateur et date d'émission) et PasswordVault
pour la valeur du jeton réel. Ainsi, le jeton est protégé de l'introspection au niveau du système d'exploitation, car il est chiffré par le système d'exploitation. Maintenant, j'implémente la même interface pour mon build MonoDroid, et je ne vois aucun moyen, fourni par la plate-forme, de stocker des données qui ne peuvent être déchiffrées que par mon application - de la même manière que le mot de passe Vault peut être utilisé pour les applications Store. Par conséquent, pour l'instant, j'utilise simplement l'interface Android.Content.ISharedPreferences
via la méthode Application.Context.GetSharedPreferences
pour lire et écrire ces valeurs.
Alors, est-ce que j'ai raison de penser que la plateforme (MonoDroid ou Android) n'offre pas de stockage sécurisé OOB? Est-ce la seule alternative pour implémenter le cryptage au sein de l'application - ce qui, bien sûr, nécessitera de cuire la clé de cryptage dans le code? Ou puis-je récupérer le certificat utilisé pour signer l'application et l'utiliser comme clé?
En fin de compte ce n'est pas la fin du monde si je ne peux pas chiffrer ces données, car le jeton est limitée dans le temps de toute façon - mais ce serait bien si je pouvais le faire correctement !
Oh oups! Par "OOB", je veux dire "out of the box"! Il y a-t-il un mécanisme fourni par la plate-forme pour le stockage crypté fourni hors de la boîte :-). Va changer le titre de la question ... –
; o) C'est bon, j'ai mal compris. –