Java md5, способ PHP

Я работал над этим несколько часов, но не могу заставить его работать.

В основном я разрабатываю клиент REST на Java для сервера REST на PHP. И клиент, и сервер должны вычислить md5 строки, и сервер будет сравнивать их для аутентификации (вроде).

На сервере PHP-код:

md5("getTokenapi_keybf8ddfs845jhre980543jhsjfro93fd8capi_ver1tokeniud9ER£jdfff");

, который генерирует:

4d7b2e42c3dfd11de3e77b9fe2211b87

Отлично!

Вот код для клиента:

import java.security.*;
....
String s = "getTokenapi_keybf8ddfs845jhre980543jhsjfro93fd8capi_ver1tokeniud9ER£jdfff";
byte[] bytesOfMessage = s.getBytes("UTF-8");
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] thedigest = md.digest(bytesOfMessage);    

System.out.println("String2: " + thedigest);        
System.out.println("String3: " + new String(thedigest));

Он генерирует:

String2: [B@42e816
String3: M{.B�����{��!�

Как я могу заставить Java вычислять сумму md5 так же, как это делает PHP, пожалуйста?

Спасибо, Дэн

7
задан dan 15 November 2010 в 11:00
поделиться