Last active
February 10, 2019 18:58
-
-
Save schmee/36e5dd6e60cb91800c794f0f5daa8067 to your computer and use it in GitHub Desktop.
DES bug
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const assert = @import("std").debug.assert; | |
const fmt = @import("std").fmt; | |
const io = @import("std").io; | |
const math = @import("std").math; | |
const mem = @import("std").mem; | |
const os = @import("std").os; | |
const std = @import("std"); | |
const warn = @import("std").debug.warn; | |
const ip = [64]u6{ | |
6, 14, 22, 30, 38, 46, 54, 62, | |
4, 12, 20, 28, 36, 44, 52, 60, | |
2, 10, 18, 26, 34, 42, 50, 58, | |
0, 8, 16, 24, 32, 40, 48, 56, | |
7, 15, 23, 31, 39, 47, 55, 63, | |
5, 13, 21, 29, 37, 45, 53, 61, | |
3, 11, 19, 27, 35, 43, 51, 59, | |
1, 9, 17, 25, 33, 41, 49, 57, | |
}; | |
const fp = [64]u6{ | |
24, 56, 16, 48, 8, 40, 0, 32, | |
25, 57, 17, 49, 9, 41, 1, 33, | |
26, 58, 18, 50, 10, 42, 2, 34, | |
27, 59, 19, 51, 11, 43, 3, 35, | |
28, 60, 20, 52, 12, 44, 4, 36, | |
29, 61, 21, 53, 13, 45, 5, 37, | |
30, 62, 22, 54, 14, 46, 6, 38, | |
31, 63, 23, 55, 15, 47, 7, 39, | |
}; | |
const pc1 = [56]u6{ | |
7, 15, 23, 31, 39, 47, 55, 63, | |
6, 14, 22, 30, 38, 46, 54, 62, | |
5, 13, 21, 29, 37, 45, 53, 61, | |
4, 12, 20, 28, 1, 9, 17, 25, | |
33, 41, 49, 57, 2, 10, 18, 26, | |
34, 42, 50, 58, 3, 11, 19, 27, | |
35, 43, 51, 59, 36, 44, 52, 60, | |
}; | |
const pc2 = [48]u6{ | |
13, 16, 10, 23, 0, 4, 2, 27, | |
14, 5, 20, 9, 22, 18, 11, 3, | |
25, 7, 15, 6, 26, 19, 12, 1, | |
40, 51, 30, 36, 46, 54, 29, 39, | |
50, 44, 32, 47, 43, 48, 38, 55, | |
33, 52, 45, 41, 49, 35, 28, 31, | |
}; | |
const s0 = []u32{ | |
0x00410100, 0x00010000, 0x40400000, 0x40410100, 0x00400000, 0x40010100, 0x40010000, 0x40400000, | |
0x40010100, 0x00410100, 0x00410000, 0x40000100, 0x40400100, 0x00400000, 0x00000000, 0x40010000, | |
0x00010000, 0x40000000, 0x00400100, 0x00010100, 0x40410100, 0x00410000, 0x40000100, 0x00400100, | |
0x40000000, 0x00000100, 0x00010100, 0x40410000, 0x00000100, 0x40400100, 0x40410000, 0x00000000, | |
0x00000000, 0x40410100, 0x00400100, 0x40010000, 0x00410100, 0x00010000, 0x40000100, 0x00400100, | |
0x40410000, 0x00000100, 0x00010100, 0x40400000, 0x40010100, 0x40000000, 0x40400000, 0x00410000, | |
0x40410100, 0x00010100, 0x00410000, 0x40400100, 0x00400000, 0x40000100, 0x40010000, 0x00000000, | |
0x00010000, 0x00400000, 0x40400100, 0x00410100, 0x40000000, 0x40410000, 0x00000100, 0x40010100, | |
}; | |
const s1 = []u32{ | |
0x08021002, 0x00000000, 0x00021000, 0x08020000, 0x08000002, 0x00001002, 0x08001000, 0x00021000, | |
0x00001000, 0x08020002, 0x00000002, 0x08001000, 0x00020002, 0x08021000, 0x08020000, 0x00000002, | |
0x00020000, 0x08001002, 0x08020002, 0x00001000, 0x00021002, 0x08000000, 0x00000000, 0x00020002, | |
0x08001002, 0x00021002, 0x08021000, 0x08000002, 0x08000000, 0x00020000, 0x00001002, 0x08021002, | |
0x00020002, 0x08021000, 0x08001000, 0x00021002, 0x08021002, 0x00020002, 0x08000002, 0x00000000, | |
0x08000000, 0x00001002, 0x00020000, 0x08020002, 0x00001000, 0x08000000, 0x00021002, 0x08001002, | |
0x08021000, 0x00001000, 0x00000000, 0x08000002, 0x00000002, 0x08021002, 0x00021000, 0x08020000, | |
0x08020002, 0x00020000, 0x00001002, 0x08001000, 0x08001002, 0x00000002, 0x08020000, 0x00021000, | |
}; | |
const s2 = []u32{ | |
0x20800000, 0x00808020, 0x00000020, 0x20800020, 0x20008000, 0x00800000, 0x20800020, 0x00008020, | |
0x00800020, 0x00008000, 0x00808000, 0x20000000, 0x20808020, 0x20000020, 0x20000000, 0x20808000, | |
0x00000000, 0x20008000, 0x00808020, 0x00000020, 0x20000020, 0x20808020, 0x00008000, 0x20800000, | |
0x20808000, 0x00800020, 0x20008020, 0x00808000, 0x00008020, 0x00000000, 0x00800000, 0x20008020, | |
0x00808020, 0x00000020, 0x20000000, 0x00008000, 0x20000020, 0x20008000, 0x00808000, 0x20800020, | |
0x00000000, 0x00808020, 0x00008020, 0x20808000, 0x20008000, 0x00800000, 0x20808020, 0x20000000, | |
0x20008020, 0x20800000, 0x00800000, 0x20808020, 0x00008000, 0x00800020, 0x20800020, 0x00008020, | |
0x00800020, 0x00000000, 0x20808000, 0x20000020, 0x20800000, 0x20008020, 0x00000020, 0x00808000, | |
}; | |
const s3 = []u32{ | |
0x00080201, 0x02000200, 0x00000001, 0x02080201, 0x00000000, 0x02080000, 0x02000201, 0x00080001, | |
0x02080200, 0x02000001, 0x02000000, 0x00000201, 0x02000001, 0x00080201, 0x00080000, 0x02000000, | |
0x02080001, 0x00080200, 0x00000200, 0x00000001, 0x00080200, 0x02000201, 0x02080000, 0x00000200, | |
0x00000201, 0x00000000, 0x00080001, 0x02080200, 0x02000200, 0x02080001, 0x02080201, 0x00080000, | |
0x02080001, 0x00000201, 0x00080000, 0x02000001, 0x00080200, 0x02000200, 0x00000001, 0x02080000, | |
0x02000201, 0x00000000, 0x00000200, 0x00080001, 0x00000000, 0x02080001, 0x02080200, 0x00000200, | |
0x02000000, 0x02080201, 0x00080201, 0x00080000, 0x02080201, 0x00000001, 0x02000200, 0x00080201, | |
0x00080001, 0x00080200, 0x02080000, 0x02000201, 0x00000201, 0x02000000, 0x02000001, 0x02080200, | |
}; | |
const s4 = []u32{ | |
0x01000000, 0x00002000, 0x00000080, 0x01002084, 0x01002004, 0x01000080, 0x00002084, 0x01002000, | |
0x00002000, 0x00000004, 0x01000004, 0x00002080, 0x01000084, 0x01002004, 0x01002080, 0x00000000, | |
0x00002080, 0x01000000, 0x00002004, 0x00000084, 0x01000080, 0x00002084, 0x00000000, 0x01000004, | |
0x00000004, 0x01000084, 0x01002084, 0x00002004, 0x01002000, 0x00000080, 0x00000084, 0x01002080, | |
0x01002080, 0x01000084, 0x00002004, 0x01002000, 0x00002000, 0x00000004, 0x01000004, 0x01000080, | |
0x01000000, 0x00002080, 0x01002084, 0x00000000, 0x00002084, 0x01000000, 0x00000080, 0x00002004, | |
0x01000084, 0x00000080, 0x00000000, 0x01002084, 0x01002004, 0x01002080, 0x00000084, 0x00002000, | |
0x00002080, 0x01002004, 0x01000080, 0x00000084, 0x00000004, 0x00002084, 0x01002000, 0x01000004, | |
}; | |
const s5 = []u32{ | |
0x10000008, 0x00040008, 0x00000000, 0x10040400, 0x00040008, 0x00000400, 0x10000408, 0x00040000, | |
0x00000408, 0x10040408, 0x00040400, 0x10000000, 0x10000400, 0x10000008, 0x10040000, 0x00040408, | |
0x00040000, 0x10000408, 0x10040008, 0x00000000, 0x00000400, 0x00000008, 0x10040400, 0x10040008, | |
0x10040408, 0x10040000, 0x10000000, 0x00000408, 0x00000008, 0x00040400, 0x00040408, 0x10000400, | |
0x00000408, 0x10000000, 0x10000400, 0x00040408, 0x10040400, 0x00040008, 0x00000000, 0x10000400, | |
0x10000000, 0x00000400, 0x10040008, 0x00040000, 0x00040008, 0x10040408, 0x00040400, 0x00000008, | |
0x10040408, 0x00040400, 0x00040000, 0x10000408, 0x10000008, 0x10040000, 0x00040408, 0x00000000, | |
0x00000400, 0x10000008, 0x10000408, 0x10040400, 0x10040000, 0x00000408, 0x00000008, 0x10040008, | |
}; | |
const s6 = []u32{ | |
0x00000800, 0x00000040, 0x00200040, 0x80200000, 0x80200840, 0x80000800, 0x00000840, 0x00000000, | |
0x00200000, 0x80200040, 0x80000040, 0x00200800, 0x80000000, 0x00200840, 0x00200800, 0x80000040, | |
0x80200040, 0x00000800, 0x80000800, 0x80200840, 0x00000000, 0x00200040, 0x80200000, 0x00000840, | |
0x80200800, 0x80000840, 0x00200840, 0x80000000, 0x80000840, 0x80200800, 0x00000040, 0x00200000, | |
0x80000840, 0x00200800, 0x80200800, 0x80000040, 0x00000800, 0x00000040, 0x00200000, 0x80200800, | |
0x80200040, 0x80000840, 0x00000840, 0x00000000, 0x00000040, 0x80200000, 0x80000000, 0x00200040, | |
0x00000000, 0x80200040, 0x00200040, 0x00000840, 0x80000040, 0x00000800, 0x80200840, 0x00200000, | |
0x00200840, 0x80000000, 0x80000800, 0x80200840, 0x80200000, 0x00200840, 0x00200800, 0x80000800, | |
}; | |
const s7 = []u32{ | |
0x04100010, 0x04104000, 0x00004010, 0x00000000, 0x04004000, 0x00100010, 0x04100000, 0x04104010, | |
0x00000010, 0x04000000, 0x00104000, 0x00004010, 0x00104010, 0x04004010, 0x04000010, 0x04100000, | |
0x00004000, 0x00104010, 0x00100010, 0x04004000, 0x04104010, 0x04000010, 0x00000000, 0x00104000, | |
0x04000000, 0x00100000, 0x04004010, 0x04100010, 0x00100000, 0x00004000, 0x04104000, 0x00000010, | |
0x00100000, 0x00004000, 0x04000010, 0x04104010, 0x00004010, 0x04000000, 0x00000000, 0x00104000, | |
0x04100010, 0x04004010, 0x04004000, 0x00100010, 0x04104000, 0x00000010, 0x00100010, 0x04004000, | |
0x04104010, 0x00100000, 0x04100000, 0x04000010, 0x00104000, 0x00004010, 0x04004010, 0x04100000, | |
0x00000010, 0x04104000, 0x00104010, 0x00000000, 0x04000000, 0x04100010, 0x00004000, 0x00104010, | |
}; | |
// Has to be var due to https://github.com/ziglang/zig/issues/1766 | |
var sboxes = [8][64]u32{ s0, s1, s2, s3, s4, s5, s6, s7 }; | |
fn printAsBinary(value: var) void { | |
comptime const T = @typeOf(value); | |
comptime const bits = @typeInfo(T).Int.bits; | |
comptime const size = @sizeOf(T) * 8; | |
var buf = []u8{0} ** size; | |
const result = fmt.bufPrint(buf[0..], "{b}", value) catch unreachable; | |
var ln = result.len; | |
var out = []u8{48} ** bits; | |
for (result) |r, i| { | |
out[bits - ln + i] = result[i]; | |
} | |
warn("{}\n", out); | |
} | |
fn rotr(comptime T: type, i: T, amount: math.Log2Int(T)) T { | |
comptime const TL = @typeOf(amount); | |
comptime const m = @intCast(TL, @typeInfo(T).Int.bits); | |
return (i >> amount) | (i << (m - amount)); | |
} | |
fn rotl(comptime T: type, i: T, amount: math.Log2Int(T)) T { | |
comptime const TL = @typeOf(amount); | |
comptime const m = @typeInfo(T).Int.bits; | |
const x = @intCast(TL, (m - amount)); | |
return (i << amount) | (i >> x); | |
} | |
fn expand(half: u32) u48 { | |
const mask: u8 = (u8(1) << 6) - 1; | |
var i: u5 = 0; | |
var out: u48 = rotl(u32, half, 1) & mask; | |
while (i < 7) : (i += 1) { | |
const piece: u48 = (half >> (3 + (4 * i))) & mask; | |
out ^= @truncate(u48, (piece << 6 * u6(i + 1))); | |
} | |
out ^= (@intCast(u48, half) & 1) << 47; | |
return out; | |
} | |
fn permuteBits(long: var, indices: []const math.Log2Int(@typeOf(long))) @typeOf(long) { | |
comptime const T = @typeOf(long); | |
comptime const TL = math.Log2Int(T); | |
var out: T = 0; | |
for (indices) |x, i| { | |
out ^= (((long >> x) & 1) << @intCast(TL, i)); | |
// Uncomment the line below to make it work! | |
// warn(""); | |
} | |
return out; | |
} | |
const shifts = []u5{ | |
1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, | |
}; | |
fn sbox(long: u48) u32 { | |
var out: u32 = 0; | |
for (sboxes) |*box, i| { | |
const shift: u6 = @intCast(u6, i * 6); | |
out ^= box.*[@truncate(u6, (long >> shift) & 0b111111)]; | |
} | |
return out; | |
} | |
pub fn desRounds(keys: []const u48, data: u64, comptime encrypt: bool) u64 { | |
var perm = permuteBits(data, ip); | |
var i = u8(0); | |
var left = @truncate(u32, perm & 0xFFFFFFFF); | |
var right = @truncate(u32, perm >> 32); | |
var work: u48 = 0; | |
var swork: u32 = 0; | |
while (i < 16) : (i += 1) { | |
work = expand(right); | |
work = work ^ keys[if (encrypt) i else (15 - i)]; | |
swork = sbox(work); | |
const oldRight = right; | |
right = left ^ swork; | |
left = oldRight; | |
} | |
var out: u64 = left; | |
out <<= 32; | |
out ^= right; | |
return permuteBits(out, fp[0..]); | |
} | |
pub fn subkeys(key: u64) [16]u48 { | |
const size: u6 = math.maxInt(u6); | |
var perm = @truncate(u56, permuteBits(key, pc1[0..])); | |
var left: u28 = @truncate(u28, perm & 0xfffffff); | |
var right: u28 = @truncate(u28, (perm >> 28) & 0xfffffff); | |
var subkey: u48 = 0; | |
var i: u8 = 0; | |
var keys: [16]u48 = undefined; | |
while (i < 16) : (i += 1) { | |
left = rotr(u28, left, shifts[i]); | |
right = rotr(u28, right, shifts[i]); | |
var out: u56 = right; | |
out <<= 28; | |
out ^= left; | |
subkey = @truncate(u48, permuteBits(out, pc2[0..])); | |
keys[i] = subkey; | |
} | |
return keys; | |
} | |
pub fn desEncryptEcb(key: u64, inData: []const u8, outData: []u64) void { | |
assert(inData.len % 8 == 0); | |
var i: u64 = 0; | |
var offset: u64 = 0; | |
const keys = subkeys(key); | |
while (offset <= inData.len - 8) { | |
// @Speed: avoid this conversion, return [8]u8 from desEncryptTest? | |
const plain: u64 = mem.readIntSliceBig(u64, inData[offset..(offset + 8)]); | |
outData[i] = desRounds(keys[0..], plain, true); | |
i += 1; | |
offset += 8; | |
} | |
} | |
pub fn desDecryptEcb(key: u64, inData: []const u8, outData: []u64) void { | |
assert(inData.len % 8 == 0); | |
var i: u64 = 0; | |
var offset: u64 = 0; | |
const keys = subkeys(key); | |
while (offset <= inData.len - 8) { | |
// @Speed: avoid this conversion, return [8]u8 from desEncryptTest? | |
const cipher: u64 = mem.readIntSliceBig(u64, inData[offset..(offset + 8)]); | |
outData[i] = desRounds(keys[0..], cipher, false); | |
i += 1; | |
offset += 8; | |
} | |
} | |
pub fn encryptRandomData() !void { | |
const testKey: u64 = 0x133457799BBCDFF1; | |
var da = &std.heap.DirectAllocator.init(); | |
defer da.deinit(); | |
var allocator = &da.allocator; | |
const tmp_file_name = "random_test_data_small.bin"; | |
// const tmp_file_name = "random_test_data.bin"; | |
var file = try os.File.openRead(tmp_file_name); | |
defer file.close(); | |
var file_in_stream = file.inStream(); | |
var buf_stream = io.BufferedInStream(os.File.ReadError).init(&file_in_stream.stream); | |
const st = &buf_stream.stream; | |
const contents = try st.readAllAlloc(allocator, 3000000 + 1); | |
// const contents = try st.readAllAlloc(allocator, 300000000 + 1); | |
defer allocator.free(contents); | |
var encryptedData = try allocator.alloc(u64, contents.len / 8); | |
desEncryptEcb(testKey, contents[0..], encryptedData); | |
{ | |
// const out_file_name = "enc_zig.bin"; | |
const out_file_name = "enc_zig_small.bin"; | |
var out_file = try os.File.openWrite(out_file_name); | |
defer out_file.close(); | |
var file_out_stream = out_file.outStream(); | |
var out_buf_stream = io.BufferedOutStream(os.File.WriteError).init(&file_out_stream.stream); | |
const stt = &out_buf_stream.stream; | |
warn("begin\n"); | |
for (encryptedData) |ed| { | |
try stt.write(mem.asBytes(&@bswap(u64, ed))); | |
} | |
// try stt.write(contents); | |
warn("end\n"); | |
try out_buf_stream.flush(); | |
} | |
} | |
pub fn main() void { | |
encryptRandomData() catch unreachable; | |
} | |
fn desEncryptTest(key: u64, data: u64) u64 { | |
const keys = subkeys(key); | |
return desRounds(keys[0..], data, true); | |
} | |
// Taken from: | |
// https://www.cosic.esat.kuleuven.be/nessie/testvectors/bc/des/Des-64-64.test-vectors | |
test "test vectors" { | |
assert(desEncryptTest(0x8000000000000000, 0x0000000000000000) == 0x95A8D72813DAA94D); | |
assert(desEncryptTest(0x4000000000000000, 0x0000000000000000) == 0x0EEC1487DD8C26D5); | |
assert(desEncryptTest(0x2000000000000000, 0x0000000000000000) == 0x7AD16FFB79C45926); | |
assert(desEncryptTest(0x1000000000000000, 0x0000000000000000) == 0xD3746294CA6A6CF3); | |
assert(desEncryptTest(0x0800000000000000, 0x0000000000000000) == 0x809F5F873C1FD761); | |
assert(desEncryptTest(0x0400000000000000, 0x0000000000000000) == 0xC02FAFFEC989D1FC); | |
assert(desEncryptTest(0x0200000000000000, 0x0000000000000000) == 0x4615AA1D33E72F10); | |
assert(desEncryptTest(0x0100000000000000, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0080000000000000, 0x0000000000000000) == 0x2055123350C00858); | |
assert(desEncryptTest(0x0040000000000000, 0x0000000000000000) == 0xDF3B99D6577397C8); | |
assert(desEncryptTest(0x0020000000000000, 0x0000000000000000) == 0x31FE17369B5288C9); | |
assert(desEncryptTest(0x0010000000000000, 0x0000000000000000) == 0xDFDD3CC64DAE1642); | |
assert(desEncryptTest(0x0008000000000000, 0x0000000000000000) == 0x178C83CE2B399D94); | |
assert(desEncryptTest(0x0004000000000000, 0x0000000000000000) == 0x50F636324A9B7F80); | |
assert(desEncryptTest(0x0002000000000000, 0x0000000000000000) == 0xA8468EE3BC18F06D); | |
assert(desEncryptTest(0x0001000000000000, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0000800000000000, 0x0000000000000000) == 0xA2DC9E92FD3CDE92); | |
assert(desEncryptTest(0x0000400000000000, 0x0000000000000000) == 0xCAC09F797D031287); | |
assert(desEncryptTest(0x0000200000000000, 0x0000000000000000) == 0x90BA680B22AEB525); | |
assert(desEncryptTest(0x0000100000000000, 0x0000000000000000) == 0xCE7A24F350E280B6); | |
assert(desEncryptTest(0x0000080000000000, 0x0000000000000000) == 0x882BFF0AA01A0B87); | |
assert(desEncryptTest(0x0000040000000000, 0x0000000000000000) == 0x25610288924511C2); | |
assert(desEncryptTest(0x0000020000000000, 0x0000000000000000) == 0xC71516C29C75D170); | |
assert(desEncryptTest(0x0000010000000000, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0000008000000000, 0x0000000000000000) == 0x5199C29A52C9F059); | |
assert(desEncryptTest(0x0000004000000000, 0x0000000000000000) == 0xC22F0A294A71F29F); | |
assert(desEncryptTest(0x0000002000000000, 0x0000000000000000) == 0xEE371483714C02EA); | |
assert(desEncryptTest(0x0000001000000000, 0x0000000000000000) == 0xA81FBD448F9E522F); | |
assert(desEncryptTest(0x0000000800000000, 0x0000000000000000) == 0x4F644C92E192DFED); | |
assert(desEncryptTest(0x0000000400000000, 0x0000000000000000) == 0x1AFA9A66A6DF92AE); | |
assert(desEncryptTest(0x0000000200000000, 0x0000000000000000) == 0xB3C1CC715CB879D8); | |
assert(desEncryptTest(0x0000000100000000, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0000000080000000, 0x0000000000000000) == 0x19D032E64AB0BD8B); | |
assert(desEncryptTest(0x0000000040000000, 0x0000000000000000) == 0x3CFAA7A7DC8720DC); | |
assert(desEncryptTest(0x0000000020000000, 0x0000000000000000) == 0xB7265F7F447AC6F3); | |
assert(desEncryptTest(0x0000000010000000, 0x0000000000000000) == 0x9DB73B3C0D163F54); | |
assert(desEncryptTest(0x0000000008000000, 0x0000000000000000) == 0x8181B65BABF4A975); | |
assert(desEncryptTest(0x0000000004000000, 0x0000000000000000) == 0x93C9B64042EAA240); | |
assert(desEncryptTest(0x0000000002000000, 0x0000000000000000) == 0x5570530829705592); | |
assert(desEncryptTest(0x0000000001000000, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0000000000800000, 0x0000000000000000) == 0x8638809E878787A0); | |
assert(desEncryptTest(0x0000000000400000, 0x0000000000000000) == 0x41B9A79AF79AC208); | |
assert(desEncryptTest(0x0000000000200000, 0x0000000000000000) == 0x7A9BE42F2009A892); | |
assert(desEncryptTest(0x0000000000100000, 0x0000000000000000) == 0x29038D56BA6D2745); | |
assert(desEncryptTest(0x0000000000080000, 0x0000000000000000) == 0x5495C6ABF1E5DF51); | |
assert(desEncryptTest(0x0000000000040000, 0x0000000000000000) == 0xAE13DBD561488933); | |
assert(desEncryptTest(0x0000000000020000, 0x0000000000000000) == 0x024D1FFA8904E389); | |
assert(desEncryptTest(0x0000000000010000, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0000000000008000, 0x0000000000000000) == 0xD1399712F99BF02E); | |
assert(desEncryptTest(0x0000000000004000, 0x0000000000000000) == 0x14C1D7C1CFFEC79E); | |
assert(desEncryptTest(0x0000000000002000, 0x0000000000000000) == 0x1DE5279DAE3BED6F); | |
assert(desEncryptTest(0x0000000000001000, 0x0000000000000000) == 0xE941A33F85501303); | |
assert(desEncryptTest(0x0000000000000800, 0x0000000000000000) == 0xDA99DBBC9A03F379); | |
assert(desEncryptTest(0x0000000000000400, 0x0000000000000000) == 0xB7FC92F91D8E92E9); | |
assert(desEncryptTest(0x0000000000000200, 0x0000000000000000) == 0xAE8E5CAA3CA04E85); | |
assert(desEncryptTest(0x0000000000000100, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0000000000000080, 0x0000000000000000) == 0x9CC62DF43B6EED74); | |
assert(desEncryptTest(0x0000000000000040, 0x0000000000000000) == 0xD863DBB5C59A91A0); | |
assert(desEncryptTest(0x0000000000000020, 0x0000000000000000) == 0xA1AB2190545B91D7); | |
assert(desEncryptTest(0x0000000000000010, 0x0000000000000000) == 0x0875041E64C570F7); | |
assert(desEncryptTest(0x0000000000000008, 0x0000000000000000) == 0x5A594528BEBEF1CC); | |
assert(desEncryptTest(0x0000000000000004, 0x0000000000000000) == 0xFCDB3291DE21F0C0); | |
assert(desEncryptTest(0x0000000000000002, 0x0000000000000000) == 0x869EFD7F9F265A09); | |
assert(desEncryptTest(0x0000000000000001, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0000000000000000, 0x8000000000000000) == 0x95F8A5E5DD31D900); | |
assert(desEncryptTest(0x0000000000000000, 0x4000000000000000) == 0xDD7F121CA5015619); | |
assert(desEncryptTest(0x0000000000000000, 0x2000000000000000) == 0x2E8653104F3834EA); | |
assert(desEncryptTest(0x0000000000000000, 0x1000000000000000) == 0x4BD388FF6CD81D4F); | |
assert(desEncryptTest(0x0000000000000000, 0x0800000000000000) == 0x20B9E767B2FB1456); | |
assert(desEncryptTest(0x0000000000000000, 0x0400000000000000) == 0x55579380D77138EF); | |
assert(desEncryptTest(0x0000000000000000, 0x0200000000000000) == 0x6CC5DEFAAF04512F); | |
assert(desEncryptTest(0x0000000000000000, 0x0100000000000000) == 0x0D9F279BA5D87260); | |
assert(desEncryptTest(0x0000000000000000, 0x0080000000000000) == 0xD9031B0271BD5A0A); | |
assert(desEncryptTest(0x0000000000000000, 0x0040000000000000) == 0x424250B37C3DD951); | |
assert(desEncryptTest(0x0000000000000000, 0x0020000000000000) == 0xB8061B7ECD9A21E5); | |
assert(desEncryptTest(0x0000000000000000, 0x0010000000000000) == 0xF15D0F286B65BD28); | |
assert(desEncryptTest(0x0000000000000000, 0x0008000000000000) == 0xADD0CC8D6E5DEBA1); | |
assert(desEncryptTest(0x0000000000000000, 0x0004000000000000) == 0xE6D5F82752AD63D1); | |
assert(desEncryptTest(0x0000000000000000, 0x0002000000000000) == 0xECBFE3BD3F591A5E); | |
assert(desEncryptTest(0x0000000000000000, 0x0001000000000000) == 0xF356834379D165CD); | |
assert(desEncryptTest(0x0000000000000000, 0x0000800000000000) == 0x2B9F982F20037FA9); | |
assert(desEncryptTest(0x0000000000000000, 0x0000400000000000) == 0x889DE068A16F0BE6); | |
assert(desEncryptTest(0x0000000000000000, 0x0000200000000000) == 0xE19E275D846A1298); | |
assert(desEncryptTest(0x0000000000000000, 0x0000100000000000) == 0x329A8ED523D71AEC); | |
assert(desEncryptTest(0x0000000000000000, 0x0000080000000000) == 0xE7FCE22557D23C97); | |
assert(desEncryptTest(0x0000000000000000, 0x0000040000000000) == 0x12A9F5817FF2D65D); | |
assert(desEncryptTest(0x0000000000000000, 0x0000020000000000) == 0xA484C3AD38DC9C19); | |
assert(desEncryptTest(0x0000000000000000, 0x0000010000000000) == 0xFBE00A8A1EF8AD72); | |
assert(desEncryptTest(0x0000000000000000, 0x0000008000000000) == 0x750D079407521363); | |
assert(desEncryptTest(0x0000000000000000, 0x0000004000000000) == 0x64FEED9C724C2FAF); | |
assert(desEncryptTest(0x0000000000000000, 0x0000002000000000) == 0xF02B263B328E2B60); | |
assert(desEncryptTest(0x0000000000000000, 0x0000001000000000) == 0x9D64555A9A10B852); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000800000000) == 0xD106FF0BED5255D7); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000400000000) == 0xE1652C6B138C64A5); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000200000000) == 0xE428581186EC8F46); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000100000000) == 0xAEB5F5EDE22D1A36); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000080000000) == 0xE943D7568AEC0C5C); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000040000000) == 0xDF98C8276F54B04B); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000020000000) == 0xB160E4680F6C696F); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000010000000) == 0xFA0752B07D9C4AB8); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000008000000) == 0xCA3A2B036DBC8502); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000004000000) == 0x5E0905517BB59BCF); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000002000000) == 0x814EEB3B91D90726); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000001000000) == 0x4D49DB1532919C9F); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000800000) == 0x25EB5FC3F8CF0621); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000400000) == 0xAB6A20C0620D1C6F); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000200000) == 0x79E90DBC98F92CCA); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000100000) == 0x866ECEDD8072BB0E); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000080000) == 0x8B54536F2F3E64A8); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000040000) == 0xEA51D3975595B86B); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000020000) == 0xCAFFC6AC4542DE31); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000010000) == 0x8DD45A2DDF90796C); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000008000) == 0x1029D55E880EC2D0); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000004000) == 0x5D86CB23639DBEA9); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000002000) == 0x1D1CA853AE7C0C5F); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000001000) == 0xCE332329248F3228); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000800) == 0x8405D1ABE24FB942); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000400) == 0xE643D78090CA4207); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000200) == 0x48221B9937748A23); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000100) == 0xDD7C0BBD61FAFD54); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000080) == 0x2FBC291A570DB5C4); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000040) == 0xE07C30D7E4E26E12); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000020) == 0x0953E2258E8E90A1); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000010) == 0x5B711BC4CEEBF2EE); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000008) == 0xCC083F1E6D9E85F6); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000004) == 0xD2FD8867D50D2DFE); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000002) == 0x06E7EA22CE92708F); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000001) == 0x166B40B44ABA4BD6); | |
assert(desEncryptTest(0x0000000000000000, 0x0000000000000000) == 0x8CA64DE9C1B123A7); | |
assert(desEncryptTest(0x0101010101010101, 0x0101010101010101) == 0x994D4DC157B96C52); | |
assert(desEncryptTest(0x0202020202020202, 0x0202020202020202) == 0xE127C2B61D98E6E2); | |
assert(desEncryptTest(0x0303030303030303, 0x0303030303030303) == 0x984C91D78A269CE3); | |
assert(desEncryptTest(0x0404040404040404, 0x0404040404040404) == 0x1F4570BB77550683); | |
assert(desEncryptTest(0x0505050505050505, 0x0505050505050505) == 0x3990ABF98D672B16); | |
assert(desEncryptTest(0x0606060606060606, 0x0606060606060606) == 0x3F5150BBA081D585); | |
assert(desEncryptTest(0x0707070707070707, 0x0707070707070707) == 0xC65242248C9CF6F2); | |
assert(desEncryptTest(0x0808080808080808, 0x0808080808080808) == 0x10772D40FAD24257); | |
assert(desEncryptTest(0x0909090909090909, 0x0909090909090909) == 0xF0139440647A6E7B); | |
assert(desEncryptTest(0x0A0A0A0A0A0A0A0A, 0x0A0A0A0A0A0A0A0A) == 0x0A288603044D740C); | |
assert(desEncryptTest(0x0B0B0B0B0B0B0B0B, 0x0B0B0B0B0B0B0B0B) == 0x6359916942F7438F); | |
assert(desEncryptTest(0x0C0C0C0C0C0C0C0C, 0x0C0C0C0C0C0C0C0C) == 0x934316AE443CF08B); | |
assert(desEncryptTest(0x0D0D0D0D0D0D0D0D, 0x0D0D0D0D0D0D0D0D) == 0xE3F56D7F1130A2B7); | |
assert(desEncryptTest(0x0E0E0E0E0E0E0E0E, 0x0E0E0E0E0E0E0E0E) == 0xA2E4705087C6B6B4); | |
assert(desEncryptTest(0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F) == 0xD5D76E09A447E8C3); | |
assert(desEncryptTest(0x1010101010101010, 0x1010101010101010) == 0xDD7515F2BFC17F85); | |
assert(desEncryptTest(0x1111111111111111, 0x1111111111111111) == 0xF40379AB9E0EC533); | |
assert(desEncryptTest(0x1212121212121212, 0x1212121212121212) == 0x96CD27784D1563E5); | |
assert(desEncryptTest(0x1313131313131313, 0x1313131313131313) == 0x2911CF5E94D33FE1); | |
assert(desEncryptTest(0x1414141414141414, 0x1414141414141414) == 0x377B7F7CA3E5BBB3); | |
assert(desEncryptTest(0x1515151515151515, 0x1515151515151515) == 0x701AA63832905A92); | |
assert(desEncryptTest(0x1616161616161616, 0x1616161616161616) == 0x2006E716C4252D6D); | |
assert(desEncryptTest(0x1717171717171717, 0x1717171717171717) == 0x452C1197422469F8); | |
assert(desEncryptTest(0x1818181818181818, 0x1818181818181818) == 0xC33FD1EB49CB64DA); | |
assert(desEncryptTest(0x1919191919191919, 0x1919191919191919) == 0x7572278F364EB50D); | |
assert(desEncryptTest(0x1A1A1A1A1A1A1A1A, 0x1A1A1A1A1A1A1A1A) == 0x69E51488403EF4C3); | |
assert(desEncryptTest(0x1B1B1B1B1B1B1B1B, 0x1B1B1B1B1B1B1B1B) == 0xFF847E0ADF192825); | |
assert(desEncryptTest(0x1C1C1C1C1C1C1C1C, 0x1C1C1C1C1C1C1C1C) == 0x521B7FB3B41BB791); | |
assert(desEncryptTest(0x1D1D1D1D1D1D1D1D, 0x1D1D1D1D1D1D1D1D) == 0x26059A6A0F3F6B35); | |
assert(desEncryptTest(0x1E1E1E1E1E1E1E1E, 0x1E1E1E1E1E1E1E1E) == 0xF24A8D2231C77538); | |
assert(desEncryptTest(0x1F1F1F1F1F1F1F1F, 0x1F1F1F1F1F1F1F1F) == 0x4FD96EC0D3304EF6); | |
assert(desEncryptTest(0x2020202020202020, 0x2020202020202020) == 0x18A9D580A900B699); | |
assert(desEncryptTest(0x2121212121212121, 0x2121212121212121) == 0x88586E1D755B9B5A); | |
assert(desEncryptTest(0x2222222222222222, 0x2222222222222222) == 0x0F8ADFFB11DC2784); | |
assert(desEncryptTest(0x2323232323232323, 0x2323232323232323) == 0x2F30446C8312404A); | |
assert(desEncryptTest(0x2424242424242424, 0x2424242424242424) == 0x0BA03D9E6C196511); | |
assert(desEncryptTest(0x2525252525252525, 0x2525252525252525) == 0x3E55E997611E4B7D); | |
assert(desEncryptTest(0x2626262626262626, 0x2626262626262626) == 0xB2522FB5F158F0DF); | |
assert(desEncryptTest(0x2727272727272727, 0x2727272727272727) == 0x2109425935406AB8); | |
assert(desEncryptTest(0x2828282828282828, 0x2828282828282828) == 0x11A16028F310FF16); | |
assert(desEncryptTest(0x2929292929292929, 0x2929292929292929) == 0x73F0C45F379FE67F); | |
assert(desEncryptTest(0x2A2A2A2A2A2A2A2A, 0x2A2A2A2A2A2A2A2A) == 0xDCAD4338F7523816); | |
assert(desEncryptTest(0x2B2B2B2B2B2B2B2B, 0x2B2B2B2B2B2B2B2B) == 0xB81634C1CEAB298C); | |
assert(desEncryptTest(0x2C2C2C2C2C2C2C2C, 0x2C2C2C2C2C2C2C2C) == 0xDD2CCB29B6C4C349); | |
assert(desEncryptTest(0x2D2D2D2D2D2D2D2D, 0x2D2D2D2D2D2D2D2D) == 0x7D07A77A2ABD50A7); | |
assert(desEncryptTest(0x2E2E2E2E2E2E2E2E, 0x2E2E2E2E2E2E2E2E) == 0x30C1B0C1FD91D371); | |
assert(desEncryptTest(0x2F2F2F2F2F2F2F2F, 0x2F2F2F2F2F2F2F2F) == 0xC4427B31AC61973B); | |
assert(desEncryptTest(0x3030303030303030, 0x3030303030303030) == 0xF47BB46273B15EB5); | |
assert(desEncryptTest(0x3131313131313131, 0x3131313131313131) == 0x655EA628CF62585F); | |
assert(desEncryptTest(0x3232323232323232, 0x3232323232323232) == 0xAC978C247863388F); | |
assert(desEncryptTest(0x3333333333333333, 0x3333333333333333) == 0x0432ED386F2DE328); | |
assert(desEncryptTest(0x3434343434343434, 0x3434343434343434) == 0xD254014CB986B3C2); | |
assert(desEncryptTest(0x3535353535353535, 0x3535353535353535) == 0xB256E34BEDB49801); | |
assert(desEncryptTest(0x3636363636363636, 0x3636363636363636) == 0x37F8759EB77E7BFC); | |
assert(desEncryptTest(0x3737373737373737, 0x3737373737373737) == 0x5013CA4F62C9CEA0); | |
assert(desEncryptTest(0x3838383838383838, 0x3838383838383838) == 0x8940F7B3EACA5939); | |
assert(desEncryptTest(0x3939393939393939, 0x3939393939393939) == 0xE22B19A55086774B); | |
assert(desEncryptTest(0x3A3A3A3A3A3A3A3A, 0x3A3A3A3A3A3A3A3A) == 0xB04A2AAC925ABB0B); | |
assert(desEncryptTest(0x3B3B3B3B3B3B3B3B, 0x3B3B3B3B3B3B3B3B) == 0x8D250D58361597FC); | |
assert(desEncryptTest(0x3C3C3C3C3C3C3C3C, 0x3C3C3C3C3C3C3C3C) == 0x51F0114FB6A6CD37); | |
assert(desEncryptTest(0x3D3D3D3D3D3D3D3D, 0x3D3D3D3D3D3D3D3D) == 0x9D0BB4DB830ECB73); | |
assert(desEncryptTest(0x3E3E3E3E3E3E3E3E, 0x3E3E3E3E3E3E3E3E) == 0xE96089D6368F3E1A); | |
assert(desEncryptTest(0x3F3F3F3F3F3F3F3F, 0x3F3F3F3F3F3F3F3F) == 0x5C4CA877A4E1E92D); | |
assert(desEncryptTest(0x4040404040404040, 0x4040404040404040) == 0x6D55DDBC8DEA95FF); | |
assert(desEncryptTest(0x4141414141414141, 0x4141414141414141) == 0x19DF84AC95551003); | |
assert(desEncryptTest(0x4242424242424242, 0x4242424242424242) == 0x724E7332696D08A7); | |
assert(desEncryptTest(0x4343434343434343, 0x4343434343434343) == 0xB91810B8CDC58FE2); | |
assert(desEncryptTest(0x4444444444444444, 0x4444444444444444) == 0x06E23526EDCCD0C4); | |
assert(desEncryptTest(0x4545454545454545, 0x4545454545454545) == 0xEF52491D5468D441); | |
assert(desEncryptTest(0x4646464646464646, 0x4646464646464646) == 0x48019C59E39B90C5); | |
assert(desEncryptTest(0x4747474747474747, 0x4747474747474747) == 0x0544083FB902D8C0); | |
assert(desEncryptTest(0x4848484848484848, 0x4848484848484848) == 0x63B15CADA668CE12); | |
assert(desEncryptTest(0x4949494949494949, 0x4949494949494949) == 0xEACC0C1264171071); | |
assert(desEncryptTest(0x4A4A4A4A4A4A4A4A, 0x4A4A4A4A4A4A4A4A) == 0x9D2B8C0AC605F274); | |
assert(desEncryptTest(0x4B4B4B4B4B4B4B4B, 0x4B4B4B4B4B4B4B4B) == 0xC90F2F4C98A8FB2A); | |
assert(desEncryptTest(0x4C4C4C4C4C4C4C4C, 0x4C4C4C4C4C4C4C4C) == 0x03481B4828FD1D04); | |
assert(desEncryptTest(0x4D4D4D4D4D4D4D4D, 0x4D4D4D4D4D4D4D4D) == 0xC78FC45A1DCEA2E2); | |
assert(desEncryptTest(0x4E4E4E4E4E4E4E4E, 0x4E4E4E4E4E4E4E4E) == 0xDB96D88C3460D801); | |
assert(desEncryptTest(0x4F4F4F4F4F4F4F4F, 0x4F4F4F4F4F4F4F4F) == 0x6C69E720F5105518); | |
assert(desEncryptTest(0x5050505050505050, 0x5050505050505050) == 0x0D262E418BC893F3); | |
assert(desEncryptTest(0x5151515151515151, 0x5151515151515151) == 0x6AD84FD7848A0A5C); | |
assert(desEncryptTest(0x5252525252525252, 0x5252525252525252) == 0xC365CB35B34B6114); | |
assert(desEncryptTest(0x5353535353535353, 0x5353535353535353) == 0x1155392E877F42A9); | |
assert(desEncryptTest(0x5454545454545454, 0x5454545454545454) == 0x531BE5F9405DA715); | |
assert(desEncryptTest(0x5555555555555555, 0x5555555555555555) == 0x3BCDD41E6165A5E8); | |
assert(desEncryptTest(0x5656565656565656, 0x5656565656565656) == 0x2B1FF5610A19270C); | |
assert(desEncryptTest(0x5757575757575757, 0x5757575757575757) == 0xD90772CF3F047CFD); | |
assert(desEncryptTest(0x5858585858585858, 0x5858585858585858) == 0x1BEA27FFB72457B7); | |
assert(desEncryptTest(0x5959595959595959, 0x5959595959595959) == 0x85C3E0C429F34C27); | |
assert(desEncryptTest(0x5A5A5A5A5A5A5A5A, 0x5A5A5A5A5A5A5A5A) == 0xF9038021E37C7618); | |
assert(desEncryptTest(0x5B5B5B5B5B5B5B5B, 0x5B5B5B5B5B5B5B5B) == 0x35BC6FF838DBA32F); | |
assert(desEncryptTest(0x5C5C5C5C5C5C5C5C, 0x5C5C5C5C5C5C5C5C) == 0x4927ACC8CE45ECE7); | |
assert(desEncryptTest(0x5D5D5D5D5D5D5D5D, 0x5D5D5D5D5D5D5D5D) == 0xE812EE6E3572985C); | |
assert(desEncryptTest(0x5E5E5E5E5E5E5E5E, 0x5E5E5E5E5E5E5E5E) == 0x9BB93A89627BF65F); | |
assert(desEncryptTest(0x5F5F5F5F5F5F5F5F, 0x5F5F5F5F5F5F5F5F) == 0xEF12476884CB74CA); | |
assert(desEncryptTest(0x6060606060606060, 0x6060606060606060) == 0x1BF17E00C09E7CBF); | |
assert(desEncryptTest(0x6161616161616161, 0x6161616161616161) == 0x29932350C098DB5D); | |
assert(desEncryptTest(0x6262626262626262, 0x6262626262626262) == 0xB476E6499842AC54); | |
assert(desEncryptTest(0x6363636363636363, 0x6363636363636363) == 0x5C662C29C1E96056); | |
assert(desEncryptTest(0x6464646464646464, 0x6464646464646464) == 0x3AF1703D76442789); | |
assert(desEncryptTest(0x6565656565656565, 0x6565656565656565) == 0x86405D9B425A8C8C); | |
assert(desEncryptTest(0x6666666666666666, 0x6666666666666666) == 0xEBBF4810619C2C55); | |
assert(desEncryptTest(0x6767676767676767, 0x6767676767676767) == 0xF8D1CD7367B21B5D); | |
assert(desEncryptTest(0x6868686868686868, 0x6868686868686868) == 0x9EE703142BF8D7E2); | |
assert(desEncryptTest(0x6969696969696969, 0x6969696969696969) == 0x5FDFFFC3AAAB0CB3); | |
assert(desEncryptTest(0x6A6A6A6A6A6A6A6A, 0x6A6A6A6A6A6A6A6A) == 0x26C940AB13574231); | |
assert(desEncryptTest(0x6B6B6B6B6B6B6B6B, 0x6B6B6B6B6B6B6B6B) == 0x1E2DC77E36A84693); | |
assert(desEncryptTest(0x6C6C6C6C6C6C6C6C, 0x6C6C6C6C6C6C6C6C) == 0x0F4FF4D9BC7E2244); | |
assert(desEncryptTest(0x6D6D6D6D6D6D6D6D, 0x6D6D6D6D6D6D6D6D) == 0xA4C9A0D04D3280CD); | |
assert(desEncryptTest(0x6E6E6E6E6E6E6E6E, 0x6E6E6E6E6E6E6E6E) == 0x9FAF2C96FE84919D); | |
assert(desEncryptTest(0x6F6F6F6F6F6F6F6F, 0x6F6F6F6F6F6F6F6F) == 0x115DBC965E6096C8); | |
assert(desEncryptTest(0x7070707070707070, 0x7070707070707070) == 0xAF531E9520994017); | |
assert(desEncryptTest(0x7171717171717171, 0x7171717171717171) == 0xB971ADE70E5C89EE); | |
assert(desEncryptTest(0x7272727272727272, 0x7272727272727272) == 0x415D81C86AF9C376); | |
assert(desEncryptTest(0x7373737373737373, 0x7373737373737373) == 0x8DFB864FDB3C6811); | |
assert(desEncryptTest(0x7474747474747474, 0x7474747474747474) == 0x10B1C170E3398F91); | |
assert(desEncryptTest(0x7575757575757575, 0x7575757575757575) == 0xCFEF7A1C0218DB1E); | |
assert(desEncryptTest(0x7676767676767676, 0x7676767676767676) == 0xDBAC30A2A40B1B9C); | |
assert(desEncryptTest(0x7777777777777777, 0x7777777777777777) == 0x89D3BF37052162E9); | |
assert(desEncryptTest(0x7878787878787878, 0x7878787878787878) == 0x80D9230BDAEB67DC); | |
assert(desEncryptTest(0x7979797979797979, 0x7979797979797979) == 0x3440911019AD68D7); | |
assert(desEncryptTest(0x7A7A7A7A7A7A7A7A, 0x7A7A7A7A7A7A7A7A) == 0x9626FE57596E199E); | |
assert(desEncryptTest(0x7B7B7B7B7B7B7B7B, 0x7B7B7B7B7B7B7B7B) == 0xDEA0B796624BB5BA); | |
assert(desEncryptTest(0x7C7C7C7C7C7C7C7C, 0x7C7C7C7C7C7C7C7C) == 0xE9E40542BDDB3E9D); | |
assert(desEncryptTest(0x7D7D7D7D7D7D7D7D, 0x7D7D7D7D7D7D7D7D) == 0x8AD99914B354B911); | |
assert(desEncryptTest(0x7E7E7E7E7E7E7E7E, 0x7E7E7E7E7E7E7E7E) == 0x6F85B98DD12CB13B); | |
assert(desEncryptTest(0x7F7F7F7F7F7F7F7F, 0x7F7F7F7F7F7F7F7F) == 0x10130DA3C3A23924); | |
assert(desEncryptTest(0x8080808080808080, 0x8080808080808080) == 0xEFECF25C3C5DC6DB); | |
assert(desEncryptTest(0x8181818181818181, 0x8181818181818181) == 0x907A46722ED34EC4); | |
assert(desEncryptTest(0x8282828282828282, 0x8282828282828282) == 0x752666EB4CAB46EE); | |
assert(desEncryptTest(0x8383838383838383, 0x8383838383838383) == 0x161BFABD4224C162); | |
assert(desEncryptTest(0x8484848484848484, 0x8484848484848484) == 0x215F48699DB44A45); | |
assert(desEncryptTest(0x8585858585858585, 0x8585858585858585) == 0x69D901A8A691E661); | |
assert(desEncryptTest(0x8686868686868686, 0x8686868686868686) == 0xCBBF6EEFE6529728); | |
assert(desEncryptTest(0x8787878787878787, 0x8787878787878787) == 0x7F26DCF425149823); | |
assert(desEncryptTest(0x8888888888888888, 0x8888888888888888) == 0x762C40C8FADE9D16); | |
assert(desEncryptTest(0x8989898989898989, 0x8989898989898989) == 0x2453CF5D5BF4E463); | |
assert(desEncryptTest(0x8A8A8A8A8A8A8A8A, 0x8A8A8A8A8A8A8A8A) == 0x301085E3FDE724E1); | |
assert(desEncryptTest(0x8B8B8B8B8B8B8B8B, 0x8B8B8B8B8B8B8B8B) == 0xEF4E3E8F1CC6706E); | |
assert(desEncryptTest(0x8C8C8C8C8C8C8C8C, 0x8C8C8C8C8C8C8C8C) == 0x720479B024C397EE); | |
assert(desEncryptTest(0x8D8D8D8D8D8D8D8D, 0x8D8D8D8D8D8D8D8D) == 0xBEA27E3795063C89); | |
assert(desEncryptTest(0x8E8E8E8E8E8E8E8E, 0x8E8E8E8E8E8E8E8E) == 0x468E5218F1A37611); | |
assert(desEncryptTest(0x8F8F8F8F8F8F8F8F, 0x8F8F8F8F8F8F8F8F) == 0x50ACE16ADF66BFE8); | |
assert(desEncryptTest(0x9090909090909090, 0x9090909090909090) == 0xEEA24369A19F6937); | |
assert(desEncryptTest(0x9191919191919191, 0x9191919191919191) == 0x6050D369017B6E62); | |
assert(desEncryptTest(0x9292929292929292, 0x9292929292929292) == 0x5B365F2FB2CD7F32); | |
assert(desEncryptTest(0x9393939393939393, 0x9393939393939393) == 0xF0B00B264381DDBB); | |
assert(desEncryptTest(0x9494949494949494, 0x9494949494949494) == 0xE1D23881C957B96C); | |
assert(desEncryptTest(0x9595959595959595, 0x9595959595959595) == 0xD936BF54ECA8BDCE); | |
assert(desEncryptTest(0x9696969696969696, 0x9696969696969696) == 0xA020003C5554F34C); | |
assert(desEncryptTest(0x9797979797979797, 0x9797979797979797) == 0x6118FCEBD407281D); | |
assert(desEncryptTest(0x9898989898989898, 0x9898989898989898) == 0x072E328C984DE4A2); | |
assert(desEncryptTest(0x9999999999999999, 0x9999999999999999) == 0x1440B7EF9E63D3AA); | |
assert(desEncryptTest(0x9A9A9A9A9A9A9A9A, 0x9A9A9A9A9A9A9A9A) == 0x79BFA264BDA57373); | |
assert(desEncryptTest(0x9B9B9B9B9B9B9B9B, 0x9B9B9B9B9B9B9B9B) == 0xC50E8FC289BBD876); | |
assert(desEncryptTest(0x9C9C9C9C9C9C9C9C, 0x9C9C9C9C9C9C9C9C) == 0xA399D3D63E169FA9); | |
assert(desEncryptTest(0x9D9D9D9D9D9D9D9D, 0x9D9D9D9D9D9D9D9D) == 0x4B8919B667BD53AB); | |
assert(desEncryptTest(0x9E9E9E9E9E9E9E9E, 0x9E9E9E9E9E9E9E9E) == 0xD66CDCAF3F6724A2); | |
assert(desEncryptTest(0x9F9F9F9F9F9F9F9F, 0x9F9F9F9F9F9F9F9F) == 0xE40E81FF3F618340); | |
assert(desEncryptTest(0xA0A0A0A0A0A0A0A0, 0xA0A0A0A0A0A0A0A0) == 0x10EDB8977B348B35); | |
assert(desEncryptTest(0xA1A1A1A1A1A1A1A1, 0xA1A1A1A1A1A1A1A1) == 0x6446C5769D8409A0); | |
assert(desEncryptTest(0xA2A2A2A2A2A2A2A2, 0xA2A2A2A2A2A2A2A2) == 0x17ED1191CA8D67A3); | |
assert(desEncryptTest(0xA3A3A3A3A3A3A3A3, 0xA3A3A3A3A3A3A3A3) == 0xB6D8533731BA1318); | |
assert(desEncryptTest(0xA4A4A4A4A4A4A4A4, 0xA4A4A4A4A4A4A4A4) == 0xCA439007C7245CD0); | |
assert(desEncryptTest(0xA5A5A5A5A5A5A5A5, 0xA5A5A5A5A5A5A5A5) == 0x06FC7FDE1C8389E7); | |
assert(desEncryptTest(0xA6A6A6A6A6A6A6A6, 0xA6A6A6A6A6A6A6A6) == 0x7A3C1F3BD60CB3D8); | |
assert(desEncryptTest(0xA7A7A7A7A7A7A7A7, 0xA7A7A7A7A7A7A7A7) == 0xE415D80048DBA848); | |
assert(desEncryptTest(0xA8A8A8A8A8A8A8A8, 0xA8A8A8A8A8A8A8A8) == 0x26F88D30C0FB8302); | |
assert(desEncryptTest(0xA9A9A9A9A9A9A9A9, 0xA9A9A9A9A9A9A9A9) == 0xD4E00A9EF5E6D8F3); | |
assert(desEncryptTest(0xAAAAAAAAAAAAAAAA, 0xAAAAAAAAAAAAAAAA) == 0xC4322BE19E9A5A17); | |
assert(desEncryptTest(0xABABABABABABABAB, 0xABABABABABABABAB) == 0xACE41A06BFA258EA); | |
assert(desEncryptTest(0xACACACACACACACAC, 0xACACACACACACACAC) == 0xEEAAC6D17880BD56); | |
assert(desEncryptTest(0xADADADADADADADAD, 0xADADADADADADADAD) == 0x3C9A34CA4CB49EEB); | |
assert(desEncryptTest(0xAEAEAEAEAEAEAEAE, 0xAEAEAEAEAEAEAEAE) == 0x9527B0287B75F5A3); | |
assert(desEncryptTest(0xAFAFAFAFAFAFAFAF, 0xAFAFAFAFAFAFAFAF) == 0xF2D9D1BE74376C0C); | |
assert(desEncryptTest(0xB0B0B0B0B0B0B0B0, 0xB0B0B0B0B0B0B0B0) == 0x939618DF0AEFAAE7); | |
assert(desEncryptTest(0xB1B1B1B1B1B1B1B1, 0xB1B1B1B1B1B1B1B1) == 0x24692773CB9F27FE); | |
assert(desEncryptTest(0xB2B2B2B2B2B2B2B2, 0xB2B2B2B2B2B2B2B2) == 0x38703BA5E2315D1D); | |
assert(desEncryptTest(0xB3B3B3B3B3B3B3B3, 0xB3B3B3B3B3B3B3B3) == 0xFCB7E4B7D702E2FB); | |
assert(desEncryptTest(0xB4B4B4B4B4B4B4B4, 0xB4B4B4B4B4B4B4B4) == 0x36F0D0B3675704D5); | |
assert(desEncryptTest(0xB5B5B5B5B5B5B5B5, 0xB5B5B5B5B5B5B5B5) == 0x62D473F539FA0D8B); | |
assert(desEncryptTest(0xB6B6B6B6B6B6B6B6, 0xB6B6B6B6B6B6B6B6) == 0x1533F3ED9BE8EF8E); | |
assert(desEncryptTest(0xB7B7B7B7B7B7B7B7, 0xB7B7B7B7B7B7B7B7) == 0x9C4EA352599731ED); | |
assert(desEncryptTest(0xB8B8B8B8B8B8B8B8, 0xB8B8B8B8B8B8B8B8) == 0xFABBF7C046FD273F); | |
assert(desEncryptTest(0xB9B9B9B9B9B9B9B9, 0xB9B9B9B9B9B9B9B9) == 0xB7FE63A61C646F3A); | |
assert(desEncryptTest(0xBABABABABABABABA, 0xBABABABABABABABA) == 0x10ADB6E2AB972BBE); | |
assert(desEncryptTest(0xBBBBBBBBBBBBBBBB, 0xBBBBBBBBBBBBBBBB) == 0xF91DCAD912332F3B); | |
assert(desEncryptTest(0xBCBCBCBCBCBCBCBC, 0xBCBCBCBCBCBCBCBC) == 0x46E7EF47323A701D); | |
assert(desEncryptTest(0xBDBDBDBDBDBDBDBD, 0xBDBDBDBDBDBDBDBD) == 0x8DB18CCD9692F758); | |
assert(desEncryptTest(0xBEBEBEBEBEBEBEBE, 0xBEBEBEBEBEBEBEBE) == 0xE6207B536AAAEFFC); | |
assert(desEncryptTest(0xBFBFBFBFBFBFBFBF, 0xBFBFBFBFBFBFBFBF) == 0x92AA224372156A00); | |
assert(desEncryptTest(0xC0C0C0C0C0C0C0C0, 0xC0C0C0C0C0C0C0C0) == 0xA3B357885B1E16D2); | |
assert(desEncryptTest(0xC1C1C1C1C1C1C1C1, 0xC1C1C1C1C1C1C1C1) == 0x169F7629C970C1E5); | |
assert(desEncryptTest(0xC2C2C2C2C2C2C2C2, 0xC2C2C2C2C2C2C2C2) == 0x62F44B247CF1348C); | |
assert(desEncryptTest(0xC3C3C3C3C3C3C3C3, 0xC3C3C3C3C3C3C3C3) == 0xAE0FEEB0495932C8); | |
assert(desEncryptTest(0xC4C4C4C4C4C4C4C4, 0xC4C4C4C4C4C4C4C4) == 0x72DAF2A7C9EA6803); | |
assert(desEncryptTest(0xC5C5C5C5C5C5C5C5, 0xC5C5C5C5C5C5C5C5) == 0x4FB5D5536DA544F4); | |
assert(desEncryptTest(0xC6C6C6C6C6C6C6C6, 0xC6C6C6C6C6C6C6C6) == 0x1DD4E65AAF7988B4); | |
assert(desEncryptTest(0xC7C7C7C7C7C7C7C7, 0xC7C7C7C7C7C7C7C7) == 0x76BF084C1535A6C6); | |
assert(desEncryptTest(0xC8C8C8C8C8C8C8C8, 0xC8C8C8C8C8C8C8C8) == 0xAFEC35B09D36315F); | |
assert(desEncryptTest(0xC9C9C9C9C9C9C9C9, 0xC9C9C9C9C9C9C9C9) == 0xC8078A6148818403); | |
assert(desEncryptTest(0xCACACACACACACACA, 0xCACACACACACACACA) == 0x4DA91CB4124B67FE); | |
assert(desEncryptTest(0xCBCBCBCBCBCBCBCB, 0xCBCBCBCBCBCBCBCB) == 0x2DABFEB346794C3D); | |
assert(desEncryptTest(0xCCCCCCCCCCCCCCCC, 0xCCCCCCCCCCCCCCCC) == 0xFBCD12C790D21CD7); | |
assert(desEncryptTest(0xCDCDCDCDCDCDCDCD, 0xCDCDCDCDCDCDCDCD) == 0x536873DB879CC770); | |
assert(desEncryptTest(0xCECECECECECECECE, 0xCECECECECECECECE) == 0x9AA159D7309DA7A0); | |
assert(desEncryptTest(0xCFCFCFCFCFCFCFCF, 0xCFCFCFCFCFCFCFCF) == 0x0B844B9D8C4EA14A); | |
assert(desEncryptTest(0xD0D0D0D0D0D0D0D0, 0xD0D0D0D0D0D0D0D0) == 0x3BBD84CE539E68C4); | |
assert(desEncryptTest(0xD1D1D1D1D1D1D1D1, 0xD1D1D1D1D1D1D1D1) == 0xCF3E4F3E026E2C8E); | |
assert(desEncryptTest(0xD2D2D2D2D2D2D2D2, 0xD2D2D2D2D2D2D2D2) == 0x82F85885D542AF58); | |
assert(desEncryptTest(0xD3D3D3D3D3D3D3D3, 0xD3D3D3D3D3D3D3D3) == 0x22D334D6493B3CB6); | |
assert(desEncryptTest(0xD4D4D4D4D4D4D4D4, 0xD4D4D4D4D4D4D4D4) == 0x47E9CB3E3154D673); | |
assert(desEncryptTest(0xD5D5D5D5D5D5D5D5, 0xD5D5D5D5D5D5D5D5) == 0x2352BCC708ADC7E9); | |
assert(desEncryptTest(0xD6D6D6D6D6D6D6D6, 0xD6D6D6D6D6D6D6D6) == 0x8C0F3BA0C8601980); | |
assert(desEncryptTest(0xD7D7D7D7D7D7D7D7, 0xD7D7D7D7D7D7D7D7) == 0xEE5E9FD70CEF00E9); | |
assert(desEncryptTest(0xD8D8D8D8D8D8D8D8, 0xD8D8D8D8D8D8D8D8) == 0xDEF6BDA6CABF9547); | |
assert(desEncryptTest(0xD9D9D9D9D9D9D9D9, 0xD9D9D9D9D9D9D9D9) == 0x4DADD04A0EA70F20); | |
assert(desEncryptTest(0xDADADADADADADADA, 0xDADADADADADADADA) == 0xC1AA16689EE1B482); | |
assert(desEncryptTest(0xDBDBDBDBDBDBDBDB, 0xDBDBDBDBDBDBDBDB) == 0xF45FC26193E69AEE); | |
assert(desEncryptTest(0xDCDCDCDCDCDCDCDC, 0xDCDCDCDCDCDCDCDC) == 0xD0CFBB937CEDBFB5); | |
assert(desEncryptTest(0xDDDDDDDDDDDDDDDD, 0xDDDDDDDDDDDDDDDD) == 0xF0752004EE23D87B); | |
assert(desEncryptTest(0xDEDEDEDEDEDEDEDE, 0xDEDEDEDEDEDEDEDE) == 0x77A791E28AA464A5); | |
assert(desEncryptTest(0xDFDFDFDFDFDFDFDF, 0xDFDFDFDFDFDFDFDF) == 0xE7562A7F56FF4966); | |
assert(desEncryptTest(0xE0E0E0E0E0E0E0E0, 0xE0E0E0E0E0E0E0E0) == 0xB026913F2CCFB109); | |
assert(desEncryptTest(0xE1E1E1E1E1E1E1E1, 0xE1E1E1E1E1E1E1E1) == 0x0DB572DDCE388AC7); | |
assert(desEncryptTest(0xE2E2E2E2E2E2E2E2, 0xE2E2E2E2E2E2E2E2) == 0xD9FA6595F0C094CA); | |
assert(desEncryptTest(0xE3E3E3E3E3E3E3E3, 0xE3E3E3E3E3E3E3E3) == 0xADE4804C4BE4486E); | |
assert(desEncryptTest(0xE4E4E4E4E4E4E4E4, 0xE4E4E4E4E4E4E4E4) == 0x007B81F520E6D7DA); | |
assert(desEncryptTest(0xE5E5E5E5E5E5E5E5, 0xE5E5E5E5E5E5E5E5) == 0x961AEB77BFC10B3C); | |
assert(desEncryptTest(0xE6E6E6E6E6E6E6E6, 0xE6E6E6E6E6E6E6E6) == 0x8A8DD870C9B14AF2); | |
assert(desEncryptTest(0xE7E7E7E7E7E7E7E7, 0xE7E7E7E7E7E7E7E7) == 0x3CC02E14B6349B25); | |
assert(desEncryptTest(0xE8E8E8E8E8E8E8E8, 0xE8E8E8E8E8E8E8E8) == 0xBAD3EE68BDDB9607); | |
assert(desEncryptTest(0xE9E9E9E9E9E9E9E9, 0xE9E9E9E9E9E9E9E9) == 0xDFF918E93BDAD292); | |
assert(desEncryptTest(0xEAEAEAEAEAEAEAEA, 0xEAEAEAEAEAEAEAEA) == 0x8FE559C7CD6FA56D); | |
assert(desEncryptTest(0xEBEBEBEBEBEBEBEB, 0xEBEBEBEBEBEBEBEB) == 0xC88480835C1A444C); | |
assert(desEncryptTest(0xECECECECECECECEC, 0xECECECECECECECEC) == 0xD6EE30A16B2CC01E); | |
assert(desEncryptTest(0xEDEDEDEDEDEDEDED, 0xEDEDEDEDEDEDEDED) == 0x6932D887B2EA9C1A); | |
assert(desEncryptTest(0xEEEEEEEEEEEEEEEE, 0xEEEEEEEEEEEEEEEE) == 0x0BFC865461F13ACC); | |
assert(desEncryptTest(0xEFEFEFEFEFEFEFEF, 0xEFEFEFEFEFEFEFEF) == 0x228AEA0D403E807A); | |
assert(desEncryptTest(0xF0F0F0F0F0F0F0F0, 0xF0F0F0F0F0F0F0F0) == 0x2A2891F65BB8173C); | |
assert(desEncryptTest(0xF1F1F1F1F1F1F1F1, 0xF1F1F1F1F1F1F1F1) == 0x5D1B8FAF7839494B); | |
assert(desEncryptTest(0xF2F2F2F2F2F2F2F2, 0xF2F2F2F2F2F2F2F2) == 0x1C0A9280EECF5D48); | |
assert(desEncryptTest(0xF3F3F3F3F3F3F3F3, 0xF3F3F3F3F3F3F3F3) == 0x6CBCE951BBC30F74); | |
assert(desEncryptTest(0xF4F4F4F4F4F4F4F4, 0xF4F4F4F4F4F4F4F4) == 0x9CA66E96BD08BC70); | |
assert(desEncryptTest(0xF5F5F5F5F5F5F5F5, 0xF5F5F5F5F5F5F5F5) == 0xF5D779FCFBB28BF3); | |
assert(desEncryptTest(0xF6F6F6F6F6F6F6F6, 0xF6F6F6F6F6F6F6F6) == 0x0FEC6BBF9B859184); | |
assert(desEncryptTest(0xF7F7F7F7F7F7F7F7, 0xF7F7F7F7F7F7F7F7) == 0xEF88D2BF052DBDA8); | |
assert(desEncryptTest(0xF8F8F8F8F8F8F8F8, 0xF8F8F8F8F8F8F8F8) == 0x39ADBDDB7363090D); | |
assert(desEncryptTest(0xF9F9F9F9F9F9F9F9, 0xF9F9F9F9F9F9F9F9) == 0xC0AEAF445F7E2A7A); | |
assert(desEncryptTest(0xFAFAFAFAFAFAFAFA, 0xFAFAFAFAFAFAFAFA) == 0xC66F54067298D4E9); | |
assert(desEncryptTest(0xFBFBFBFBFBFBFBFB, 0xFBFBFBFBFBFBFBFB) == 0xE0BA8F4488AAF97C); | |
assert(desEncryptTest(0xFCFCFCFCFCFCFCFC, 0xFCFCFCFCFCFCFCFC) == 0x67B36E2875D9631C); | |
assert(desEncryptTest(0xFDFDFDFDFDFDFDFD, 0xFDFDFDFDFDFDFDFD) == 0x1ED83D49E267191D); | |
assert(desEncryptTest(0xFEFEFEFEFEFEFEFE, 0xFEFEFEFEFEFEFEFE) == 0x66B2B23EA84693AD); | |
assert(desEncryptTest(0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF) == 0x7359B2163E4EDC58); | |
assert(desEncryptTest(0x0001020304050607, 0x0011223344556677) == 0x3EF0A891CF8ED990); | |
assert(desEncryptTest(0x2BD6459F82C5B300, 0xEA024714AD5C4D84) == 0x126EFE8ED312190A); | |
assert(desEncryptTest(0x8000000000000000, 0x1C29EEE68829F666) == 0x0000000000000000); | |
assert(desEncryptTest(0x4000000000000000, 0x1EBAA7E2844108D1) == 0x0000000000000000); | |
assert(desEncryptTest(0x2000000000000000, 0xDD75FF6DD1D07407) == 0x0000000000000000); | |
assert(desEncryptTest(0x1000000000000000, 0x6C0D0366D7FC1E93) == 0x0000000000000000); | |
assert(desEncryptTest(0x0800000000000000, 0x65FB4EDB3731E927) == 0x0000000000000000); | |
assert(desEncryptTest(0x0400000000000000, 0x1A4795892BD82629) == 0x0000000000000000); | |
assert(desEncryptTest(0x0200000000000000, 0x6E228A9F47A31527) == 0x0000000000000000); | |
assert(desEncryptTest(0x0100000000000000, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0080000000000000, 0x5A01EA0528FE4DBC) == 0x0000000000000000); | |
assert(desEncryptTest(0x0040000000000000, 0x2AA7048B7F843ACC) == 0x0000000000000000); | |
assert(desEncryptTest(0x0020000000000000, 0xFB1426125A5AE00F) == 0x0000000000000000); | |
assert(desEncryptTest(0x0010000000000000, 0x3ACC2A83D9FE0CF8) == 0x0000000000000000); | |
assert(desEncryptTest(0x0008000000000000, 0x2616451A5426B97D) == 0x0000000000000000); | |
assert(desEncryptTest(0x0004000000000000, 0xB85395BAA402FFB9) == 0x0000000000000000); | |
assert(desEncryptTest(0x0002000000000000, 0xD02182A2E8E573A1) == 0x0000000000000000); | |
assert(desEncryptTest(0x0001000000000000, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000800000000000, 0xC6ED12A06A4CC156) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000400000000000, 0x64EEA4A26D381E26) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000200000000000, 0x4EA9D5AA0C2C3C4E) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000100000000000, 0x8D8661C34C6F4D21) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000080000000000, 0xE3FF48ACC26B8A33) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000040000000000, 0xC57374F43AF34F17) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000020000000000, 0x857FB4722F85F57F) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000010000000000, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000008000000000, 0xD86AFF1EE01AAA00) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000004000000000, 0x7B4937859794FC5E) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000002000000000, 0x05EF338303C238D9) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000001000000000, 0x0E2F05283A7DD2B2) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000800000000, 0x661502A71B53EAD4) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000400000000, 0x1EBBFCECD36FA671) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000200000000, 0x6800E59AF69486CD) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000100000000, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000080000000, 0x82453A94E658B38D) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000040000000, 0xBD0622EBC5E34C41) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000020000000, 0x4C3E34B8BE70C9F2) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000010000000, 0x1027E471BF185728) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000008000000, 0x39DE1CB6FE1959A4) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000004000000, 0xE3C3CC1A68B58E5D) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000002000000, 0xB60F05703D5012FA) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000001000000, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000800000, 0xD19667C59D94D4F7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000400000, 0x3CA5963292ED8725) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000200000, 0x1F2B2104BF62E510) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000100000, 0x322D5F2AD1F6C3F8) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000080000, 0x202D8D2E16C3DE65) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000040000, 0x10B71036AF979F7A) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000020000, 0x980048358ADB5189) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000010000, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000008000, 0x737589DC3ADDB4D5) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000004000, 0xF7900FD046800D04) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000002000, 0x95BE3F4238740526) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000001000, 0x656F2445A164F9E1) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000800, 0x6C77909A14006365) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000400, 0xB3524D3045B44663) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000200, 0x4BFE8E87CFF074F7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000100, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000080, 0x0EBFE2B0D89F9EC3) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000040, 0xA34785BBA566D0D5) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000020, 0xF2B12EA4CF8F6FC2) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000010, 0x5D65F4BD79E2AD83) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000008, 0x6D2D1CC9A52139BD) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000004, 0x6CB9F25ABAAA9DDD) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000002, 0x2F3F20C13DEF464C) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000001, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x95F8A5E5DD31D900) == 0x8000000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xDD7F121CA5015619) == 0x4000000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x2E8653104F3834EA) == 0x2000000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x4BD388FF6CD81D4F) == 0x1000000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x20B9E767B2FB1456) == 0x0800000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x55579380D77138EF) == 0x0400000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x6CC5DEFAAF04512F) == 0x0200000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x0D9F279BA5D87260) == 0x0100000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xD9031B0271BD5A0A) == 0x0080000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x424250B37C3DD951) == 0x0040000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xB8061B7ECD9A21E5) == 0x0020000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xF15D0F286B65BD28) == 0x0010000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xADD0CC8D6E5DEBA1) == 0x0008000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xE6D5F82752AD63D1) == 0x0004000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xECBFE3BD3F591A5E) == 0x0002000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xF356834379D165CD) == 0x0001000000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x2B9F982F20037FA9) == 0x0000800000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x889DE068A16F0BE6) == 0x0000400000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xE19E275D846A1298) == 0x0000200000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x329A8ED523D71AEC) == 0x0000100000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xE7FCE22557D23C97) == 0x0000080000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x12A9F5817FF2D65D) == 0x0000040000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xA484C3AD38DC9C19) == 0x0000020000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xFBE00A8A1EF8AD72) == 0x0000010000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x750D079407521363) == 0x0000008000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x64FEED9C724C2FAF) == 0x0000004000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xF02B263B328E2B60) == 0x0000002000000000); | |
assert(desEncryptTest(0x0000000000000000, 0x9D64555A9A10B852) == 0x0000001000000000); | |
assert(desEncryptTest(0x0000000000000000, 0xD106FF0BED5255D7) == 0x0000000800000000); | |
assert(desEncryptTest(0x0000000000000000, 0xE1652C6B138C64A5) == 0x0000000400000000); | |
assert(desEncryptTest(0x0000000000000000, 0xE428581186EC8F46) == 0x0000000200000000); | |
assert(desEncryptTest(0x0000000000000000, 0xAEB5F5EDE22D1A36) == 0x0000000100000000); | |
assert(desEncryptTest(0x0000000000000000, 0xE943D7568AEC0C5C) == 0x0000000080000000); | |
assert(desEncryptTest(0x0000000000000000, 0xDF98C8276F54B04B) == 0x0000000040000000); | |
assert(desEncryptTest(0x0000000000000000, 0xB160E4680F6C696F) == 0x0000000020000000); | |
assert(desEncryptTest(0x0000000000000000, 0xFA0752B07D9C4AB8) == 0x0000000010000000); | |
assert(desEncryptTest(0x0000000000000000, 0xCA3A2B036DBC8502) == 0x0000000008000000); | |
assert(desEncryptTest(0x0000000000000000, 0x5E0905517BB59BCF) == 0x0000000004000000); | |
assert(desEncryptTest(0x0000000000000000, 0x814EEB3B91D90726) == 0x0000000002000000); | |
assert(desEncryptTest(0x0000000000000000, 0x4D49DB1532919C9F) == 0x0000000001000000); | |
assert(desEncryptTest(0x0000000000000000, 0x25EB5FC3F8CF0621) == 0x0000000000800000); | |
assert(desEncryptTest(0x0000000000000000, 0xAB6A20C0620D1C6F) == 0x0000000000400000); | |
assert(desEncryptTest(0x0000000000000000, 0x79E90DBC98F92CCA) == 0x0000000000200000); | |
assert(desEncryptTest(0x0000000000000000, 0x866ECEDD8072BB0E) == 0x0000000000100000); | |
assert(desEncryptTest(0x0000000000000000, 0x8B54536F2F3E64A8) == 0x0000000000080000); | |
assert(desEncryptTest(0x0000000000000000, 0xEA51D3975595B86B) == 0x0000000000040000); | |
assert(desEncryptTest(0x0000000000000000, 0xCAFFC6AC4542DE31) == 0x0000000000020000); | |
assert(desEncryptTest(0x0000000000000000, 0x8DD45A2DDF90796C) == 0x0000000000010000); | |
assert(desEncryptTest(0x0000000000000000, 0x1029D55E880EC2D0) == 0x0000000000008000); | |
assert(desEncryptTest(0x0000000000000000, 0x5D86CB23639DBEA9) == 0x0000000000004000); | |
assert(desEncryptTest(0x0000000000000000, 0x1D1CA853AE7C0C5F) == 0x0000000000002000); | |
assert(desEncryptTest(0x0000000000000000, 0xCE332329248F3228) == 0x0000000000001000); | |
assert(desEncryptTest(0x0000000000000000, 0x8405D1ABE24FB942) == 0x0000000000000800); | |
assert(desEncryptTest(0x0000000000000000, 0xE643D78090CA4207) == 0x0000000000000400); | |
assert(desEncryptTest(0x0000000000000000, 0x48221B9937748A23) == 0x0000000000000200); | |
assert(desEncryptTest(0x0000000000000000, 0xDD7C0BBD61FAFD54) == 0x0000000000000100); | |
assert(desEncryptTest(0x0000000000000000, 0x2FBC291A570DB5C4) == 0x0000000000000080); | |
assert(desEncryptTest(0x0000000000000000, 0xE07C30D7E4E26E12) == 0x0000000000000040); | |
assert(desEncryptTest(0x0000000000000000, 0x0953E2258E8E90A1) == 0x0000000000000020); | |
assert(desEncryptTest(0x0000000000000000, 0x5B711BC4CEEBF2EE) == 0x0000000000000010); | |
assert(desEncryptTest(0x0000000000000000, 0xCC083F1E6D9E85F6) == 0x0000000000000008); | |
assert(desEncryptTest(0x0000000000000000, 0xD2FD8867D50D2DFE) == 0x0000000000000004); | |
assert(desEncryptTest(0x0000000000000000, 0x06E7EA22CE92708F) == 0x0000000000000002); | |
assert(desEncryptTest(0x0000000000000000, 0x166B40B44ABA4BD6) == 0x0000000000000001); | |
assert(desEncryptTest(0x0000000000000000, 0x8CA64DE9C1B123A7) == 0x0000000000000000); | |
assert(desEncryptTest(0x0101010101010101, 0x994D4DC157B96C52) == 0x0101010101010101); | |
assert(desEncryptTest(0x0202020202020202, 0xF09FA63CCDFA2BAD) == 0x0202020202020202); | |
assert(desEncryptTest(0x0303030303030303, 0x918C7AEFF893AD51) == 0x0303030303030303); | |
assert(desEncryptTest(0x0404040404040404, 0x8991C0C48CF0AF81) == 0x0404040404040404); | |
assert(desEncryptTest(0x0505050505050505, 0x25676954529031CB) == 0x0505050505050505); | |
assert(desEncryptTest(0x0606060606060606, 0xAAEF9DD11DE74546) == 0x0606060606060606); | |
assert(desEncryptTest(0x0707070707070707, 0x8DFFA9A0B2F2548B) == 0x0707070707070707); | |
assert(desEncryptTest(0x0808080808080808, 0xD932847445DA4FD8) == 0x0808080808080808); | |
assert(desEncryptTest(0x0909090909090909, 0x5110E59AAEC7335B) == 0x0909090909090909); | |
assert(desEncryptTest(0x0A0A0A0A0A0A0A0A, 0xCE681111BA3B7B11) == 0x0A0A0A0A0A0A0A0A); | |
assert(desEncryptTest(0x0B0B0B0B0B0B0B0B, 0xB5AD1C8C49965CCA) == 0x0B0B0B0B0B0B0B0B); | |
assert(desEncryptTest(0x0C0C0C0C0C0C0C0C, 0x9F9958F3E2767EA7) == 0x0C0C0C0C0C0C0C0C); | |
assert(desEncryptTest(0x0D0D0D0D0D0D0D0D, 0x149D6492A0D809EE) == 0x0D0D0D0D0D0D0D0D); | |
assert(desEncryptTest(0x0E0E0E0E0E0E0E0E, 0xF1EDC5B1F98F6313) == 0x0E0E0E0E0E0E0E0E); | |
assert(desEncryptTest(0x0F0F0F0F0F0F0F0F, 0x57057A2B85367BED) == 0x0F0F0F0F0F0F0F0F); | |
assert(desEncryptTest(0x1010101010101010, 0xB376C874E6F987D0) == 0x1010101010101010); | |
assert(desEncryptTest(0x1111111111111111, 0x237B2304C393D3AC) == 0x1111111111111111); | |
assert(desEncryptTest(0x1212121212121212, 0xA2F68A96740E3F2D) == 0x1212121212121212); | |
assert(desEncryptTest(0x1313131313131313, 0x1D779D8AB79E89EF) == 0x1313131313131313); | |
assert(desEncryptTest(0x1414141414141414, 0x1E59064FFEA191EF) == 0x1414141414141414); | |
assert(desEncryptTest(0x1515151515151515, 0x53B4DAE06761FFA1) == 0x1515151515151515); | |
assert(desEncryptTest(0x1616161616161616, 0x550FB1A5507A49ED) == 0x1616161616161616); | |
assert(desEncryptTest(0x1717171717171717, 0x64FFAFFBB608B002) == 0x1717171717171717); | |
assert(desEncryptTest(0x1818181818181818, 0x2EF928E663986E1C) == 0x1818181818181818); | |
assert(desEncryptTest(0x1919191919191919, 0x9C7EB95CB182233E) == 0x1919191919191919); | |
assert(desEncryptTest(0x1A1A1A1A1A1A1A1A, 0xB62CFEB46DD18577) == 0x1A1A1A1A1A1A1A1A); | |
assert(desEncryptTest(0x1B1B1B1B1B1B1B1B, 0x8F9F498CBA6DF908) == 0x1B1B1B1B1B1B1B1B); | |
assert(desEncryptTest(0x1C1C1C1C1C1C1C1C, 0x3017633FB8197C95) == 0x1C1C1C1C1C1C1C1C); | |
assert(desEncryptTest(0x1D1D1D1D1D1D1D1D, 0x079FA37ED80BA064) == 0x1D1D1D1D1D1D1D1D); | |
assert(desEncryptTest(0x1E1E1E1E1E1E1E1E, 0xC8040684A207D1B5) == 0x1E1E1E1E1E1E1E1E); | |
assert(desEncryptTest(0x1F1F1F1F1F1F1F1F, 0x61B145D97C491523) == 0x1F1F1F1F1F1F1F1F); | |
assert(desEncryptTest(0x2020202020202020, 0x9073C79790306F7D) == 0x2020202020202020); | |
assert(desEncryptTest(0x2121212121212121, 0xA80B2BFEBE10A4DA) == 0x2121212121212121); | |
assert(desEncryptTest(0x2222222222222222, 0xD105F93010B3B6F5) == 0x2222222222222222); | |
assert(desEncryptTest(0x2323232323232323, 0x8F521B75483A0B94) == 0x2323232323232323); | |
assert(desEncryptTest(0x2424242424242424, 0xC8F028A3EE60B289) == 0x2424242424242424); | |
assert(desEncryptTest(0x2525252525252525, 0xDC8D45D7517FB58C) == 0x2525252525252525); | |
assert(desEncryptTest(0x2626262626262626, 0xA827E72CD184555E) == 0x2626262626262626); | |
assert(desEncryptTest(0x2727272727272727, 0x11A586CDC15F4B62) == 0x2727272727272727); | |
assert(desEncryptTest(0x2828282828282828, 0x6066EF85FF1F8A46) == 0x2828282828282828); | |
assert(desEncryptTest(0x2929292929292929, 0x64F017F35A3F50D1) == 0x2929292929292929); | |
assert(desEncryptTest(0x2A2A2A2A2A2A2A2A, 0x19D9B4C305AB5AC4) == 0x2A2A2A2A2A2A2A2A); | |
assert(desEncryptTest(0x2B2B2B2B2B2B2B2B, 0xD13BE446B15397C0) == 0x2B2B2B2B2B2B2B2B); | |
assert(desEncryptTest(0x2C2C2C2C2C2C2C2C, 0xA1AAAC9B6D3DAB0A) == 0x2C2C2C2C2C2C2C2C); | |
assert(desEncryptTest(0x2D2D2D2D2D2D2D2D, 0x60EF54CED063EEAC) == 0x2D2D2D2D2D2D2D2D); | |
assert(desEncryptTest(0x2E2E2E2E2E2E2E2E, 0x659EF16E9EFFC16D) == 0x2E2E2E2E2E2E2E2E); | |
assert(desEncryptTest(0x2F2F2F2F2F2F2F2F, 0x7F991C35E71F8D95) == 0x2F2F2F2F2F2F2F2F); | |
assert(desEncryptTest(0x3030303030303030, 0x335AC5E54AA4C5FA) == 0x3030303030303030); | |
assert(desEncryptTest(0x3131313131313131, 0x6D0A7ECC98A019A6) == 0x3131313131313131); | |
assert(desEncryptTest(0x3232323232323232, 0xDB71F2F904CE4467) == 0x3232323232323232); | |
assert(desEncryptTest(0x3333333333333333, 0x19B6A607F49D7EBF) == 0x3333333333333333); | |
assert(desEncryptTest(0x3434343434343434, 0x086DA2A46819B2EC) == 0x3434343434343434); | |
assert(desEncryptTest(0x3535353535353535, 0xBFBEB4BB6C8BA8D3) == 0x3535353535353535); | |
assert(desEncryptTest(0x3636363636363636, 0xC0EA975A16621073) == 0x3636363636363636); | |
assert(desEncryptTest(0x3737373737373737, 0xB53D58A1CAD79864) == 0x3737373737373737); | |
assert(desEncryptTest(0x3838383838383838, 0xB7F074CB09D21987) == 0x3838383838383838); | |
assert(desEncryptTest(0x3939393939393939, 0xE6F6D6E5DCCAFBAF) == 0x3939393939393939); | |
assert(desEncryptTest(0x3A3A3A3A3A3A3A3A, 0x428395367157DB18) == 0x3A3A3A3A3A3A3A3A); | |
assert(desEncryptTest(0x3B3B3B3B3B3B3B3B, 0xB71F8389C32F928E) == 0x3B3B3B3B3B3B3B3B); | |
assert(desEncryptTest(0x3C3C3C3C3C3C3C3C, 0x290DDC00BAFBF6C0) == 0x3C3C3C3C3C3C3C3C); | |
assert(desEncryptTest(0x3D3D3D3D3D3D3D3D, 0x96F8EC19C7C00F69) == 0x3D3D3D3D3D3D3D3D); | |
assert(desEncryptTest(0x3E3E3E3E3E3E3E3E, 0xE1E2B92BEC7B6EDA) == 0x3E3E3E3E3E3E3E3E); | |
assert(desEncryptTest(0x3F3F3F3F3F3F3F3F, 0x4FCD12FF1A0F4828) == 0x3F3F3F3F3F3F3F3F); | |
assert(desEncryptTest(0x4040404040404040, 0xFDA1AEAC4103BEC7) == 0x4040404040404040); | |
assert(desEncryptTest(0x4141414141414141, 0xC023018BB50973DF) == 0x4141414141414141); | |
assert(desEncryptTest(0x4242424242424242, 0x2F17AB3C4EF47CED) == 0x4242424242424242); | |
assert(desEncryptTest(0x4343434343434343, 0x403E4F9726A43E2B) == 0x4343434343434343); | |
assert(desEncryptTest(0x4444444444444444, 0x300FB94913B09D9F) == 0x4444444444444444); | |
assert(desEncryptTest(0x4545454545454545, 0xCC3368EE3DD10A86) == 0x4545454545454545); | |
assert(desEncryptTest(0x4646464646464646, 0x4047149B98541E84) == 0x4646464646464646); | |
assert(desEncryptTest(0x4747474747474747, 0x6F50E18DA9045F21) == 0x4747474747474747); | |
assert(desEncryptTest(0x4848484848484848, 0x8714D44CAC7D0D14) == 0x4848484848484848); | |
assert(desEncryptTest(0x4949494949494949, 0x83829CFFC32CED9B) == 0x4949494949494949); | |
assert(desEncryptTest(0x4A4A4A4A4A4A4A4A, 0x16044259F6FEEF2A) == 0x4A4A4A4A4A4A4A4A); | |
assert(desEncryptTest(0x4B4B4B4B4B4B4B4B, 0xDAEB0CCC9F9C02A7) == 0x4B4B4B4B4B4B4B4B); | |
assert(desEncryptTest(0x4C4C4C4C4C4C4C4C, 0x1F9442EA265CB749) == 0x4C4C4C4C4C4C4C4C); | |
assert(desEncryptTest(0x4D4D4D4D4D4D4D4D, 0xE4911A6B657A86BE) == 0x4D4D4D4D4D4D4D4D); | |
assert(desEncryptTest(0x4E4E4E4E4E4E4E4E, 0x67464D8D5A2822CF) == 0x4E4E4E4E4E4E4E4E); | |
assert(desEncryptTest(0x4F4F4F4F4F4F4F4F, 0xC1419997381C7DA3) == 0x4F4F4F4F4F4F4F4F); | |
assert(desEncryptTest(0x5050505050505050, 0x599A5CD62A06D027) == 0x5050505050505050); | |
assert(desEncryptTest(0x5151515151515151, 0x88FD236C41B3BB51) == 0x5151515151515151); | |
assert(desEncryptTest(0x5252525252525252, 0x41CC247560605B0B) == 0x5252525252525252); | |
assert(desEncryptTest(0x5353535353535353, 0x0F91178929EF4AA1) == 0x5353535353535353); | |
assert(desEncryptTest(0x5454545454545454, 0xDC644E7A6FAA6446) == 0x5454545454545454); | |
assert(desEncryptTest(0x5555555555555555, 0x27BDEAC7848061C2) == 0x5555555555555555); | |
assert(desEncryptTest(0x5656565656565656, 0x51115EC4EBDDE14E) == 0x5656565656565656); | |
assert(desEncryptTest(0x5757575757575757, 0xA1731C55A4FB1B12) == 0x5757575757575757); | |
assert(desEncryptTest(0x5858585858585858, 0x883D1CB568FA4AF6) == 0x5858585858585858); | |
assert(desEncryptTest(0x5959595959595959, 0xEE21D431F34E89A5) == 0x5959595959595959); | |
assert(desEncryptTest(0x5A5A5A5A5A5A5A5A, 0x8ED4FA5DF0B7BAA9) == 0x5A5A5A5A5A5A5A5A); | |
assert(desEncryptTest(0x5B5B5B5B5B5B5B5B, 0x8AA3372D4A4CF54D) == 0x5B5B5B5B5B5B5B5B); | |
assert(desEncryptTest(0x5C5C5C5C5C5C5C5C, 0x6E9D4FF9DE08AAD1) == 0x5C5C5C5C5C5C5C5C); | |
assert(desEncryptTest(0x5D5D5D5D5D5D5D5D, 0x302DE41DFAE50C3E) == 0x5D5D5D5D5D5D5D5D); | |
assert(desEncryptTest(0x5E5E5E5E5E5E5E5E, 0x15238624D6D73121) == 0x5E5E5E5E5E5E5E5E); | |
assert(desEncryptTest(0x5F5F5F5F5F5F5F5F, 0x960ADA6F022E3019) == 0x5F5F5F5F5F5F5F5F); | |
assert(desEncryptTest(0x6060606060606060, 0xCAF3211A707960D6) == 0x6060606060606060); | |
assert(desEncryptTest(0x6161616161616161, 0xF7E458FA7081BE7D) == 0x6161616161616161); | |
assert(desEncryptTest(0x6262626262626262, 0x5FAB0E843C6E5BA9) == 0x6262626262626262); | |
assert(desEncryptTest(0x6363636363636363, 0x7CF40025EB32B66F) == 0x6363636363636363); | |
assert(desEncryptTest(0x6464646464646464, 0x1D3FF19CA208D2B2) == 0x6464646464646464); | |
assert(desEncryptTest(0x6565656565656565, 0xBDFBCA399EB932A0) == 0x6565656565656565); | |
assert(desEncryptTest(0x6666666666666666, 0x29CE12AFEA960B70) == 0x6666666666666666); | |
assert(desEncryptTest(0x6767676767676767, 0x82F8FB5140014B85) == 0x6767676767676767); | |
assert(desEncryptTest(0x6868686868686868, 0x7B3C0F4E34F9D1E9) == 0x6868686868686868); | |
assert(desEncryptTest(0x6969696969696969, 0x8F7B0EAD94E39A13) == 0x6969696969696969); | |
assert(desEncryptTest(0x6A6A6A6A6A6A6A6A, 0x6D3F31C7778EAD8A) == 0x6A6A6A6A6A6A6A6A); | |
assert(desEncryptTest(0x6B6B6B6B6B6B6B6B, 0x37B18B3906BAB3A8) == 0x6B6B6B6B6B6B6B6B); | |
assert(desEncryptTest(0x6C6C6C6C6C6C6C6C, 0x12B4CB7A4CBE767B) == 0x6C6C6C6C6C6C6C6C); | |
assert(desEncryptTest(0x6D6D6D6D6D6D6D6D, 0x2420B66A1055C0E9) == 0x6D6D6D6D6D6D6D6D); | |
assert(desEncryptTest(0x6E6E6E6E6E6E6E6E, 0x7E8E816788C6D588) == 0x6E6E6E6E6E6E6E6E); | |
assert(desEncryptTest(0x6F6F6F6F6F6F6F6F, 0xC24105E33E184FF6) == 0x6F6F6F6F6F6F6F6F); | |
assert(desEncryptTest(0x7070707070707070, 0xE4A18C1C24EBFBB9) == 0x7070707070707070); | |
assert(desEncryptTest(0x7171717171717171, 0x89BDBD3DE031EED6) == 0x7171717171717171); | |
assert(desEncryptTest(0x7272727272727272, 0xDBB840AF153D42DC) == 0x7272727272727272); | |
assert(desEncryptTest(0x7373737373737373, 0x5198BB48B85D9073) == 0x7373737373737373); | |
assert(desEncryptTest(0x7474747474747474, 0xEF91577024209D96) == 0x7474747474747474); | |
assert(desEncryptTest(0x7575757575757575, 0x862D09602D08F4AF) == 0x7575757575757575); | |
assert(desEncryptTest(0x7676767676767676, 0xDF8FDD3DA8BE381C) == 0x7676767676767676); | |
assert(desEncryptTest(0x7777777777777777, 0xF4FA92CAF1EA65C8) == 0x7777777777777777); | |
assert(desEncryptTest(0x7878787878787878, 0x6C51D39A736AB06E) == 0x7878787878787878); | |
assert(desEncryptTest(0x7979797979797979, 0xCA78FA0F8940CDB6) == 0x7979797979797979); | |
assert(desEncryptTest(0x7A7A7A7A7A7A7A7A, 0xE32531D4F4783A94) == 0x7A7A7A7A7A7A7A7A); | |
assert(desEncryptTest(0x7B7B7B7B7B7B7B7B, 0xC983F15CAE1DEB86) == 0x7B7B7B7B7B7B7B7B); | |
assert(desEncryptTest(0x7C7C7C7C7C7C7C7C, 0xF8895BF6515436F3) == 0x7C7C7C7C7C7C7C7C); | |
assert(desEncryptTest(0x7D7D7D7D7D7D7D7D, 0x0B679E5008B5B69B) == 0x7D7D7D7D7D7D7D7D); | |
assert(desEncryptTest(0x7E7E7E7E7E7E7E7E, 0x909D89361F819432) == 0x7E7E7E7E7E7E7E7E); | |
assert(desEncryptTest(0x7F7F7F7F7F7F7F7F, 0xC8FCD27001B95D10) == 0x7F7F7F7F7F7F7F7F); | |
assert(desEncryptTest(0x8080808080808080, 0x37032D8FFE46A2EF) == 0x8080808080808080); | |
assert(desEncryptTest(0x8181818181818181, 0x6F6276C9E07E6BCD) == 0x8181818181818181); | |
assert(desEncryptTest(0x8282828282828282, 0xF49861AFF74A4964) == 0x8282828282828282); | |
assert(desEncryptTest(0x8383838383838383, 0x0776A409AEABC90C) == 0x8383838383838383); | |
assert(desEncryptTest(0x8484848484848484, 0x367C0EA351E21479) == 0x8484848484848484); | |
assert(desEncryptTest(0x8585858585858585, 0x1CDACE2B0B87C56B) == 0x8585858585858585); | |
assert(desEncryptTest(0x8686868686868686, 0x358705F076BF3249) == 0x8686868686868686); | |
assert(desEncryptTest(0x8787878787878787, 0x93AE2C658C954F91) == 0x8787878787878787); | |
assert(desEncryptTest(0x8888888888888888, 0x0B056D350E159A37) == 0x8888888888888888); | |
assert(desEncryptTest(0x8989898989898989, 0x207022C25741C7E3) == 0x8989898989898989); | |
assert(desEncryptTest(0x8A8A8A8A8A8A8A8A, 0x79D2F69FD2F70B50) == 0x8A8A8A8A8A8A8A8A); | |
assert(desEncryptTest(0x8B8B8B8B8B8B8B8B, 0x106EA88FDBDF6269) == 0x8B8B8B8B8B8B8B8B); | |
assert(desEncryptTest(0x8C8C8C8C8C8C8C8C, 0xAE6744B747A26F8C) == 0x8C8C8C8C8C8C8C8C); | |
assert(desEncryptTest(0x8D8D8D8D8D8D8D8D, 0x2447BF50EAC2BD23) == 0x8D8D8D8D8D8D8D8D); | |
assert(desEncryptTest(0x8E8E8E8E8E8E8E8E, 0x764242C21FCE1129) == 0x8E8E8E8E8E8E8E8E); | |
assert(desEncryptTest(0x8F8F8F8F8F8F8F8F, 0x1B5E73E3DB140446) == 0x8F8F8F8F8F8F8F8F); | |
assert(desEncryptTest(0x9090909090909090, 0x3DBEFA1CC1E7B009) == 0x9090909090909090); | |
assert(desEncryptTest(0x9191919191919191, 0x81717E9877392A77) == 0x9191919191919191); | |
assert(desEncryptTest(0x9292929292929292, 0xDBDF4995EFAA3F16) == 0x9292929292929292); | |
assert(desEncryptTest(0x9393939393939393, 0xED4B3485B3418984) == 0x9393939393939393); | |
assert(desEncryptTest(0x9494949494949494, 0xC84E74C6F9454C57) == 0x9494949494949494); | |
assert(desEncryptTest(0x9595959595959595, 0x92C0CE3888715275) == 0x9595959595959595); | |
assert(desEncryptTest(0x9696969696969696, 0x7084F1526B1C65EC) == 0x9696969696969696); | |
assert(desEncryptTest(0x9797979797979797, 0x84C3F0B1CB062E16) == 0x9797979797979797); | |
assert(desEncryptTest(0x9898989898989898, 0x7D0704AEBFFEB47A) == 0x9898989898989898); | |
assert(desEncryptTest(0x9999999999999999, 0xD631ED501569F48F) == 0x9999999999999999); | |
assert(desEncryptTest(0x9A9A9A9A9A9A9A9A, 0x420435C66146CD5F) == 0x9A9A9A9A9A9A9A9A); | |
assert(desEncryptTest(0x9B9B9B9B9B9B9B9B, 0xE2C00E635DF72D4D) == 0x9B9B9B9B9B9B9B9B); | |
assert(desEncryptTest(0x9C9C9C9C9C9C9C9C, 0x830BFFDA14CD4990) == 0x9C9C9C9C9C9C9C9C); | |
assert(desEncryptTest(0x9D9D9D9D9D9D9D9D, 0xA054F17BC391A456) == 0x9D9D9D9D9D9D9D9D); | |
assert(desEncryptTest(0x9E9E9E9E9E9E9E9E, 0x081BA7058F7E4182) == 0x9E9E9E9E9E9E9E9E); | |
assert(desEncryptTest(0x9F9F9F9F9F9F9F9F, 0x350CDEE58F869F29) == 0x9F9F9F9F9F9F9F9F); | |
assert(desEncryptTest(0xA0A0A0A0A0A0A0A0, 0x69F52590FDD1CFE6) == 0xA0A0A0A0A0A0A0A0); | |
assert(desEncryptTest(0xA1A1A1A1A1A1A1A1, 0xEADC79DB2928CEDE) == 0xA1A1A1A1A1A1A1A1); | |
assert(desEncryptTest(0xA2A2A2A2A2A2A2A2, 0xCFD21BE2051AF3C1) == 0xA2A2A2A2A2A2A2A2); | |
assert(desEncryptTest(0xA3A3A3A3A3A3A3A3, 0x9162B00621F7552E) == 0xA3A3A3A3A3A3A3A3); | |
assert(desEncryptTest(0xA4A4A4A4A4A4A4A4, 0x755CC8D2B5B30AB2) == 0xA4A4A4A4A4A4A4A4); | |
assert(desEncryptTest(0xA5A5A5A5A5A5A5A5, 0x712B05A20F484556) == 0xA5A5A5A5A5A5A5A5); | |
assert(desEncryptTest(0xA6A6A6A6A6A6A6A6, 0x11DE2BCE0CB1765A) == 0xA6A6A6A6A6A6A6A6); | |
assert(desEncryptTest(0xA7A7A7A7A7A7A7A7, 0x77C2E34A9705B509) == 0xA7A7A7A7A7A7A7A7); | |
assert(desEncryptTest(0xA8A8A8A8A8A8A8A8, 0x5E8CE3AA5B04E4ED) == 0xA8A8A8A8A8A8A8A8); | |
assert(desEncryptTest(0xA9A9A9A9A9A9A9A9, 0xAEEEA13B14221EB1) == 0xA9A9A9A9A9A9A9A9); | |
assert(desEncryptTest(0xAAAAAAAAAAAAAAAA, 0xD84215387B7F9E3D) == 0xAAAAAAAAAAAAAAAA); | |
assert(desEncryptTest(0xABABABABABABABAB, 0x239BB18590559BB9) == 0xABABABABABABABAB); | |
assert(desEncryptTest(0xACACACACACACACAC, 0xF06EE876D610B55E) == 0xACACACACACACACAC); | |
assert(desEncryptTest(0xADADADADADADADAD, 0xBE33DB8A9F9FA4F4) == 0xADADADADADADADAD); | |
assert(desEncryptTest(0xAEAEAEAEAEAEAEAE, 0x7702DC93BE4C44AE) == 0xAEAEAEAEAEAEAEAE); | |
assert(desEncryptTest(0xAFAFAFAFAFAFAFAF, 0xA665A329D5F92FD8) == 0xAFAFAFAFAFAFAFAF); | |
assert(desEncryptTest(0xB0B0B0B0B0B0B0B0, 0x3EBE6668C7E3825C) == 0xB0B0B0B0B0B0B0B0); | |
assert(desEncryptTest(0xB1B1B1B1B1B1B1B1, 0x98B9B272A5D7DD30) == 0xB1B1B1B1B1B1B1B1); | |
assert(desEncryptTest(0xB2B2B2B2B2B2B2B2, 0x1B6EE5949A857941) == 0xB2B2B2B2B2B2B2B2); | |
assert(desEncryptTest(0xB3B3B3B3B3B3B3B3, 0xE06BBD15D9A348B6) == 0xB3B3B3B3B3B3B3B3); | |
assert(desEncryptTest(0xB4B4B4B4B4B4B4B4, 0x2514F3336063FD58) == 0xB4B4B4B4B4B4B4B4); | |
assert(desEncryptTest(0xB5B5B5B5B5B5B5B5, 0xE9FBBDA6090110D5) == 0xB5B5B5B5B5B5B5B5); | |
assert(desEncryptTest(0xB6B6B6B6B6B6B6B6, 0x7C7D63003CD31264) == 0xB6B6B6B6B6B6B6B6); | |
assert(desEncryptTest(0xB7B7B7B7B7B7B7B7, 0x78EB2BB35382F2EB) == 0xB7B7B7B7B7B7B7B7); | |
assert(desEncryptTest(0xB8B8B8B8B8B8B8B8, 0x90AF1E7256FBA0DE) == 0xB8B8B8B8B8B8B8B8); | |
assert(desEncryptTest(0xB9B9B9B9B9B9B9B9, 0xBFB8EB6467ABE17B) == 0xB9B9B9B9B9B9B9B9); | |
assert(desEncryptTest(0xBABABABABABABABA, 0x33CC9711C22EF579) == 0xBABABABABABABABA); | |
assert(desEncryptTest(0xBBBBBBBBBBBBBBBB, 0xCFF046B6EC4F6260) == 0xBBBBBBBBBBBBBBBB); | |
assert(desEncryptTest(0xBCBCBCBCBCBCBCBC, 0xBFC1B068D95BC1D4) == 0xBCBCBCBCBCBCBCBC); | |
assert(desEncryptTest(0xBDBDBDBDBDBDBDBD, 0xD0E854C3B10B8312) == 0xBDBDBDBDBDBDBDBD); | |
assert(desEncryptTest(0xBEBEBEBEBEBEBEBE, 0x3FDCFE744AF68C20) == 0xBEBEBEBEBEBEBEBE); | |
assert(desEncryptTest(0xBFBFBFBFBFBFBFBF, 0x025E5153BEFC4138) == 0xBFBFBFBFBFBFBFBF); | |
assert(desEncryptTest(0xC0C0C0C0C0C0C0C0, 0xB032ED00E5F0B7D7) == 0xC0C0C0C0C0C0C0C0); | |
assert(desEncryptTest(0xC1C1C1C1C1C1C1C1, 0x1E1D46D413849125) == 0xC1C1C1C1C1C1C1C1); | |
assert(desEncryptTest(0xC2C2C2C2C2C2C2C2, 0x690713E6383FF096) == 0xC2C2C2C2C2C2C2C2); | |
assert(desEncryptTest(0xC3C3C3C3C3C3C3C3, 0xD6F223FF4504093F) == 0xC3C3C3C3C3C3C3C3); | |
assert(desEncryptTest(0xC4C4C4C4C4C4C4C4, 0x48E07C763CD06D71) == 0xC4C4C4C4C4C4C4C4); | |
assert(desEncryptTest(0xC5C5C5C5C5C5C5C5, 0xBD7C6AC98EA824E7) == 0xC5C5C5C5C5C5C5C5); | |
assert(desEncryptTest(0xC6C6C6C6C6C6C6C6, 0x1909291A23350450) == 0xC6C6C6C6C6C6C6C6); | |
assert(desEncryptTest(0xC7C7C7C7C7C7C7C7, 0x480F8B34F62DE678) == 0xC7C7C7C7C7C7C7C7); | |
assert(desEncryptTest(0xC8C8C8C8C8C8C8C8, 0x4AC2A75E3528679B) == 0xC8C8C8C8C8C8C8C8); | |
assert(desEncryptTest(0xC9C9C9C9C9C9C9C9, 0x3F1568A5E99DEF8C) == 0xC9C9C9C9C9C9C9C9); | |
assert(desEncryptTest(0xCACACACACACACACA, 0x40414B449374572C) == 0xCACACACACACACACA); | |
assert(desEncryptTest(0xCBCBCBCBCBCBCBCB, 0xF7925D5B97E64D13) == 0xCBCBCBCBCBCBCBCB); | |
assert(desEncryptTest(0xCCCCCCCCCCCCCCCC, 0xE64959F80B628140) == 0xCCCCCCCCCCCCCCCC); | |
assert(desEncryptTest(0xCDCDCDCDCDCDCDCD, 0x248E0D06FB31BB98) == 0xCDCDCDCDCDCDCDCD); | |
assert(desEncryptTest(0xCECECECECECECECE, 0x92F58133675FE659) == 0xCECECECECECECECE); | |
assert(desEncryptTest(0xCFCFCFCFCFCFCFCF, 0xCCA53A1AB55B3A05) == 0xCFCFCFCFCFCFCFCF); | |
assert(desEncryptTest(0xD0D0D0D0D0D0D0D0, 0x8066E3CA18E0726A) == 0xD0D0D0D0D0D0D0D0); | |
assert(desEncryptTest(0xD1D1D1D1D1D1D1D1, 0x9A610E9161003E92) == 0xD1D1D1D1D1D1D1D1); | |
assert(desEncryptTest(0xD2D2D2D2D2D2D2D2, 0x9F10AB312F9C1153) == 0xD2D2D2D2D2D2D2D2); | |
assert(desEncryptTest(0xD3D3D3D3D3D3D3D3, 0x5E55536492C254F5) == 0xD3D3D3D3D3D3D3D3); | |
assert(desEncryptTest(0xD4D4D4D4D4D4D4D4, 0x2EC41BB94EAC683F) == 0xD4D4D4D4D4D4D4D4); | |
assert(desEncryptTest(0xD5D5D5D5D5D5D5D5, 0xE6264B3CFA54A53B) == 0xD5D5D5D5D5D5D5D5); | |
assert(desEncryptTest(0xD6D6D6D6D6D6D6D6, 0x9B0FE80CA5C0AF2E) == 0xD6D6D6D6D6D6D6D6); | |
assert(desEncryptTest(0xD7D7D7D7D7D7D7D7, 0x9F99107A00E075B9) == 0xD7D7D7D7D7D7D7D7); | |
assert(desEncryptTest(0xD8D8D8D8D8D8D8D8, 0xEE5A79323EA0B49D) == 0xD8D8D8D8D8D8D8D8); | |
assert(desEncryptTest(0xD9D9D9D9D9D9D9D9, 0x57D818D32E7BAAA1) == 0xD9D9D9D9D9D9D9D9); | |
assert(desEncryptTest(0xDADADADADADADADA, 0x2372BA28AE804A73) == 0xDADADADADADADADA); | |
assert(desEncryptTest(0xDBDBDBDBDBDBDBDB, 0x370FD75C119F4D76) == 0xDBDBDBDBDBDBDBDB); | |
assert(desEncryptTest(0xDCDCDCDCDCDCDCDC, 0x70ADE48AB7C5F46B) == 0xDCDCDCDCDCDCDCDC); | |
assert(desEncryptTest(0xDDDDDDDDDDDDDDDD, 0x2EFA06CFEF4C490A) == 0xDDDDDDDDDDDDDDDD); | |
assert(desEncryptTest(0xDEDEDEDEDEDEDEDE, 0x57F4D40141EF5B25) == 0xDEDEDEDEDEDEDEDE); | |
assert(desEncryptTest(0xDFDFDFDFDFDFDFDF, 0x6F8C38686FCF9082) == 0xDFDFDFDFDFDFDFDF); | |
assert(desEncryptTest(0xE0E0E0E0E0E0E0E0, 0x9E4EBA2683B6EADC) == 0xE0E0E0E0E0E0E0E0); | |
assert(desEncryptTest(0xE1E1E1E1E1E1E1E1, 0x37FBF97B5DF82E4A) == 0xE1E1E1E1E1E1E1E1); | |
assert(desEncryptTest(0xE2E2E2E2E2E2E2E2, 0xF8605C8127F45F9B) == 0xE2E2E2E2E2E2E2E2); | |
assert(desEncryptTest(0xE3E3E3E3E3E3E3E3, 0xCFE89CC047E6836A) == 0xE3E3E3E3E3E3E3E3); | |
assert(desEncryptTest(0xE4E4E4E4E4E4E4E4, 0x7060B673459206F7) == 0xE4E4E4E4E4E4E4E4); | |
assert(desEncryptTest(0xE5E5E5E5E5E5E5E5, 0x49D3014B922E7A88) == 0xE5E5E5E5E5E5E5E5); | |
assert(desEncryptTest(0xE6E6E6E6E6E6E6E6, 0x638146A34E7DDCC1) == 0xE6E6E6E6E6E6E6E6); | |
assert(desEncryptTest(0xE7E7E7E7E7E7E7E7, 0xD106D7199C6791E3) == 0xE7E7E7E7E7E7E7E7); | |
assert(desEncryptTest(0xE8E8E8E8E8E8E8E8, 0x9B00500449F74FFD) == 0xE8E8E8E8E8E8E8E8); | |
assert(desEncryptTest(0xE9E9E9E9E9E9E9E9, 0xAAF04E5AAF85B612) == 0xE9E9E9E9E9E9E9E9); | |
assert(desEncryptTest(0xEAEAEAEAEAEAEAEA, 0xAC4B251F989E005E) == 0xEAEAEAEAEAEAEAEA); | |
assert(desEncryptTest(0xEBEBEBEBEBEBEBEB, 0xE1A6F9B0015E6E10) == 0xEBEBEBEBEBEBEBEB); | |
assert(desEncryptTest(0xECECECECECECECEC, 0xE288627548617610) == 0xECECECECECECECEC); | |
assert(desEncryptTest(0xEDEDEDEDEDEDEDED, 0x5D0975698BF1C0D2) == 0xEDEDEDEDEDEDEDED); | |
assert(desEncryptTest(0xEEEEEEEEEEEEEEEE, 0xDC84DCFB3C6C2C53) == 0xEEEEEEEEEEEEEEEE); | |
assert(desEncryptTest(0xEFEFEFEFEFEFEFEF, 0x4C89378B1906782F) == 0xEFEFEFEFEFEFEFEF); | |
assert(desEncryptTest(0xF0F0F0F0F0F0F0F0, 0xA8FA85D47AC98412) == 0xF0F0F0F0F0F0F0F0); | |
assert(desEncryptTest(0xF1F1F1F1F1F1F1F1, 0x0E123A4E06709CEC) == 0xF1F1F1F1F1F1F1F1); | |
assert(desEncryptTest(0xF2F2F2F2F2F2F2F2, 0xEB629B6D5F27F611) == 0xF2F2F2F2F2F2F2F2); | |
assert(desEncryptTest(0xF3F3F3F3F3F3F3F3, 0x6066A70C1D898158) == 0xF3F3F3F3F3F3F3F3); | |
assert(desEncryptTest(0xF4F4F4F4F4F4F4F4, 0x4A52E373B669A335) == 0xF4F4F4F4F4F4F4F4); | |
assert(desEncryptTest(0xF5F5F5F5F5F5F5F5, 0x3197EEEE45C484EE) == 0xF5F5F5F5F5F5F5F5); | |
assert(desEncryptTest(0xF6F6F6F6F6F6F6F6, 0xAEEF1A655138CCA4) == 0xF6F6F6F6F6F6F6F6); | |
assert(desEncryptTest(0xF7F7F7F7F7F7F7F7, 0x26CD7B8BBA25B027) == 0xF7F7F7F7F7F7F7F7); | |
assert(desEncryptTest(0xF8F8F8F8F8F8F8F8, 0x7200565F4D0DAB74) == 0xF8F8F8F8F8F8F8F8); | |
assert(desEncryptTest(0xF9F9F9F9F9F9F9F9, 0x5510622EE218BAB9) == 0xF9F9F9F9F9F9F9F9); | |
assert(desEncryptTest(0xFAFAFAFAFAFAFAFA, 0xDA9896ABAD6FCE34) == 0xFAFAFAFAFAFAFAFA); | |
assert(desEncryptTest(0xFBFBFBFBFBFBFBFB, 0x766E3F3B730F507E) == 0xFBFBFBFBFBFBFBFB); | |
assert(desEncryptTest(0xFCFCFCFCFCFCFCFC, 0x6E738510076C52AE) == 0xFCFCFCFCFCFCFCFC); | |
assert(desEncryptTest(0xFDFDFDFDFDFDFDFD, 0x0F6059C33205D452) == 0xFDFDFDFDFDFDFDFD); | |
assert(desEncryptTest(0xFEFEFEFEFEFEFEFE, 0x66B2B23EA84693AD) == 0xFEFEFEFEFEFEFEFE); | |
assert(desEncryptTest(0xFFFFFFFFFFFFFFFF, 0x7359B2163E4EDC58) == 0xFFFFFFFFFFFFFFFF); | |
assert(desEncryptTest(0x0001020304050607, 0x41AD068548809D02) == 0x0011223344556677); | |
assert(desEncryptTest(0x2BD6459F82C5B300, 0xB10F843097A0F932) == 0xEA024714AD5C4D84); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Steps to reproduce: | |
1. cat /dev/urandom | head -c3000000 > random_test_data_small.bin | |
2. encrypt with OpenSSL: time openssl enc -des-ecb -in random_test_data_small.bin -out enc_small.bin -K 133457799BBCDFF1A -nopad -nosalt | |
3. build and run debug: zig test des.zig && zig build-exe des.zig && time ./des | |
4. check results with shasum: shasum enc_small.bin enc_zig_small.bin (SHOULD MATCH) | |
5. build release-fast and run: zig build-exe --release-fast des.zig && ./des | |
6. check results with shasum: shasum enc_small.bin enc_zig_small.bin (SHOULD NOT MATCH) | |
7. Uncomment line 192 in the code and repeat step 5 and 6 (should match this time!) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment