commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Gräf (JIRA) <j...@apache.org>
Subject [jira] Created: (CODEC-87) DigestUtils: MD5 checksum is not calculated correctly on linux64-platforms
Date Fri, 11 Sep 2009 12:38:57 GMT
DigestUtils: MD5 checksum is not calculated correctly on linux64-platforms
--------------------------------------------------------------------------

                 Key: CODEC-87
                 URL: https://issues.apache.org/jira/browse/CODEC-87
             Project: Commons Codec
          Issue Type: Bug
    Affects Versions: 1.4, 1.3
         Environment: Suse Enterprise Linux 10 (64bit)
            Reporter: Alexander Gräf


Actual behaviour: 

The class DigesterUtils calculates different md5-hashes depending on plattform.

I used jdk1.5.0_19-32bit on win32 and jdk1.5.0_19-64bit on SLES 10 (64-bit) for testing. 

The effect depends on the charactersequence that is used for the calculation of the hash.
There are some charactersequences that are calculated correctly. I think that the hash that
is calculated on Windows 32 is the correct one since we have checked it by using an other
library for calculating md5-hashes (Tagish-Auth-1.0.3). Since both of the tested libraries
internally make use of the class java.security.MessageDigest but differ in the way the calculated
byte[] is transformed in a hex-string, I think that the problem is located in the Hex.encodeHex(byte[]
hashedBytes) method.

Expected behaviour: 
The md5-hash should should not depend on the platform and should be equal for all platforms.

Testcase:

System.out.println(DigestUtils.md5Hex("a9P,+$")); 

produces the hash 79c28faa4fec5ceb98137f548f1d6fe3 on Windows XP (32bit).

The same instruction produces 3191078c1fa327f9856b5b54628f2a39 on Suse Enterprise Linux 10
(64bit).


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message