Sha256: 3ea904bb7eedba48840027fef731df4b102a86ad7b5745f31e495fa55c84e610
Contents?: true
Size: 1.66 KB
Versions: 19
Compression:
Stored size: 1.66 KB
Contents
/** * SHA224Test * * A test class for SHA224 * Copyright (c) 2007 Henri Torgemane * * See LICENSE.txt for full license information. */ package com.hurlant.crypto.tests { import com.hurlant.crypto.hash.SHA224; import com.hurlant.util.Hex; import flash.utils.ByteArray; public class SHA224Test extends TestCase { public function SHA224Test(h:ITestHarness) { super(h,"SHA-224 Test"); runTest(testSha224,"SHA-224 Test Vectors"); // takes a few seconds, but uncomment if you must. //runTest(testLongSha224,"SHA-224 Long Test Vectors"); h.endTestCase(); } /** * Test vectors courtesy of * http://www.ietf.org/rfc/rfc3874.txt */ public function testSha224():void { var srcs:Array = [ Hex.fromString("abc"), Hex.fromString("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq")]; var hashes:Array = [ "23097d223405d8228642a477bda255b32aadbce4bda0b3f7e36c9da7", "75388b16512776cc5dba5da1fd890150b0c6455cb4f58b1952522525"]; var sha224:SHA224 = new SHA224; for (var i:uint=0;i<srcs.length;i++) { var src:ByteArray = Hex.toArray(srcs[i]); var digest:ByteArray = sha224.hash(src); assert("SHA224 Test "+i, Hex.fromArray(digest) == hashes[i]); } } public function testLongSha224():void { var src:ByteArray = new ByteArray; var a:uint = "a".charCodeAt(0); for (var i:uint=0;i<1e6;i++) { src[i] = a; } var sha224:SHA224 = new SHA224; var digest:ByteArray = sha224.hash(src); var hash:String = "20794655980c91d8bbb4c1ea97618a4bf03f42581948b2ee4ee7ad67"; assert("SHA224 Long Test", Hex.fromArray(digest) == hash); } } }
Version data entries
19 entries across 19 versions & 4 rubygems