20155214&20155216 实验二:固件程序设计
---恢复内容开始---
# 20155214&20155216 实验二:固件程序设计实验内容及要求
实验二 固件程序设计-1-MDK
实验要求:
1、注意不经老师允许不准烧写自己修改的代码
2、两人(个别三人)一组
3、参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM)
4、提交破解程序中产生LIC的截图
5、提交破解成功的截图
破解成功截图:
实验二 固件程序设计-2-LED
实验要求:
1、注意不经老师允许不准烧写自己修改的代码
2、参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
3、参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.9”完成LED实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
4、实验报告中分析代码
设备连接截图:
运行结果照片:
代码分析:
设置系统时钟为内部OSC时钟,延时1ms,高电平点亮LED灯,低电平熄灭,实现LED灯的闪烁。
实验二 固件程序设计-3-UART
实验要求:
1、注意不经老师允许不准烧写自己修改的代码
1、参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
3、参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.0”完成UART发送与中断接收实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
4、实验报告中分析代码
运行结果截图:
代码分析:
用Uart发送字符、字符串、十进制数和十六进制数,并等待接受中断。
实验二 固件程序设计-4-国密算法
实验要求:
1、网上搜集国密算法标准SM1,SM2,SM3,SM4
2、网上找一下相应的代码和标准测试代码,在Ubuntu中分别用gcc和gcc-arm编译
3、四个算法的用途?
4、《密码学》课程中分别有哪些对应的算法?
5、提交2,3两个问题的答案
6、提交在Ubuntu中运行国密算法测试程序的截图
测试程序截图:
相应算法分析:
SM1 为对称加密。其加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。
SM2为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RSA 2048位高,但运算速度快于RSA。
SM3 消息摘要。可以用MD5作为对比理解。该算法已公开。校验结果为256位。
SM4 无线局域网标准的分组数据算法。对称加密,密钥长度和分组长度均为128位。
实验二 固件程序设计-5-SM1
1、注意不经老师允许不准烧写自己修改的代码
2、参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
3、参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.16”完成SM1加密实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
4、实验报告中分析代码
实验过程:
实验结果:
代码分析:
完成IC卡的认证,并可使用IC卡进行加密和解密操作。