Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
66b3eb96
Commit
66b3eb96
authored
Dec 24, 2003
by
Erlend Aasland
Committed by
David S. Miller
Dec 24, 2003
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[CRYPTO]: Clean up tcrypt module, part 2
parent
91f70b00
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
1251 additions
and
2002 deletions
+1251
-2002
crypto/tcrypt.h
crypto/tcrypt.h
+1251
-2002
No files found.
crypto/tcrypt.h
View file @
66b3eb96
...
@@ -63,61 +63,42 @@ struct cipher_testvec {
...
@@ -63,61 +63,42 @@ struct cipher_testvec {
struct
hash_testvec
md4_tv_template
[]
=
{
struct
hash_testvec
md4_tv_template
[]
=
{
{
{
""
,
.
plaintext
=
""
,
0
,
.
digest
=
{
0x31
,
0xd6
,
0xcf
,
0xe0
,
0xd1
,
0x6a
,
0xe9
,
0x31
,
{
0x31
,
0xd6
,
0xcf
,
0xe0
,
0xd1
,
0x6a
,
0xe9
,
0x31
,
0xb7
,
0x3c
,
0x59
,
0xd7
,
0xe0
,
0xc0
,
0x89
,
0xc0
},
0xb7
,
0x3c
,
0x59
,
0xd7
,
0xe0
,
0xc0
,
0x89
,
0xc0
},
0
,
},
{
{}
.
plaintext
=
"a"
,
},
.
psize
=
1
,
{
.
digest
=
{
0xbd
,
0xe5
,
0x2c
,
0xb3
,
0x1d
,
0xe3
,
0x3e
,
0x46
,
"a"
,
1
,
{
0xbd
,
0xe5
,
0x2c
,
0xb3
,
0x1d
,
0xe3
,
0x3e
,
0x46
,
0x24
,
0x5e
,
0x05
,
0xfb
,
0xdb
,
0xd6
,
0xfb
,
0x24
},
0x24
,
0x5e
,
0x05
,
0xfb
,
0xdb
,
0xd6
,
0xfb
,
0x24
},
0
,
},
{
{}
.
plaintext
=
"abc"
,
},
.
psize
=
3
,
{
.
digest
=
{
0xa4
,
0x48
,
0x01
,
0x7a
,
0xaf
,
0x21
,
0xd8
,
0x52
,
"abc"
,
3
,
{
0xa4
,
0x48
,
0x01
,
0x7a
,
0xaf
,
0x21
,
0xd8
,
0x52
,
0x5f
,
0xc1
,
0x0a
,
0xe8
,
0x7a
,
0xa6
,
0x72
,
0x9d
},
0x5f
,
0xc1
,
0x0a
,
0xe8
,
0x7a
,
0xa6
,
0x72
,
0x9d
},
0
,
},
{
{}
.
plaintext
=
"message digest"
,
},
.
psize
=
14
,
{
.
digest
=
{
0xd9
,
0x13
,
0x0a
,
0x81
,
0x64
,
0x54
,
0x9f
,
0xe8
,
"message digest"
,
14
,
{
0xd9
,
0x13
,
0x0a
,
0x81
,
0x64
,
0x54
,
0x9f
,
0xe8
,
0x18
,
0x87
,
0x48
,
0x06
,
0xe1
,
0xc7
,
0x01
,
0x4b
},
0x18
,
0x87
,
0x48
,
0x06
,
0xe1
,
0xc7
,
0x01
,
0x4b
},
0
,
},
{
{}
.
plaintext
=
"abcdefghijklmnopqrstuvwxyz"
,
},
.
psize
=
26
,
{
.
digest
=
{
0xd7
,
0x9e
,
0x1c
,
0x30
,
0x8a
,
0xa5
,
0xbb
,
0xcd
,
"abcdefghijklmnopqrstuvwxyz"
,
26
,
{
0xd7
,
0x9e
,
0x1c
,
0x30
,
0x8a
,
0xa5
,
0xbb
,
0xcd
,
0xee
,
0xa8
,
0xed
,
0x63
,
0xdf
,
0x41
,
0x2d
,
0xa9
},
0xee
,
0xa8
,
0xed
,
0x63
,
0xdf
,
0x41
,
0x2d
,
0xa9
},
2
,
.
np
=
2
,
{
13
,
13
},
.
tap
=
{
13
,
13
},
},
},
{
{
.
plaintext
=
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
,
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
,
.
psize
=
62
,
62
,
.
digest
=
{
0x04
,
0x3f
,
0x85
,
0x82
,
0xf2
,
0x41
,
0xdb
,
0x35
,
{
0x04
,
0x3f
,
0x85
,
0x82
,
0xf2
,
0x41
,
0xdb
,
0x35
,
0x1c
,
0xe6
,
0x27
,
0xe1
,
0x53
,
0xe7
,
0xf0
,
0xe4
},
0x1c
,
0xe6
,
0x27
,
0xe1
,
0x53
,
0xe7
,
0xf0
,
0xe4
},
0
,
},
{
{}
.
plaintext
=
"123456789012345678901234567890123456789012345678901234567890123"
},
{
"123456789012345678901234567890123456789012345678901234567890123"
"45678901234567890"
,
"45678901234567890"
,
80
,
.
psize
=
80
,
{
0xe3
,
0x3b
,
0x4d
,
0xdc
,
0x9c
,
0x38
,
0xf2
,
0x19
,
.
digest
=
{
0xe3
,
0x3b
,
0x4d
,
0xdc
,
0x9c
,
0x38
,
0xf2
,
0x19
,
0x9c
,
0x3e
,
0x7b
,
0x16
,
0x4f
,
0xcc
,
0x05
,
0x36
},
0x9c
,
0x3e
,
0x7b
,
0x16
,
0x4f
,
0xcc
,
0x05
,
0x36
},
0
,
{}
},
},
};
};
...
@@ -128,61 +109,41 @@ struct hash_testvec md4_tv_template [] = {
...
@@ -128,61 +109,41 @@ struct hash_testvec md4_tv_template [] = {
struct
hash_testvec
md5_tv_template
[]
=
{
struct
hash_testvec
md5_tv_template
[]
=
{
{
{
""
,
.
digest
=
{
0xd4
,
0x1d
,
0x8c
,
0xd9
,
0x8f
,
0x00
,
0xb2
,
0x04
,
0
,
{
0xd4
,
0x1d
,
0x8c
,
0xd9
,
0x8f
,
0x00
,
0xb2
,
0x04
,
0xe9
,
0x80
,
0x09
,
0x98
,
0xec
,
0xf8
,
0x42
,
0x7e
},
0xe9
,
0x80
,
0x09
,
0x98
,
0xec
,
0xf8
,
0x42
,
0x7e
},
0
,
},
{
{}
.
plaintext
=
"a"
,
},
.
psize
=
1
,
{
.
digest
=
{
0x0c
,
0xc1
,
0x75
,
0xb9
,
0xc0
,
0xf1
,
0xb6
,
0xa8
,
"a"
,
1
,
{
0x0c
,
0xc1
,
0x75
,
0xb9
,
0xc0
,
0xf1
,
0xb6
,
0xa8
,
0x31
,
0xc3
,
0x99
,
0xe2
,
0x69
,
0x77
,
0x26
,
0x61
},
0x31
,
0xc3
,
0x99
,
0xe2
,
0x69
,
0x77
,
0x26
,
0x61
},
0
,
},
{
{}
.
plaintext
=
"abc"
,
},
.
psize
=
3
,
{
.
digest
=
{
0x90
,
0x01
,
0x50
,
0x98
,
0x3c
,
0xd2
,
0x4f
,
0xb0
,
"abc"
,
3
,
{
0x90
,
0x01
,
0x50
,
0x98
,
0x3c
,
0xd2
,
0x4f
,
0xb0
,
0xd6
,
0x96
,
0x3f
,
0x7d
,
0x28
,
0xe1
,
0x7f
,
0x72
},
0xd6
,
0x96
,
0x3f
,
0x7d
,
0x28
,
0xe1
,
0x7f
,
0x72
},
0
,
},
{
{}
.
plaintext
=
"message digest"
,
},
.
psize
=
14
,
{
.
digest
=
{
0xf9
,
0x6b
,
0x69
,
0x7d
,
0x7c
,
0xb7
,
0x93
,
0x8d
,
"message digest"
,
14
,
{
0xf9
,
0x6b
,
0x69
,
0x7d
,
0x7c
,
0xb7
,
0x93
,
0x8d
,
0x52
,
0x5a
,
0x2f
,
0x31
,
0xaa
,
0xf1
,
0x61
,
0xd0
},
0x52
,
0x5a
,
0x2f
,
0x31
,
0xaa
,
0xf1
,
0x61
,
0xd0
},
0
,
},
{
{}
.
plaintext
=
"abcdefghijklmnopqrstuvwxyz"
,
},
.
psize
=
26
,
{
.
digest
=
{
0xc3
,
0xfc
,
0xd3
,
0xd7
,
0x61
,
0x92
,
0xe4
,
0x00
,
"abcdefghijklmnopqrstuvwxyz"
,
26
,
{
0xc3
,
0xfc
,
0xd3
,
0xd7
,
0x61
,
0x92
,
0xe4
,
0x00
,
0x7d
,
0xfb
,
0x49
,
0x6c
,
0xca
,
0x67
,
0xe1
,
0x3b
},
0x7d
,
0xfb
,
0x49
,
0x6c
,
0xca
,
0x67
,
0xe1
,
0x3b
},
2
,
.
np
=
2
,
{
13
,
13
}
.
tap
=
{
13
,
13
}
},
},
{
{
.
plaintext
=
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
,
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
,
.
psize
=
62
,
62
,
.
digest
=
{
0xd1
,
0x74
,
0xab
,
0x98
,
0xd2
,
0x77
,
0xd9
,
0xf5
,
{
0xd1
,
0x74
,
0xab
,
0x98
,
0xd2
,
0x77
,
0xd9
,
0xf5
,
0xa5
,
0x61
,
0x1c
,
0x2c
,
0x9f
,
0x41
,
0x9d
,
0x9f
},
0xa5
,
0x61
,
0x1c
,
0x2c
,
0x9f
,
0x41
,
0x9d
,
0x9f
},
0
,
},
{
{}
.
plaintext
=
"12345678901234567890123456789012345678901234567890123456789012"
},
{
"12345678901234567890123456789012345678901234567890123456789012"
"345678901234567890"
,
"345678901234567890"
,
80
,
.
psize
=
80
,
{
0x57
,
0xed
,
0xf4
,
0xa2
,
0x2b
,
0xe3
,
0xc9
,
0x55
,
.
digest
=
{
0x57
,
0xed
,
0xf4
,
0xa2
,
0x2b
,
0xe3
,
0xc9
,
0x55
,
0xac
,
0x49
,
0xda
,
0x2e
,
0x21
,
0x07
,
0xb6
,
0x7a
},
0xac
,
0x49
,
0xda
,
0x2e
,
0x21
,
0x07
,
0xb6
,
0x7a
},
0
,
{}
}
}
};
};
...
@@ -193,20 +154,17 @@ struct hash_testvec md5_tv_template[] = {
...
@@ -193,20 +154,17 @@ struct hash_testvec md5_tv_template[] = {
struct
hash_testvec
sha1_tv_template
[]
=
{
struct
hash_testvec
sha1_tv_template
[]
=
{
{
{
"abc"
,
.
plaintext
=
"abc"
,
3
,
.
psize
=
3
,
{
0xA9
,
0x99
,
0x3E
,
0x36
,
0x47
,
0x06
,
0x81
,
0x6A
,
0xBA
,
0x3E
,
.
digest
=
{
0xa9
,
0x99
,
0x3e
,
0x36
,
0x47
,
0x06
,
0x81
,
0x6a
,
0xba
,
0x3e
,
0x25
,
0x71
,
0x78
,
0x50
,
0xC2
,
0x6C
,
0x9C
,
0xD0
,
0xD8
,
0x9D
},
0x25
,
0x71
,
0x78
,
0x50
,
0xc2
,
0x6c
,
0x9c
,
0xd0
,
0xd8
,
0x9d
},
0
,
},
{
{}
.
plaintext
=
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
},
.
psize
=
56
,
{
.
digest
=
{
0x84
,
0x98
,
0x3e
,
0x44
,
0x1c
,
0x3b
,
0xd2
,
0x6e
,
0xba
,
0xae
,
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
0x4a
,
0xa1
,
0xf9
,
0x51
,
0x29
,
0xe5
,
0xe5
,
0x46
,
0x70
,
0xf1
},
56
,
.
np
=
2
,
{
0x84
,
0x98
,
0x3E
,
0x44
,
0x1C
,
0x3B
,
0xD2
,
0x6E
,
0xBA
,
0xAE
,
.
tap
=
{
28
,
28
}
0x4A
,
0xA1
,
0xF9
,
0x51
,
0x29
,
0xE5
,
0xE5
,
0x46
,
0x70
,
0xF1
},
2
,
{
28
,
28
}
}
}
};
};
...
@@ -217,24 +175,21 @@ struct hash_testvec sha1_tv_template[] = {
...
@@ -217,24 +175,21 @@ struct hash_testvec sha1_tv_template[] = {
struct
hash_testvec
sha256_tv_template
[]
=
{
struct
hash_testvec
sha256_tv_template
[]
=
{
{
{
"abc"
,
.
plaintext
=
"abc"
,
3
,
.
psize
=
3
,
{
0xba
,
0x78
,
0x16
,
0xbf
,
0x8f
,
0x01
,
0xcf
,
0xea
,
.
digest
=
{
0xba
,
0x78
,
0x16
,
0xbf
,
0x8f
,
0x01
,
0xcf
,
0xea
,
0x41
,
0x41
,
0x40
,
0xde
,
0x5d
,
0xae
,
0x22
,
0x23
,
0x41
,
0x41
,
0x40
,
0xde
,
0x5d
,
0xae
,
0x22
,
0x23
,
0xb0
,
0x03
,
0x61
,
0xa3
,
0x96
,
0x17
,
0x7a
,
0x9c
,
0xb0
,
0x03
,
0x61
,
0xa3
,
0x96
,
0x17
,
0x7a
,
0x9c
,
0xb4
,
0x10
,
0xff
,
0x61
,
0xf2
,
0x00
,
0x15
,
0xad
},
0xb4
,
0x10
,
0xff
,
0x61
,
0xf2
,
0x00
,
0x15
,
0xad
},
0
,
},
{
{}
.
plaintext
=
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
},
.
psize
=
56
,
{
.
digest
=
{
0x24
,
0x8d
,
0x6a
,
0x61
,
0xd2
,
0x06
,
0x38
,
0xb8
,
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
56
,
{
0x24
,
0x8d
,
0x6a
,
0x61
,
0xd2
,
0x06
,
0x38
,
0xb8
,
0xe5
,
0xc0
,
0x26
,
0x93
,
0x0c
,
0x3e
,
0x60
,
0x39
,
0xe5
,
0xc0
,
0x26
,
0x93
,
0x0c
,
0x3e
,
0x60
,
0x39
,
0xa3
,
0x3c
,
0xe4
,
0x59
,
0x64
,
0xff
,
0x21
,
0x67
,
0xa3
,
0x3c
,
0xe4
,
0x59
,
0x64
,
0xff
,
0x21
,
0x67
,
0xf6
,
0xec
,
0xed
,
0xd4
,
0x19
,
0xdb
,
0x06
,
0xc1
},
0xf6
,
0xec
,
0xed
,
0xd4
,
0x19
,
0xdb
,
0x06
,
0xc1
},
2
,
.
np
=
2
,
{
28
,
28
}
.
tap
=
{
28
,
28
}
},
},
};
};
...
@@ -245,55 +200,45 @@ struct hash_testvec sha256_tv_template[] = {
...
@@ -245,55 +200,45 @@ struct hash_testvec sha256_tv_template[] = {
struct
hash_testvec
sha384_tv_template
[]
=
{
struct
hash_testvec
sha384_tv_template
[]
=
{
{
{
"abc"
,
.
plaintext
=
"abc"
,
3
,
.
psize
=
3
,
{
0xcb
,
0x00
,
0x75
,
0x3f
,
0x45
,
0xa3
,
0x5e
,
0x8b
,
.
digest
=
{
0xcb
,
0x00
,
0x75
,
0x3f
,
0x45
,
0xa3
,
0x5e
,
0x8b
,
0xb5
,
0xa0
,
0x3d
,
0x69
,
0x9a
,
0xc6
,
0x50
,
0x07
,
0xb5
,
0xa0
,
0x3d
,
0x69
,
0x9a
,
0xc6
,
0x50
,
0x07
,
0x27
,
0x2c
,
0x32
,
0xab
,
0x0e
,
0xde
,
0xd1
,
0x63
,
0x27
,
0x2c
,
0x32
,
0xab
,
0x0e
,
0xde
,
0xd1
,
0x63
,
0x1a
,
0x8b
,
0x60
,
0x5a
,
0x43
,
0xff
,
0x5b
,
0xed
,
0x1a
,
0x8b
,
0x60
,
0x5a
,
0x43
,
0xff
,
0x5b
,
0xed
,
0x80
,
0x86
,
0x07
,
0x2b
,
0xa1
,
0xe7
,
0xcc
,
0x23
,
0x80
,
0x86
,
0x07
,
0x2b
,
0xa1
,
0xe7
,
0xcc
,
0x23
,
0x58
,
0xba
,
0xec
,
0xa1
,
0x34
,
0xc8
,
0x25
,
0xa7
},
0x58
,
0xba
,
0xec
,
0xa1
,
0x34
,
0xc8
,
0x25
,
0xa7
},
0
,
},
{
{}
.
plaintext
=
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
},
.
psize
=
56
,
{
.
digest
=
{
0x33
,
0x91
,
0xfd
,
0xdd
,
0xfc
,
0x8d
,
0xc7
,
0x39
,
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
56
,
{
0x33
,
0x91
,
0xfd
,
0xdd
,
0xfc
,
0x8d
,
0xc7
,
0x39
,
0x37
,
0x07
,
0xa6
,
0x5b
,
0x1b
,
0x47
,
0x09
,
0x39
,
0x37
,
0x07
,
0xa6
,
0x5b
,
0x1b
,
0x47
,
0x09
,
0x39
,
0x7c
,
0xf8
,
0xb1
,
0xd1
,
0x62
,
0xaf
,
0x05
,
0xab
,
0x7c
,
0xf8
,
0xb1
,
0xd1
,
0x62
,
0xaf
,
0x05
,
0xab
,
0xfe
,
0x8f
,
0x45
,
0x0d
,
0xe5
,
0xf3
,
0x6b
,
0xc6
,
0xfe
,
0x8f
,
0x45
,
0x0d
,
0xe5
,
0xf3
,
0x6b
,
0xc6
,
0xb0
,
0x45
,
0x5a
,
0x85
,
0x20
,
0xbc
,
0x4e
,
0x6f
,
0xb0
,
0x45
,
0x5a
,
0x85
,
0x20
,
0xbc
,
0x4e
,
0x6f
,
0x5f
,
0xe9
,
0x5b
,
0x1f
,
0xe3
,
0xc8
,
0x45
,
0x2b
},
0x5f
,
0xe9
,
0x5b
,
0x1f
,
0xe3
,
0xc8
,
0x45
,
0x2b
},
0
,
},
{
{}
.
plaintext
=
"abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmn"
},
{
"abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmn"
"hijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu"
,
"hijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu"
,
112
,
.
psize
=
112
,
{
0x09
,
0x33
,
0x0c
,
0x33
,
0xf7
,
0x11
,
0x47
,
0xe8
,
.
digest
=
{
0x09
,
0x33
,
0x0c
,
0x33
,
0xf7
,
0x11
,
0x47
,
0xe8
,
0x3d
,
0x19
,
0x2f
,
0xc7
,
0x82
,
0xcd
,
0x1b
,
0x47
,
0x3d
,
0x19
,
0x2f
,
0xc7
,
0x82
,
0xcd
,
0x1b
,
0x47
,
0x53
,
0x11
,
0x1b
,
0x17
,
0x3b
,
0x3b
,
0x05
,
0xd2
,
0x53
,
0x11
,
0x1b
,
0x17
,
0x3b
,
0x3b
,
0x05
,
0xd2
,
0x2f
,
0xa0
,
0x80
,
0x86
,
0xe3
,
0xb0
,
0xf7
,
0x12
,
0x2f
,
0xa0
,
0x80
,
0x86
,
0xe3
,
0xb0
,
0xf7
,
0x12
,
0xfc
,
0xc7
,
0xc7
,
0x1a
,
0x55
,
0x7e
,
0x2d
,
0xb9
,
0xfc
,
0xc7
,
0xc7
,
0x1a
,
0x55
,
0x7e
,
0x2d
,
0xb9
,
0x66
,
0xc3
,
0xe9
,
0xfa
,
0x91
,
0x74
,
0x60
,
0x39
},
0x66
,
0xc3
,
0xe9
,
0xfa
,
0x91
,
0x74
,
0x60
,
0x39
},
0
,
},
{
{}
.
plaintext
=
"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcd"
},
{
"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcd"
"efghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
,
"efghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
,
104
,
.
psize
=
104
,
{
0x3d
,
0x20
,
0x89
,
0x73
,
0xab
,
0x35
,
0x08
,
0xdb
,
.
digest
=
{
0x3d
,
0x20
,
0x89
,
0x73
,
0xab
,
0x35
,
0x08
,
0xdb
,
0xbd
,
0x7e
,
0x2c
,
0x28
,
0x62
,
0xba
,
0x29
,
0x0a
,
0xbd
,
0x7e
,
0x2c
,
0x28
,
0x62
,
0xba
,
0x29
,
0x0a
,
0xd3
,
0x01
,
0x0e
,
0x49
,
0x78
,
0xc1
,
0x98
,
0xdc
,
0xd3
,
0x01
,
0x0e
,
0x49
,
0x78
,
0xc1
,
0x98
,
0xdc
,
0x4d
,
0x8f
,
0xd0
,
0x14
,
0xe5
,
0x82
,
0x82
,
0x3a
,
0x4d
,
0x8f
,
0xd0
,
0x14
,
0xe5
,
0x82
,
0x82
,
0x3a
,
0x89
,
0xe1
,
0x6f
,
0x9b
,
0x2a
,
0x7b
,
0xbc
,
0x1a
,
0x89
,
0xe1
,
0x6f
,
0x9b
,
0x2a
,
0x7b
,
0xbc
,
0x1a
,
0xc9
,
0x38
,
0xe2
,
0xd1
,
0x99
,
0xe8
,
0xbe
,
0xa4
},
0xc9
,
0x38
,
0xe2
,
0xd1
,
0x99
,
0xe8
,
0xbe
,
0xa4
},
4
,
.
np
=
4
,
{
26
,
26
,
26
,
26
}
.
tap
=
{
26
,
26
,
26
,
26
}
},
},
};
};
...
@@ -304,9 +249,9 @@ struct hash_testvec sha384_tv_template[] = {
...
@@ -304,9 +249,9 @@ struct hash_testvec sha384_tv_template[] = {
struct
hash_testvec
sha512_tv_template
[]
=
{
struct
hash_testvec
sha512_tv_template
[]
=
{
{
{
"abc"
,
.
plaintext
=
"abc"
,
3
,
.
psize
=
3
,
{
0xdd
,
0xaf
,
0x35
,
0xa1
,
0x93
,
0x61
,
0x7a
,
0xba
,
.
digest
=
{
0xdd
,
0xaf
,
0x35
,
0xa1
,
0x93
,
0x61
,
0x7a
,
0xba
,
0xcc
,
0x41
,
0x73
,
0x49
,
0xae
,
0x20
,
0x41
,
0x31
,
0xcc
,
0x41
,
0x73
,
0x49
,
0xae
,
0x20
,
0x41
,
0x31
,
0x12
,
0xe6
,
0xfa
,
0x4e
,
0x89
,
0xa9
,
0x7e
,
0xa2
,
0x12
,
0xe6
,
0xfa
,
0x4e
,
0x89
,
0xa9
,
0x7e
,
0xa2
,
0x0a
,
0x9e
,
0xee
,
0xe6
,
0x4b
,
0x55
,
0xd3
,
0x9a
,
0x0a
,
0x9e
,
0xee
,
0xe6
,
0x4b
,
0x55
,
0xd3
,
0x9a
,
...
@@ -314,13 +259,10 @@ struct hash_testvec sha512_tv_template[] = {
...
@@ -314,13 +259,10 @@ struct hash_testvec sha512_tv_template[] = {
0x36
,
0xba
,
0x3c
,
0x23
,
0xa3
,
0xfe
,
0xeb
,
0xbd
,
0x36
,
0xba
,
0x3c
,
0x23
,
0xa3
,
0xfe
,
0xeb
,
0xbd
,
0x45
,
0x4d
,
0x44
,
0x23
,
0x64
,
0x3c
,
0xe8
,
0x0e
,
0x45
,
0x4d
,
0x44
,
0x23
,
0x64
,
0x3c
,
0xe8
,
0x0e
,
0x2a
,
0x9a
,
0xc9
,
0x4f
,
0xa5
,
0x4c
,
0xa4
,
0x9f
},
0x2a
,
0x9a
,
0xc9
,
0x4f
,
0xa5
,
0x4c
,
0xa4
,
0x9f
},
0
,
},
{
{}
.
plaintext
=
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
},
.
psize
=
56
,
{
.
digest
=
{
0x20
,
0x4a
,
0x8f
,
0xc6
,
0xdd
,
0xa8
,
0x2f
,
0x0a
,
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
56
,
{
0x20
,
0x4a
,
0x8f
,
0xc6
,
0xdd
,
0xa8
,
0x2f
,
0x0a
,
0x0c
,
0xed
,
0x7b
,
0xeb
,
0x8e
,
0x08
,
0xa4
,
0x16
,
0x0c
,
0xed
,
0x7b
,
0xeb
,
0x8e
,
0x08
,
0xa4
,
0x16
,
0x57
,
0xc1
,
0x6e
,
0xf4
,
0x68
,
0xb2
,
0x28
,
0xa8
,
0x57
,
0xc1
,
0x6e
,
0xf4
,
0x68
,
0xb2
,
0x28
,
0xa8
,
0x27
,
0x9b
,
0xe3
,
0x31
,
0xa7
,
0x03
,
0xc3
,
0x35
,
0x27
,
0x9b
,
0xe3
,
0x31
,
0xa7
,
0x03
,
0xc3
,
0x35
,
...
@@ -328,14 +270,11 @@ struct hash_testvec sha512_tv_template[] = {
...
@@ -328,14 +270,11 @@ struct hash_testvec sha512_tv_template[] = {
0xaa
,
0x1d
,
0x3b
,
0xea
,
0x57
,
0x78
,
0x9c
,
0xa0
,
0xaa
,
0x1d
,
0x3b
,
0xea
,
0x57
,
0x78
,
0x9c
,
0xa0
,
0x31
,
0xad
,
0x85
,
0xc7
,
0xa7
,
0x1d
,
0xd7
,
0x03
,
0x31
,
0xad
,
0x85
,
0xc7
,
0xa7
,
0x1d
,
0xd7
,
0x03
,
0x54
,
0xec
,
0x63
,
0x12
,
0x38
,
0xca
,
0x34
,
0x45
},
0x54
,
0xec
,
0x63
,
0x12
,
0x38
,
0xca
,
0x34
,
0x45
},
0
,
},
{
{}
.
plaintext
=
"abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmn"
},
{
"abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmn"
"hijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu"
,
"hijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu"
,
112
,
.
psize
=
112
,
{
0x8e
,
0x95
,
0x9b
,
0x75
,
0xda
,
0xe3
,
0x13
,
0xda
,
.
digest
=
{
0x8e
,
0x95
,
0x9b
,
0x75
,
0xda
,
0xe3
,
0x13
,
0xda
,
0x8c
,
0xf4
,
0xf7
,
0x28
,
0x14
,
0xfc
,
0x14
,
0x3f
,
0x8c
,
0xf4
,
0xf7
,
0x28
,
0x14
,
0xfc
,
0x14
,
0x3f
,
0x8f
,
0x77
,
0x79
,
0xc6
,
0xeb
,
0x9f
,
0x7f
,
0xa1
,
0x8f
,
0x77
,
0x79
,
0xc6
,
0xeb
,
0x9f
,
0x7f
,
0xa1
,
0x72
,
0x99
,
0xae
,
0xad
,
0xb6
,
0x88
,
0x90
,
0x18
,
0x72
,
0x99
,
0xae
,
0xad
,
0xb6
,
0x88
,
0x90
,
0x18
,
...
@@ -343,14 +282,11 @@ struct hash_testvec sha512_tv_template[] = {
...
@@ -343,14 +282,11 @@ struct hash_testvec sha512_tv_template[] = {
0x33
,
0x1b
,
0x99
,
0xde
,
0xc4
,
0xb5
,
0x43
,
0x3a
,
0x33
,
0x1b
,
0x99
,
0xde
,
0xc4
,
0xb5
,
0x43
,
0x3a
,
0xc7
,
0xd3
,
0x29
,
0xee
,
0xb6
,
0xdd
,
0x26
,
0x54
,
0xc7
,
0xd3
,
0x29
,
0xee
,
0xb6
,
0xdd
,
0x26
,
0x54
,
0x5e
,
0x96
,
0xe5
,
0x5b
,
0x87
,
0x4b
,
0xe9
,
0x09
},
0x5e
,
0x96
,
0xe5
,
0x5b
,
0x87
,
0x4b
,
0xe9
,
0x09
},
0
,
},
{
{}
.
plaintext
=
"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcd"
},
{
"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcd"
"efghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
,
"efghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
,
104
,
.
psize
=
104
,
{
0x93
,
0x0d
,
0x0c
,
0xef
,
0xcb
,
0x30
,
0xff
,
0x11
,
.
digest
=
{
0x93
,
0x0d
,
0x0c
,
0xef
,
0xcb
,
0x30
,
0xff
,
0x11
,
0x33
,
0xb6
,
0x89
,
0x81
,
0x21
,
0xf1
,
0xcf
,
0x3d
,
0x33
,
0xb6
,
0x89
,
0x81
,
0x21
,
0xf1
,
0xcf
,
0x3d
,
0x27
,
0x57
,
0x8a
,
0xfc
,
0xaf
,
0xe8
,
0x67
,
0x7c
,
0x27
,
0x57
,
0x8a
,
0xfc
,
0xaf
,
0xe8
,
0x67
,
0x7c
,
0x52
,
0x57
,
0xcf
,
0x06
,
0x99
,
0x11
,
0xf7
,
0x5d
,
0x52
,
0x57
,
0xcf
,
0x06
,
0x99
,
0x11
,
0xf7
,
0x5d
,
...
@@ -358,12 +294,11 @@ struct hash_testvec sha512_tv_template[] = {
...
@@ -358,12 +294,11 @@ struct hash_testvec sha512_tv_template[] = {
0xb2
,
0x78
,
0xe6
,
0x6d
,
0xff
,
0x8b
,
0x84
,
0xfe
,
0xb2
,
0x78
,
0xe6
,
0x6d
,
0xff
,
0x8b
,
0x84
,
0xfe
,
0x2b
,
0x28
,
0x70
,
0xf7
,
0x42
,
0xa5
,
0x80
,
0xd8
,
0x2b
,
0x28
,
0x70
,
0xf7
,
0x42
,
0xa5
,
0x80
,
0xd8
,
0xed
,
0xb4
,
0x19
,
0x87
,
0x23
,
0x28
,
0x50
,
0xc9
},
0xed
,
0xb4
,
0x19
,
0x87
,
0x23
,
0x28
,
0x50
,
0xc9
},
4
,
.
np
=
4
,
{
26
,
26
,
26
,
26
}
.
tap
=
{
26
,
26
,
26
,
26
}
},
},
};
};
#ifdef CONFIG_CRYPTO_HMAC
#ifdef CONFIG_CRYPTO_HMAC
/*
/*
* HMAC-MD5 test vectors from RFC2202
* HMAC-MD5 test vectors from RFC2202
...
@@ -374,211 +309,123 @@ struct hash_testvec sha512_tv_template[] = {
...
@@ -374,211 +309,123 @@ struct hash_testvec sha512_tv_template[] = {
struct
hmac_testvec
hmac_md5_tv_template
[]
=
struct
hmac_testvec
hmac_md5_tv_template
[]
=
{
{
{
{
{
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
.
key
=
{
[
0
...
15
]
=
0x0b
},
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
},
.
ksize
=
16
,
16
,
.
plaintext
=
"Hi There"
,
"Hi There"
,
.
psize
=
8
,
8
,
.
digest
=
{
0x92
,
0x94
,
0x72
,
0x7a
,
0x36
,
0x38
,
0xbb
,
0x1c
,
{
0x92
,
0x94
,
0x72
,
0x7a
,
0x36
,
0x38
,
0xbb
,
0x1c
,
0x13
,
0xf4
,
0x8e
,
0xf8
,
0x15
,
0x8b
,
0xfc
,
0x9d
},
0x13
,
0xf4
,
0x8e
,
0xf8
,
0x15
,
0x8b
,
0xfc
,
0x9d
},
0
,
},
{
{}
.
key
=
{
'J'
,
'e'
,
'f'
,
'e'
},
},
.
ksize
=
4
,
{
.
plaintext
=
"what do ya want for nothing?"
,
{
'J'
,
'e'
,
'f'
,
'e'
},
.
psize
=
28
,
4
,
.
digest
=
{
0x75
,
0x0c
,
0x78
,
0x3e
,
0x6a
,
0xb0
,
0xb5
,
0x03
,
"what do ya want for nothing?"
,
28
,
{
0x75
,
0x0c
,
0x78
,
0x3e
,
0x6a
,
0xb0
,
0xb5
,
0x03
,
0xea
,
0xa8
,
0x6e
,
0x31
,
0x0a
,
0x5d
,
0xb7
,
0x38
},
0xea
,
0xa8
,
0x6e
,
0x31
,
0x0a
,
0x5d
,
0xb7
,
0x38
},
2
,
.
np
=
2
,
{
14
,
14
}
.
tap
=
{
14
,
14
}
},
},
{
{
.
key
=
{
[
0
...
15
]
=
0xaa
},
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
ksize
=
16
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
},
.
plaintext
=
{
[
0
...
49
]
=
0xdd
},
16
,
.
psize
=
50
,
{
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
.
digest
=
{
0x56
,
0xbe
,
0x34
,
0x52
,
0x1d
,
0x14
,
0x4c
,
0x88
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
},
50
,
{
0x56
,
0xbe
,
0x34
,
0x52
,
0x1d
,
0x14
,
0x4c
,
0x88
,
0xdb
,
0xb8
,
0xc7
,
0x33
,
0xf0
,
0xe8
,
0xb3
,
0xf6
},
0xdb
,
0xb8
,
0xc7
,
0x33
,
0xf0
,
0xe8
,
0xb3
,
0xf6
},
0
,
},
{
{}
.
key
=
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
},
{
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
},
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
},
25
,
.
ksize
=
25
,
{
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
plaintext
=
{
[
0
...
49
]
=
0xcd
},
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
psize
=
50
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
digest
=
{
0x69
,
0x7e
,
0xaf
,
0x0a
,
0xca
,
0x3a
,
0x3a
,
0xea
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
},
50
,
{
0x69
,
0x7e
,
0xaf
,
0x0a
,
0xca
,
0x3a
,
0x3a
,
0xea
,
0x3a
,
0x75
,
0x16
,
0x47
,
0x46
,
0xff
,
0xaa
,
0x79
},
0x3a
,
0x75
,
0x16
,
0x47
,
0x46
,
0xff
,
0xaa
,
0x79
},
0
,
},
{
{}
.
key
=
{
[
0
...
15
]
=
0x0c
},
},
.
ksize
=
16
,
{
.
plaintext
=
"Test With Truncation"
,
{
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
.
psize
=
20
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
},
.
digest
=
{
0x56
,
0x46
,
0x1e
,
0xf2
,
0x34
,
0x2e
,
0xdc
,
0x00
,
16
,
"Test With Truncation"
,
20
,
{
0x56
,
0x46
,
0x1e
,
0xf2
,
0x34
,
0x2e
,
0xdc
,
0x00
,
0xf9
,
0xba
,
0xb9
,
0x95
,
0x69
,
0x0e
,
0xfd
,
0x4c
},
0xf9
,
0xba
,
0xb9
,
0x95
,
0x69
,
0x0e
,
0xfd
,
0x4c
},
0
,
},
{
{}
.
key
=
{
[
0
...
79
]
=
0xaa
},
},
.
ksize
=
80
,
{
.
plaintext
=
"Test Using Larger Than Block-Size Key - Hash Key First"
,
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
psize
=
54
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
digest
=
{
0x6b
,
0x1a
,
0xb7
,
0xfe
,
0x4b
,
0xd7
,
0xbf
,
0x8f
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
},
80
,
"Test Using Larger Than Block-Size Key - Hash Key First"
,
54
,
{
0x6b
,
0x1a
,
0xb7
,
0xfe
,
0x4b
,
0xd7
,
0xbf
,
0x8f
,
0x0b
,
0x62
,
0xe6
,
0xce
,
0x61
,
0xb9
,
0xd0
,
0xcd
},
0x0b
,
0x62
,
0xe6
,
0xce
,
0x61
,
0xb9
,
0xd0
,
0xcd
},
0
,
},
{
{}
.
key
=
{
[
0
...
79
]
=
0xaa
},
},
.
ksize
=
80
,
{
.
plaintext
=
"Test Using Larger Than Block-Size Key and Larger Than One "
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
},
80
,
"Test Using Larger Than Block-Size Key and Larger Than One "
"Block-Size Data"
,
"Block-Size Data"
,
73
,
.
psize
=
73
,
{
0x6f
,
0x63
,
0x0f
,
0xad
,
0x67
,
0xcd
,
0xa0
,
0xee
,
.
digest
=
{
0x6f
,
0x63
,
0x0f
,
0xad
,
0x67
,
0xcd
,
0xa0
,
0xee
,
0x1f
,
0xb1
,
0xf5
,
0x62
,
0xdb
,
0x3a
,
0xa5
,
0x3e
},
0x1f
,
0xb1
,
0xf5
,
0x62
,
0xdb
,
0x3a
,
0xa5
,
0x3e
},
0
,
{}
},
},
};
};
/*
/*
* HMAC-SHA1 test vectors from RFC2202
* HMAC-SHA1 test vectors from RFC2202
*/
*/
#define HMAC_SHA1_TEST_VECTORS 7
#define HMAC_SHA1_TEST_VECTORS 7
struct
hmac_testvec
hmac_sha1_tv_template
[]
=
{
struct
hmac_testvec
hmac_sha1_tv_template
[]
=
{
{
{
{
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
.
key
=
{
[
0
...
19
]
=
0x0b
},
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
},
.
ksize
=
20
,
20
,
.
plaintext
=
"Hi There"
,
"Hi There"
,
.
psize
=
8
,
8
,
.
digest
=
{
0xb6
,
0x17
,
0x31
,
0x86
,
0x55
,
0x05
,
0x72
,
0x64
,
{
0xb6
,
0x17
,
0x31
,
0x86
,
0x55
,
0x05
,
0x72
,
0x64
,
0xe2
,
0x8b
,
0xc0
,
0xb6
,
0xfb
,
0x37
,
0x8c
,
0x8e
,
0xf1
,
0xe2
,
0x8b
,
0xc0
,
0xb6
,
0xfb
,
0x37
,
0x8c
,
0x8e
,
0xf1
,
0x46
,
0xbe
},
0x46
,
0xbe
},
0
,
},
{
{}
.
key
=
{
'J'
,
'e'
,
'f'
,
'e'
},
},
.
ksize
=
4
,
{
.
plaintext
=
"what do ya want for nothing?"
,
{
'J'
,
'e'
,
'f'
,
'e'
},
.
psize
=
28
,
4
,
.
digest
=
{
0xef
,
0xfc
,
0xdf
,
0x6a
,
0xe5
,
0xeb
,
0x2f
,
0xa2
,
0xd2
,
0x74
,
"what do ya want for nothing?"
,
28
,
{
0xef
,
0xfc
,
0xdf
,
0x6a
,
0xe5
,
0xeb
,
0x2f
,
0xa2
,
0xd2
,
0x74
,
0x16
,
0xd5
,
0xf1
,
0x84
,
0xdf
,
0x9c
,
0x25
,
0x9a
,
0x7c
,
0x79
},
0x16
,
0xd5
,
0xf1
,
0x84
,
0xdf
,
0x9c
,
0x25
,
0x9a
,
0x7c
,
0x79
},
2
,
.
np
=
2
,
{
14
,
14
}
.
tap
=
{
14
,
14
}
},
},
{
{
.
key
=
{
[
0
...
19
]
=
0xaa
},
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
ksize
=
20
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
},
.
plaintext
=
{
[
0
...
49
]
=
0xdd
},
20
,
.
psize
=
50
,
{
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
.
digest
=
{
0x12
,
0x5d
,
0x73
,
0x42
,
0xb9
,
0xac
,
0x11
,
0xcd
,
0x91
,
0xa3
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
},
50
,
{
0x12
,
0x5d
,
0x73
,
0x42
,
0xb9
,
0xac
,
0x11
,
0xcd
,
0x91
,
0xa3
,
0x9a
,
0xf4
,
0x8a
,
0xa1
,
0x7b
,
0x4f
,
0x63
,
0xf1
,
0x75
,
0xd3
},
0x9a
,
0xf4
,
0x8a
,
0xa1
,
0x7b
,
0x4f
,
0x63
,
0xf1
,
0x75
,
0xd3
},
0
,
},
{
{}
.
key
=
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
},
{
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
},
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
},
25
,
.
ksize
=
25
,
{
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
plaintext
=
{
[
0
...
49
]
=
0xcd
},
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
psize
=
50
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
digest
=
{
0x4c
,
0x90
,
0x07
,
0xf4
,
0x02
,
0x62
,
0x50
,
0xc6
,
0xbc
,
0x84
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
},
50
,
{
0x4c
,
0x90
,
0x07
,
0xf4
,
0x02
,
0x62
,
0x50
,
0xc6
,
0xbc
,
0x84
,
0x14
,
0xf9
,
0xbf
,
0x50
,
0xc8
,
0x6c
,
0x2d
,
0x72
,
0x35
,
0xda
},
0x14
,
0xf9
,
0xbf
,
0x50
,
0xc8
,
0x6c
,
0x2d
,
0x72
,
0x35
,
0xda
},
0
,
},
{
{}
.
key
=
{
[
0
...
19
]
=
0x0c
},
},
.
ksize
=
20
,
{
.
plaintext
=
"Test With Truncation"
,
{
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
.
psize
=
20
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
},
.
digest
=
{
0x4c
,
0x1a
,
0x03
,
0x42
,
0x4b
,
0x55
,
0xe0
,
0x7f
,
0xe7
,
0xf2
,
20
,
"Test With Truncation"
,
20
,
{
0x4c
,
0x1a
,
0x03
,
0x42
,
0x4b
,
0x55
,
0xe0
,
0x7f
,
0xe7
,
0xf2
,
0x7b
,
0xe1
,
0xd5
,
0x8b
,
0xb9
,
0x32
,
0x4a
,
0x9a
,
0x5a
,
0x04
},
0x7b
,
0xe1
,
0xd5
,
0x8b
,
0xb9
,
0x32
,
0x4a
,
0x9a
,
0x5a
,
0x04
},
0
,
},
{
{}
.
key
=
{
[
0
...
79
]
=
0xaa
},
},
.
ksize
=
80
,
{
.
plaintext
=
"Test Using Larger Than Block-Size Key - Hash Key First"
,
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
psize
=
54
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
digest
=
{
0xaa
,
0x4a
,
0xe5
,
0xe1
,
0x52
,
0x72
,
0xd0
,
0x0e
,
0x95
,
0x70
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
},
80
,
"Test Using Larger Than Block-Size Key - Hash Key First"
,
54
,
{
0xaa
,
0x4a
,
0xe5
,
0xe1
,
0x52
,
0x72
,
0xd0
,
0x0e
,
0x95
,
0x70
,
0x56
,
0x37
,
0xce
,
0x8a
,
0x3b
,
0x55
,
0xed
,
0x40
,
0x21
,
0x12
},
0x56
,
0x37
,
0xce
,
0x8a
,
0x3b
,
0x55
,
0xed
,
0x40
,
0x21
,
0x12
},
0
,
},
{
{}
.
key
=
{
[
0
...
79
]
=
0xaa
},
},
.
ksize
=
80
,
{
.
plaintext
=
"Test Using Larger Than Block-Size Key and Larger Than One "
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
},
80
,
"Test Using Larger Than Block-Size Key and Larger Than One "
"Block-Size Data"
,
"Block-Size Data"
,
73
,
.
psize
=
73
,
{
0xe8
,
0xe9
,
0x9d
,
0x0f
,
0x45
,
0x23
,
0x7d
,
0x78
,
0x6d
,
0x6b
,
.
digest
=
{
0xe8
,
0xe9
,
0x9d
,
0x0f
,
0x45
,
0x23
,
0x7d
,
0x78
,
0x6d
,
0x6b
,
0xba
,
0xa7
,
0x96
,
0x5c
,
0x78
,
0x08
,
0xbb
,
0xff
,
0x1a
,
0x91
},
0xba
,
0xa7
,
0x96
,
0x5c
,
0x78
,
0x08
,
0xbb
,
0xff
,
0x1a
,
0x91
},
0
,
{}
},
},
};
};
...
@@ -589,184 +436,116 @@ struct hmac_testvec hmac_sha1_tv_template[] = {
...
@@ -589,184 +436,116 @@ struct hmac_testvec hmac_sha1_tv_template[] = {
#define HMAC_SHA256_TEST_VECTORS 10
#define HMAC_SHA256_TEST_VECTORS 10
struct
hmac_testvec
hmac_sha256_tv_template
[]
=
{
struct
hmac_testvec
hmac_sha256_tv_template
[]
=
{
{
{
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
.
key
=
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
,
0x20
},
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
,
0x20
},
32
,
.
ksize
=
32
,
"abc"
,
.
plaintext
=
"abc"
,
3
,
.
psize
=
3
,
{
0xa2
,
0x1b
,
0x1f
,
0x5d
,
0x4c
,
0xf4
,
0xf7
,
0x3a
,
.
digest
=
{
0xa2
,
0x1b
,
0x1f
,
0x5d
,
0x4c
,
0xf4
,
0xf7
,
0x3a
,
0x4d
,
0xd9
,
0x39
,
0x75
,
0x0f
,
0x7a
,
0x06
,
0x6a
,
0x4d
,
0xd9
,
0x39
,
0x75
,
0x0f
,
0x7a
,
0x06
,
0x6a
,
0x7f
,
0x98
,
0xcc
,
0x13
,
0x1c
,
0xb1
,
0x6a
,
0x66
,
0x7f
,
0x98
,
0xcc
,
0x13
,
0x1c
,
0xb1
,
0x6a
,
0x66
,
0x92
,
0x75
,
0x90
,
0x21
,
0xcf
,
0xab
,
0x81
,
0x81
},
0x92
,
0x75
,
0x90
,
0x21
,
0xcf
,
0xab
,
0x81
,
0x81
},
0
,
},
{
{}
.
key
=
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
},
{
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
,
0x20
},
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
,
0x20
},
32
,
.
ksize
=
32
,
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
.
plaintext
=
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
56
,
.
psize
=
56
,
{
0x10
,
0x4f
,
0xdc
,
0x12
,
0x57
,
0x32
,
0x8f
,
0x08
,
.
digest
=
{
0x10
,
0x4f
,
0xdc
,
0x12
,
0x57
,
0x32
,
0x8f
,
0x08
,
0x18
,
0x4b
,
0xa7
,
0x31
,
0x31
,
0xc5
,
0x3c
,
0xae
,
0x18
,
0x4b
,
0xa7
,
0x31
,
0x31
,
0xc5
,
0x3c
,
0xae
,
0xe6
,
0x98
,
0xe3
,
0x61
,
0x19
,
0x42
,
0x11
,
0x49
,
0xe6
,
0x98
,
0xe3
,
0x61
,
0x19
,
0x42
,
0x11
,
0x49
,
0xea
,
0x8c
,
0x71
,
0x24
,
0x56
,
0x69
,
0x7d
,
0x30
},
0xea
,
0x8c
,
0x71
,
0x24
,
0x56
,
0x69
,
0x7d
,
0x30
},
0
,
},
{
{}
.
key
=
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
},
{
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
,
0x20
},
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
,
0x20
},
32
,
.
ksize
=
32
,
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
.
plaintext
=
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
,
112
,
.
psize
=
112
,
{
0x47
,
0x03
,
0x05
,
0xfc
,
0x7e
,
0x40
,
0xfe
,
0x34
,
.
digest
=
{
0x47
,
0x03
,
0x05
,
0xfc
,
0x7e
,
0x40
,
0xfe
,
0x34
,
0xd3
,
0xee
,
0xb3
,
0xe7
,
0x73
,
0xd9
,
0x5a
,
0xab
,
0xd3
,
0xee
,
0xb3
,
0xe7
,
0x73
,
0xd9
,
0x5a
,
0xab
,
0x73
,
0xac
,
0xf0
,
0xfd
,
0x06
,
0x04
,
0x47
,
0xa5
,
0x73
,
0xac
,
0xf0
,
0xfd
,
0x06
,
0x04
,
0x47
,
0xa5
,
0xeb
,
0x45
,
0x95
,
0xbf
,
0x33
,
0xa9
,
0xd1
,
0xa3
},
0xeb
,
0x45
,
0x95
,
0xbf
,
0x33
,
0xa9
,
0xd1
,
0xa3
},
0
,
},
{
{}
.
key
=
{
[
0
...
31
]
=
0x0b
},
},
.
ksize
=
32
,
{
.
plaintext
=
"Hi There"
,
{
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
.
psize
=
8
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
.
digest
=
{
0x19
,
0x8a
,
0x60
,
0x7e
,
0xb4
,
0x4b
,
0xfb
,
0xc6
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
,
0x0b
},
32
,
"Hi There"
,
8
,
{
0x19
,
0x8a
,
0x60
,
0x7e
,
0xb4
,
0x4b
,
0xfb
,
0xc6
,
0x99
,
0x03
,
0xa0
,
0xf1
,
0xcf
,
0x2b
,
0xbd
,
0xc5
,
0x99
,
0x03
,
0xa0
,
0xf1
,
0xcf
,
0x2b
,
0xbd
,
0xc5
,
0xba
,
0x0a
,
0xa3
,
0xf3
,
0xd9
,
0xae
,
0x3c
,
0x1c
,
0xba
,
0x0a
,
0xa3
,
0xf3
,
0xd9
,
0xae
,
0x3c
,
0x1c
,
0x7a
,
0x3b
,
0x16
,
0x96
,
0xa0
,
0xb6
,
0x8c
,
0xf7
},
0x7a
,
0x3b
,
0x16
,
0x96
,
0xa0
,
0xb6
,
0x8c
,
0xf7
},
0
,
},
{
{}
.
key
=
"Jefe"
,
},
.
ksize
=
4
,
{
.
plaintext
=
"what do ya want for nothing?"
,
"Jefe"
,
.
psize
=
28
,
4
,
.
digest
=
{
0x5b
,
0xdc
,
0xc1
,
0x46
,
0xbf
,
0x60
,
0x75
,
0x4e
,
"what do ya want for nothing?"
,
28
,
{
0x5b
,
0xdc
,
0xc1
,
0x46
,
0xbf
,
0x60
,
0x75
,
0x4e
,
0x6a
,
0x04
,
0x24
,
0x26
,
0x08
,
0x95
,
0x75
,
0xc7
,
0x6a
,
0x04
,
0x24
,
0x26
,
0x08
,
0x95
,
0x75
,
0xc7
,
0x5a
,
0x00
,
0x3f
,
0x08
,
0x9d
,
0x27
,
0x39
,
0x83
,
0x5a
,
0x00
,
0x3f
,
0x08
,
0x9d
,
0x27
,
0x39
,
0x83
,
0x9d
,
0xec
,
0x58
,
0xb9
,
0x64
,
0xec
,
0x38
,
0x43
},
0x9d
,
0xec
,
0x58
,
0xb9
,
0x64
,
0xec
,
0x38
,
0x43
},
2
,
.
np
=
2
,
{
14
,
14
}
.
tap
=
{
14
,
14
}
},
},
{
{
.
key
=
{
[
0
...
31
]
=
0xaa
},
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
ksize
=
32
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
plaintext
=
{
[
0
...
49
]
=
0xdd
},
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
psize
=
50
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
},
.
digest
=
{
0xcd
,
0xcb
,
0x12
,
0x20
,
0xd1
,
0xec
,
0xcc
,
0xea
,
32
,
{
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
,
0xdd
},
50
,
{
0xcd
,
0xcb
,
0x12
,
0x20
,
0xd1
,
0xec
,
0xcc
,
0xea
,
0x91
,
0xe5
,
0x3a
,
0xba
,
0x30
,
0x92
,
0xf9
,
0x62
,
0x91
,
0xe5
,
0x3a
,
0xba
,
0x30
,
0x92
,
0xf9
,
0x62
,
0xe5
,
0x49
,
0xfe
,
0x6c
,
0xe9
,
0xed
,
0x7f
,
0xdc
,
0xe5
,
0x49
,
0xfe
,
0x6c
,
0xe9
,
0xed
,
0x7f
,
0xdc
,
0x43
,
0x19
,
0x1f
,
0xbd
,
0xe4
,
0x5c
,
0x30
,
0xb0
},
0x43
,
0x19
,
0x1f
,
0xbd
,
0xe4
,
0x5c
,
0x30
,
0xb0
},
0
,
},
{
{}
.
key
=
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
},
{
{
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
,
0x20
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
},
0x21
,
0x22
,
0x23
,
0x24
,
0x25
},
37
,
.
ksize
=
37
,
{
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
plaintext
=
{
[
0
...
49
]
=
0xcd
},
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
psize
=
50
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
.
digest
=
{
0xd4
,
0x63
,
0x3c
,
0x17
,
0xf6
,
0xfb
,
0x8d
,
0x74
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
,
0xcd
},
50
,
{
0xd4
,
0x63
,
0x3c
,
0x17
,
0xf6
,
0xfb
,
0x8d
,
0x74
,
0x4c
,
0x66
,
0xde
,
0xe0
,
0xf8
,
0xf0
,
0x74
,
0x55
,
0x4c
,
0x66
,
0xde
,
0xe0
,
0xf8
,
0xf0
,
0x74
,
0x55
,
0x6e
,
0xc4
,
0xaf
,
0x55
,
0xef
,
0x07
,
0x99
,
0x85
,
0x6e
,
0xc4
,
0xaf
,
0x55
,
0xef
,
0x07
,
0x99
,
0x85
,
0x41
,
0x46
,
0x8e
,
0xb4
,
0x9b
,
0xd2
,
0xe9
,
0x17
},
0x41
,
0x46
,
0x8e
,
0xb4
,
0x9b
,
0xd2
,
0xe9
,
0x17
},
0
,
},
{
{}
.
key
=
{
[
0
...
31
]
=
0x0c
},
},
.
ksize
=
32
,
{
.
plaintext
=
"Test With Truncation"
,
{
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
.
psize
=
20
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
.
digest
=
{
0x75
,
0x46
,
0xaf
,
0x01
,
0x84
,
0x1f
,
0xc0
,
0x9b
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
,
0x0c
},
32
,
"Test With Truncation"
,
20
,
{
0x75
,
0x46
,
0xaf
,
0x01
,
0x84
,
0x1f
,
0xc0
,
0x9b
,
0x1a
,
0xb9
,
0xc3
,
0x74
,
0x9a
,
0x5f
,
0x1c
,
0x17
,
0x1a
,
0xb9
,
0xc3
,
0x74
,
0x9a
,
0x5f
,
0x1c
,
0x17
,
0xd4
,
0xf5
,
0x89
,
0x66
,
0x8a
,
0x58
,
0x7b
,
0x27
,
0xd4
,
0xf5
,
0x89
,
0x66
,
0x8a
,
0x58
,
0x7b
,
0x27
,
0x00
,
0xa9
,
0xc9
,
0x7c
,
0x11
,
0x93
,
0xcf
,
0x42
},
0x00
,
0xa9
,
0xc9
,
0x7c
,
0x11
,
0x93
,
0xcf
,
0x42
},
0
,
},
{
{}
.
key
=
{
[
0
...
79
]
=
0xaa
},
},
.
ksize
=
80
,
{
.
plaintext
=
"Test Using Larger Than Block-Size Key - Hash Key First"
,
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
psize
=
54
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
.
digest
=
{
0x69
,
0x53
,
0x02
,
0x5e
,
0xd9
,
0x6f
,
0x0c
,
0x09
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
},
80
,
"Test Using Larger Than Block-Size Key - Hash Key First"
,
54
,
{
0x69
,
0x53
,
0x02
,
0x5e
,
0xd9
,
0x6f
,
0x0c
,
0x09
,
0xf8
,
0x0a
,
0x96
,
0xf7
,
0x8e
,
0x65
,
0x38
,
0xdb
,
0xf8
,
0x0a
,
0x96
,
0xf7
,
0x8e
,
0x65
,
0x38
,
0xdb
,
0xe2
,
0xe7
,
0xb8
,
0x20
,
0xe3
,
0xdd
,
0x97
,
0x0e
,
0xe2
,
0xe7
,
0xb8
,
0x20
,
0xe3
,
0xdd
,
0x97
,
0x0e
,
0x7d
,
0xdd
,
0x39
,
0x09
,
0x1b
,
0x32
,
0x35
,
0x2f
},
0x7d
,
0xdd
,
0x39
,
0x09
,
0x1b
,
0x32
,
0x35
,
0x2f
},
0
,
},
{
{}
.
key
=
{
[
0
...
79
]
=
0xaa
},
},
.
ksize
=
80
,
{
.
plaintext
=
"Test Using Larger Than Block-Size Key and Larger Than "
{
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
,
0xaa
},
80
,
"Test Using Larger Than Block-Size Key and Larger Than "
"One Block-Size Data"
,
"One Block-Size Data"
,
73
,
.
psize
=
73
,
{
0x63
,
0x55
,
0xac
,
0x22
,
0xe8
,
0x90
,
0xd0
,
0xa3
,
.
digest
=
{
0x63
,
0x55
,
0xac
,
0x22
,
0xe8
,
0x90
,
0xd0
,
0xa3
,
0xc8
,
0x48
,
0x1a
,
0x5c
,
0xa4
,
0x82
,
0x5b
,
0xc8
,
0xc8
,
0x48
,
0x1a
,
0x5c
,
0xa4
,
0x82
,
0x5b
,
0xc8
,
0x84
,
0xd3
,
0xe7
,
0xa1
,
0xff
,
0x98
,
0xa2
,
0xfc
,
0x84
,
0xd3
,
0xe7
,
0xa1
,
0xff
,
0x98
,
0xa2
,
0xfc
,
0x2a
,
0xc7
,
0xd8
,
0xe0
,
0x64
,
0xc3
,
0xb2
,
0xe6
},
0x2a
,
0xc7
,
0xd8
,
0xe0
,
0x64
,
0xc3
,
0xb2
,
0xe6
},
0
,
{}
},
},
};
};
#endif
/* CONFIG_CRYPTO_HMAC */
#endif
/* CONFIG_CRYPTO_HMAC */
/*
/*
...
@@ -780,362 +559,239 @@ struct hmac_testvec hmac_sha256_tv_template[] = {
...
@@ -780,362 +559,239 @@ struct hmac_testvec hmac_sha256_tv_template[] = {
#define DES3_EDE_DEC_TEST_VECTORS 3
#define DES3_EDE_DEC_TEST_VECTORS 3
struct
cipher_testvec
des_enc_tv_template
[]
=
{
struct
cipher_testvec
des_enc_tv_template
[]
=
{
/* From Applied Cryptography */
{
/* From Applied Cryptography */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
ilen
=
8
,
8
,
.
result
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
},
{},
.
rlen
=
8
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
},
},
{
/* Same key, different plaintext block */
8
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
},
.
klen
=
8
,
8
,
.
input
=
{
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
},
0
,
.
ilen
=
8
,
{}
.
result
=
{
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
},
},
.
rlen
=
8
,
/* Same key, different plaintext block */
},
{
/* Sbox test from NBS */
{
.
key
=
{
0x7c
,
0xa1
,
0x10
,
0x45
,
0x4a
,
0x1a
,
0x6e
,
0x57
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0x01
,
0xa1
,
0xd6
,
0xd0
,
0x39
,
0x77
,
0x67
,
0x42
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
ilen
=
8
,
8
,
.
result
=
{
0x69
,
0x0f
,
0x5b
,
0x0d
,
0x9a
,
0x26
,
0x93
,
0x9b
},
{},
.
rlen
=
8
,
{
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
},
},
{
/* Three blocks */
8
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
{
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
},
.
klen
=
8
,
8
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0
,
{}
},
/* Sbox test from NBS */
{
0
,
0
,
{
0x7C
,
0xA1
,
0x10
,
0x45
,
0x4A
,
0x1A
,
0x6E
,
0x57
},
8
,
{},
{
0x01
,
0xA1
,
0xD6
,
0xD0
,
0x39
,
0x77
,
0x67
,
0x42
},
8
,
{
0x69
,
0x0F
,
0x5B
,
0x0D
,
0x9A
,
0x26
,
0x93
,
0x9B
},
8
,
0
,
{}
},
/* Three blocks */
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xca
,
0xfe
,
0xba
,
0xbe
,
0xfe
,
0xed
,
0xbe
,
0xef
},
0xca
,
0xfe
,
0xba
,
0xbe
,
0xfe
,
0xed
,
0xbe
,
0xef
},
24
,
.
ilen
=
24
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
.
result
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
,
0xb4
,
0x99
,
0x26
,
0xf7
,
0x1f
,
0xe1
,
0xd4
,
0x90
},
0xb4
,
0x99
,
0x26
,
0xf7
,
0x1f
,
0xe1
,
0xd4
,
0x90
},
24
,
.
rlen
=
24
,
0
,
},
{
/* Weak key */
{}
.
fail
=
1
,
},
.
wk
=
1
,
/* Weak key */
.
key
=
{
0x01
,
0x01
,
0x01
,
0x01
,
0x01
,
0x01
,
0x01
,
0x01
},
{
.
klen
=
8
,
1
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
},
1
,
.
ilen
=
8
,
{
0x01
,
0x01
,
0x01
,
0x01
,
0x01
,
0x01
,
0x01
,
0x01
},
.
result
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
},
8
,
.
rlen
=
8
,
{},
},
{
/* Two blocks -- for testing encryption across pages */
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
},
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
.
klen
=
8
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
},
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
8
,
0
,
{}
},
/* Two blocks -- for testing encryption across pages */
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
},
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
},
16
,
.
ilen
=
16
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
.
result
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
},
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
},
16
,
.
rlen
=
16
,
2
,
.
np
=
2
,
{
8
,
8
}
.
tap
=
{
8
,
8
}
},
},
{
/* Four blocks -- for testing encryption with chunking */
/* Four blocks -- for testing encryption with chunking */
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
{
.
klen
=
8
,
0
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xca
,
0xfe
,
0xba
,
0xbe
,
0xfe
,
0xed
,
0xbe
,
0xef
,
0xca
,
0xfe
,
0xba
,
0xbe
,
0xfe
,
0xed
,
0xbe
,
0xef
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
},
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
},
32
,
.
ilen
=
32
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
.
result
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
,
0xb4
,
0x99
,
0x26
,
0xf7
,
0x1f
,
0xe1
,
0xd4
,
0x90
,
0xb4
,
0x99
,
0x26
,
0xf7
,
0x1f
,
0xe1
,
0xd4
,
0x90
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
},
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
},
32
,
.
rlen
=
32
,
3
,
.
np
=
3
,
{
14
,
10
,
8
}
.
tap
=
{
14
,
10
,
8
}
},
},
{
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xca
,
0xfe
,
0xba
,
0xbe
,
0xfe
,
0xed
,
0xbe
,
0xef
},
0xca
,
0xfe
,
0xba
,
0xbe
,
0xfe
,
0xed
,
0xbe
,
0xef
},
24
,
.
ilen
=
24
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
.
result
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
,
0xb4
,
0x99
,
0x26
,
0xf7
,
0x1f
,
0xe1
,
0xd4
,
0x90
},
0xb4
,
0x99
,
0x26
,
0xf7
,
0x1f
,
0xe1
,
0xd4
,
0x90
},
24
,
.
rlen
=
24
,
4
,
.
np
=
4
,
{
2
,
1
,
3
,
18
}
.
tap
=
{
2
,
1
,
3
,
18
}
},
},
{
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
},
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
},
16
,
.
ilen
=
16
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
.
result
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
},
0xf7
,
0x9c
,
0x89
,
0x2a
,
0x33
,
0x8f
,
0x4a
,
0x8b
},
16
,
.
rlen
=
16
,
5
,
.
np
=
5
,
{
2
,
2
,
2
,
2
,
8
}
.
tap
=
{
2
,
2
,
2
,
2
,
8
}
},
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
klen
=
8
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
},
.
ilen
=
8
,
.
result
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
},
.
rlen
=
8
,
.
np
=
8
,
.
tap
=
{
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
}
},
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
},
8
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
},
8
,
8
,
{
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
}
},
};
};
struct
cipher_testvec
des_dec_tv_template
[]
=
{
struct
cipher_testvec
des_dec_tv_template
[]
=
{
/* From Applied Cryptography */
{
/* From Applied Cryptography */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
ilen
=
8
,
8
,
.
result
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
},
{},
.
rlen
=
8
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
},
},
{
/* Sbox test from NBS */
8
,
.
key
=
{
0x7c
,
0xa1
,
0x10
,
0x45
,
0x4a
,
0x1a
,
0x6e
,
0x57
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
},
.
klen
=
8
,
8
,
.
input
=
{
0x69
,
0x0f
,
0x5b
,
0x0d
,
0x9a
,
0x26
,
0x93
,
0x9b
},
0
,
.
ilen
=
8
,
{}
.
result
=
{
0x01
,
0xa1
,
0xd6
,
0xd0
,
0x39
,
0x77
,
0x67
,
0x42
},
},
.
rlen
=
8
,
/* Sbox test from NBS */
},
{
/* Two blocks, for chunking test */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
{
0x7C
,
0xA1
,
0x10
,
0x45
,
0x4A
,
0x1A
,
0x6E
,
0x57
},
0x69
,
0x0f
,
0x5b
,
0x0d
,
0x9a
,
0x26
,
0x93
,
0x9b
},
8
,
.
ilen
=
16
,
{},
.
result
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
{
0x69
,
0x0F
,
0x5B
,
0x0D
,
0x9A
,
0x26
,
0x93
,
0x9B
},
8
,
{
0x01
,
0xA1
,
0xD6
,
0xD0
,
0x39
,
0x77
,
0x67
,
0x42
},
8
,
0
,
{}
},
/* Two blocks, for chunking test */
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{},
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
0x69
,
0x0F
,
0x5B
,
0x0D
,
0x9A
,
0x26
,
0x93
,
0x9B
},
16
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0xa3
,
0x99
,
0x7b
,
0xca
,
0xaf
,
0x69
,
0xa0
,
0xf5
},
0xa3
,
0x99
,
0x7b
,
0xca
,
0xaf
,
0x69
,
0xa0
,
0xf5
},
16
,
.
rlen
=
16
,
2
,
.
np
=
2
,
{
8
,
8
}
.
tap
=
{
8
,
8
}
},
},
{
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0x69
,
0x0f
,
0x5b
,
0x0d
,
0x9a
,
0x26
,
0x93
,
0x9b
},
8
,
.
ilen
=
16
,
{},
.
result
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
{
0xc9
,
0x57
,
0x44
,
0x25
,
0x6a
,
0x5e
,
0xd3
,
0x1d
,
0x69
,
0x0F
,
0x5B
,
0x0D
,
0x9A
,
0x26
,
0x93
,
0x9B
},
16
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xe7
,
0xa3
,
0x99
,
0x7b
,
0xca
,
0xaf
,
0x69
,
0xa0
,
0xf5
},
0xa3
,
0x99
,
0x7b
,
0xca
,
0xaf
,
0x69
,
0xa0
,
0xf5
},
16
,
.
rlen
=
16
,
3
,
.
np
=
3
,
{
3
,
12
,
1
}
.
tap
=
{
3
,
12
,
1
}
},
},
};
};
struct
cipher_testvec
des_cbc_enc_tv_template
[]
=
{
struct
cipher_testvec
des_cbc_enc_tv_template
[]
=
{
/* From OpenSSL */
{
/* From OpenSSL */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
iv
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
input
=
{
0x37
,
0x36
,
0x35
,
0x34
,
0x33
,
0x32
,
0x31
,
0x20
,
8
,
0x4e
,
0x6f
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
,
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x20
},
{
0x37
,
0x36
,
0x35
,
0x34
,
0x33
,
0x32
,
0x31
,
0x20
,
.
ilen
=
24
,
0x4E
,
0x6F
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
,
.
result
=
{
0xcc
,
0xd1
,
0x73
,
0xff
,
0xab
,
0x20
,
0x39
,
0xf4
,
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6D
,
0x65
,
0x20
},
24
,
{
0xcc
,
0xd1
,
0x73
,
0xff
,
0xab
,
0x20
,
0x39
,
0xf4
,
0xac
,
0xd8
,
0xae
,
0xfd
,
0xdf
,
0xd8
,
0xa1
,
0xeb
,
0xac
,
0xd8
,
0xae
,
0xfd
,
0xdf
,
0xd8
,
0xa1
,
0xeb
,
0x46
,
0x8e
,
0x91
,
0x15
,
0x78
,
0x88
,
0xba
,
0x68
},
0x46
,
0x8e
,
0x91
,
0x15
,
0x78
,
0x88
,
0xba
,
0x68
},
24
,
.
rlen
=
24
,
0
,
},
{
/* FIPS Pub 81 */
{}
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
},
.
klen
=
8
,
/* FIPS Pub 81 */
.
iv
=
{
0x12
,
0x34
,
0x56
,
0x78
,
0x90
,
0xab
,
0xcd
,
0xef
},
{
.
input
=
{
0x4e
,
0x6f
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
},
0
,
.
ilen
=
8
,
0
,
.
result
=
{
0xe5
,
0xc7
,
0xcd
,
0xde
,
0x87
,
0x2b
,
0xf2
,
0x7c
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
rlen
=
8
,
8
,
},
{
{
0x12
,
0x34
,
0x56
,
0x78
,
0x90
,
0xab
,
0xcd
,
0xef
},
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
{
0x4e
,
0x6f
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
},
.
klen
=
8
,
8
,
.
iv
=
{
0xe5
,
0xc7
,
0xcd
,
0xde
,
0x87
,
0x2b
,
0xf2
,
0x7c
},
{
0xe5
,
0xc7
,
0xcd
,
0xde
,
0x87
,
0x2b
,
0xf2
,
0x7c
},
.
input
=
{
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x20
},
8
,
.
ilen
=
8
,
0
,
.
result
=
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
{}
.
rlen
=
8
,
},
},
{
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
iv
=
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
input
=
{
0x66
,
0x6f
,
0x72
,
0x20
,
0x61
,
0x6c
,
0x6c
,
0x20
},
8
,
.
ilen
=
8
,
{
0xe5
,
0xc7
,
0xcd
,
0xde
,
0x87
,
0x2b
,
0xf2
,
0x7c
},
.
result
=
{
0x68
,
0x37
,
0x88
,
0x49
,
0x9a
,
0x7c
,
0x05
,
0xf6
},
{
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x20
},
.
rlen
=
8
,
8
,
},
{
/* Copy of openssl vector for chunk testing */
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
8
,
0
,
{}
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
{
0x66
,
0x6f
,
0x72
,
0x20
,
0x61
,
0x6c
,
0x6c
,
0x20
},
8
,
{
0x68
,
0x37
,
0x88
,
0x49
,
0x9a
,
0x7c
,
0x05
,
0xf6
},
8
,
0
,
{}
},
/* Copy of openssl vector for chunk testing */
/* From OpenSSL */
/* From OpenSSL */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
iv
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
input
=
{
0x37
,
0x36
,
0x35
,
0x34
,
0x33
,
0x32
,
0x31
,
0x20
,
8
,
0x4e
,
0x6f
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
,
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x20
},
{
0x37
,
0x36
,
0x35
,
0x34
,
0x33
,
0x32
,
0x31
,
0x20
,
.
ilen
=
24
,
0x4E
,
0x6F
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
,
.
result
=
{
0xcc
,
0xd1
,
0x73
,
0xff
,
0xab
,
0x20
,
0x39
,
0xf4
,
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6D
,
0x65
,
0x20
},
24
,
{
0xcc
,
0xd1
,
0x73
,
0xff
,
0xab
,
0x20
,
0x39
,
0xf4
,
0xac
,
0xd8
,
0xae
,
0xfd
,
0xdf
,
0xd8
,
0xa1
,
0xeb
,
0xac
,
0xd8
,
0xae
,
0xfd
,
0xdf
,
0xd8
,
0xa1
,
0xeb
,
0x46
,
0x8e
,
0x91
,
0x15
,
0x78
,
0x88
,
0xba
,
0x68
},
0x46
,
0x8e
,
0x91
,
0x15
,
0x78
,
0x88
,
0xba
,
0x68
},
24
,
.
rlen
=
24
,
2
,
.
np
=
2
,
{
13
,
11
}
.
tap
=
{
13
,
11
}
},
},
};
};
struct
cipher_testvec
des_cbc_dec_tv_template
[]
=
{
struct
cipher_testvec
des_cbc_dec_tv_template
[]
=
{
/* FIPS Pub 81 */
{
/* FIPS Pub 81 */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
klen
=
8
,
0
,
.
iv
=
{
0x12
,
0x34
,
0x56
,
0x78
,
0x90
,
0xab
,
0xcd
,
0xef
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
input
=
{
0xe5
,
0xc7
,
0xcd
,
0xde
,
0x87
,
0x2b
,
0xf2
,
0x7c
},
8
,
.
ilen
=
8
,
{
0x12
,
0x34
,
0x56
,
0x78
,
0x90
,
0xab
,
0xcd
,
0xef
},
.
result
=
{
0x4e
,
0x6f
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
},
{
0xe5
,
0xc7
,
0xcd
,
0xde
,
0x87
,
0x2b
,
0xf2
,
0x7c
},
.
rlen
=
8
,
8
,
},
{
{
0x4e
,
0x6f
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
},
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
.
klen
=
8
,
0
,
.
iv
=
{
0xe5
,
0xc7
,
0xcd
,
0xde
,
0x87
,
0x2b
,
0xf2
,
0x7c
},
{}
.
input
=
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
},
.
ilen
=
8
,
{
.
result
=
{
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x20
},
0
,
.
rlen
=
8
,
0
,
},
{
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
.
klen
=
8
,
{
0xe5
,
0xc7
,
0xcd
,
0xde
,
0x87
,
0x2b
,
0xf2
,
0x7c
},
.
iv
=
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
.
input
=
{
0x68
,
0x37
,
0x88
,
0x49
,
0x9a
,
0x7c
,
0x05
,
0xf6
},
8
,
.
ilen
=
8
,
{
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x20
},
.
result
=
{
0x66
,
0x6f
,
0x72
,
0x20
,
0x61
,
0x6c
,
0x6c
,
0x20
},
8
,
.
rlen
=
8
,
0
,
},
{
/* Copy of above, for chunk testing */
{}
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
},
.
klen
=
8
,
{
.
iv
=
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
0
,
.
input
=
{
0x68
,
0x37
,
0x88
,
0x49
,
0x9a
,
0x7c
,
0x05
,
0xf6
},
0
,
.
ilen
=
8
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
result
=
{
0x66
,
0x6f
,
0x72
,
0x20
,
0x61
,
0x6c
,
0x6c
,
0x20
},
8
,
.
rlen
=
8
,
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
.
np
=
2
,
{
0x68
,
0x37
,
0x88
,
0x49
,
0x9a
,
0x7c
,
0x05
,
0xf6
},
.
tap
=
{
4
,
4
}
8
,
{
0x66
,
0x6f
,
0x72
,
0x20
,
0x61
,
0x6c
,
0x6c
,
0x20
},
8
,
0
,
{}
},
/* Copy of above, for chunk testing */
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{
0x43
,
0xe9
,
0x34
,
0x00
,
0x8c
,
0x38
,
0x9c
,
0x0f
},
{
0x68
,
0x37
,
0x88
,
0x49
,
0x9a
,
0x7c
,
0x05
,
0xf6
},
8
,
{
0x66
,
0x6f
,
0x72
,
0x20
,
0x61
,
0x6c
,
0x6c
,
0x20
},
8
,
2
,
{
4
,
4
}
},
},
};
};
...
@@ -1143,100 +799,64 @@ struct cipher_testvec des_cbc_dec_tv_template[] = {
...
@@ -1143,100 +799,64 @@ struct cipher_testvec des_cbc_dec_tv_template[] = {
* We really need some more test vectors, especially for DES3 CBC.
* We really need some more test vectors, especially for DES3 CBC.
*/
*/
struct
cipher_testvec
des3_ede_enc_tv_template
[]
=
{
struct
cipher_testvec
des3_ede_enc_tv_template
[]
=
{
/* These are from openssl */
{
/* These are from openssl */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
,
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
24
,
.
klen
=
24
,
{},
.
input
=
{
0x73
,
0x6f
,
0x6d
,
0x65
,
0x64
,
0x61
,
0x74
,
0x61
},
{
0x73
,
0x6F
,
0x6D
,
0x65
,
0x64
,
0x61
,
0x74
,
0x61
},
.
ilen
=
8
,
8
,
.
result
=
{
0x18
,
0xd7
,
0x48
,
0xe5
,
0x63
,
0x62
,
0x05
,
0x72
},
{
0x18
,
0xd7
,
0x48
,
0xe5
,
0x63
,
0x62
,
0x05
,
0x72
},
.
rlen
=
8
,
8
,
},
{
0
,
.
key
=
{
0x03
,
0x52
,
0x02
,
0x07
,
0x67
,
0x20
,
0x82
,
0x17
,
{}
0x86
,
0x02
,
0x87
,
0x66
,
0x59
,
0x08
,
0x21
,
0x98
,
},
0x64
,
0x05
,
0x6a
,
0xbd
,
0xfe
,
0xa9
,
0x34
,
0x57
},
{
.
klen
=
24
,
0
,
.
input
=
{
0x73
,
0x71
,
0x75
,
0x69
,
0x67
,
0x67
,
0x6c
,
0x65
},
0
,
.
ilen
=
8
,
{
0x03
,
0x52
,
0x02
,
0x07
,
0x67
,
0x20
,
0x82
,
0x17
,
.
result
=
{
0xc0
,
0x7d
,
0x2a
,
0x0f
,
0xa5
,
0x66
,
0xfa
,
0x30
},
0x86
,
0x02
,
0x87
,
0x66
,
0x59
,
0x08
,
0x21
,
0x98
,
.
rlen
=
8
,
0x64
,
0x05
,
0x6A
,
0xBD
,
0xFE
,
0xA9
,
0x34
,
0x57
},
},
{
24
,
.
key
=
{
0x10
,
0x46
,
0x10
,
0x34
,
0x89
,
0x98
,
0x80
,
0x20
,
{},
0x91
,
0x07
,
0xd0
,
0x15
,
0x89
,
0x19
,
0x01
,
0x01
,
{
0x73
,
0x71
,
0x75
,
0x69
,
0x67
,
0x67
,
0x6C
,
0x65
},
0x19
,
0x07
,
0x92
,
0x10
,
0x98
,
0x1a
,
0x01
,
0x01
},
8
,
.
klen
=
24
,
{
0xc0
,
0x7d
,
0x2a
,
0x0f
,
0xa5
,
0x66
,
0xfa
,
0x30
},
.
input
=
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
8
,
.
ilen
=
8
,
0
,
.
result
=
{
0xe1
,
0xef
,
0x62
,
0xc3
,
0x32
,
0xfe
,
0x82
,
0x5b
},
{}
.
rlen
=
8
,
},
{
0
,
0
,
{
0x10
,
0x46
,
0x10
,
0x34
,
0x89
,
0x98
,
0x80
,
0x20
,
0x91
,
0x07
,
0xD0
,
0x15
,
0x89
,
0x19
,
0x01
,
0x01
,
0x19
,
0x07
,
0x92
,
0x10
,
0x98
,
0x1A
,
0x01
,
0x01
},
24
,
{},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
8
,
{
0xe1
,
0xef
,
0x62
,
0xc3
,
0x32
,
0xfe
,
0x82
,
0x5b
},
8
,
0
,
{}
},
},
};
};
struct
cipher_testvec
des3_ede_dec_tv_template
[]
=
{
struct
cipher_testvec
des3_ede_dec_tv_template
[]
=
{
/* These are from openssl */
{
/* These are from openssl */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
,
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0x55
,
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
24
,
.
klen
=
24
,
{},
.
input
=
{
0x18
,
0xd7
,
0x48
,
0xe5
,
0x63
,
0x62
,
0x05
,
0x72
},
{
0x18
,
0xd7
,
0x48
,
0xe5
,
0x63
,
0x62
,
0x05
,
0x72
},
.
ilen
=
8
,
8
,
.
result
=
{
0x73
,
0x6f
,
0x6d
,
0x65
,
0x64
,
0x61
,
0x74
,
0x61
},
{
0x73
,
0x6F
,
0x6D
,
0x65
,
0x64
,
0x61
,
0x74
,
0x61
},
.
rlen
=
8
,
8
,
},
{
0
,
.
key
=
{
0x03
,
0x52
,
0x02
,
0x07
,
0x67
,
0x20
,
0x82
,
0x17
,
{}
0x86
,
0x02
,
0x87
,
0x66
,
0x59
,
0x08
,
0x21
,
0x98
,
},
0x64
,
0x05
,
0x6a
,
0xbd
,
0xfe
,
0xa9
,
0x34
,
0x57
},
{
.
klen
=
24
,
0
,
.
input
=
{
0xc0
,
0x7d
,
0x2a
,
0x0f
,
0xa5
,
0x66
,
0xfa
,
0x30
},
0
,
.
ilen
=
8
,
{
0x03
,
0x52
,
0x02
,
0x07
,
0x67
,
0x20
,
0x82
,
0x17
,
.
result
=
{
0x73
,
0x71
,
0x75
,
0x69
,
0x67
,
0x67
,
0x6c
,
0x65
},
0x86
,
0x02
,
0x87
,
0x66
,
0x59
,
0x08
,
0x21
,
0x98
,
.
rlen
=
8
,
0x64
,
0x05
,
0x6A
,
0xBD
,
0xFE
,
0xA9
,
0x34
,
0x57
},
},
{
24
,
.
key
=
{
0x10
,
0x46
,
0x10
,
0x34
,
0x89
,
0x98
,
0x80
,
0x20
,
{},
0x91
,
0x07
,
0xd0
,
0x15
,
0x89
,
0x19
,
0x01
,
0x01
,
{
0xc0
,
0x7d
,
0x2a
,
0x0f
,
0xa5
,
0x66
,
0xfa
,
0x30
},
0x19
,
0x07
,
0x92
,
0x10
,
0x98
,
0x1a
,
0x01
,
0x01
},
8
,
.
klen
=
24
,
{
0x73
,
0x71
,
0x75
,
0x69
,
0x67
,
0x67
,
0x6C
,
0x65
},
.
input
=
{
0xe1
,
0xef
,
0x62
,
0xc3
,
0x32
,
0xfe
,
0x82
,
0x5b
},
8
,
.
ilen
=
8
,
0
,
.
result
=
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
{}
.
rlen
=
8
,
},
{
0
,
0
,
{
0x10
,
0x46
,
0x10
,
0x34
,
0x89
,
0x98
,
0x80
,
0x20
,
0x91
,
0x07
,
0xD0
,
0x15
,
0x89
,
0x19
,
0x01
,
0x01
,
0x19
,
0x07
,
0x92
,
0x10
,
0x98
,
0x1A
,
0x01
,
0x01
},
24
,
{},
{
0xe1
,
0xef
,
0x62
,
0xc3
,
0x32
,
0xfe
,
0x82
,
0x5b
},
8
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
8
,
0
,
{}
},
},
};
};
...
@@ -1249,238 +869,151 @@ struct cipher_testvec des3_ede_dec_tv_template[] = {
...
@@ -1249,238 +869,151 @@ struct cipher_testvec des3_ede_dec_tv_template[] = {
#define BF_CBC_DEC_TEST_VECTORS 1
#define BF_CBC_DEC_TEST_VECTORS 1
struct
cipher_testvec
bf_enc_tv_template
[]
=
{
struct
cipher_testvec
bf_enc_tv_template
[]
=
{
/* DES test vectors from OpenSSL */
{
/* DES test vectors from OpenSSL */
{
.
key
=
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
},
.
ilen
=
8
,
8
,
.
result
=
{
0x4e
,
0xf9
,
0x97
,
0x45
,
0x61
,
0x98
,
0xdd
,
0x78
},
{},
.
rlen
=
8
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
},
{
8
,
.
key
=
{
0x1f
,
0x1f
,
0x1f
,
0x1f
,
0x0e
,
0x0e
,
0x0e
,
0x0e
},
{
0x4E
,
0xF9
,
0x97
,
0x45
,
0x61
,
0x98
,
0xDD
,
0x78
},
.
klen
=
8
,
8
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
0
,
.
ilen
=
8
,
{}
.
result
=
{
0xa7
,
0x90
,
0x79
,
0x51
,
0x08
,
0xea
,
0x3c
,
0xae
},
},
.
rlen
=
8
,
{
},
{
0
,
.
key
=
{
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
},
0
,
.
klen
=
8
,
{
0x1F
,
0x1F
,
0x1F
,
0x1F
,
0x0E
,
0x0E
,
0x0E
,
0x0E
},
.
input
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
8
,
.
ilen
=
8
,
{},
.
result
=
{
0xe8
,
0x7a
,
0x24
,
0x4e
,
0x2c
,
0xc8
,
0x5e
,
0x82
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
},
.
rlen
=
8
,
8
,
},
{
/* Vary the keylength... */
{
0xA7
,
0x90
,
0x79
,
0x51
,
0x08
,
0xEA
,
0x3C
,
0xAE
},
.
key
=
{
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
,
8
,
0x78
,
0x69
,
0x5a
,
0x4b
,
0x3c
,
0x2d
,
0x1e
,
0x0f
},
0
,
.
klen
=
16
,
{}
.
input
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
},
.
ilen
=
8
,
{
.
result
=
{
0x93
,
0x14
,
0x28
,
0x87
,
0xee
,
0x3b
,
0xe1
,
0x5c
},
0
,
.
rlen
=
8
,
0
,
},
{
{
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
},
.
key
=
{
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
,
8
,
0x78
,
0x69
,
0x5a
,
0x4b
,
0x3c
,
0x2d
,
0x1e
,
0x0f
,
{},
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
8
,
{
0xE8
,
0x7A
,
0x24
,
0x4E
,
0x2C
,
0xC8
,
0x5E
,
0x82
},
8
,
0
,
{}
},
/* Vary the keylength... */
{
0
,
0
,
{
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
,
0x78
,
0x69
,
0x5A
,
0x4B
,
0x3C
,
0x2D
,
0x1E
,
0x0F
},
16
,
{},
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
8
,
{
0x93
,
0x14
,
0x28
,
0x87
,
0xEE
,
0x3B
,
0xE1
,
0x5C
},
8
,
0
,
{}
},
{
0
,
0
,
{
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
,
0x78
,
0x69
,
0x5A
,
0x4B
,
0x3C
,
0x2D
,
0x1E
,
0x0F
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
},
0x00
,
0x11
,
0x22
,
0x33
,
0x44
},
21
,
.
klen
=
21
,
{},
.
input
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
.
ilen
=
8
,
8
,
.
result
=
{
0xe6
,
0xf5
,
0x1e
,
0xd7
,
0x9b
,
0x9d
,
0xb2
,
0x1f
},
{
0xE6
,
0xF5
,
0x1E
,
0xD7
,
0x9B
,
0x9D
,
0xB2
,
0x1F
},
.
rlen
=
8
,
8
,
},
{
/* Generated with bf488 */
0
,
.
key
=
{
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
,
{}
0x78
,
0x69
,
0x5a
,
0x4b
,
0x3c
,
0x2d
,
0x1e
,
0x0f
,
},
/* Generated with bf488 */
{
0
,
0
,
{
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
,
0x78
,
0x69
,
0x5A
,
0x4B
,
0x3C
,
0x2D
,
0x1E
,
0x0F
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x04
,
0x68
,
0x91
,
0x04
,
0xC2
,
0xFD
,
0x3B
,
0x2F
,
0x04
,
0x68
,
0x91
,
0x04
,
0xc2
,
0xfd
,
0x3b
,
0x2f
,
0x58
,
0x40
,
0x23
,
0x64
,
0x1A
,
0xBA
,
0x61
,
0x76
,
0x58
,
0x40
,
0x23
,
0x64
,
0x1a
,
0xba
,
0x61
,
0x76
,
0x1F
,
0x1F
,
0x1F
,
0x1F
,
0x0E
,
0x0E
,
0x0E
,
0x0E
,
0x1f
,
0x1f
,
0x1f
,
0x1f
,
0x0e
,
0x0e
,
0x0e
,
0x0e
,
0xFF
,
0xFF
,
0xFF
,
0xFF
,
0xFF
,
0xFF
,
0xFF
,
0xFF
},
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
},
56
,
.
klen
=
56
,
{},
.
input
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
.
ilen
=
8
,
8
,
.
result
=
{
0xc0
,
0x45
,
0x04
,
0x01
,
0x2e
,
0x4e
,
0x1f
,
0x53
},
{
0xc0
,
0x45
,
0x04
,
0x01
,
0x2e
,
0x4e
,
0x1f
,
0x53
},
.
rlen
=
8
,
8
,
},
0
,
{}
}
};
};
struct
cipher_testvec
bf_dec_tv_template
[]
=
{
struct
cipher_testvec
bf_dec_tv_template
[]
=
{
/* DES test vectors from OpenSSL */
{
/* DES test vectors from OpenSSL */
{
.
key
=
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
0
,
.
klen
=
8
,
0
,
.
input
=
{
0x4e
,
0xf9
,
0x97
,
0x45
,
0x61
,
0x98
,
0xdd
,
0x78
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
ilen
=
8
,
8
,
.
result
=
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
{},
.
rlen
=
8
,
{
0x4E
,
0xF9
,
0x97
,
0x45
,
0x61
,
0x98
,
0xDD
,
0x78
},
},
{
8
,
.
key
=
{
0x1f
,
0x1f
,
0x1f
,
0x1f
,
0x0e
,
0x0e
,
0x0e
,
0x0e
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
klen
=
8
,
8
,
.
input
=
{
0xa7
,
0x90
,
0x79
,
0x51
,
0x08
,
0xea
,
0x3c
,
0xae
},
0
,
.
ilen
=
8
,
{}
.
result
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
},
.
rlen
=
8
,
{
},
{
0
,
.
key
=
{
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
},
0
,
.
klen
=
8
,
{
0x1F
,
0x1F
,
0x1F
,
0x1F
,
0x0E
,
0x0E
,
0x0E
,
0x0E
},
.
input
=
{
0xe8
,
0x7a
,
0x24
,
0x4e
,
0x2c
,
0xc8
,
0x5e
,
0x82
},
8
,
.
ilen
=
8
,
{},
.
result
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
{
0xA7
,
0x90
,
0x79
,
0x51
,
0x08
,
0xEA
,
0x3C
,
0xAE
},
.
rlen
=
8
,
8
,
},
{
/* Vary the keylength... */
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
},
.
key
=
{
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
,
8
,
0x78
,
0x69
,
0x5a
,
0x4b
,
0x3c
,
0x2d
,
0x1e
,
0x0f
},
0
,
.
klen
=
16
,
{}
.
input
=
{
0x93
,
0x14
,
0x28
,
0x87
,
0xee
,
0x3b
,
0xe1
,
0x5c
},
},
.
ilen
=
8
,
{
.
result
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0
,
.
rlen
=
8
,
0
,
},
{
{
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
},
.
key
=
{
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
,
8
,
0x78
,
0x69
,
0x5a
,
0x4b
,
0x3c
,
0x2d
,
0x1e
,
0x0f
,
{},
{
0xE8
,
0x7A
,
0x24
,
0x4E
,
0x2C
,
0xC8
,
0x5E
,
0x82
},
8
,
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
8
,
0
,
{}
},
/* Vary the keylength... */
{
0
,
0
,
{
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
,
0x78
,
0x69
,
0x5A
,
0x4B
,
0x3C
,
0x2D
,
0x1E
,
0x0F
},
16
,
{},
{
0x93
,
0x14
,
0x28
,
0x87
,
0xEE
,
0x3B
,
0xE1
,
0x5C
},
8
,
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
8
,
0
,
{}
},
{
0
,
0
,
{
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
,
0x78
,
0x69
,
0x5A
,
0x4B
,
0x3C
,
0x2D
,
0x1E
,
0x0F
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
},
0x00
,
0x11
,
0x22
,
0x33
,
0x44
},
21
,
.
klen
=
21
,
{},
.
input
=
{
0xe6
,
0xf5
,
0x1e
,
0xd7
,
0x9b
,
0x9d
,
0xb2
,
0x1f
},
{
0xE6
,
0xF5
,
0x1E
,
0xD7
,
0x9B
,
0x9D
,
0xB2
,
0x1F
},
.
ilen
=
8
,
8
,
.
result
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
.
rlen
=
8
,
8
,
},
{
/* Generated with bf488, using OpenSSL, Libgcrypt and Nettle */
0
,
.
key
=
{
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
,
{}
0x78
,
0x69
,
0x5a
,
0x4b
,
0x3c
,
0x2d
,
0x1e
,
0x0f
,
},
/* Generated with bf488, using OpenSSL, Libgcrypt and Nettle */
{
0
,
0
,
{
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
,
0x78
,
0x69
,
0x5A
,
0x4B
,
0x3C
,
0x2D
,
0x1E
,
0x0F
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x04
,
0x68
,
0x91
,
0x04
,
0xC2
,
0xFD
,
0x3B
,
0x2F
,
0x04
,
0x68
,
0x91
,
0x04
,
0xc2
,
0xfd
,
0x3b
,
0x2f
,
0x58
,
0x40
,
0x23
,
0x64
,
0x1A
,
0xBA
,
0x61
,
0x76
,
0x58
,
0x40
,
0x23
,
0x64
,
0x1a
,
0xba
,
0x61
,
0x76
,
0x1F
,
0x1F
,
0x1F
,
0x1F
,
0x0E
,
0x0E
,
0x0E
,
0x0E
,
0x1f
,
0x1f
,
0x1f
,
0x1f
,
0x0e
,
0x0e
,
0x0e
,
0x0e
,
0xFF
,
0xFF
,
0xFF
,
0xFF
,
0xFF
,
0xFF
,
0xFF
,
0xFF
},
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
},
56
,
.
klen
=
56
,
{},
.
input
=
{
0xc0
,
0x45
,
0x04
,
0x01
,
0x2e
,
0x4e
,
0x1f
,
0x53
},
{
0xc0
,
0x45
,
0x04
,
0x01
,
0x2e
,
0x4e
,
0x1f
,
0x53
},
.
ilen
=
8
,
8
,
.
result
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
.
rlen
=
8
,
8
,
0
,
{}
},
},
};
};
struct
cipher_testvec
bf_cbc_enc_tv_template
[]
=
{
struct
cipher_testvec
bf_cbc_enc_tv_template
[]
=
{
/* From OpenSSL */
{
/* From OpenSSL */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
,
0
,
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
},
0
,
.
klen
=
16
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
,
.
iv
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
},
.
input
=
{
0x37
,
0x36
,
0x35
,
0x34
,
0x33
,
0x32
,
0x31
,
0x20
,
16
,
0x4e
,
0x6f
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
,
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x20
,
{
0x37
,
0x36
,
0x35
,
0x34
,
0x33
,
0x32
,
0x31
,
0x20
,
0x66
,
0x6f
,
0x72
,
0x20
,
0x00
,
0x00
,
0x00
,
0x00
},
0x4E
,
0x6F
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
,
.
ilen
=
32
,
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6D
,
0x65
,
0x20
,
.
result
=
{
0x6b
,
0x77
,
0xb4
,
0xd6
,
0x30
,
0x06
,
0xde
,
0xe6
,
0x66
,
0x6F
,
0x72
,
0x20
,
0x00
,
0x00
,
0x00
,
0x00
},
0x05
,
0xb1
,
0x56
,
0xe2
,
0x74
,
0x03
,
0x97
,
0x93
,
32
,
0x58
,
0xde
,
0xb9
,
0xe7
,
0x15
,
0x46
,
0x16
,
0xd9
,
{
0x6B
,
0x77
,
0xB4
,
0xD6
,
0x30
,
0x06
,
0xDE
,
0xE6
,
0x59
,
0xf1
,
0x65
,
0x2b
,
0xd5
,
0xff
,
0x92
,
0xcc
},
0x05
,
0xB1
,
0x56
,
0xE2
,
0x74
,
0x03
,
0x97
,
0x93
,
.
rlen
=
32
,
0x58
,
0xDE
,
0xB9
,
0xE7
,
0x15
,
0x46
,
0x16
,
0xD9
,
},
0x59
,
0xF1
,
0x65
,
0x2B
,
0xD5
,
0xFF
,
0x92
,
0xCC
},
32
,
0
,
{}
}
};
};
struct
cipher_testvec
bf_cbc_dec_tv_template
[]
=
{
struct
cipher_testvec
bf_cbc_dec_tv_template
[]
=
{
/* From OpenSSL */
{
/* From OpenSSL */
{
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
,
0
,
0xf0
,
0xe1
,
0xd2
,
0xc3
,
0xb4
,
0xa5
,
0x96
,
0x87
},
0
,
.
klen
=
16
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
,
.
iv
=
{
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0xF0
,
0xE1
,
0xD2
,
0xC3
,
0xB4
,
0xA5
,
0x96
,
0x87
},
.
input
=
{
0x6b
,
0x77
,
0xb4
,
0xd6
,
0x30
,
0x06
,
0xde
,
0xe6
,
16
,
0x05
,
0xb1
,
0x56
,
0xe2
,
0x74
,
0x03
,
0x97
,
0x93
,
{
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
},
0x58
,
0xde
,
0xb9
,
0xe7
,
0x15
,
0x46
,
0x16
,
0xd9
,
{
0x6B
,
0x77
,
0xB4
,
0xD6
,
0x30
,
0x06
,
0xDE
,
0xE6
,
0x59
,
0xf1
,
0x65
,
0x2b
,
0xd5
,
0xff
,
0x92
,
0xcc
},
0x05
,
0xB1
,
0x56
,
0xE2
,
0x74
,
0x03
,
0x97
,
0x93
,
.
ilen
=
32
,
0x58
,
0xDE
,
0xB9
,
0xE7
,
0x15
,
0x46
,
0x16
,
0xD9
,
.
result
=
{
0x37
,
0x36
,
0x35
,
0x34
,
0x33
,
0x32
,
0x31
,
0x20
,
0x59
,
0xF1
,
0x65
,
0x2B
,
0xD5
,
0xFF
,
0x92
,
0xCC
},
0x4e
,
0x6f
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
,
32
,
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x20
,
{
0x37
,
0x36
,
0x35
,
0x34
,
0x33
,
0x32
,
0x31
,
0x20
,
0x66
,
0x6f
,
0x72
,
0x20
,
0x00
,
0x00
,
0x00
,
0x00
},
0x4E
,
0x6F
,
0x77
,
0x20
,
0x69
,
0x73
,
0x20
,
0x74
,
.
rlen
=
32
,
0x68
,
0x65
,
0x20
,
0x74
,
0x69
,
0x6D
,
0x65
,
0x20
,
},
0x66
,
0x6F
,
0x72
,
0x20
,
0x00
,
0x00
,
0x00
,
0x00
},
32
,
0
,
{}
}
};
};
/*
/*
...
@@ -1493,269 +1026,159 @@ struct cipher_testvec bf_cbc_dec_tv_template[] = {
...
@@ -1493,269 +1026,159 @@ struct cipher_testvec bf_cbc_dec_tv_template[] = {
struct
cipher_testvec
tf_enc_tv_template
[]
=
{
struct
cipher_testvec
tf_enc_tv_template
[]
=
{
{
{
0
,
.
key
=
{
[
0
...
15
]
=
0x00
},
0
,
.
klen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
input
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
ilen
=
16
,
16
,
.
result
=
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
{},
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
rlen
=
16
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
},
{
16
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
,
{
0x9F
,
0x58
,
0x9F
,
0x5C
,
0xF6
,
0x12
,
0x2C
,
0x32
,
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
,
0xB6
,
0xBF
,
0xEC
,
0x2F
,
0x2A
,
0xE8
,
0xC3
,
0x5A
},
16
,
0
,
{}
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
,
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
},
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
},
24
,
.
klen
=
24
,
{},
.
input
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
ilen
=
16
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
result
=
{
0xcf
,
0xd1
,
0xd2
,
0xe5
,
0xa9
,
0xbe
,
0x9c
,
0xdf
,
16
,
0x50
,
0x1f
,
0x13
,
0xb8
,
0x92
,
0xbd
,
0x22
,
0x48
},
{
0xCF
,
0xD1
,
0xD2
,
0xE5
,
0xA9
,
0xBE
,
0x9C
,
0xDF
,
.
rlen
=
16
,
0x50
,
0x1F
,
0x13
,
0xB8
,
0x92
,
0xBD
,
0x22
,
0x48
},
},
{
16
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
,
0
,
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
,
{}
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
,
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xAA
,
0xBB
,
0xCC
,
0xDD
,
0xEE
,
0xFF
},
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
32
,
.
klen
=
32
,
{},
.
input
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
ilen
=
16
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
result
=
{
0x37
,
0x52
,
0x7b
,
0xe0
,
0x05
,
0x23
,
0x34
,
0xb8
,
16
,
0x9f
,
0x0c
,
0xfc
,
0xca
,
0xe8
,
0x7c
,
0xfa
,
0x20
},
{
0x37
,
0x52
,
0x7B
,
0xE0
,
0x05
,
0x23
,
0x34
,
0xB8
,
.
rlen
=
16
,
0x9F
,
0x0C
,
0xFC
,
0xCA
,
0xE8
,
0x7C
,
0xFA
,
0x20
},
16
,
0
,
{}
},
},
};
};
struct
cipher_testvec
tf_dec_tv_template
[]
=
{
struct
cipher_testvec
tf_dec_tv_template
[]
=
{
{
{
0
,
.
key
=
{
[
0
...
15
]
=
0x00
},
0
,
.
klen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
input
=
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
16
,
.
ilen
=
16
,
{},
.
result
=
{
[
0
...
15
]
=
0x00
},
{
0x9F
,
0x58
,
0x9F
,
0x5C
,
0xF6
,
0x12
,
0x2C
,
0x32
,
.
rlen
=
16
,
0xB6
,
0xBF
,
0xEC
,
0x2F
,
0x2A
,
0xE8
,
0xC3
,
0x5A
},
},
{
16
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
0
,
{}
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
,
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
},
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
},
24
,
.
klen
=
24
,
{},
.
input
=
{
0xcf
,
0xd1
,
0xd2
,
0xe5
,
0xa9
,
0xbe
,
0x9c
,
0xdf
,
{
0xCF
,
0xD1
,
0xD2
,
0xE5
,
0xA9
,
0xBE
,
0x9C
,
0xDF
,
0x50
,
0x1f
,
0x13
,
0xb8
,
0x92
,
0xbd
,
0x22
,
0x48
},
0x50
,
0x1F
,
0x13
,
0xB8
,
0x92
,
0xBD
,
0x22
,
0x48
},
.
ilen
=
16
,
16
,
.
result
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
rlen
=
16
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
},
{
16
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
,
0
,
0xfe
,
0xdc
,
0xba
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
,
{}
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xAB
,
0xCD
,
0xEF
,
0xFE
,
0xDC
,
0xBA
,
0x98
,
0x76
,
0x54
,
0x32
,
0x10
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xAA
,
0xBB
,
0xCC
,
0xDD
,
0xEE
,
0xFF
},
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
32
,
.
klen
=
32
,
{},
.
input
=
{
0x37
,
0x52
,
0x7b
,
0xe0
,
0x05
,
0x23
,
0x34
,
0xb8
,
{
0x37
,
0x52
,
0x7B
,
0xE0
,
0x05
,
0x23
,
0x34
,
0xB8
,
0x9f
,
0x0c
,
0xfc
,
0xca
,
0xe8
,
0x7c
,
0xfa
,
0x20
},
0x9F
,
0x0C
,
0xFC
,
0xCA
,
0xE8
,
0x7C
,
0xFA
,
0x20
},
.
ilen
=
16
,
16
,
.
result
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
rlen
=
16
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
0
,
{}
},
},
};
};
struct
cipher_testvec
tf_cbc_enc_tv_template
[]
=
{
struct
cipher_testvec
tf_cbc_enc_tv_template
[]
=
{
/* Generated with Nettle */
{
/* Generated with Nettle */
{
.
key
=
{
[
0
...
15
]
=
0x00
},
0
,
.
klen
=
16
,
0
,
.
iv
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
input
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
ilen
=
16
,
16
,
.
result
=
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
[
0
...
15
]
=
0x00
},
},
.
klen
=
16
,
{
.
iv
=
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0
,
0
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
input
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
ilen
=
16
,
16
,
.
result
=
{
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
{
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
},
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
[
0
...
15
]
=
0x00
},
},
.
klen
=
16
,
{
.
iv
=
{
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0
,
0
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
},
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
input
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
ilen
=
16
,
16
,
.
result
=
{
0x05
,
0xef
,
0x8c
,
0x61
,
0xa8
,
0x11
,
0x58
,
0x26
,
{
0x05
,
0xef
,
0x8c
,
0x61
,
0xa8
,
0x11
,
0x58
,
0x26
,
0x34
,
0xba
,
0x5c
,
0xb7
,
0x10
,
0x6a
,
0xa6
,
0x41
},
0x34
,
0xba
,
0x5c
,
0xb7
,
0x10
,
0x6a
,
0xa6
,
0x41
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
[
0
...
15
]
=
0x00
},
},
.
klen
=
16
,
{
.
iv
=
{
[
0
...
15
]
=
0x00
},
0
,
.
input
=
{
[
0
...
47
]
=
0x00
},
0
,
.
ilen
=
48
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
48
,
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
,
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
,
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
,
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
,
0x05
,
0xef
,
0x8c
,
0x61
,
0xa8
,
0x11
,
0x58
,
0x26
,
0x05
,
0xef
,
0x8c
,
0x61
,
0xa8
,
0x11
,
0x58
,
0x26
,
0x34
,
0xba
,
0x5c
,
0xb7
,
0x10
,
0x6a
,
0xa6
,
0x41
},
0x34
,
0xba
,
0x5c
,
0xb7
,
0x10
,
0x6a
,
0xa6
,
0x41
},
48
,
.
rlen
=
48
,
0
,
{}
},
},
};
};
struct
cipher_testvec
tf_cbc_dec_tv_template
[]
=
{
struct
cipher_testvec
tf_cbc_dec_tv_template
[]
=
{
/* Reverse of the first four above */
{
/* Reverse of the first four above */
{
.
key
=
{
[
0
...
15
]
=
0x00
},
0
,
.
klen
=
16
,
0
,
.
iv
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
input
=
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
16
,
.
ilen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
rlen
=
16
,
16
,
},
{
0
,
.
key
=
{
[
0
...
15
]
=
0x00
},
{}
.
klen
=
16
,
},
.
iv
=
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
{
0
,
0
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
},
{
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
.
input
=
{
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
},
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
},
16
,
.
ilen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
rlen
=
16
,
16
,
},
{
0
,
.
key
=
{
[
0
...
15
]
=
0x00
},
{}
.
klen
=
16
,
},
.
iv
=
{
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
{
0
,
0
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
},
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
},
{
0x05
,
0xef
,
0x8c
,
0x61
,
0xa8
,
0x11
,
0x58
,
0x26
,
.
input
=
{
0x05
,
0xef
,
0x8c
,
0x61
,
0xa8
,
0x11
,
0x58
,
0x26
,
0x34
,
0xba
,
0x5c
,
0xb7
,
0x10
,
0x6a
,
0xa6
,
0x41
},
0x34
,
0xba
,
0x5c
,
0xb7
,
0x10
,
0x6a
,
0xa6
,
0x41
},
16
,
.
ilen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
rlen
=
16
,
16
,
},
{
0
,
.
key
=
{
[
0
...
15
]
=
0x00
},
{}
.
klen
=
16
,
},
.
iv
=
{
[
0
...
15
]
=
0x00
},
{
.
input
=
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0
,
0
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
{
0x9f
,
0x58
,
0x9f
,
0x5c
,
0xf6
,
0x12
,
0x2c
,
0x32
,
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
,
0xb6
,
0xbf
,
0xec
,
0x2f
,
0x2a
,
0xe8
,
0xc3
,
0x5a
,
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0xd4
,
0x91
,
0xdb
,
0x16
,
0xe7
,
0xb1
,
0xc3
,
0x9e
,
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
,
0x86
,
0xcb
,
0x08
,
0x6b
,
0x78
,
0x9f
,
0x54
,
0x19
,
0x05
,
0xef
,
0x8c
,
0x61
,
0xa8
,
0x11
,
0x58
,
0x26
,
0x05
,
0xef
,
0x8c
,
0x61
,
0xa8
,
0x11
,
0x58
,
0x26
,
0x34
,
0xba
,
0x5c
,
0xb7
,
0x10
,
0x6a
,
0xa6
,
0x41
},
0x34
,
0xba
,
0x5c
,
0xb7
,
0x10
,
0x6a
,
0xa6
,
0x41
},
48
,
.
ilen
=
48
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
[
0
...
47
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
rlen
=
48
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
48
,
0
,
{}
},
},
};
};
...
@@ -1769,139 +1192,85 @@ struct cipher_testvec tf_cbc_dec_tv_template[] = {
...
@@ -1769,139 +1192,85 @@ struct cipher_testvec tf_cbc_dec_tv_template[] = {
struct
cipher_testvec
serpent_enc_tv_template
[]
=
struct
cipher_testvec
serpent_enc_tv_template
[]
=
{
{
{
{
0
,
.
input
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0
,
{},
0
,
{},
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
ilen
=
16
,
{
0x12
,
0x07
,
0xfc
,
0xce
,
0x9b
,
0xd0
,
0xd6
,
0x47
,
.
result
=
{
0x12
,
0x07
,
0xfc
,
0xce
,
0x9b
,
0xd0
,
0xd6
,
0x47
,
0x6a
,
0xe9
,
0x8f
,
0xbe
,
0xd1
,
0x43
,
0xa0
,
0xe2
},
0x6a
,
0xe9
,
0x8f
,
0xbe
,
0xd1
,
0x43
,
0xa0
,
0xe2
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
},
{
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
klen
=
16
,
{},
.
input
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
ilen
=
16
,
{
0x4c
,
0x7d
,
0x8a
,
0x32
,
0x80
,
0x72
,
0xa2
,
0x2c
,
.
result
=
{
0x4c
,
0x7d
,
0x8a
,
0x32
,
0x80
,
0x72
,
0xa2
,
0x2c
,
0x82
,
0x3e
,
0x4a
,
0x1f
,
0x3a
,
0xcd
,
0xa1
,
0x6d
},
0x82
,
0x3e
,
0x4a
,
0x1f
,
0x3a
,
0xcd
,
0xa1
,
0x6d
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
},
{
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
},
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
},
32
,
.
klen
=
32
,
{},
.
input
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
ilen
=
16
,
{
0xde
,
0x26
,
0x9f
,
0xf8
,
0x33
,
0xe4
,
0x32
,
0xb8
,
.
result
=
{
0xde
,
0x26
,
0x9f
,
0xf8
,
0x33
,
0xe4
,
0x32
,
0xb8
,
0x5b
,
0x2e
,
0x88
,
0xd2
,
0x70
,
0x1c
,
0xe7
,
0x5c
},
0x5b
,
0x2e
,
0x88
,
0xd2
,
0x70
,
0x1c
,
0xe7
,
0x5c
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
[
15
]
=
0x80
},
},
.
klen
=
16
,
{
.
input
=
{
[
0
...
15
]
=
0x00
},
0
,
.
ilen
=
16
,
0
,
.
result
=
{
0xdd
,
0xd2
,
0x6b
,
0x98
,
0xa5
,
0xff
,
0xd8
,
0x2c
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x80
},
16
,
{},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
16
,
{
0xdd
,
0xd2
,
0x6b
,
0x98
,
0xa5
,
0xff
,
0xd8
,
0x2c
,
0x05
,
0x34
,
0x5a
,
0x9d
,
0xad
,
0xbf
,
0xaf
,
0x49
},
0x05
,
0x34
,
0x5a
,
0x9d
,
0xad
,
0xbf
,
0xaf
,
0x49
},
16
,
.
rlen
=
16
,
0
,
},
{}
}
};
};
struct
cipher_testvec
serpent_dec_tv_template
[]
=
struct
cipher_testvec
serpent_dec_tv_template
[]
=
{
{
{
{
0
,
.
input
=
{
0x12
,
0x07
,
0xfc
,
0xce
,
0x9b
,
0xd0
,
0xd6
,
0x47
,
0
,
{},
0
,
{},
{
0x12
,
0x07
,
0xfc
,
0xce
,
0x9b
,
0xd0
,
0xd6
,
0x47
,
0x6a
,
0xe9
,
0x8f
,
0xbe
,
0xd1
,
0x43
,
0xa0
,
0xe2
},
0x6a
,
0xe9
,
0x8f
,
0xbe
,
0xd1
,
0x43
,
0xa0
,
0xe2
},
16
,
.
ilen
=
16
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
.
result
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
},
{
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
klen
=
16
,
{},
.
input
=
{
0x4c
,
0x7d
,
0x8a
,
0x32
,
0x80
,
0x72
,
0xa2
,
0x2c
,
{
0x4c
,
0x7d
,
0x8a
,
0x32
,
0x80
,
0x72
,
0xa2
,
0x2c
,
0x82
,
0x3e
,
0x4a
,
0x1f
,
0x3a
,
0xcd
,
0xa1
,
0x6d
},
0x82
,
0x3e
,
0x4a
,
0x1f
,
0x3a
,
0xcd
,
0xa1
,
0x6d
},
16
,
.
ilen
=
16
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
.
result
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
},
{
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
},
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
},
32
,
.
klen
=
32
,
{},
.
input
=
{
0xde
,
0x26
,
0x9f
,
0xf8
,
0x33
,
0xe4
,
0x32
,
0xb8
,
{
0xde
,
0x26
,
0x9f
,
0xf8
,
0x33
,
0xe4
,
0x32
,
0xb8
,
0x5b
,
0x2e
,
0x88
,
0xd2
,
0x70
,
0x1c
,
0xe7
,
0x5c
},
0x5b
,
0x2e
,
0x88
,
0xd2
,
0x70
,
0x1c
,
0xe7
,
0x5c
},
16
,
.
ilen
=
16
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
.
result
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
[
15
]
=
0x80
},
},
.
klen
=
16
,
{
.
input
=
{
0xdd
,
0xd2
,
0x6b
,
0x98
,
0xa5
,
0xff
,
0xd8
,
0x2c
,
0
,
0
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x80
},
16
,
{},
{
0xdd
,
0xd2
,
0x6b
,
0x98
,
0xa5
,
0xff
,
0xd8
,
0x2c
,
0x05
,
0x34
,
0x5a
,
0x9d
,
0xad
,
0xbf
,
0xaf
,
0x49
},
0x05
,
0x34
,
0x5a
,
0x9d
,
0xad
,
0xbf
,
0xaf
,
0x49
},
16
,
.
ilen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
rlen
=
16
,
16
,
},
0
,
{}
}
};
};
/* Cast6 test vectors from RFC 2612 */
/* Cast6 test vectors from RFC 2612 */
...
@@ -1911,111 +1280,71 @@ struct cipher_testvec serpent_dec_tv_template[] =
...
@@ -1911,111 +1280,71 @@ struct cipher_testvec serpent_dec_tv_template[] =
struct
cipher_testvec
cast6_enc_tv_template
[]
=
struct
cipher_testvec
cast6_enc_tv_template
[]
=
{
{
{
{
0
,
.
key
=
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
0
,
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
0x0a
,
0xf7
,
0x56
,
0x47
,
0xf2
,
0x9f
,
0x61
,
0x5d
},
0x0a
,
0xf7
,
0x56
,
0x47
,
0xf2
,
0x9f
,
0x61
,
0x5d
},
16
,
.
klen
=
16
,
{},
.
input
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
ilen
=
16
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
result
=
{
0xc8
,
0x42
,
0xa0
,
0x89
,
0x72
,
0xb4
,
0x3d
,
0x20
,
16
,
{
0xc8
,
0x42
,
0xa0
,
0x89
,
0x72
,
0xb4
,
0x3d
,
0x20
,
0x83
,
0x6c
,
0x91
,
0xd1
,
0xb7
,
0x53
,
0x0f
,
0x6b
},
0x83
,
0x6c
,
0x91
,
0xd1
,
0xb7
,
0x53
,
0x0f
,
0x6b
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
},
{
0
,
0
,
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
0xbe
,
0xd0
,
0xac
,
0x83
,
0x94
,
0x0a
,
0xc2
,
0x98
,
0xbe
,
0xd0
,
0xac
,
0x83
,
0x94
,
0x0a
,
0xc2
,
0x98
,
0xba
,
0xc7
,
0x7a
,
0x77
,
0x17
,
0x94
,
0x28
,
0x63
},
0xba
,
0xc7
,
0x7a
,
0x77
,
0x17
,
0x94
,
0x28
,
0x63
},
24
,
.
klen
=
24
,
{},
.
input
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
ilen
=
16
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
result
=
{
0x1b
,
0x38
,
0x6c
,
0x02
,
0x10
,
0xdc
,
0xad
,
0xcb
,
16
,
{
0x1b
,
0x38
,
0x6c
,
0x02
,
0x10
,
0xdc
,
0xad
,
0xcb
,
0xdd
,
0x0e
,
0x41
,
0xaa
,
0x08
,
0xa7
,
0xa7
,
0xe8
},
0xdd
,
0x0e
,
0x41
,
0xaa
,
0x08
,
0xa7
,
0xa7
,
0xe8
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
},
{
0
,
0
,
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
0xbe
,
0xd0
,
0xac
,
0x83
,
0x94
,
0x0a
,
0xc2
,
0x98
,
0xbe
,
0xd0
,
0xac
,
0x83
,
0x94
,
0x0a
,
0xc2
,
0x98
,
0x8d
,
0x7c
,
0x47
,
0xce
,
0x26
,
0x49
,
0x08
,
0x46
,
0x8d
,
0x7c
,
0x47
,
0xce
,
0x26
,
0x49
,
0x08
,
0x46
,
0x1c
,
0xc1
,
0xb5
,
0x13
,
0x7a
,
0xe6
,
0xb6
,
0x04
},
0x1c
,
0xc1
,
0xb5
,
0x13
,
0x7a
,
0xe6
,
0xb6
,
0x04
},
32
,
.
klen
=
32
,
{},
.
input
=
{
[
0
...
15
]
=
0x00
},
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
ilen
=
16
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
result
=
{
0x4f
,
0x6a
,
0x20
,
0x38
,
0x28
,
0x68
,
0x97
,
0xb9
,
16
,
{
0x4f
,
0x6a
,
0x20
,
0x38
,
0x28
,
0x68
,
0x97
,
0xb9
,
0xc9
,
0x87
,
0x01
,
0x36
,
0x55
,
0x33
,
0x17
,
0xfa
},
0xc9
,
0x87
,
0x01
,
0x36
,
0x55
,
0x33
,
0x17
,
0xfa
},
16
,
.
rlen
=
16
,
0
,
},
{}
}
};
};
struct
cipher_testvec
cast6_dec_tv_template
[]
=
struct
cipher_testvec
cast6_dec_tv_template
[]
=
{
{
{
{
0
,
.
key
=
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
0
,
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
0x0a
,
0xf7
,
0x56
,
0x47
,
0xf2
,
0x9f
,
0x61
,
0x5d
},
0x0a
,
0xf7
,
0x56
,
0x47
,
0xf2
,
0x9f
,
0x61
,
0x5d
},
16
,
.
klen
=
16
,
{},
.
input
=
{
0xc8
,
0x42
,
0xa0
,
0x89
,
0x72
,
0xb4
,
0x3d
,
0x20
,
{
0xc8
,
0x42
,
0xa0
,
0x89
,
0x72
,
0xb4
,
0x3d
,
0x20
,
0x83
,
0x6c
,
0x91
,
0xd1
,
0xb7
,
0x53
,
0x0f
,
0x6b
},
0x83
,
0x6c
,
0x91
,
0xd1
,
0xb7
,
0x53
,
0x0f
,
0x6b
},
16
,
.
ilen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
rlen
=
16
,
16
,
},
{
0
,
.
key
=
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
{}
},
{
0
,
0
,
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
0xbe
,
0xd0
,
0xac
,
0x83
,
0x94
,
0x0a
,
0xc2
,
0x98
,
0xbe
,
0xd0
,
0xac
,
0x83
,
0x94
,
0x0a
,
0xc2
,
0x98
,
0xba
,
0xc7
,
0x7a
,
0x77
,
0x17
,
0x94
,
0x28
,
0x63
},
0xba
,
0xc7
,
0x7a
,
0x77
,
0x17
,
0x94
,
0x28
,
0x63
},
24
,
.
klen
=
24
,
{},
.
input
=
{
0x1b
,
0x38
,
0x6c
,
0x02
,
0x10
,
0xdc
,
0xad
,
0xcb
,
{
0x1b
,
0x38
,
0x6c
,
0x02
,
0x10
,
0xdc
,
0xad
,
0xcb
,
0xdd
,
0x0e
,
0x41
,
0xaa
,
0x08
,
0xa7
,
0xa7
,
0xe8
},
0xdd
,
0x0e
,
0x41
,
0xaa
,
0x08
,
0xa7
,
0xa7
,
0xe8
},
16
,
.
ilen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
rlen
=
16
,
16
,
},
{
0
,
.
key
=
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
{}
},
{
0
,
0
,
{
0x23
,
0x42
,
0xbb
,
0x9e
,
0xfa
,
0x38
,
0x54
,
0x2c
,
0xbe
,
0xd0
,
0xac
,
0x83
,
0x94
,
0x0a
,
0xc2
,
0x98
,
0xbe
,
0xd0
,
0xac
,
0x83
,
0x94
,
0x0a
,
0xc2
,
0x98
,
0x8d
,
0x7c
,
0x47
,
0xce
,
0x26
,
0x49
,
0x08
,
0x46
,
0x8d
,
0x7c
,
0x47
,
0xce
,
0x26
,
0x49
,
0x08
,
0x46
,
0x1c
,
0xc1
,
0xb5
,
0x13
,
0x7a
,
0xe6
,
0xb6
,
0x04
},
0x1c
,
0xc1
,
0xb5
,
0x13
,
0x7a
,
0xe6
,
0xb6
,
0x04
},
32
,
.
klen
=
32
,
{},
.
input
=
{
0x4f
,
0x6a
,
0x20
,
0x38
,
0x28
,
0x68
,
0x97
,
0xb9
,
{
0x4f
,
0x6a
,
0x20
,
0x38
,
0x28
,
0x68
,
0x97
,
0xb9
,
0xc9
,
0x87
,
0x01
,
0x36
,
0x55
,
0x33
,
0x17
,
0xfa
},
0xc9
,
0x87
,
0x01
,
0x36
,
0x55
,
0x33
,
0x17
,
0xfa
},
16
,
.
ilen
=
16
,
{
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
.
result
=
{
[
0
...
15
]
=
0x00
},
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
},
.
rlen
=
16
,
16
,
},
0
,
{}
}
};
};
...
@@ -2026,112 +1355,76 @@ struct cipher_testvec cast6_dec_tv_template[] =
...
@@ -2026,112 +1355,76 @@ struct cipher_testvec cast6_dec_tv_template[] =
#define AES_DEC_TEST_VECTORS 3
#define AES_DEC_TEST_VECTORS 3
struct
cipher_testvec
aes_enc_tv_template
[]
=
{
struct
cipher_testvec
aes_enc_tv_template
[]
=
{
/* From FIPS-197 */
{
/* From FIPS-197 */
{
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
klen
=
16
,
{},
.
input
=
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
16
,
.
ilen
=
16
,
{
0x69
,
0xc4
,
0xe0
,
0xd8
,
0x6a
,
0x7b
,
0x04
,
0x30
,
.
result
=
{
0x69
,
0xc4
,
0xe0
,
0xd8
,
0x6a
,
0x7b
,
0x04
,
0x30
,
0xd8
,
0xcd
,
0xb7
,
0x80
,
0x70
,
0xb4
,
0xc5
,
0x5a
},
0xd8
,
0xcd
,
0xb7
,
0x80
,
0x70
,
0xb4
,
0xc5
,
0x5a
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
},
{
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
},
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
},
24
,
.
klen
=
24
,
{},
.
input
=
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
16
,
.
ilen
=
16
,
{
0xdd
,
0xa9
,
0x7c
,
0xa4
,
0x86
,
0x4c
,
0xdf
,
0xe0
,
.
result
=
{
0xdd
,
0xa9
,
0x7c
,
0xa4
,
0x86
,
0x4c
,
0xdf
,
0xe0
,
0x6e
,
0xaf
,
0x70
,
0xa0
,
0xec
,
0x0d
,
0x71
,
0x91
},
0x6e
,
0xaf
,
0x70
,
0xa0
,
0xec
,
0x0d
,
0x71
,
0x91
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
},
{
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
},
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
},
32
,
.
klen
=
32
,
{},
.
input
=
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
16
,
.
ilen
=
16
,
{
0x8e
,
0xa2
,
0xb7
,
0xca
,
0x51
,
0x67
,
0x45
,
0xbf
,
.
result
=
{
0x8e
,
0xa2
,
0xb7
,
0xca
,
0x51
,
0x67
,
0x45
,
0xbf
,
0xea
,
0xfc
,
0x49
,
0x90
,
0x4b
,
0x49
,
0x60
,
0x89
},
0xea
,
0xfc
,
0x49
,
0x90
,
0x4b
,
0x49
,
0x60
,
0x89
},
16
,
.
rlen
=
16
,
0
,
{}
},
},
};
};
struct
cipher_testvec
aes_dec_tv_template
[]
=
{
struct
cipher_testvec
aes_dec_tv_template
[]
=
{
/* From FIPS-197 */
{
/* From FIPS-197 */
{
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
},
16
,
.
klen
=
16
,
{},
.
input
=
{
0x69
,
0xc4
,
0xe0
,
0xd8
,
0x6a
,
0x7b
,
0x04
,
0x30
,
{
0x69
,
0xc4
,
0xe0
,
0xd8
,
0x6a
,
0x7b
,
0x04
,
0x30
,
0xd8
,
0xcd
,
0xb7
,
0x80
,
0x70
,
0xb4
,
0xc5
,
0x5a
},
0xd8
,
0xcd
,
0xb7
,
0x80
,
0x70
,
0xb4
,
0xc5
,
0x5a
},
16
,
.
ilen
=
16
,
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
.
result
=
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
},
{
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
},
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
},
24
,
.
klen
=
24
,
{},
.
input
=
{
0xdd
,
0xa9
,
0x7c
,
0xa4
,
0x86
,
0x4c
,
0xdf
,
0xe0
,
{
0xdd
,
0xa9
,
0x7c
,
0xa4
,
0x86
,
0x4c
,
0xdf
,
0xe0
,
0x6e
,
0xaf
,
0x70
,
0xa0
,
0xec
,
0x0d
,
0x71
,
0x91
},
0x6e
,
0xaf
,
0x70
,
0xa0
,
0xec
,
0x0d
,
0x71
,
0x91
},
16
,
.
ilen
=
16
,
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
.
result
=
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
16
,
.
rlen
=
16
,
0
,
},
{
{}
.
key
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
},
{
0
,
0
,
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x08
,
0x09
,
0x0a
,
0x0b
,
0x0c
,
0x0d
,
0x0e
,
0x0f
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
},
0x18
,
0x19
,
0x1a
,
0x1b
,
0x1c
,
0x1d
,
0x1e
,
0x1f
},
32
,
.
klen
=
32
,
{},
.
input
=
{
0x8e
,
0xa2
,
0xb7
,
0xca
,
0x51
,
0x67
,
0x45
,
0xbf
,
{
0x8e
,
0xa2
,
0xb7
,
0xca
,
0x51
,
0x67
,
0x45
,
0xbf
,
0xea
,
0xfc
,
0x49
,
0x90
,
0x4b
,
0x49
,
0x60
,
0x89
},
0xea
,
0xfc
,
0x49
,
0x90
,
0x4b
,
0x49
,
0x60
,
0x89
},
16
,
.
ilen
=
16
,
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
.
result
=
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
,
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
0x88
,
0x99
,
0xaa
,
0xbb
,
0xcc
,
0xdd
,
0xee
,
0xff
},
16
,
.
rlen
=
16
,
0
,
{}
},
},
};
};
...
@@ -2142,91 +1435,57 @@ struct cipher_testvec aes_dec_tv_template[] = {
...
@@ -2142,91 +1435,57 @@ struct cipher_testvec aes_dec_tv_template[] = {
struct
cipher_testvec
cast5_enc_tv_template
[]
=
struct
cipher_testvec
cast5_enc_tv_template
[]
=
{
{
{
{
0
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
,
0x34
,
0x56
,
0x78
,
0
,
0x23
,
0x45
,
0x67
,
0x89
,
0x34
,
0x56
,
0x78
,
0x9a
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
,
0x34
,
0x56
,
0x78
,
.
klen
=
16
,
0x23
,
0x45
,
0x67
,
0x89
,
0x34
,
0x56
,
0x78
,
0x9A
},
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
16
,
.
ilen
=
8
,
{},
.
result
=
{
0x23
,
0x8b
,
0x4f
,
0xe5
,
0x84
,
0x7e
,
0x44
,
0xb2
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
rlen
=
8
,
8
,
},
{
{
0x23
,
0x8b
,
0x4f
,
0xe5
,
0x84
,
0x7e
,
0x44
,
0xb2
},
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
,
0x34
,
0x56
,
0x78
,
8
,
0
,
{}
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
,
0x34
,
0x56
,
0x78
,
0x23
,
0x45
},
0x23
,
0x45
},
10
,
.
klen
=
10
,
{},
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
ilen
=
8
,
8
,
.
result
=
{
0xeb
,
0x6a
,
0x71
,
0x1a
,
0x2c
,
0x02
,
0x27
,
0x1b
},
{
0xeb
,
0x6a
,
0x71
,
0x1a
,
0x2c
,
0x02
,
0x27
,
0x1b
},
.
rlen
=
8
,
8
,
},
{
0
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
},
{}
.
klen
=
5
,
.
input
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
ilen
=
8
,
.
result
=
{
0x7a
,
0xc8
,
0x16
,
0xd1
,
0x6e
,
0x9b
,
0x30
,
0x2e
},
.
rlen
=
8
,
},
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
},
5
,
{},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
{
0x7a
,
0xc8
,
0x16
,
0xd1
,
0x6e
,
0x9b
,
0x30
,
0x2e
},
8
,
0
,
{}
}
};
};
struct
cipher_testvec
cast5_dec_tv_template
[]
=
struct
cipher_testvec
cast5_dec_tv_template
[]
=
{
{
{
{
0
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
,
0x34
,
0x56
,
0x78
,
0
,
0x23
,
0x45
,
0x67
,
0x89
,
0x34
,
0x56
,
0x78
,
0x9a
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
,
0x34
,
0x56
,
0x78
,
.
klen
=
16
,
0x23
,
0x45
,
0x67
,
0x89
,
0x34
,
0x56
,
0x78
,
0x9A
},
.
input
=
{
0x23
,
0x8b
,
0x4f
,
0xe5
,
0x84
,
0x7e
,
0x44
,
0xb2
},
16
,
.
ilen
=
8
,
{},
.
result
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
{
0x23
,
0x8b
,
0x4f
,
0xe5
,
0x84
,
0x7e
,
0x44
,
0xb2
},
.
rlen
=
8
,
8
,
},
{
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
,
0x34
,
0x56
,
0x78
,
8
,
0
,
{}
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
,
0x34
,
0x56
,
0x78
,
0x23
,
0x45
},
0x23
,
0x45
},
10
,
.
klen
=
10
,
{},
.
input
=
{
0xeb
,
0x6a
,
0x71
,
0x1a
,
0x2c
,
0x02
,
0x27
,
0x1b
},
{
0xeb
,
0x6a
,
0x71
,
0x1a
,
0x2c
,
0x02
,
0x27
,
0x1b
},
.
ilen
=
8
,
8
,
.
result
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
rlen
=
8
,
8
,
},
{
0
,
.
key
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
},
{}
.
klen
=
5
,
.
input
=
{
0x7a
,
0xc8
,
0x16
,
0xd1
,
0x6e
,
0x9b
,
0x30
,
0x2e
},
.
ilen
=
8
,
.
result
=
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
.
rlen
=
8
,
},
},
{
0
,
0
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x12
},
5
,
{},
{
0x7a
,
0xc8
,
0x16
,
0xd1
,
0x6e
,
0x9b
,
0x30
,
0x2e
},
8
,
{
0x01
,
0x23
,
0x45
,
0x67
,
0x89
,
0xab
,
0xcd
,
0xef
},
8
,
0
,
{}
}
};
};
/*
/*
...
@@ -2249,27 +1508,22 @@ struct comp_testvec {
...
@@ -2249,27 +1508,22 @@ struct comp_testvec {
struct
comp_testvec
deflate_comp_tv_template
[]
=
{
struct
comp_testvec
deflate_comp_tv_template
[]
=
{
{
{
70
,
38
,
.
inlen
=
70
,
.
outlen
=
38
,
"Join us now and share the software "
.
input
=
"Join us now and share the software "
"Join us now and share the software "
,
"Join us now and share the software "
,
.
output
=
{
0xf3
,
0xca
,
0xcf
,
0xcc
,
0x53
,
0x28
,
0x2d
,
0x56
,
{
0xf3
,
0xca
,
0xcf
,
0xcc
,
0x53
,
0x28
,
0x2d
,
0x56
,
0xc8
,
0xcb
,
0x2f
,
0x57
,
0x48
,
0xcc
,
0x4b
,
0x51
,
0xc8
,
0xcb
,
0x2f
,
0x57
,
0x48
,
0xcc
,
0x4b
,
0x51
,
0x28
,
0xce
,
0x48
,
0x2c
,
0x4a
,
0x55
,
0x28
,
0xc9
,
0x28
,
0xce
,
0x48
,
0x2c
,
0x4a
,
0x55
,
0x28
,
0xc9
,
0x48
,
0x55
,
0x28
,
0xce
,
0x4f
,
0x2b
,
0x29
,
0x07
,
0x48
,
0x55
,
0x28
,
0xce
,
0x4f
,
0x2b
,
0x29
,
0x07
,
0x71
,
0xbc
,
0x08
,
0x2b
,
0x01
,
0x00
0x71
,
0xbc
,
0x08
,
0x2b
,
0x01
,
0x00
},
},
},
{
},
.
inlen
=
191
,
.
outlen
=
122
,
{
.
input
=
"This document describes a compression method based on the DEFLATE"
191
,
122
,
"This document describes a compression method based on the DEFLATE"
"compression algorithm. This document defines the application of "
"compression algorithm. This document defines the application of "
"the DEFLATE algorithm to the IP Payload Compression Protocol."
,
"the DEFLATE algorithm to the IP Payload Compression Protocol."
,
.
output
=
{
0x5d
,
0x8d
,
0x31
,
0x0e
,
0xc2
,
0x30
,
0x10
,
0x04
,
{
0x5d
,
0x8d
,
0x31
,
0x0e
,
0xc2
,
0x30
,
0x10
,
0x04
,
0xbf
,
0xb2
,
0x2f
,
0xc8
,
0x1f
,
0x10
,
0x04
,
0x09
,
0xbf
,
0xb2
,
0x2f
,
0xc8
,
0x1f
,
0x10
,
0x04
,
0x09
,
0x89
,
0xc2
,
0x85
,
0x3f
,
0x70
,
0xb1
,
0x2f
,
0xf8
,
0x89
,
0xc2
,
0x85
,
0x3f
,
0x70
,
0xb1
,
0x2f
,
0xf8
,
0x24
,
0xdb
,
0x67
,
0xd9
,
0x47
,
0xc1
,
0xef
,
0x49
,
0x24
,
0xdb
,
0x67
,
0xd9
,
0x47
,
0xc1
,
0xef
,
0x49
,
...
@@ -2290,9 +1544,9 @@ struct comp_testvec deflate_comp_tv_template[] = {
...
@@ -2290,9 +1544,9 @@ struct comp_testvec deflate_comp_tv_template[] = {
struct
comp_testvec
deflate_decomp_tv_template
[]
=
{
struct
comp_testvec
deflate_decomp_tv_template
[]
=
{
{
{
122
,
191
,
.
inlen
=
122
,
.
outlen
=
191
,
{
0x5d
,
0x8d
,
0x31
,
0x0e
,
0xc2
,
0x30
,
0x10
,
0x04
,
.
input
=
{
0x5d
,
0x8d
,
0x31
,
0x0e
,
0xc2
,
0x30
,
0x10
,
0x04
,
0xbf
,
0xb2
,
0x2f
,
0xc8
,
0x1f
,
0x10
,
0x04
,
0x09
,
0xbf
,
0xb2
,
0x2f
,
0xc8
,
0x1f
,
0x10
,
0x04
,
0x09
,
0x89
,
0xc2
,
0x85
,
0x3f
,
0x70
,
0xb1
,
0x2f
,
0xf8
,
0x89
,
0xc2
,
0x85
,
0x3f
,
0x70
,
0xb1
,
0x2f
,
0xf8
,
0x24
,
0xdb
,
0x67
,
0xd9
,
0x47
,
0xc1
,
0xef
,
0x49
,
0x24
,
0xdb
,
0x67
,
0xd9
,
0x47
,
0xc1
,
0xef
,
0x49
,
...
@@ -2308,23 +1562,18 @@ struct comp_testvec deflate_decomp_tv_template[] = {
...
@@ -2308,23 +1562,18 @@ struct comp_testvec deflate_decomp_tv_template[] = {
0xfe
,
0x8a
,
0x87
,
0x83
,
0xa3
,
0x4f
,
0x56
,
0x8a
,
0xfe
,
0x8a
,
0x87
,
0x83
,
0xa3
,
0x4f
,
0x56
,
0x8a
,
0xb8
,
0x9e
,
0x8e
,
0x5c
,
0x57
,
0xd3
,
0xa0
,
0x79
,
0xb8
,
0x9e
,
0x8e
,
0x5c
,
0x57
,
0xd3
,
0xa0
,
0x79
,
0xfa
,
0x02
},
0xfa
,
0x02
},
.
output
=
"This document describes a compression method based on the DEFLATE"
"This document describes a compression method based on the DEFLATE"
"compression algorithm. This document defines the application of "
"compression algorithm. This document defines the application of "
"the DEFLATE algorithm to the IP Payload Compression Protocol."
,
"the DEFLATE algorithm to the IP Payload Compression Protocol."
,
},
},
{
.
inlen
=
38
,
{
.
outlen
=
70
,
38
,
70
,
.
input
=
{
0xf3
,
0xca
,
0xcf
,
0xcc
,
0x53
,
0x28
,
0x2d
,
0x56
,
{
0xf3
,
0xca
,
0xcf
,
0xcc
,
0x53
,
0x28
,
0x2d
,
0x56
,
0xc8
,
0xcb
,
0x2f
,
0x57
,
0x48
,
0xcc
,
0x4b
,
0x51
,
0xc8
,
0xcb
,
0x2f
,
0x57
,
0x48
,
0xcc
,
0x4b
,
0x51
,
0x28
,
0xce
,
0x48
,
0x2c
,
0x4a
,
0x55
,
0x28
,
0xc9
,
0x28
,
0xce
,
0x48
,
0x2c
,
0x4a
,
0x55
,
0x28
,
0xc9
,
0x48
,
0x55
,
0x28
,
0xce
,
0x4f
,
0x2b
,
0x29
,
0x07
,
0x48
,
0x55
,
0x28
,
0xce
,
0x4f
,
0x2b
,
0x29
,
0x07
,
0x71
,
0xbc
,
0x08
,
0x2b
,
0x01
,
0x00
0x71
,
0xbc
,
0x08
,
0x2b
,
0x01
,
0x00
},
},
.
output
=
"Join us now and share the software "
"Join us now and share the software "
"Join us now and share the software "
,
"Join us now and share the software "
,
},
},
};
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment