2018-2019-1 20165308 20165317 20165331 实验二 固件程序设计
2018-2019-1 20165308 20165317 20165331 实验二 固件程序设计
成员
20165308张士洋
20165317宁心宇
20165331胡麟
实验二 固件程序设计-1-MDK
0. 注意不经老师允许不准烧写自己修改的代码
1. 三人一组
2. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM)
3. 提交破解程序中产生LIC的截图
4. 提交破解成功的截图
实验过程
1、找到exp2\软件资料\MDK4.74路径下的mdk474.exe文件,点击并安装。注意此过程中安装目标路径是自己创建的一个名为Keil 4的文件夹
2、安装Ulink驱动
3、在桌面上创建的快捷方式“Keil uVision4”上右键,选择“以管理员身份运行”
4、破解MDK4.74(运行uVision4,点击File->License Management…,在弹出的窗口中复制CID)
5、运行注册机,粘贴CID并选择ARM,生成LIC
6、将LIC复制并将其粘贴到keil4中的LIC输入框中,进行破解。
截图
实验二 固件程序设计-2-LED
0. 注意不经老师允许不准烧写自己修改的代码
1. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
2. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.9”完成LED实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
3. 实验报告中分析代码
实验过程
1、添加SC000库:通过安装软件资料中的MDK-ARM_AddOn_SC000_Support.exe文件完成库的添加
2、选择SC000库:通过新建工程>芯片库选择框选择库>选择具体的CPU型号,点开ARM结构目录,选择SC000
3、打开exp2\LED闪烁目录下的Z32.uvproj工程文件,然后编译;
4、下载程序
此时核心板上L2灯开始闪烁
截图
在蓝墨云项目中提交了视频能够清楚看到闪烁
实验二 固件程序设计-3-UART
0. 注意不经老师允许不准烧写自己修改的代码
1. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
2. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.0”完成UART发送与中断接收实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
3. 实验报告中分析代码
实验过程
1、初始步骤同固件程序设计-2-LED实验中的步骤
2、使用串口调试工具来观察串口通信收发的数据
3、用九针串口线将Z32模块的串口与电脑USB接口连接
4、选择Z32对应的串口号,选择波特率为115200,选择校验位为Even,勾选“发送新行”,点击“打开串口”
5、关闭Z32电源开关,再打开,在串口调试助手的字符串输入框输入字符串“abcdefg“,然后点击发送按钮
实验二 固件程序设计-4-国密算法
0. 网上搜集国密算法标准SM1,SM2,SM3,SM4
1. 网上找一下相应的代码和标准测试代码,在Ubuntu中分别用gcc和gcc-arm编译
2. 四个算法的用途?
3. 《密码学》课程中分别有哪些对应的算法?
4. 提交2,3两个问题的答案
5. 提交在Ubuntu中运行国密算法测试程序的截图
答案:SM1 为对称加密。其加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。
SM2为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RSA 2048位高,但运算速度快于RSA。
SM3 消息摘要。可以用MD5作为对比理解。该算法已公开。校验结果为256位。
SM4 无线局域网标准的分组数据算法。对称加密,密钥长度和分组长度均为128位
截图
实验二 固件程序设计-5-SM1
0. 注意不经老师允许不准烧写自己修改的代码
1. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
2. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.16”完成SM1加密实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
3. 实验报告中分析代码
实验过程
1、初始步骤同固件程序设计-3-UART步骤基本相同,显示屏显示
2、插入IC卡
3、按下矩阵键盘的A键,再次按下A键,屏幕会显示“按-A 键校验密码”,再次按下A键,显示校验成功。再按下A键
4、进入SM1加解密实验界面,按“1键”选择加密,屏幕显示观看串口调试助手,电脑上串口调试助手界面会显示初始数据以及加密密钥,确认加密后按A键可以存入IC卡,屏幕会重新回到加解密界面。
5、按“2”键选择解密,首先按“A“键进入读取界面,成功后选择1、正确密钥还是2、错误密钥。按”1“键选择正确密钥,再按”A“键确认解密,串口会显示正确密钥信息,解密完成后串口会显示解密后的数据,屏幕会显示按A键返回。如果按”2“键选择错误密钥,串口显示 的解密后的数据与原数据不符,解密失败。
截图
总结
整个实验按照步骤来做,中途并未出现问题。