实验二 20155335 实验报告 固件程序设计

实验二 20155307 20155335 20155338 实验报告 固件程序设计

一、实验内容:

1.安装MDK,JLink驱动,运行uVision4,破解MDK
2.KEIL-MDK 中添加Z32 SC-000芯片库,完成LED实验
3.完成UART发送与中断接收实验
4.理解国密算法标准SM1,SM2,SM3,SM4并用gcc和gcc-arm编译
5.完成SM1加密实验

二、实验步骤

在开始试验之前,先安装MDK,JLink驱动,运行uVision4,破解MDK,

很多付费软件为了保证试用和购买安全,都会使用单独的注册机,比如CorelstudioX系列工作软件等。图为破解MDK,因为正版的太贵了而且性价比很低。

将LIC复制到keil4中的LIC输入框,点击Add LIC,破解完成。软件可以正常使用了,

KEIL-MDK 中添加Z32 SC-000芯片库,完成LED实验

第一项:LED灯亮灭

实验步骤:
1.建Z32工程基础编程环境:建立new uVision Project,选择完安装路径后,弹出芯片库选择框,在下拉框中选择Generic SC000 Device Database,在弹出框中点开ARM目录,选择SC000。
2.打开实验1-LED 闪烁\Z32HUA.uvproj以打开LED闪烁实验项目,编译项目生成实验1-LED 闪烁\bin\Z32HUA.bin
3.将实验箱接入电源,连接实验箱与电脑,打开Z32下载调试工具软件资料\Z32下载调试工具\NZDownloadTool.exe打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别
4.显示1设备已连接后,点击浏览,选择\实验 1-LED 闪烁\bin\Z32HUA.bin,点击下载,绿色进度条加载完成后,程序下载成功
5.关闭Z32电源,再打开,下载完的程序自动运行,可以看到核心板上LED灯闪烁。

下面两图为LED灯闪烁的抓拍

第二项:完成UART发送与中断接收

实验步骤:
1.打开实验 2-UART 发送与中断 接收\Z32HUA.uvproj以打开UART 发送与中断 接收实验项目,编译项目生成实验 2-UART 发送与中断接收\bin\Z32HUA.bin
2.将实验箱接入电源,连接实验箱与电脑,用 9 针串口线将 Z32 模块的串口与电脑 USB 接口连接,打开Z32下载调试工具软件资料\Z32下载调试工具\NZDownloadTool.exe打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,
3.显示1设备已连接后,点击浏览,选择\实验 2-UART 发送与中断接收\bin\Z32HUA.bin,点击下载,绿色进度条加载完成后,程序下载成功
4.打开串口助手,设置相应参数。
5.关闭Z32电源,再打开,下载完的程序自动运行,在串口调试助手的字符串输入框输入字符串“abcdefgh”,然后点击发
送按钮。

下图为我们小组成功识别了电脑并且建立了链接

第三项:完成国密算法

1.网上搜集国密算法标准SM1,SM2,SM3,SM4
2.网上找一下相应的代码和标准测试代码,在Ubuntu中分别用gcc和gcc-arm编译
3.四个算法的用途
4,《密码学》课程中分别有哪些对应的算法
提交在Ubuntu中运行国密算法测试程序的截图

  • 我们组查了一下相关资料,百度上面对国密算法定义和用途的解释是:用于实现商用密码算法的加密、解密和认证等功能,商用密码的应用领域十分广泛,主要用于对不涉及国家秘密内容但又具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护。
    国密算法SM1:算法未公开 SM2:ECC SM3:MD5 SM4:DES

下面是运行测试国密算法的截图:

第四项:完成SM1加密

