广工物联网信息安全实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告

课程名称物联网信息安全

题目名称物联网信息安全实验学生学院自动化学院

专业班级物联网工程* 班

学号 **********

学生姓名 ****** 指导教师曾****

2017年07 月01 日

实验一物联网实验箱基本使用

一、实验目的

掌握ZXBee物联网开发套件的使用。

二、实验环境

硬件:ZXBee CC2530 节点板 2 块、USB 接口的 CC2530 仿真器,PC 机;

软件:Windows 7/Windows XP、IAR 集成开发环境、串口监控程序。

三、实验内容

以下内容均使用《基于 CC2530 Zigbee 无线传感网协议开发》一书作为实验指导书,以后简称《指导书》。其中的代码不提供copy,请同学们自己输入。

1)自行阅读《指导书》第1章有关ZXBee开发环境的介绍,并完成1.5“创建第一个IAR应用程序”。

2)完成第2章基本接口实验:2.2“LED控制实验”和2.5“串口实验”。

3)完成第4章无线射频实验:4.1“点对点通信实验”、4.2“广播通信实验”和4.4“信道监听实验”。

四、实验结果

2.2“LED控制实验”结果图如下:

2.5“串口实验”结果图如下:

4.1“点对点通信实验”结果图如下:

发送节点将数据发送出去后,接收节点接收到数据,并通过串口调试助手打印输出。发送数据的最大长度为125 (加上发送的数据长度和校验,实际发送的数据长度为128 字节)。

4.4“信道监听实验”结果图如下:

使用了信道12:

使用了信道20:

五、实验总结

通过本次实验,我掌握了ZXBee物联网开发套件的使用,成功创建了第一个IAR应用程序,并且依据《指导书》成功完成了LED控制实验、串口实验、点对点通信实验、广播通信实验和信道监听实验等基础实验。为后续实验奠定了基础。

实验二常规加密算法实验

一、实验目的

掌握常规加密算法中替换算法的原理。

二、实验环境

硬件:ZXBee CC2530 节点板 2 块、USB 接口的 CC2530 仿真器,PC 机;

软件:Windows 7/Windows XP、IAR 集成开发环境、串口监控程序。

三、实验原理

假设所有发送及接收节点均工作在同一信号,很明显,如果发送的数据是明文的话,则每个节点均可监听到其他节点发送的数据。若不希望信息被未经授权的节点所监听,可采用加密算法实现保密性。

四、实验内容

1)本实验程序可在《指导书》4.4节程序上进行修改,可节约时间。信道编号不用更改。2)增加一个替换密码表产生函数KeyGenerator()。

3)增加一个加密函数Encrytion()。仅对明文中小写英文字母进行加密,其他字符不变。

4)增加一个发送数据函数rfSendData()。发送节点每隔 1s发送一次数据

12);中的12为种子值,各实验小组可随意更改。

5)修改接收数据函数rfRecvData()。接收节点不断接收各个发送节点发送的信息,并通过串口显示。

6)修改主函数main()。将main()中的如下语句部分修改。

五、实验步骤

1)将工程文件main.c 中的节点类型变量NODE_TYPE 的值设置为1,选择Project->Rebuild All 重新编译工程;将 CC2530 仿真器连接到第 1 个 CC2530 节点板,上电 CC2530 节点板,然后点击菜单Project->Download and debug 下载程序到此节点板。此节点以下称为发送节点。

2)将工程文件 main.c 中节点类型变量 NODE_TYPE 第值设置为 0,选择 Project->Rebuild All重新编译工程。将 CC2530 仿真器连接到第 2 个 CC2530 节点板,上电 CC2530 节点板,然后点击菜单Project->Download and debug 下载程序到此节点板。此节点以下称为接收节点。

3)将发送节点,上电并复位。

4)将接收节点通过串口线连接到 PC 上,打开串口调试助手,配置串口助手波特率为 19200。上电并复位接收节点,可看到串口上打印出信道监听接收到的数据。这时候数据应该是明文。5)修改发送函数rfSendData()。

将basicRfSendPacket(RECV_ADDR, PlainText, sizeof PlainText);

更改为basicRfSendPacket(RECV_ADDR, CipherText, sizeof CipherText);

6)重复上面第1步,更新发送节点程序。

7)将发送节点上电并复位。

8)将串口移至接收节点。上电并复位接收节点,注意观察串口上打印的结果。

9)自己编写一个解密函数

void Decrytion(uint8 *CipherText, uint8 *PlainText, uint8 *Key, int TextLen); 10)更改接收数据函数rfRecvData()。对每次接收到的信息,先进行解密,再通过串口打印。

(注意:解密时所用的密码表必须与加密时所用的密码表相同才能正确解密。决定密码表的因素为seed值。)

六、实验结果

实验的结果注意观察三种情况并对比。

1)发送数据均采用明文。

2)发送数据采用密文,但接收数据没有解密。

3)发送数据采用密文,接收数据后解密。

结果图1——自己编写的解密函数:

结果图2——改写的接收数据函数rfRecvData():

相关文档
最新文档