Digest entre JAVA et .NET - Java - Programmation
Marsh Posté le 27-02-2006 à 17:53:32
assure-toi que tu converti bien ta chaine en UTF-8 quand tu la transforme en byte, dans les 2 cas.
côté java ça se fait avec
http://java.sun.com/j2se/1.4.2/doc [...] ng.String)
str.getBytes("UTF-8" )
côté C# :
System.Text.Encoding.GetEncoding("utf-8" ).GetBytes(str)
Marsh Posté le 27-02-2006 à 18:42:52
merci pour ton message, je tenterais le coup demain je te tiens au courant
EDIT: ok ça marche, c'est ce qu'il me fallait, j'avais tous essayé sauf ça... Merci à toi...
Marsh Posté le 27-02-2006 à 17:27:31
Voila, je crée un digest au niveau de .NET que j'envoie à un WebService java. Je fais une conversion des bytes optenu en Base64 pour les envoyés à Java (car Byte signé non signé chez l'un et pas chez l'autre).
Je crée un nouveau digest coté Java à partir de la BD sur base du nom d'utilisateur.
Je le converti lui aussi en base 64.
Les deux digests sont identiques.
Le seul problème survient quand dans le mot de passe j'ai des caractères spéciaux tel que "é". Alors les digests sont différent. Surement du à l'encodage des caractères utilisés. J'ai essayé pas mal de truc mais sans succès, est-ce quelqu'un aurait une idée de solution à me proposer?