Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
btwise
openssl
提交
c3086f46
O
openssl
项目概览
btwise
/
openssl
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
openssl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c3086f46
编写于
10月 14, 2016
作者:
A
Andy Polyakov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
sha/keccak1600.c: add known answer and verify result with memcmp.
Reviewed-by:
N
Richard Levitte
<
levitte@openssl.org
>
上级
b9feae1b
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
83 addition
and
3 deletion
+83
-3
crypto/sha/keccak1600.c
crypto/sha/keccak1600.c
+83
-3
未找到文件。
crypto/sha/keccak1600.c
浏览文件 @
c3086f46
...
...
@@ -263,19 +263,99 @@ void SHA3_sponge(const unsigned char *inp, size_t len,
int
main
()
{
/*
* This is 5-bit SHAKE128 test from http://csrc.nist.gov/groups/ST/toolkit/examples.html#aHashing
*/
unsigned
char
test
[
168
]
=
{
'\xf3'
,
'\x3'
};
unsigned
char
out
[
512
];
size_t
i
;
static
const
unsigned
char
result
[
512
]
=
{
0x2E
,
0x0A
,
0xBF
,
0xBA
,
0x83
,
0xE6
,
0x72
,
0x0B
,
0xFB
,
0xC2
,
0x25
,
0xFF
,
0x6B
,
0x7A
,
0xB9
,
0xFF
,
0xCE
,
0x58
,
0xBA
,
0x02
,
0x7E
,
0xE3
,
0xD8
,
0x98
,
0x76
,
0x4F
,
0xEF
,
0x28
,
0x7D
,
0xDE
,
0xCC
,
0xCA
,
0x3E
,
0x6E
,
0x59
,
0x98
,
0x41
,
0x1E
,
0x7D
,
0xDB
,
0x32
,
0xF6
,
0x75
,
0x38
,
0xF5
,
0x00
,
0xB1
,
0x8C
,
0x8C
,
0x97
,
0xC4
,
0x52
,
0xC3
,
0x70
,
0xEA
,
0x2C
,
0xF0
,
0xAF
,
0xCA
,
0x3E
,
0x05
,
0xDE
,
0x7E
,
0x4D
,
0xE2
,
0x7F
,
0xA4
,
0x41
,
0xA9
,
0xCB
,
0x34
,
0xFD
,
0x17
,
0xC9
,
0x78
,
0xB4
,
0x2D
,
0x5B
,
0x7E
,
0x7F
,
0x9A
,
0xB1
,
0x8F
,
0xFE
,
0xFF
,
0xC3
,
0xC5
,
0xAC
,
0x2F
,
0x3A
,
0x45
,
0x5E
,
0xEB
,
0xFD
,
0xC7
,
0x6C
,
0xEA
,
0xEB
,
0x0A
,
0x2C
,
0xCA
,
0x22
,
0xEE
,
0xF6
,
0xE6
,
0x37
,
0xF4
,
0xCA
,
0xBE
,
0x5C
,
0x51
,
0xDE
,
0xD2
,
0xE3
,
0xFA
,
0xD8
,
0xB9
,
0x52
,
0x70
,
0xA3
,
0x21
,
0x84
,
0x56
,
0x64
,
0xF1
,
0x07
,
0xD1
,
0x64
,
0x96
,
0xBB
,
0x7A
,
0xBF
,
0xBE
,
0x75
,
0x04
,
0xB6
,
0xED
,
0xE2
,
0xE8
,
0x9E
,
0x4B
,
0x99
,
0x6F
,
0xB5
,
0x8E
,
0xFD
,
0xC4
,
0x18
,
0x1F
,
0x91
,
0x63
,
0x38
,
0x1C
,
0xBE
,
0x7B
,
0xC0
,
0x06
,
0xA7
,
0xA2
,
0x05
,
0x98
,
0x9C
,
0x52
,
0x6C
,
0xD1
,
0xBD
,
0x68
,
0x98
,
0x36
,
0x93
,
0xB4
,
0xBD
,
0xC5
,
0x37
,
0x28
,
0xB2
,
0x41
,
0xC1
,
0xCF
,
0xF4
,
0x2B
,
0xB6
,
0x11
,
0x50
,
0x2C
,
0x35
,
0x20
,
0x5C
,
0xAB
,
0xB2
,
0x88
,
0x75
,
0x56
,
0x55
,
0xD6
,
0x20
,
0xC6
,
0x79
,
0x94
,
0xF0
,
0x64
,
0x51
,
0x18
,
0x7F
,
0x6F
,
0xD1
,
0x7E
,
0x04
,
0x66
,
0x82
,
0xBA
,
0x12
,
0x86
,
0x06
,
0x3F
,
0xF8
,
0x8F
,
0xE2
,
0x50
,
0x8D
,
0x1F
,
0xCA
,
0xF9
,
0x03
,
0x5A
,
0x12
,
0x31
,
0xAD
,
0x41
,
0x50
,
0xA9
,
0xC9
,
0xB2
,
0x4C
,
0x9B
,
0x2D
,
0x66
,
0xB2
,
0xAD
,
0x1B
,
0xDE
,
0x0B
,
0xD0
,
0xBB
,
0xCB
,
0x8B
,
0xE0
,
0x5B
,
0x83
,
0x52
,
0x29
,
0xEF
,
0x79
,
0x19
,
0x73
,
0x73
,
0x23
,
0x42
,
0x44
,
0x01
,
0xE1
,
0xD8
,
0x37
,
0xB6
,
0x6E
,
0xB4
,
0xE6
,
0x30
,
0xFF
,
0x1D
,
0xE7
,
0x0C
,
0xB3
,
0x17
,
0xC2
,
0xBA
,
0xCB
,
0x08
,
0x00
,
0x1D
,
0x34
,
0x77
,
0xB7
,
0xA7
,
0x0A
,
0x57
,
0x6D
,
0x20
,
0x86
,
0x90
,
0x33
,
0x58
,
0x9D
,
0x85
,
0xA0
,
0x1D
,
0xDB
,
0x2B
,
0x66
,
0x46
,
0xC0
,
0x43
,
0xB5
,
0x9F
,
0xC0
,
0x11
,
0x31
,
0x1D
,
0xA6
,
0x66
,
0xFA
,
0x5A
,
0xD1
,
0xD6
,
0x38
,
0x7F
,
0xA9
,
0xBC
,
0x40
,
0x15
,
0xA3
,
0x8A
,
0x51
,
0xD1
,
0xDA
,
0x1E
,
0xA6
,
0x1D
,
0x64
,
0x8D
,
0xC8
,
0xE3
,
0x9A
,
0x88
,
0xB9
,
0xD6
,
0x22
,
0xBD
,
0xE2
,
0x07
,
0xFD
,
0xAB
,
0xC6
,
0xF2
,
0x82
,
0x7A
,
0x88
,
0x0C
,
0x33
,
0x0B
,
0xBF
,
0x6D
,
0xF7
,
0x33
,
0x77
,
0x4B
,
0x65
,
0x3E
,
0x57
,
0x30
,
0x5D
,
0x78
,
0xDC
,
0xE1
,
0x12
,
0xF1
,
0x0A
,
0x2C
,
0x71
,
0xF4
,
0xCD
,
0xAD
,
0x92
,
0xED
,
0x11
,
0x3E
,
0x1C
,
0xEA
,
0x63
,
0xB9
,
0x19
,
0x25
,
0xED
,
0x28
,
0x19
,
0x1E
,
0x6D
,
0xBB
,
0xB5
,
0xAA
,
0x5A
,
0x2A
,
0xFD
,
0xA5
,
0x1F
,
0xC0
,
0x5A
,
0x3A
,
0xF5
,
0x25
,
0x8B
,
0x87
,
0x66
,
0x52
,
0x43
,
0x55
,
0x0F
,
0x28
,
0x94
,
0x8A
,
0xE2
,
0xB8
,
0xBE
,
0xB6
,
0xBC
,
0x9C
,
0x77
,
0x0B
,
0x35
,
0xF0
,
0x67
,
0xEA
,
0xA6
,
0x41
,
0xEF
,
0xE6
,
0x5B
,
0x1A
,
0x44
,
0x90
,
0x9D
,
0x1B
,
0x14
,
0x9F
,
0x97
,
0xEE
,
0xA6
,
0x01
,
0x39
,
0x1C
,
0x60
,
0x9E
,
0xC8
,
0x1D
,
0x19
,
0x30
,
0xF5
,
0x7C
,
0x18
,
0xA4
,
0xE0
,
0xFA
,
0xB4
,
0x91
,
0xD1
,
0xCA
,
0xDF
,
0xD5
,
0x04
,
0x83
,
0x44
,
0x9E
,
0xDC
,
0x0F
,
0x07
,
0xFF
,
0xB2
,
0x4D
,
0x2C
,
0x6F
,
0x9A
,
0x9A
,
0x3B
,
0xFF
,
0x39
,
0xAE
,
0x3D
,
0x57
,
0xF5
,
0x60
,
0x65
,
0x4D
,
0x7D
,
0x75
,
0xC9
,
0x08
,
0xAB
,
0xE6
,
0x25
,
0x64
,
0x75
,
0x3E
,
0xAC
,
0x39
,
0xD7
,
0x50
,
0x3D
,
0xA6
,
0xD3
,
0x7C
,
0x2E
,
0x32
,
0xE1
,
0xAF
,
0x3B
,
0x8A
,
0xEC
,
0x8A
,
0xE3
,
0x06
,
0x9C
,
0xD9
};
/*
* This is 5-bit SHAKE128 test from http://csrc.nist.gov/groups/ST/toolkit/examples.html#aHashing
*/
test
[
167
]
=
'\x80'
;
SHA3_sponge
(
test
,
sizeof
(
test
),
out
,
sizeof
(
out
),
sizeof
(
test
));
/*
* Rationale behind keeping output [formatted as below] is that
* one should be able to redirect it to a file, then copy-n-paste
* final "output val" from official example to another file, and
* compare the two with diff(1).
*/
for
(
i
=
0
;
i
<
sizeof
(
out
);)
{
printf
(
"%02X"
,
out
[
i
]);
printf
(
++
i
%
16
&&
i
!=
sizeof
(
out
)
?
" "
:
"
\n
"
);
}
if
(
memcmp
(
out
,
result
,
sizeof
(
out
)))
{
fprintf
(
stderr
,
"failure
\n
"
);
return
1
;
}
else
{
fprintf
(
stderr
,
"success
\n
"
);
return
0
;
}
}
#endif
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录