Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Nettle
nettle
Commits
9b41e3b8
Commit
9b41e3b8
authored
Jun 01, 2019
by
Niels Möller
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
New struct cmac128_key.
parent
dc28cadb
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
17 additions
and
7 deletions
+17
-7
ChangeLog
ChangeLog
+6
-0
cmac.c
cmac.c
+4
-4
cmac.h
cmac.h
+7
-3
No files found.
ChangeLog
View file @
9b41e3b8
2019-06-01 Niels Möller <nisse@lysator.liu.se>
* cmac.h (struct cmac128_key): New struct.
* cmac.h (struct cmac128_ctx): Use struct cmac128_key.
* cmac.c (cmac128_set_key, cmac128_digest): Update accordingly.
2019-05-12 Niels Möller <nisse@lysator.liu.se>
Delete old libdes/openssl compatibility interface.
...
...
cmac.c
View file @
9b41e3b8
...
...
@@ -83,8 +83,8 @@ cmac128_set_key(struct cmac128_ctx *ctx, const void *cipher,
/* step 1 - generate subkeys k1 and k2 */
encrypt
(
cipher
,
16
,
L
->
b
,
const_zero
);
block_mulx
(
&
ctx
->
K1
,
L
);
block_mulx
(
&
ctx
->
K2
,
&
ctx
->
K1
);
block_mulx
(
&
ctx
->
key
.
K1
,
L
);
block_mulx
(
&
ctx
->
key
.
K2
,
&
ctx
->
key
.
K1
);
}
#define MIN(x,y) ((x)<(y)?(x):(y))
...
...
@@ -148,11 +148,11 @@ cmac128_digest(struct cmac128_ctx *ctx, const void *cipher,
if
(
ctx
->
index
<
16
)
{
ctx
->
block
.
b
[
ctx
->
index
]
=
0x80
;
memxor
(
ctx
->
block
.
b
,
ctx
->
K2
.
b
,
16
);
memxor
(
ctx
->
block
.
b
,
ctx
->
key
.
K2
.
b
,
16
);
}
else
{
memxor
(
ctx
->
block
.
b
,
ctx
->
K1
.
b
,
16
);
memxor
(
ctx
->
block
.
b
,
ctx
->
key
.
K1
.
b
,
16
);
}
memxor3
(
Y
.
b
,
ctx
->
block
.
b
,
ctx
->
X
.
b
,
16
);
...
...
cmac.h
View file @
9b41e3b8
...
...
@@ -55,18 +55,22 @@ extern "C" {
#define cmac_aes256_update nettle_cmac_aes256_update
#define cmac_aes256_digest nettle_cmac_aes256_digest
struct
cmac128_
ctx
struct
cmac128_
key
{
/* Key */
union
nettle_block16
K1
;
union
nettle_block16
K2
;
};
struct
cmac128_ctx
{
struct
cmac128_key
key
;
/* MAC state */
union
nettle_block16
X
;
/* Block buffer */
union
nettle_block16
block
;
size_t
index
;
union
nettle_block16
block
;
};
void
...
...
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