Index: testsuite/libjava.lang/md5test.java =================================================================== RCS file: testsuite/libjava.lang/md5test.java diff -N testsuite/libjava.lang/md5test.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ testsuite/libjava.lang/md5test.java 12 Oct 2004 10:00:46 -0000 @@ -0,0 +1,63 @@ +import java.security.*; + +class md5test { + + + // gnu-crypto/source/gnu/testlet/gnu/crypto/hash/TestOfMD5.java + + public static void main(String[] argv) { + String[] strings = { + "a", + "abc", + "message digest", + "abcdefghijklmnopqrstuvwxyz", + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", + "12345678901234567890123456789012345678901234567890123456789012345678901234567890" + }; + + String[] expected = { + "0CC175B9C0F1B6A831C399E269772661", + "900150983CD24FB0D6963F7D28E17F72", + "F96B697D7CB7938D525A2F31AAF161D0", + "C3FCD3D76192E4007DFB496CCA67E13B", + "D174AB98D277D9F5A5611C2C9F419D9F", + "57EDF4A22BE3C955AC49DA2E2107B67A" + }; + + for (int i = 0; i < strings.length; i++) + testString(strings[i], expected[i]); + + } + + public static void testString(String string, String expected) { + + MessageDigest md=null; + try { + md = MessageDigest.getInstance("MD5"); + md.update(string.getBytes(), 0, string.length()); + String result = toString(md.digest()); + System.out.println(expected); + System.out.println(result); + if (!expected.equals(result)) + System.out.println("NOT EQUAL!"); + } catch (Exception x) { + x.printStackTrace(); + } + } + + public static String toString(byte[] ba) { + return toString(ba, 0, ba.length); + } + public static final String toString(byte[] ba, int offset, int length) { + char[] buf = new char[length * 2]; + for (int i = 0, j = 0, k; i < length; ) { + k = ba[offset + i++]; + buf[j++] = HEX_DIGITS[(k >>> 4) & 0x0F]; + buf[j++] = HEX_DIGITS[ k & 0x0F]; + } + return new String(buf); + } + + private static final char[] HEX_DIGITS = "0123456789ABCDEF".toCharArray(); + +} Index: testsuite/libjava.lang/md5test.out =================================================================== RCS file: testsuite/libjava.lang/md5test.out diff -N testsuite/libjava.lang/md5test.out --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ testsuite/libjava.lang/md5test.out 12 Oct 2004 10:00:46 -0000 @@ -0,0 +1,12 @@ +0CC175B9C0F1B6A831C399E269772661 +0CC175B9C0F1B6A831C399E269772661 +900150983CD24FB0D6963F7D28E17F72 +900150983CD24FB0D6963F7D28E17F72 +F96B697D7CB7938D525A2F31AAF161D0 +F96B697D7CB7938D525A2F31AAF161D0 +C3FCD3D76192E4007DFB496CCA67E13B +C3FCD3D76192E4007DFB496CCA67E13B +D174AB98D277D9F5A5611C2C9F419D9F +D174AB98D277D9F5A5611C2C9F419D9F +57EDF4A22BE3C955AC49DA2E2107B67A +57EDF4A22BE3C955AC49DA2E2107B67A Index: testsuite/libjava.lang/shatest.java =================================================================== RCS file: testsuite/libjava.lang/shatest.java diff -N testsuite/libjava.lang/shatest.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ testsuite/libjava.lang/shatest.java 12 Oct 2004 10:00:46 -0000 @@ -0,0 +1,39 @@ +import java.security.*; + +class shatest { + + // gnu-crypto/source/gnu/testlet/gnu/crypto/hash/TestOfSha160.java + + public static void main(String[] argv) { + MessageDigest md=null; + try { + md = MessageDigest.getInstance("SHA-1"); + } catch (Exception e) { + e.printStackTrace(); + } + md.update("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq".getBytes(), 0, 56); + String exp = "84983E441C3BD26EBAAE4AA1F95129E5E54670F1"; + String result = toString(md.digest()); + System.out.println(exp); + System.out.println(result); + if (!exp.equals(result)) + System.out.println("NOT EQUAL!"); + + } + + public static String toString(byte[] ba) { + return toString(ba, 0, ba.length); + } + public static final String toString(byte[] ba, int offset, int length) { + char[] buf = new char[length * 2]; + for (int i = 0, j = 0, k; i < length; ) { + k = ba[offset + i++]; + buf[j++] = HEX_DIGITS[(k >>> 4) & 0x0F]; + buf[j++] = HEX_DIGITS[ k & 0x0F]; + } + return new String(buf); + } + + private static final char[] HEX_DIGITS = "0123456789ABCDEF".toCharArray(); + +} Index: testsuite/libjava.lang/shatest.out =================================================================== RCS file: testsuite/libjava.lang/shatest.out diff -N testsuite/libjava.lang/shatest.out --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ testsuite/libjava.lang/shatest.out 12 Oct 2004 10:00:46 -0000 @@ -0,0 +1,2 @@ +84983E441C3BD26EBAAE4AA1F95129E5E54670F1 +84983E441C3BD26EBAAE4AA1F95129E5E54670F1