- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于跳码技术的无线密码锁设计
基于跳码技术的无线密码锁设计
时间:2009-08-12 10:17:43 来源:现代电子技术 作者:薛永前 毛敏
0 引言??? 无线电子锁系统相比传统机械锁系统具有无接触性、方便快捷、易于管理等优点,伴随着RF器件的价格逐步降低和各种数控系统的集成化要求,无线电子锁在更多的领域得到了应用。早期的无线电子锁系统,钥匙向锁发送的或者是没有加密的固定密码,或者是经过PT2262,VD5026等编码芯片编码的密码,但这些方式产生的密码都是固定的内容,且长度较短(一般不超过16位),入侵者只要利用拷贝重发或者扫描跟踪等方法就可轻而易举地破解,因此这样的方案都应用于对安全性要求不高的场合。??? 为满足对更高安全性的要求,本文提出一种基于跳码的无线锁解决方案。所谓跳码,是指钥匙每次向锁发送的密码都是唯一而随机的,入侵者无法预测,即使记录了原来的开锁密码也不能用于下次开锁,因此安全性极高。
1 跳码的软件实现??? 目前跳码的实现多借助于专用的处理器硬件,如Microchip的HCSXXX系列,美国MACRSTAR公司的TR13XX,ACM公司的ACM1330E系列,这些产品都是专利产品,内部算法对外不公开。设计者要想使用这些产品,必须学习新的处理器,并且付出一定的专利费。这里提出一种跳码的完全软件实现,使用合适的普通单片机就可运行这种跳码软件。??? 跳码的实现核心是非线性加密算法,利用32位非线性反馈移位寄存器(NLFSR)和64位密钥组成的加密单元,可实现对输入32位二进制数据的加密,加密后的输出是32位二进制随机数。输入有一位变化,加密后的输出统计上将有一半以上的位发生变化,具有相当高的随机性。图1是跳码加密和解密的示意图:
??? 注意,对于同一套加密系统,加密单元和解密单元的64位密钥是相同的,且是不公开的,这是典型的私钥加密系统。1.1 加密单元
??? 依据上图,加密时,将欲加密的32位二进制数据X存入32位移位寄存器(shift register,SR)中,选取32位SR的1、9、20、26、31位和固定32位二进制数据OX3A5C742E组成非线性函数(NLR)的输入,NLR的输出、SR的0、16位、以及64位密钥移位寄存器(key FSR)移位后的0位,这些位数据异或(XOR)后产生的1bit数据作为32位SR的31位。循环此操作528轮后,32位SR 中的数据即为X经加密后的跳码数据Y。这里给出用VC6.0对该加密算法的实现:
???
1.2 解密单元
??? 跳码解密单元是加密单元的逆操作。依据图3,解密时,将欲解密的32位二进制跳码Y存入32位SR中,选取32位SR的0、8、19、25、30位和固定32位二进制数据OX3A5C742E组成非线性函数NLR的输入,NLR的输出、SR的15、31位、以及64位key FSR移位后的15位,这些位数据异或(XOR)后产生的1bit数据作为32位SR的0位。循环此操作528轮后,32位SR中的数据即为解密后的数据X。这里给出用VC6.0对该解密算法的实现:
1.3 跳码加解密算法在单片机中的实现??? 上述跳码算法,即加密函数Encrypt()和解密函数Decrypt(),接收的参数为32位无符号整数和64位无符号整数,返回的是32位无符号整数。单片机大多是8位机,其编译开发环境所定义的同样数据类型的长度与PC机有所不同,如unsigned int在PC上定义为32位无符号二进制数,而在单片机上常定义为16位无符号二进制数。假设单片机的unsigned int和unsigned long分别表示16位无符号二进制数和32位无符号二进制数,可将上述函数改为:
这里,用两个32位无符号整数key_high和key_low分别表示64位无符号整数的高32位和低32位,程序的实现也要做相应的改变。??? 针对不同编译器所定义的数据类型,可采用相似方法移植跳码算法程序。
2 基于跳码的无线锁方案??? 这里选用Atmel公司的AVR单片机作为锁和钥匙的处理器,无线收发模块采用普通的RF模块即可。下面给出基于跳码的无线锁方案的硬件框图:
??? 图4中,钥匙和锁进行单向通信,即按下钥匙按键1时,钥匙向锁发送加密后的跳码数据,锁收到后解密,并判断执行。钥匙是低功耗模块,它大部分时间处于休眠状态,每当按键1按下时,钥匙被唤醒,发送加密后形成的跳码数据。钥匙要便于携带,因此要求体积小,待机时间长,故这里选用Atmel公司的Atiny系列单片机,并由钮扣电池供电。锁对功耗和尺寸不敏感,故这里选用Atmega8L单片机,供电方式可以灵活一点。2.1 钥匙工作原理??? 通过对跳码算法的介绍,可以知道对于给定的任意32位二进制数,利用跳码加密算法Encrypt ()
您可能关注的文档
- 加拿大的ccus经验积累中国的ccus机遇-二氧化碳捕集利用与封存.pdf
- 加工-无锡出入境检验检疫局.doc
- 家蚕免疫稳态调控分子的鉴定和表达模式分析.pdf
- 继续加强基础设施建设-内蒙古体育职业学院.doc
- 继电器及装置可靠性试验指数分布-电力系统保护与控制.pdf
- 寄生传输线对pfn-marx输出波形的影响-强激光与粒子束.pdf
- 继电保护复习题汪涛.doc
- 济宁轻工纺织工业办公室-轻纺办.doc
- 济南城区大气中co2浓度变化特征研究-中国环境管理干部学院学报.pdf
- 技职体系大一英文基础字汇.doc
- 基于同步整流技术的光伏电池最大出力研究.doc
- 基于特征参量的肉鸡木质肉在线检测方法-农业机械学报.pdf
- 基于碳储量视角的城镇土地利用模式与生态效益分异特征-中国土地科学.pdf
- 基于锁相环的fm调制解调电路的设计与仿真-中国海洋大学.pdf
- 基于随机性与回归特征的实物期权方法在专利价值评价中的应用.doc
- 基于随机行走电容提取且保证准确度的线网时延计算方法.pdf
- 基于随机共振进行弱信号探测的试验研究-物理学报.pdf
- 基于水流模型的串联式水平潜流湿地除磷效果分析-ingentaconnect.pdf
- 基于锶同位素的亚热带典型岩溶动力系统降雨条件下岩溶作用速率及.pdf
- 基于双向可控硅的强鲁棒性静电防护器件.pdf
文档评论(0)