实验步骤:
1.打开实验 8-SM1\Z32HUA.uvproj以打开UART 发送与中断 接收实验项目,编译项目生成实验 8-SM1\bin\Z32HUA.bin
2.将实验箱接入电源,连接实验箱与电脑,用 9 针串口线将 Z32 模块的串口与电脑 USB 接口连接,打开Z32下载调试工具软件资料\Z32下载调试工具\NZDownloadTool.exe打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,
3.显示1设备已连接后,点击浏览,选择\实验 8-SM1\bin\Z32HUA.bin,点击下载,绿色进度条加载完成后,程序下载成功
打开串口助手,设置相应参数。
4.关闭Z32电源,再打开,下载完的程序自动运行,显示屏显示“SLE4428 实验!请插入 IC 卡.”。插入IC卡后:用户代码为:”,第四行显示用户代码“D27600000400”。再按下矩阵键盘的“A”键,屏幕 第一行显示提示“按-A 键校验密码”并在第二行显示两个字节的校验密码 “校验 0xFF,0xFF”。按下矩阵键盘的“A”键,屏幕第三行显示“校验成功”,第四行显示校验 剩余机会“剩余机会:8 次”。
5.按下矩阵键盘的“A”键,则屏幕第一行显示“加密解密实验”,第二、三行分别显示选项“1.加密”,“2.解密”。按“1”键选择加密,屏幕第一行显示“观看串口调试 助手”,第二行显示“A 键确认加密”。此时,串口调试助手显示原始数据和 加密密钥。按下“A”键确认加密后,屏幕第三行显示“加密完成”,第四行显示提示 “A 键存入 IC 卡”。串口调试助手显示加密后的数据。按“A”键,将加密数据存入 IC 卡,此时串口显示“已将数据写入 IC 卡”。 屏幕回到加密解密实验选择菜单。

图为成功显示

图为选择加密还是解密

下面进行加密实验。
1.第一行显示“ 观看串口调试助手”,第二行显示“A键确认加密”,通过 串口发送字符“将加密以下数据:”并将发送加密前的数据发送至 PC 机, 发送换行,串口继续发送“加密钥:”并将加密密钥数组发送至 PC 机, 发送完毕等待“ A”键按下;
2.通过串口发送字符“加密后的数据:”并将加密后的数据发送至 PC 机, 换行,在液晶屏第三显示“ 加密完成”,第四行显示“A键存入 IC 卡”, 等待“ A”键按下。当“ A”键按下后,向 SLE4428 IC卡发送加密后的数据, 通过串口向 PC 发送“已将数据写入 IC 卡。”跳转至B段程序。

图为加密成功:

实验中的问题及解决过程

1.破解MD5失败:
主要是没有认真按照题目的要求要求去做,如果按照题目要求使用管理员权限打开就不会出现这个问题了,估计是破解版软件,不用权限会导致杀毒软件报错。
2.电脑不能被识别:
识别不了仅从两个方面考虑问题就可以:一个是硬件方面,一个是软件方面。我们首先从硬件方面考虑,通过改变USB接口的方式成功连接,但是每次新的实验都需要重新识别,我们惊奇的发现每次都使用新的USB接口就可以实现识别了。最后三个USB接口用完了,我们重启电脑之后又可以重新使用了。

时间: 2024-08-05 23:58:25

实验二 20155335 实验报告 固件程序设计的相关文章

20175325 《JAVA程序设计》实验二《JAVA开发环境的熟悉》实验报告

20175325 <JAVA程序设计>实验二<JAVA开发环境的熟悉>实验报告 一.实验报告封面 课程:Java程序设计 班级:1753班 姓名:石淦铭 学号:20175325 指导教师:娄嘉鹏 实验日期:2018年4月17日 实验名称:面向对象程序设计 实验目的与要求: 1.完成实验.撰写实验报告,注意实验报告重点是运行结果,遇到的问题以及分析. 2.实验报告中统计自己的PSP(Personal Software Process)时间: 3.掌握使用IDEA完成基础编程与程序调试

20172325 学号 2017-2018-2 《程序设计与数据结构》实验二报告

