01: package org.bouncycastle.crypto.test;
02:
03: import org.bouncycastle.crypto.Digest;
04: import org.bouncycastle.crypto.digests.SHA384Digest;
05:
06: /**
07: * standard vector test for SHA-384 from FIPS Draft 180-2.
08: *
09: * Note, the first two vectors are _not_ from the draft, the last three are.
10: */
11: public class SHA384DigestTest extends DigestTest {
12: private static String[] messages = {
13: "",
14: "a",
15: "abc",
16: "abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu" };
17:
18: private static String[] digests = {
19: "38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95b",
20: "54a59b9f22b0b80880d8427e548b7c23abd873486e1f035dce9cd697e85175033caa88e6d57bc35efae0b5afd3145f31",
21: "cb00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed8086072ba1e7cc2358baeca134c825a7",
22: "09330c33f71147e83d192fc782cd1b4753111b173b3b05d22fa08086e3b0f712fcc7c71a557e2db966c3e9fa91746039" };
23:
24: static private String million_a_digest = "9d0e1809716474cb086e834e310a4a1ced149e9c00f248527972cec5704c2a5b07b8b3dc38ecc4ebae97ddd87f3d8985";
25:
26: SHA384DigestTest() {
27: super (new SHA384Digest(), messages, digests);
28: }
29:
30: public void performTest() {
31: super .performTest();
32:
33: millionATest(million_a_digest);
34: }
35:
36: protected Digest cloneDigest(Digest digest) {
37: return new SHA384Digest((SHA384Digest) digest);
38: }
39:
40: public static void main(String[] args) {
41: runTest(new SHA384DigestTest());
42: }
43: }
|