第四次作业:密码算法实现
一、编程实现 SHA-1、SHA-2、SHA-3、SM3 算法, 对每个算法给出以下字符串的杂凑值,
并提交每个算法的 C 语言程序 (列出每步的中间结果,如 SM3 有 64 步,1-3 需将
需将每步的输出值列出。)
1、 空字符串,也就是长度为 0 的字符串。
2、 3 个字节的字符串’abc’, 等价于 ASCII 字符串’01100001 01100010 011000011’
3、 每位同学姓名的全拼加学号。如 姓名:于红波 学号: 2007990061, 则输入消息
为’yuhongbo2007990061’ 。
4、 62 个 byte 的字符串
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
5、 将字符’a’重复 10
6
次。
二、使用 DES、AES、SM4 分别在 CBC、OFB、CTR 模式下加密‘aaaaaaa…..’ (将字符 a 重
复 10
6
次), 算法中使用的 IV 可设置为 0。(提交程序和密文)
三、使用 AES-GCM 对字符串
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
进行认证加密。附加数据 A 设为空字符串。(提交程序、密文和认证码)
评论0