物联网设备中安全模块的通信协议_第1页
物联网设备中安全模块的通信协议_第2页
物联网设备中安全模块的通信协议_第3页
物联网设备中安全模块的通信协议_第4页
物联网设备中安全模块的通信协议_第5页
已阅读5页,还剩89页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1物联网设备中安全模块的通信协议4符号和缩略语APDU应用协议数据单元applicationprotocoldataunitAPI应用程序接口applicationprogramminginterfaceBWT块等待时间blockwaitingtimeCIP通信接口参数communicationinterfaceparaC-MAC命令消息认证码commandmessageauthenticationCRC循环冗余码cyclicDMCF默认最大时钟频率defaultmaximumDMPOT默认最小轮询时间defaultminimumpollingtDPWT默认电源唤醒时间defaultpow2DWUT默认唤醒时间defaultwake-uptiHB历史字节historicalbyteLe响应数据域中预期的最大字节数MISO主机输入/从机输出masteriMCF最大时钟频率maximumclockfrequencyMPOT最小轮询时间minimumpollingtimeNAD节点地址字节nodeaddressbyteP1参考控制参数1referencecontrolparameP2参考控制参数2referencecontrolparameter2PCB协议控制字节protocolcontrolbPVER协议版本号protocolversRESYNCH重新同步resynchrRFU保留以备将来使用reseR-Block接收就绪块receive-ready3图安图安STK用户身份识别模块工具包subscrT=1’半双工块传输halfduplextraWTX等待时间延长waiting5概述本文件中涉及的物联网设备指的是智能终端、接入网关、传感网关等设备,物联网设备的显示界面业务应用扩展应用应用层显示界面业务应用扩展应用应用层应用框架层UIUI框架用户程序框架系统服务层任务调度形形全...事件通知事件通知多媒体多媒体生物识别生物识别位置服务位置服务......数据管理公共基础库内核层 内核抽象层设备OS驱动框架SEOS...——系统服务层,包括公共基础库、数据管理、任务调度等系统功能模块,以及基于这些基4础模块实现的图形、安全、事件、多媒体、生物识别、位置服务等服——应用层,包括显示界面、电话等系统应在迅速变化和发展的物联网市场,新的产品需求不断涌现,物联网设备不能像传统设备一样功能、提供更好服务等。随着物联网的发展,数以十亿计的设备被部署,面对市场端的快速上线据,同时从机设备也可发送数据。在本文件中,SPI总线仅用于半5HD使用轮询机制来检查SE是否准备好发送数据。——时钟极性为0(CPOL=0),即在空闲状态时,时钟为低电平,在时钟的第一个上升沿触发——时钟相位为0(CPHA=0),即在时钟的上升沿采样数据,在从机选择时,时钟的下降沿输一旦所有数据按预期完成交换,HD应停止时钟信号并SCKMOSIlsblsbMOSIlsblsbMISOmsbMISOSStSStDStSS间等待一个SEGT。基于SEAL大小的SP6SEGTminSEGTminSEGTminSEGTminSEGTminSEGTminSEGTminSEGTminSEGTminSEGTminSEGTminSEGTminSEGTminSEGTmin<=SEAL<=SEALSEALSEALHDFrag.1HDFragHDFrag.1HDFrag.2000000000000000000000000000000000TimeSEData<=SEALSEFlag100000000000000000000000000000SEData<=SEALSEFlag1000000000000000000000000000000000000SEAL<=SEALSEALHD未分帧数据SE未分帧数据HD分帧数据SE分帧数据在此过程中,等待的WUT为SE提供了足够的时间来唤醒和准备接收数据,弃选则指示SE丢弃7一。由于这些机制与不同的硬件架构相关,HD应知道选择使大于CIP定义的MPOT。当HD期望一些响应数据时,应按下);SPI-IRQ由于从SE接收数据只能由HD发起,HD需要知道待获取数据的长度。该问题解决方法如下:当接收的数据长度。信来获取缺失的数据。SPI的默认参数见表1。当HD从SE中获取到CIP8值2C总线允许在一个或多个主机与一个或多2C总线有三根信号线,原理图见图6:2C-IRQ9当处于RECEIVING状态时,SE等待来自HD的数据链路层块。在RECEIVING状态下,SE应确认来HD发送数据到SE的过程见图8,HD按以下顺序给SE发送I2C消息:2C当HD完成发送一个I2C消息后,即:SE已收到I2C停止条件,SE应从RECEIVING状态转换到一。由于这些机制与不同的硬件架构相关,HD应知道选择使HD应周期性地向SE发送I2C读取请求,即:IC-IRQIC-IRQPROCESSING转换到SENDING状态。在SENDIHD按以下顺序接收来自SE的I2C消息:2CSE应保持在SENDING状态,直到HD读取了所有响应字节或HD发送一个新的I2C写入请求。因HDHD尝试获取的数据比SE可提供的有效数据更多,则SE将以空闲字节应答以指示没有更多数据要发值),NAD‘21’‘40’‘00’‘0E’‘00A4040008A00000015100000000’‘BD’‘A4’——S(releaseresponseS(releasereq——S(SWRresponseS(SWR0N(S)M-BIT00000100N(R)0000100N(R)0001100N(R)0010110000001110000011000001111000011100001011100010110000111110001111000100111001001100011011100110110011111110111111x10xxx11x11xxx1协议版本,本文件规定了协议版本‘01’111112211MCF21MPOT12SE保护时间(μs)2WUT2唤醒时间(μs)11MCF21MPOT12R/W保护时间(μs)A.1应用升级过程A.2运行时处理需求A.2.1通用需求A.2.2启动阶段A.2.2.1ELF升级会话启动条件A.2.2.2ELF升级会话错误中止条件——从旧ELF版本创建的任何应用程序实例当前被选中(在任何逻辑通道上)或挂起(根据STK规A.2.2.3ELF升级会话启动后适用规则A.2.3保存阶段A.2.3.1保存阶段的构成A.2.3.2数据保存序列——OPEN请求应调用每个应用程序实例的onSave()方法请求)之前,应该检查是否存在这些剩余的动态依在中断的情况下,可再次安全地执行onS——如果onSave()方法引发异常,数据保存序列和整个ELF升级过程将中止(即这是一个致命错A.2.3.3清理序列明确删除应用程序实例之前执行更激烈的操作(例如清除关键对象等),onCleanup()方法的目标不是清除对象(实际上应保留和迁移对象),而只是在替换之前促进删除(例如,通过释放一——一旦所有onCleanup()方法都被成功调A.2.3.4删除序列——OPEN请求不应调用Applet.un——OPEN请求应检查ELF及其所有应用程序实例是A.2.3.5保存阶段掉电处理应用程序实例应该保持当前状态,应该为所有应用程序实例调用垃圾回收A.2.4加载阶段个ELF升级过程,在这种情况下,应该删A.2.5恢复阶段A.2.5.1恢复阶段的构成OPEN应从新的ELF版本自动创建新的应用——安装序列完成后,所有新的应用程序实例应已安A.2.5.3恢复序列——OPEN应调用每个应用程序实例的onRestore()方法,其顺序与调用以前应用程序实例的在中断的情况下,可再次安全地执行onRestor程序实例调用垃圾回收器,以收集任何可能的工作数据和未恢复(现在不可访问)的A.2.5.4合并序列OPEN应请求每个新的应用程序实例执行合并其——一旦成功调用所有onConsolidate()的方法后,A.2.5.5恢复阶段掉电处理——升级会话应返回加载阶段,并使用一个特殊额的会话状态WAITING_RESTORE_FAIA.3.3升级会话状态——NO_UPGRADE_SESSION,没有升级会话正在——UPGRADE_COMPLETED,升级会A.3.4升级会话过程中的SE内容管理——INSTALL[forload]命令,尝试重新加载旧的ELF版本,除非ELF升级会话已经进入ELF版本共享相同的AID,那么应根据在加载操作期间传输的版本A.3.5SE能力信息‘67’…‘89’1 0 1xxxxxxxxA.4SE应用升级实现A.4.1通用要求SE应用升级过程中应保证应用的完整性及安全性,应用数据需要保持未A.4.2管理升级A.4.2.1定义和范围A.4.2.2命令报文MANAGEELFUPGRADE命值‘E0’-‘EF’‘EA’‘xx’‘xx’‘xx’‘xxxxx…’‘00’0-- - 1-- - ---00001---10001 0010--- 0011--- 0100----1000-xx - A.4.2.2.3命令数据MANAGEELFUPGRADE命令报文的数据字段应为TLV编码,其格式见表A.5。‘A1’‘4F’5-16‘4F’5-16‘80’1‘81’2‘C7’‘C8’‘82’‘B6’‘42’‘45’‘5F20’‘93’‘9E’-------0------x- 1 1 - xxxx - A.4.2.2.5升级令牌111‘xxxx...’0100’-‘82FFFF’‘A1’‘90’1‘4F’5-16‘4F’5-16‘80’1‘A1’…………——如果响应超过256字节,则应按照使用‘61xx’状态字进行链式处理,并使用多个GET转换为NO_UPGRADE_SESSION(响应本身将指示UPGRADE_COMPLETED状000 0 000000000001UPGRADE_COMPLETED00000010WAITING_EXECUTABLE_LOAD_FI0000001100000100WAITING_RESTORE_FAIL x xxxx0000000100000010000000110000010000000101000001100000A.4.2.3.1升级收条1升级会话摘要的值应从启动升级会话的最后(或唯一)MANAGEELFUPGRADE[start]命令中找到的A.4.2.3.2响应报文中返回的处理状态‘64’‘00’‘64’‘01’‘64’‘02’‘64’‘03’‘64’‘10’‘69’‘00’‘62’‘00’‘62’‘01’‘62’‘02’‘62’‘03’A.4.3升级APIA.4.3.1概述应用升级API由更新管理类、更新恢复接口和自定义对象类A.4.3.1.1更新管理类——IsUpgradding(),检查应用程序实例是否正在安装或升级;——getPreviousPackageVersion(),检查上一个包版本(即正在升级的版本)的版——checkPreviousPackageAID(byte[],short,byte)——createElement(byte,s——matchMappedElement(Objecto),查找映射到指定自A.4.3.1.2更新恢复接口——onRestore(Elementroot),恢复实法从不再存在的类中恢复对象)。因此,有必要以不同的方式保存它们的内容,以下列出了相关的接口write(booleanz);//size:1write(byteb);//size:1canWriteBoolean();//numberofbooleansthatmaycanWriteByte();//numberofbytesthatmaycanWriteShort();//numberofwrite(Objecto);canWriteObject();//numberofobjectsthatmaycanReadBoolean();//numberofbooleacanReadByte();//numberofbytecanReadObject();//numberofobjectA.4.3.2接口定义假设我们定义了自定义类A和B如下:}}A.4.3.2.1在保存阶段类B实现静态方法B.save(B),并返回一个ElereturnUpgradeManager.createElement(Element.TYPE_SIMPLE}类A实现静态方法A.save(A),并返回一个ElementreturnUpgradeManager.createElement(Element.TYPE_SIMPLE.write(B.save(a.b))//}A.4.3.2.2在恢复阶段类D实现了静态方法D.restore(Element),并返回}类C实现静态方法C.restore(Ele}会话状态设置为WAITING_EXECUTABLE_L如果是自动恢复模式:恢复阶段完成,丢弃所有会话数据,会话状态设置为UPGRADE_如果不是自动恢复模式:会话状态设置为NO_UPGRADE_SELoader指令调度安全管理Loader驱动指令调度业务应用安全管理OS平台OS驱动SE硬件SE系统框架应主要划分为两部分:SELoadeSEOS升级过程分为升级准备、升级数据和升级结束三个阶段,具体升级过程见准备固件启动升级升级准备升级数据升级结束身份认证认证成功启动升级数据备份启动Loader返回响应复位返回响应身份认证认证成功下载数据xN返回响应xN数据验证验证成功启动准备固件启动升级升级准备升级数据升级结束身份认证认证成功启动升级数据备份启动Loader返回响应复位返回响应身份认证认证成功下载数据xN返回响应xN数据验证验证成功启动OS返回响应复位恢复数据返回响应OS指令指令响应——升级数据阶段:设备收到数据备份成功的响应后,做复位操作,进入升级数据阶段,Loader在SEOS升级过程中,可有不同的会话状态来指示升级进度,会话状 获取会话状态下载数据成NOOSUPGR__ADE_SESSION升级启动(WAITING_OS_DATA_LOAD成功功WAITING_OS_VERIFY 获取会话状态下载数据成NOOSUPGR__ADE_SESSION升级启动(WAITING_OS_DATA_LOAD成功功WAITING_OS_VERIFYINTERRUPTEDOS_UPGRADE_COMPLETEDINTERRUPTEDINTERRUPTED_OS_RESTOREOS OS_RESTORE OS_RESTORE升级准备升级数据升级结束MANAGEOSUPGRADE命令允许启动升级会话、中止升级会话、验证OS升级数据,获取升级会话状态MANAGEOSUPGRADE命令报文格式见表B.1。值‘80’或‘84’‘FA’‘xx’‘xx’‘xx’‘xxxx…’MANAGEOSUPGRADE命令P1格式见表B.2。0-------1- - -0000001-0000010-0000100-0001000P1指示获取升级会话状态时,响应数据为OS升级会话状态,其格式见表B.3。00000000NO_OS_UPGRADE_SESSI0000000100000010000000110001000000100000MANAGEOSUPGRADE命令响应状态字见表B.4。‘64’‘00’‘64’‘01’‘69’‘00’‘69’‘01’‘90’‘00’LOADOS

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论