课程:<程序设计与数据结构> 班级: 1723 姓名: 邓煜坤 学号:20172325 实验教师:王志强 实验日期:2018年4月23日 必修/选修: 必修 1.实验内容 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握UML建模 4.熟悉S.O.L.I.D原则 5.了解设计模式 6完成蓝墨云上 (1)-(5)实验. 2. 实验过程及结果 实验一: 做实验一的时候是按照老师博客做出来的,在过程上很顺利 代码链接 实验二: 实验二按照教程来也很顺利,对T

信息安全系统设计基础实验二:固件设计

北京电子科技学院(BESTI) 实验报告 课程:信息安全系统设计基础 班级:1353 姓名:芦畅 傅冬菁 学号:20135308 20135311 成绩: 指导教师:娄家鹏 实验日期:2015.11.10 实验密级: 预习程度: 实验时间:15:30~18:00 仪器组次: 必修/选修: 实验序号:1 实验名称:实验一:Linux开发环境的配置和使用 实验目的与要求: 1.掌握程序的烧写方法; 2.能够实现Bootloader; 3.实现密码学中常见算法的固化. 实验仪器: 名称 型号 数量 嵌

实验二报告 20135209潘恒 20135204郝智宇

北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础                      班级:1352 姓名:   潘恒     郝智宇 学号: 20135209     20135204 成绩:             指导教师:娄嘉鹏          实验日期:2015.11.17 实验密级:         预习程度:            实验时间:15:30~17:30 仪器组次:04,09     必修/选修:必修        

OOAD实验二 报告

实验二: 实验要求: (1)能够完整地分析系统Use Case用况组成: (2)能够正确地确定Use Case Diagram用况图中的Actor角色: (3)能够根据需求文档确定每一个用例的详细描述,即事件流: (4)能够使用Rose(或其他UML工具)正确画出Use Case Diagram用例图: 学号:201430340104 姓名:贺世宇 班级:14级软R1班 ATM系统的用况图:   用况:验证身份 用户插入卡片 检测卡片性质 若是普通银行卡,则呈现输入银行卡密码页面 若是技术人员工

实验二 Java基础(数据/表达式、判定/循环语句)

实验二 (一)实验内容 编写简单的计算器,完成加减乘除模运算. 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. 编写测试代码,测试验证. (二)实验要求 掌握数据的定义和表达式求解的基础知识 掌握循环和判定语句的使用 掌握迭代器类的使用 掌握单元测试和TDD(不要求用IDEA的插件,用linux下VIM编写测试代码) (三)助教验收 简单计算机器的验收 测试验收 上传到码云 (四)实验报告 在规定时间前发表博客,标题"学号 实验二 &

FPGA与simulink联合实时环路系列——实验二LED

实验二LED 实验内容 ????在实验一的基础上,将simulink产生的测试信号输出到FPGA开发板上的LED灯进行显示,这里要在生成的硬件模型上进行修改,将传送到FPGA的信号输出到8个LED灯上,并且对信号进行分配引脚. 创建模型 ????在Matlab的指令窗口输入以下指令,hdlsetuptoolpath('ToolName','Altera Quartus II','ToolPath','C:\altera\11.0\quartus\bin\quartus.exe(修改为软件安装的路

2018-2019-1 20165221 《信息安全系统设计》实验二:固件程序设计-实验报告

2018-2019-1 <信息安全系统设计基础>实验二:固件程序设计-实验报告 实验报告由5221同学完成: http://www.cnblogs.com/0630tx/p/9904111.html 原文地址:https://www.cnblogs.com/nmsl123/p/9906006.html

2017-2018-1 20155222 201552228 实验二 固件程序设计

2017-2018-1 20155222 201552228 实验二 固件程序设计 实验内容 实验三-并发程序-1 学习使用Linux命令wc(1) 基于Linux Socket程序设计实现wc(1)服务器(端口号是你学号的后6位)和客户端 客户端传一个文本文件给服务器 服务器返加文本文件中的单词数 上方提交代码 附件提交测试截图,至少要测试附件中的两个文件 实验三-并发程序-2 使用多线程实现wc服务器并使用同步互斥机制保证计数正确 上方提交代码 下方提交测试 对比单线程版本的性能,并分析原因