Pour améliorer la sécurité de vos apps, il est parfois nécessaire d'encrypter des données sensibles de l'utilisateur.
Ainsi, vous pouvez encoder un mot de passe, un pseudo ou n'importe quelle chaîne de caractères en Base 64, ou en MD5.

Encoder une string en hachage MD5


Edit: Comme le rappelle à très juste titre Rudy Huyn, vous n'avez que l'embarras du choix pour encrypter vos chaînes:

  • MD5, dont l'implémentation est décrite ci dessous
  • Base64: il faut faire appel à Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes("votre string"));
  • SHA1/SHA256 en utilisant System.Security.Cryptography.SHA1Managed


J'ai trouvé une classe toute prête sur Internet permettant de le faire, je décide donc de la partager avec vous. Ne retrouvant plus l'auteur via mon moteur de recherche favori, je le remercie tout de même.

Dans un dossier Classes, vous créerez ... une classe, que vous retrouverez ici: MD5CryptoServiceProvider.

Par la suite, pour l'utiliser au sein d'une page, vous procéderez ainsi:

string api_Sig = "Hello world! My name is WP_App and you have no idea of what I'm saying!");
String hash1 = MD5CryptoServiceProvider.GetMd5String(api_Sig);

Votre chaîne de caractères cryptée étant ainsi "hash1".
Le tour est joué ! Je suppose que cela fonctionne également pour WinRT (et pas seulement WinPRT), du moins je peux vous assurer que ce code est testé et éprouvé par mes soins sur la plateforme mobile de Microsoft.