对应第一次作业的第二题,此仓库共有四个文件夹分别为:
AES // AES的三种加密算法
SHA2 // SHA2的两种hash算法
SHA3 // SHA3的两种hash算法
SM4 // SM4的算法
正确性验证方面,我们使用不同长度bit测试样例进行了测试,有的我们调用了C语言中的OpenSSL库,有的调用了python中的hashlib库。
具体每个部分的具体细节可以参照每个文件夹中的readme。
我们为所有的程序准备了Makefile文件和test_byte.py脚本分别用于编译和测试。我们的程序运行在Linux系统上,需要安装OpenSSL等一些标准库。