实验二-密码引擎-3-sdf接口
任务详情
两人一组完成下面任务
- 分析代码接口和智能钥匙的接口的异同
- 编译运行附件中代码,提交运行结果截图
- 修改test.c完成包含小组内成员的学号姓名的文件的sm3 hash运算,sm4加密解密,提交代码和运行结果截图。
- 完成完成包含小组内成员的学号姓名的文件的签名验签名,提交代码和运行结果截图。
解答
0. 分析代码接口和智能钥匙的接口的异同
相似之处:
-
安全性需求: 两者都需要满足高度的安全性需求。包括对加密算法的强度、密钥管理、安全通信等方面的考虑,以防止数据泄露和未经授权的访问。
-
密钥管理: 在两种情况下,都需要有效的密钥管理机制。代码接口需要处理密钥的生成、存储和管理,智能钥匙的接口则需要确保密钥的安全传输和存储,以防止密钥被泄露或篡改。
-
通信安全: 无论是在软件中还是硬件设备中,安全通信都是至关重要的。
不同之处:
-
硬件特定性: 智能钥匙的接口与特定的硬件设备相关联:USB 密钥。因此,需要考虑到硬件的特定要求和限制(识别是否为授权发售的硬件),而代码接口则更为抽象,更专注于算法的实现和集成。
-
用户交互: 智能钥匙的接口需要与用户进行交互,例如输入 PIN 码识别验证。这种用户交互在代码接口中通常较少见,因为它们更倾向于程序化的接口。
-
应用场景: 代码接口通常用于软件应用程序中,例如数据加密、身份验证等。而智能钥匙的接口通常用于物理设备,例如门禁系统、支付系统等。这导致它们在集成和应用方面有所不同。
-
安全性要求的级别: 智能钥匙的接口可能会面临更高的安全要求,因为它们直接涉及到物理设备和用户身份验证。因此,对于智能钥匙接口的安全性要求可能会更严格,包括对设备的防篡改、防复制等方面的考虑。
1. 编译运行附件中代码,提交运行结果截图
2. 修改test.c完成包含小组内成员的学号姓名的文件的sm3 hash运算,sm4加密解密,提交代码和运行结果截图
我们小组两个人学号是:20211108&20211120
查找到API接口如下:
如此修改:
查找到API如下:
如此修改:
结果如下:
3. 完成完成包含小组内成员的学号姓名的文件的签名验签名,提交代码和运行结果截图
SM2的签名与上图修改地方一致。