




已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
江苏大学本科毕业论文 J I A N G S U U N I V E R S I TY本 科 毕 业 论 文 基于无线新型电子车牌安全加密和鉴权系统设计与实现Design and implementation ofsecurityencryption and authenticationsystem based on wirelesselectroniclicense plate专 业: 通信工程 班 级: 11通信1班 姓 名: 张 乐 然 指导教师姓名: 王 志 超 指导教师职称: 副 教 授 2015 年 5 月V基于无线新型电子车牌安全加密和鉴权系统设计与实现专业班级:11通信1班 学生姓名:张乐然指导老师:王志超 职称:副教授摘要 当前,随着智慧交通技术的发展,课题组所研发的无线新型电子车牌有着广泛的市场需求,而电子车牌加密与鉴权系统的设计与实现工作意义重大,是直接关系到此类电子车牌能否进一步推广的关键技术之一。本文针对这一需求,提出了一种基于无线新型电子车牌安全加密和鉴权系统设计思路与具体实现过程。主要涉及设备鉴别、信息传输和存储以及代码和数据保护等方面一系列安全措施。在设备鉴别上通过Cortex系列芯片内部固化全球唯一ID的方法作为设备在网络服务中的识别ID,确保设备的唯一性,即设备与服务账号的一对一绑定。同时还设置一个独特的256bit密钥作为设备登录服务器的身份验证。可以有效防止套用牌照、盗版牌照等情况的出现。在设备信息传输和储存中使用SHA256作为数据的指纹校验,使用AES256作为数据加密的方法。高达256bit的数据校验指纹和加密密钥,配合牢固的AES加密算法来确保数据传输的安全可靠。改进的DiffieHellman密钥交换算法来保护密钥交换防止传输途中的失窃。运用了基于Cortex-M4协处理器的一种特别优化的SHA256和AES256加密算法,在资源贫乏的单片机中也可以高速处理数据而不占用CPU时间,避免影响其他操作的执行。在设备的代码和数据保护上,利用硬件级保护方法,在硬件上电加载前就设定保护模式,未经授权的外部设备不能读取设备中的任何信息,强制的读取会触发保护机制,设备Flash会强制启动擦除程序擦除所有数据。最后,使用本文设计实现的数据加密和鉴权系统,在新型无线电子汽车牌照上进行应用,并对保护中的电子车牌进行攻击和测试,验证了系统的安全性和可靠性,保证用户的授权安全性及可控性。关键词:无线电子车牌 加密 鉴权Design and implementation ofsecurityencryption and authenticationsystem based on wirelesselectroniclicense plateAbstract At present, Internet of things technology in the fields of energy, health care, public security, traffic, intelligent home plays a major role, provides a convenient, fast and reliable way of life for human beings, But the open networking platform exist authentication and authorization mechanism is not perfect, communication data confidentiality is not strong, hardware device data anti fake deficiencies such as lack of ability, and a lot of time networking equipment applications were asked to have higher security, therefore it must be as early as possible in the design a secure encryption and authentication system based on equipment necessary to protect.The response to this demand, providing a new wireless electronic license plate this based on equipment has higher security requirements of secure encryption and authentication system design and implementation.In the equipment identification through a cortex series chip internal curing globally unique ID method as the equipment in service network ID, to ensure that the equipment uniqueness, i.e., the equipment and the service account of binding.At the same timealso seta unique 256bitaskeydevice loginauthenticationserver.Caneffectively preventpiracyandapply the license,thelicense.In the code and data protection of equipment, using hardware protection method, in hardware electrical load set protection mode, the authorized external equipment can not read any information equipment, mandatory reading will trigger protection mechanism, flash device will forced to start the program erase all data.Finally, used in the design and implementation of data encryption and authentication system, in the new wireless electronic car license, and attacks and testing on the protection of the electronic license plate, to verify the reliability and safety of the system, ensure the user security authorization and controllable.Key words: Security encryption authentication electronic license plate目 录第一章 绪论11.1研究背景和意义11.2 国内外研究现状21.3主要工作21.4 论文结构3第二章 相关技术42.1安全散列算法42.1.1 Hash函数概述42.1.2 SHA-256算法概述52.1.3 SHA-256运算步骤62.2 高级加密标准(AES)92.2.1 AES算法概述92.2.2 轮变换102.2.3 密钥扩展方案12第三章 设计概要153.1 系统概要153.2 系统需求分析163.3 系统设计分析18第四章 硬件设计214.1 主控芯片214.1.1最小系统设计224.2 北斗/GPS定位模块234.2.1最小系统设计244.2.2模块连接254.3 3G无线通信模块25第五章 软件设计275.1 Unique ID的读取和验证275.1.1 Unique ID测试285.2 SHA256散列函数285.2.1 SHA256测试305.3 AES256加密算法315.3.1 AES256测试335.4 基于socket和json的传输加密345.4.1 ME3000初始化345.4.2 ME3000连接服务器355.4.3 ME3000发送和接收数据365.4.4 JSON格式的通讯协议415.4.5通讯模块测试425.5 片上flash储存435.5.1 flash储存测试445.6 基于硬件的芯片读取保护445.6.1 读取保护测试45第六章 系统测试466.1 硬件测试466.1.2 K60最小系统测试466.2 软件测试466.3 测试总结47结论481本论文主要工作482未来工作展望48致谢50参考文献:51第一章 绪论1.1研究背景和意义随着近年来嵌入式技术不断发展,产品应用也越来越广泛、在包括工业制造、生产控制、军事装备、消费类产品、航空航天、仪器仪表检测、交通运输等各个方面都发挥着不可替代的作用。汽车电子牌照作为一种新型的基于嵌入式技术的智能设备,被开发用于解决当前汽车牌照功能单一,交通管理部门和车主对车辆的管理不方便,在车辆行驶过程中的识别不迅速,在交通管理中对车辆的统计不够精确等问题。是一个实现智能化交通管理、智能动态信息服务和车辆智能化控制的一体化系统。半导体技术不断革新不仅带动硬件平台性能不断提升,也使得硬件的成本不断降低,嵌入式软件已经成为产品智能化改造和增值的关键之所在,也是整个行业保持不断增长的中心之所在1。然而嵌入式设备由于使用方式比较特殊,由于缺乏保护和防盗版机制,新产品投放市场不久,就被竞争对手复制,然后以盗版产品的形式重新投放到市场。这些各种形式的盗版、破解极大的损害了原创厂商的利益,阻碍了创新的发展,如果不加阻止,将让厂商不再敢投入资金和人力进行创新,对于行业百害而无一例。据国际反仿冒联盟称,到2015年,仿冒和盗版产品的国际贸易额预计将超过1.7万亿美元,而这个数字己经超过了当前全球经济出口总额的2%2。显然,形势已经非常紧迫。另一方面,由于嵌入式设备的特殊使用方式,对于嵌入式内部的代码和数据保护,也成了一个难题。嵌入式系统中的程序代码和数据都储存在FLASH、EEPROM这样的存储器中,这些储存设备缺乏必要的保护措施,使其中的信息很容易被读取和拷贝,严重威胁设备的信息安全。在这种情况下,迫切需要引入一种低成本的保护机制来基于产品一定的安全防护措施不仅要防止固件不被拷贝,更重要的是保证固件可以在安全的环境下运行。而且即使固件被复制或者克隆,也不能在复制的设备上正确执行,这样才能保护原版设备的唯一性。然而嵌入式系统硬件不像PC机那样具备丰富的资源,因此PC系统中常用的各种加密方法在嵌入式系统中水土不服,这种安全防护措施必须使用一种全新的思想和方案来保护,这个课题对嵌入式软件保护技术的研究十分有意义。1.2 国内外研究现状目前在物联网设备的信息保护上的研究主要分为以下几种:1、纯软件加密。纯软件加密是用软件实现一个加密方案对自身进行保护,这是人们通常容易想到的方法。这种方法成本比较低、也易于实现。一般利用核心数据(如密钥)和核心软件模块(如Bootloader)配合来验证其它的模块,而通常两者与其它普通数据一样,都存放在Flash上。一旦盗版者利用HAG等底层手段进行修改、替换核心数据和核心模块,则整套安全机制都将失效3。并且,嵌入式系统空间有限、资源宝贵,用纯软件加密的办法对产品进行保护对于大部分低端嵌入式设备来讲并不实用。2、硬件加密。按实现原理上来分,硬件加密可以分成两类:第一类是所谓的加密型存储产品。这种加密型存储产品的原理是将普通的EEPROM按某种算法进行加密,用来保护存储在EEPROM中的数据。所以这类产品的加密算法是不能公开的,正因为使用的算法是没有得到国际公认的,因此其加密等级、加密安全性也谈不上任何标准。另一类是厂商自己使用一些单片机,开发一些简单的算法,以期达到在与主机通讯时数据是加密的效果。釆用这种方法,厂商可以掌握全部的技术细节,安全性也有保障,唯一不足的是,这种方法需要花费较大的精力和财力才能完成。然而不管是上面哪种方法都有很大的局限性,首先是保护内容的局限性,即只能保护flash上面的数据,数据一旦离开芯片就将完全暴露。其次是保护方式在通用性和性能上缺乏平衡,不是太消耗资源就是不方便移植。最后是保护缺乏维度,在身份识别和设备鉴别上缺乏比较的措施,无法真正从各种攻击中保护设备。我们设计的数据加密和鉴权系统的方案则克服了上述的缺点,做到了多方面的保护。1.3主要工作本毕业设计来源于“新型无线电子车牌和智能交通管理系统”课题,设计的主要任务是提供一个多层面的数据加密和鉴权系统,一方面使得设备数据在传输和储存中都可以有效防范各种攻击,一方面也维护设备的唯一性,防止出现盗用、冒用设备的情况。本文主要完成了以下模块的设计和实现:1、实现unique ID读取和验证2、实现sha256散列算法3、实现aes256加密算法4、受保护的片上flash储存5、基于socket和json的传输加密6、基于硬件的芯片读取保护 1.4 论文结构全文共分为六章,具体内容安排如下:第一章绪论,介绍了本课题的来源及其研究背景和意义。在此基础上给出了毕业设计核心内容及论文结构;第二章相关技术,对系统设计中用到的关键技术进行介绍;第三章设计概要,对系统总体设计及其需求分析和设计分析进行阐述;第四章硬件设计,包括芯片的选择、主控器及其最小系统的设计、GPRS模块使用设计、定位模块使用设计、控制系统的设计、电源系统的设计;第五章软件设计,主要是各种安全措施的软件实现方法。程序使用C语言,使用IAR7.2编写和编译,在freescale k60芯片上调试和运行。同时对各个模块进行测试。第六章系统测试,对系统的功能进行测试,分为两个部分:硬件测试和软件测试,看是否能够实现。结论总结全文工作,并对系统的进一步完善提出展望。附录给出了系统设计的原理图和系统实物图。第二章 相关技术安全防护系统的强度很大程度上在于安全算法的强度,为了构建一个足够强壮的安全防护框架,本设计选用了安全散列算法的最高级别SHA256和高级加密标准下的AES256算法作为核心算法。其中SHA256负责对数据计算指纹,AES256则负责加密数据。两种算法都是由美国国家标准和技术协会(NIST)发布并作为行业标准算法经过了十多年各种广泛的考验,安全性能可以信赖。下文将详细阐述两种算法。2.1安全散列算法SHA (Secure Hash Algorithms,安全散列算法)是一种将一个消息映射到一个固定长度的消息摘要的算法。其最大的特点就是不同的输入消息,它们映射得到的摘要大相径庭的机率非常高。这种算法由美国国家安全局(NSA)设计并于1993年被美国国家标准和技术协会(NIST)发布。其算法的安全基于以下两点4:a.由消息摘要反推原始输入消息,从计算上来说是不可行的。b.想要找到两组不同的消息对应到相同的消息摘要,从计算上来说也是不可行的。对输入消息作出任何改变,有很高的机率导致其生成迥异的消息摘要。SHA虽然是基于MD4的,但是SHA更为复杂。SHA相比于MD4主要是添加了扩展转换、将摘要位数进行了扩展、通过将上一轮的输出作为下一轮的输入这样的方法产生更快的雪崩效应这几点。除此之外还有以下改变5:a.额外增加了第四轮,只不过是使用了与第二轮相同的运算函数。b.每一步的加法常量都是唯一的。c.采用了循环纠错编码。SHA家族一共包括五种安全散列算法,分别是SHA-1、SHA-224、SHA-256、SHA-384,和SHA-512。其中后四者统称为SHA-2、它们的设计原理基本相同,只是摘要的位数不同。2.1.1 Hash函数概述在1979年,梅克尔得到真实的单向散列函数的定义,安全属性包括原像和第二原像。 1980年,戴维斯在数字签名中使用散列函数,用来抵御RSA数字签名的伪造攻击,这标志着哈希函数密码学研究存在启动6。如今,哈希函数是现代密码学的一个重要分支,它在电子签名和抗抵赖,密码认证,消息认证等诸多领域有着广泛的应用7。哈希函数的基本思想是,如果散列值H(X)作为消息x的消息摘要,然后改变X消息中的任何一个位或几位,将导致最后的散列值H(x)的巨大改变8。散列函数是开放的,也就是处理的过程是不安全的,其安全性是单向的。例如,散列函数作为一种使用构成文件指纹的方法9,如果您需要验证某人确实有一个特定的文件(你有该文件),但你不希望他会文件传递给你,然后让他给你的散列值,如果他发给你的哈希值与您在此文件的哈希值是相同的,那么我们可以肯定他有文件10。由于这个特点,散列函数自然成为许多安全协议和加密系统的安全性保障基础,如SSL,TSL协议11。2.1.2 SHA-256算法概述SHA-256算法适用于长度为(0264)的消息,我们这里将消息定义为M。同md5和sha-1一样,待处理的消息必须是512比特的倍数。接下来对每一个512比特消息按32比特一组进行分组,再扩展到64组,扩展后的消息序列表示为0,1,63。这里我们需要8个工作变量:00=6a09e66710=bb67ae8520=3c6ef37230=a54ff53a40=510e527f50=9b05688c60=1f83d9ab70=5be0cd19SHA-256同时还有两个临时变量1,2。算法的运算会使用到6个逻辑函数,而每个函数的操作对象都是字(32位),每个函数的输出结果也是字。Ch(x,y,z)=(xy)(xz)Maj(x,y,z)=(xy)(xz)(yz)0(256)(x)=ROTR2()ROTR13()ROTR22() 1(256)(x)=ROTR6()ROTR11()ROTR25() 0(256)()=ROTR7ROTR18SHR3 1(256)()=ROTR17()ROTR19()SHR10()其中SHRn()=n ROTRn()=(n)(w-n)SHA-256算法中还用到64个常量,0(256),1(256),.63(256)。这些常量用16进制表示如表2.1所示:表2.1 SHA-256常量表428a2f9871374491b5cOfbcfe9b5dba53956c25b59flllfl923f82a4ablc5ed5d807aa9812835b01243185be550c7dc372be5d748Odeblfe9bdc06a7cl9bfl74e49b69clefbe47860fcl9dc6240calcc2de92c6f4a7484aa5cbOa9dc76f988da983e5152a831c66db00327c8bf597fc7c6e00bf3d5a7914706ca63511429296727b70a852elb21384d2c6dfc53380dl3650a7354766a0abb81c2c92e92722c85a2bfe8ala81a664bc24b8b70c76c51a3dl92e819d6990624f40e3585106aa07019a4cll61e376c082748774c34b0bcb5391cOcb34ed8aa4a5b9cca4f682e6ff3748fB2ee78a5636f84c878148cc7020890befffaa4506cebbef9a3f7c67178f22.1.3 SHA-256运算步骤1、填充附加消息在Hash计算之前,需要对输入消息M进行填充,以确保填充后的消息长度是512的整数倍。填充方法如下,假设消息M的长度是l比特,然后在消息末尾附加1个“1”和k个“0”,使得l + l + k = 448 mod 512。然后在后面的64比特中填上原始长度l的二进制表示。举个例子,一个消息“abc”,总共8x3 = 24比特,接下来在后面填上1个“1”,然后接着是448- (24+1) =423个“0”,最后填上原始消息长度值24,这样就构成一个512比特的消息。2、解析填充后的消息前文已经提到,填充后的消息长度是512的整数倍,这里先把消息分成N组,(0),(1),.(N),每组512比特。依次读入512比特的消息,以32比特为一组,分成16组,假设第1组32比特消息为0(i),依次往后,第二个为1(i),最后一个为15(i)。3、SHA-256 的 Hash 计算上述预处理都完成后,每个512比特的消息块从(0),(1),.(N),将被按顺序处理,处理步骤如下:For i = 1 to N:1、扩展的得到的64个消息序列,Wt:Wt = Mt(i) , 0t15t256(Wt-2)+Wt-7+0256(Wt-15)+Wt-16 , 16t632、初始化8个工作变量a,b,c,d,e,f,g,h为前一次(i-1)的Hash值:a = 0(i-1)b= 1i-1c = 2i-1d = 3i-1e = 4i-1f = 5i-1g = 6i-1h = 7(i-1)3、For t = 0 to 63:1= h+1256(e)+Ch(e,f,g)+1256+Wt2=0256a+Maj(a,b,c)h = gg = ff = ee = d + 1d = cc = bb = aa = 1 + 14、计算得到第i次的Hash值(i):0(i) = a + 0(i-1)1(i) = b + 1(i-1)2(i) =c + 2(i-1)3(i) = d + 3(i-1)4(i) = e + 4(i-1)5(i) = f + 5(i-1)6(i) = g + 6(i-1)7(i) = h + 7(i-1)1到N次重复之后,循环结束,最终的256比特消息摘要就是第N次Hash值0(N),1(N),.7(N)的级联:0(N)1(N)2(N)3(N)4(N)5(N)6(N)7(N)2.2 高级加密标准(AES) 1997年9月12日NIST正式发出了征集算法的公告,其目标是确定一种保护敏感(无密级的)信息的、公开的、免费的并且全球通用的算法作为AES,以弥补DES退出后,数据加密标准留下的空缺。其最基本的功能要求是:算法必须是对称分组密码,分组长度为128比特,密钥长度支持128,192和256比特。2000年10月2日,NIST正式宣布Rijndeal算法将被不加修改地作为AES,此后NIST授权联邦信息处理标准出版社(FIPS PUBS)为AES制定了标准草案用以征集公众的评议,随后在公众评议的基础上对草案进行修改,于2001年11月26日发布了正式的197号标准一AES标准12,在FIPS PUBs 197中指出了标准生效的具体时间为2002年5月26日,至此,经历数年的AES开发研究才终于落下帷幕。2.2.1 AES算法概述Rijndael算法是一个分组迭代加密算法,而且可变数据块长、可变密钥长。数据块长和密钥长可以是128,192或256比特,但为了满足AES的要求,分组长度被固定为为128比特,密钥长度则是可变的128,192或256比特。算法中数据块要经过多次数据转换操作,其中每一次转换操作产生的中间结果叫做状态。状态可表示为二维字节数组即状态矩阵,它有4行,Nb列,且Nb等于数据块长除以32,在标准AES里Nb=4。密钥也可类似地表示为二维字节数组,它有四行,Nk列,其中Nk等于密钥块长除以32。算法转换的轮数Nr由Nb和Nk共同决定,具体值列在表2.2中。表2.2在不同的Nb和Nk下轮的数值NrNrNb=4Nb=6Nb=8Nk=4101214Nk=6121214Nk=8141414AES采用的是替代/置换(SP)网络结构。每一轮由3层组成:(1)非线性层:进行SbuByte变换(即S盒替换),起到混淆的作用;(2)线性混合层:进行ShiftRow行变换运算和MxiColumn列变换运算以确保多轮之上的高度扩散;(3)密钥加层:子密钥简单地异或到中间状态上.AES算法加密的基本流程如图2.1所示:128位明文数据与扩展密钥的异或运算S盒变换行变换列变换与扩展密钥的异或S盒变换行变换与扩展密钥的异或128位加密数据图2.1 AES加密流程图 2.2.2 轮变换轮变换包含4个不同的变换,S盒变换,行变换,列变换和轮密钥加,下面用用类C语言描述:Round(State,RoundKey)SubByte(State);ShiftRow(State);MixColumn(State);AddRoudKey(State,RoundKey);最后一轮少了MixColumn(State)函数,为:FinalRound(State,RoundKey)SubByte(State);ShiftRow(State);AddRoundKey(State,RoundKey);下面我们分别介绍轮变换中的各个变换。1、SubByte变换SubByte变换即S盒运算。该运算有如下两个步骤:(l)对所有的子字节在有限域GF(28)中求其乘法逆,且规定00的逆为00,01的逆仍然为01;(2)经(1)处理后的字节值进行如图2.2定义的仿射转换:图2.2 仿射变换该变换和状态记为SubByte(State)。变幻的方法是通过查S盒表找到这个字节对应的多项式,然后对这个字节进行替换。而逆S变换的计算方法稍有不同,先通过查逆S盒表进行字节替换,即逆仿射变换运算,然后再利用前面介绍过的方法求得输入字节乘法逆。2、ShiftRow变换这一变换和状态用ShiftRow(State)来表示。例如在行左平移变换中,状态的行以不同的位移向左循环平移,第O行不动,第1行移动Cl个字节,第2行移动C2个字节,第3行移动C3个字节.C1,CZ,C3与分组长Nb有关,相关关系为表2.3所示。表2.3 ShiftRow变换NbC1C2C34123612381243、MixColumn变换和InvMixColumn变换在列混淆变换中,我们把状态的每一列看作是在系数域GF(28)中上的多项式,然后在模(x4+1)下与固定多项式cx=03x3+01x2+01x+02相乘。这种运算可用矩阵乘法来表示,记bx=c(x)a(x),则:图2.3 MixColumn变换对所有的列进行这一运算就用MixColumn(State)表示。由于c(x)与x4+1互素,因此c(x)可逆,且c-1x=dx=0Bx3+0Dx2+09x+0E。列混淆变换的逆类似于列混淆变换,只需将c(x)换成d(x)即可。也就是只需要将系数矩阵换为其乘法逆矩阵即可,如图2.4:图2.4 InvMixColumn变换4、轮密钥加轮密钥加用AddRoundKey(state,RoundKey)表示。计算方法是将状态矩阵和轮密钥进行简单的位异或。轮密钥长度等于分组长度Nb,使用的轮密钥是通过密钥扩展算法,由种子密钥所生成。2.2.3 密钥扩展方案轮密钥的生成是由密钥扩展和轮密钥选择两部分构成,其基本原则是:(1)轮密钥的总位数等于分组长度乘以(1+Nr),如分组长为256bit,轮数10,则轮密钥的总长为256*(10+1)=2816bit;(2)种子密钥扩展为扩展密钥,种子密钥长度为4*Nk个字节;(3)轮密钥由以下方法从扩展密钥中获得:对第1轮密钥由前Nb个字构成;第2轮密钥由第二个Nb个字即第Nb+l个字到第2Nb个字构成;以下依次类推。1、密钥的扩展扩展密钥用数组wNb*(Nr+l)表示,前Nk个字是种子密钥,其它的密钥字通过递归定义生成。由于密钥扩展函数取决于Nk的值,因此下面介绍中分为Nk6和Nk6两种情况。若Nk6,用类C语言描述如下:KeyExpansion(byte Key4*Nk, word wNb*(Nr+l) for(i=0;iNk;i+) wi=(key4*i,key4*i+l,key4*i+2,key4*i+3); for(i=Nk;i6时,用类C语言描述为:KeyExpnasionb(byte Key4*Nk word wNb *(Nr+l) for(i=0;iNk;i+) w1=(key4*i,key4*i+l,key4*i+2,key4*i+3): for(i=Nk;1Nb*Nr+l;i+) temp=wi-l; if(i%Nk=0) temp=SubByte(RotByte(temp)Rconi/Nk; else if(i%Nk=4) temp=SubByte(temp); wi=wi-Nktemp: 这与Nk6的区别在于对指数满足i-4是Nk的倍数的字,在异或之前对wi-1进行SubByte变换。2、轮密钥的选择由于在进行密钥加时,密钥长必须与分组长相等,因此第i轮的密钥与分组长度有关,并且由扩展密钥的字wNb*i,wNb*i+l,wNb*(i+l)构成。表2.4给出了Nb=4,Nk=4时的轮密钥选择情况。表2.4 轮密钥选择W0W1W2W3W4W5W6W7W8W9W10W11轮密钥0轮密钥1轮密钥2这种算法的优点在于占有的存储空间不大,并且轮密钥的计算只需要使用Nk个字节就可以了,不需要进行预计算。第三章 设计概要3.1 系统概要新型无线汽车电子牌照主要是一种新型的基于嵌入式技术的智能设备。主要是为了解决当前汽车牌照功能单一,交通管理部门和车主对车辆的管理不方便,在车辆行驶过程中的识别不迅速,在交通管理中对车辆的统计不够精确等问题。是一个实现智能化交通管理、智能动态信息服务和车辆智能化控制的一体化系统。系统的整体结构下图3.1所示:数据库管理端服务器智能交通灯系统智能无卡收费交通局管理软件终端服务器无线电子汽车牌照手机APP管理软件。图3.1 系统框图其中云系统作为整个系统的核心,管理页面、手机APP和无线电子车牌都会连接到云,通过与云系统的交互来执行服务。在云端会有一个庞大的数据库,其中保存着车牌登记、违章、年检和保险等所有的信息。新型无线电子车牌系统的特色功能主要有以下几个:1、 车辆信息的数字化管理由于所有的车辆信息都保存在云端,因此从任何位置和设备都可以很方便的获取这些信息,极大地便利车辆信息的管理。演示系统目前提供了三个接入方法。(1) 网页管理系统,通过网页的方式管理整个车辆系统的所有信息,被设计用于部署在交通管理部门,具有很高的权限,可以查看和修改所有车辆的信息。(2) 手机APP管理,车主可以通过账号和密码登陆服务器,拥有受限制的权限,仅仅可以查看自己名下车牌的相关信息,不过对于诸如保险、违章、车辆位置等信息,依然可以非常方便的处理,省去了车主往返交通管理部门的麻烦,真正做到“掌”控自己的车。(3) 车辆信息近距离读取。该功能暂未实现,不过未来可以通过加入蓝牙、zigbee、NFC这样的模块,实现车辆信息的近距离读取功能,这样在交警执勤等情形下可以做到快速获取车牌信息,为执法带来便利。2、 无卡收费功能当前的无法收费功能都是基于ETC实现的,这样的收费功能主要有以下几个缺点,一是通过的速度受到限制,基本要在10km/h的速度下才能够保证通信。二是ETC成本过高,是一个卡和牌照分离的系统,各自独立,因此需要额外的设备。三是识别麻烦,无论如何还是不能没有收费站这样的设施。然而基于新型无线电子车牌的位置信息,可以实现一种克服上述的无法收费系统,识别没有速度限制,账户与牌照绑定方便管理,而且可以真正做到没有收费站的存在就可以自动识别和扣费。3、 智能交通功能智能交通主要的实现是到路口红绿灯时长的动态调整功能。其核心是基于新型无线电子车牌的管理位置。车辆在行驶过程中,会实时上报自己的位置信息,各个车辆的位置信息,是整个智能电子车牌系统的关键所在。当车辆把自己的汇总到云端,云端就可以通过分析特定区域的车辆状况来获取该路段路况信息,进而动态的调节包括交通灯在内的各种交通指挥工具,以此来疏导各个路段的交通。4、 车辆防盗和追踪功能车牌会实时上传车辆的位置信息,而其上传的位置信息也会被服务器保留并绘制成轨迹,车主可以随时通过手机APP查看自己的车辆当前位置和历史轨迹,管理的自己的车辆。通过在公安系统中还可以利用车牌对嫌疑车辆进行定位,方便对违法犯罪分子的追捕。3.2 系统需求分析新型汽车电子车牌整体技术构架有两个关键点。1、基于位置的车辆联网技术。电子车牌利用3/4G的通信网络时刻和云端服务器保持连接,同时利用定位系统(GPS、BDS)实时获取自己的位置信息,把位置信息上传至云端服务器。通过对车辆位置信息的判断,可以实现智能的交通管理。2、基于云的车辆信息管理系统。对于云系统而言,电子车牌的牌照号就相当于一个账号,其下的所有信息包括牌照、车辆信息、车主信息、年检、违章记录等所有的信息都实现数字化、网络化。因此对于新型无线电子车牌的安全系统的设计需求也就明确,一个是对于车辆网情形下的牌照身份识别。即在基于位置的车联网中能够将位置数据与车辆身份进行绑定,防止车牌的套牌和伪造问题,防止出现车辆重复识别和车辆的信息伪造。只有这样才能够真实还原车辆位置信息的数据,有效的利用数据进行智能交通系统的调整和管理。第二个就是在车辆信息管理,包括信息的传输和储存的过程中,要保证信息的安全性,防止出现信息的泄露和信息被伪造篡改。因为车俩信息中包含着车辆归属、车辆身份、车辆的保险等重要的信息,一旦被不法分子获取将极大的危害交通系统的安全和稳定,故对于安全系统的可靠性有很高的要求,要求安全系统从机制、技术和强度上都要做到抵挡各种已知的甚至未来数十年强度的攻击。3.3 系统设计分析基于新型无线电子车牌的安全保护系统的数据流图3.2所示:数据缓存JSON模块SHA模块AES模块加密储存解密读取明文数据解析协议添加摘要指纹AES加密AES解密检验摘要指纹构造协议通信模块AT指令接收数据发送数据缓存JSON模块SHA模块AES模块通信模块图3.2 数据流图1、安全加密系统该系统的主要工作是对于加密和解密。即保护上文所提到的在各种信息在储存和传输过程中的信息安全。安全加密系统对于所有数据在传输和储存前都会进行高强度的加密,加密后的密文具有极高的安全性,即使信息被截获或者意外泄露,只要没有获取指定的密钥,依然无法获取其中的明文。这部分的加密主要使用的四个技术分别是SHA256散列函数、AES256高级加密算法、基于TCP/IP和Json的传输协议以及Flash片上安全储存技术。主要流程是通过TCP/IP协议与与服务器建立连接,进而再通过基于Json的自定义协议与服务器进行数据传输。在数据传输前,对数据使用256bit的密钥进行AES加密,再对数据使用SHA256计算信息摘要,并附在数据上,这两步可以保证数据传输中的安全,即如果攻击者窃取了数据,没有密钥就无法获取其中的信息,即使窃取了密钥篡改了信息,也会因为改变了Hash值而无法通过校验,从而无法对系统造成影响。Flash片上安全储存技术主要是利用芯片自带的Flash来储存一些数据,由于有硬件级的安全保护技术,外部攻击者无法从Flash上获取数据,因此这些储存在Flash上的数据也是安全的。2、身份识别和授权系统该系统主要是解决电子车牌的身份和权限问题。要防止套牌和伪造牌照,最关键的地方在于牌照唯一性的和牌照身份的鉴别。因此系统需要设计一个机制,来实现每个牌照对应一个全球唯一不可重复的指纹,这个指纹就是电子牌照的身份证,指纹错误的牌照无法登录系统和进行各种服务,并且会被系统和软件识别并发出警报。同时只有身份识别正确的车牌,才会授予对数据读取和写入的权利,对隐私和敏感数据执行各种操作。其验证流程如图3.3所示读取UID和牌照信息验证登陆请求生成SESSION和回执接收回执并应用KEY应用KEY加密数据解密并校验数据。图3.3 身份验证流程图该系统主要使用了UniqueID唯一身份码和基于硬件的芯片读取保护两个技术。在颁发牌照的时候,系统会自动将每一个电子车牌的UniqueID与车牌进行绑定并录入数据库,除非挂失解除绑定或者更改绑定,否则一个车牌只能有一个指定的设备。这样套牌和伪造牌照的设备将无法运作,其次,这些唯一信息经过特定编码,储存在芯片中,信息被芯片保护起来无法被外部攻击者读取,因此也无法被伪造。第四章 硬件设计在需求分析完成之后,接着就是硬件设计,后续的工作都建立在此基础之上。本系统的硬件设计主要是为了定位和无线通信的需求而考虑。系统的整体结构如图4.1所示,硬件设计根据需求分析的结果进行元器件的选择,芯片引脚的合理安排,各模块外围电路的设计。其中,首先进行且尤为重要的是主控制芯片的选择。硬件设计具体包括:主控器及其最小系统的设计、全球定位模块的设计、3G无线通信模块的设计。MCU全球定位模块3G无线通信模块图4.1结构框图4.1 主控芯片论文所选用的控制芯片为 FREESCALE 公司的 MK60DZ512ZVLQ10系列,工作电压1.71-3.6V,闪存的写电压为1.71-3.6V,采用ARM Cortex-M4内核,其性能可达到1.25 DhrystoneMIPS/MHz。该系列提供硬件加密,支持多个算法,可以以最小的 CPU 负载提供快速、安全的数据传输和存储。其中系统安全模块包括安全密钥存储和硬件篡改检测。该款单片硬件资源丰富,系统性能强大,包括128k RAM和512K的Flash,论文所设计的 K60 最小系统板具有 100M标准主频,能够使整个电子车牌系统性能充足、运行稳定。同时 K60 单片机还具有低功耗的特点,可以在不工作或者轻负荷的情况下降低系统功耗节约电量。图4.2 结构框图由功能框图4.2可知,K60含有的功能模块包括:串行通信UART、GPIO、定时器、A/D、D/A、CMP、TSI、SPI、I2C、I2S、CAN、USB、SDHC以及存储模块。不同单片机的相同功能模块用法是基本一样的,因此,这里的UART、GPIO、定时器、A/D、SPI、CAN与XS128的功能模块用法是一样的,CMP与XS128的PWM模块功能类似,都可以输出PWM波形。4.1.1最小系统设计K60 最
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数学团队合作幼儿园试题及答案
- 职业生涯大学化学考试试题及答案
- 工程师机电试题及答案
- 家具行业设计中的品牌战略布局与市场发展动态分析研究试题及答案
- 小学教育教学反思与学生合作学习有效融合试题及答案
- 爱问教育培训试题及答案
- 施工安全审计考核题目研究试题及答案
- 电动汽车维护技术考核试题及答案
- 教师教育教学反思与职业发展路径试题及答案
- 饭店室内装修合同协议书
- 房屋抵押个人借款标准合同
- 云南省昆明市2022-2023学年二年级下学期语文期中试卷(含答案)
- 国家职业技术技能标准 4-07-02-05 商务数据分析师S 2024年版
- 口腔预防保健课件 英文
- 读后续写-制作稻草人(T8联考)课件-高考英语作文复习专项
- 研发成果商业化转化(资料)
- 高速铁路关键技术
- 丁丽娟《数值计算方法》五章课后实验题答案(源程序很详细-且运行无误)
- 情境学习理论在教育中的应用
- 血糖监测操作流程及考核标准(100分)
- 部编版语文二年级下册第6单元奇妙的大自然大单元整体作业设计
评论
0/150
提交评论