4
* A test class for BlowFishKey
5
* Copyright (c) 2007 Henri Torgemane
7
* See LICENSE.txt for full license information.
9
package com.hurlant.crypto.tests
11
import com.hurlant.crypto.symmetric.BlowFishKey;
12
import com.hurlant.util.Hex;
13
import flash.utils.ByteArray;
15
public class BlowFishKeyTest extends TestCase
17
public function BlowFishKeyTest(h:ITestHarness)
19
super(h, "BlowFishKey Test");
20
runTest(testECB,"BlowFish ECB Test Vectors");
25
* Test vectors from http://www.schneier.com/code/vectors.txt
27
public function testECB():void {
132
"6B5C5A9C5D9E0A5A" ];
134
for (var i:uint=0;i<keys.length;i++) {
135
var key:ByteArray = Hex.toArray(keys[i]);
136
var pt:ByteArray = Hex.toArray(pts[i]);
137
var bf:BlowFishKey = new BlowFishKey(key);
139
var out:String = Hex.fromArray(pt).toUpperCase();
140
assert("comparing "+cts[i]+" to "+out, cts[i]==out);
141
// now go back to plaintext
143
out = Hex.fromArray(pt).toUpperCase();
144
assert("comparing "+pts[i]+" to "+out, pts[i]==out);
b'\\ No newline at end of file'