一种基于KEELOQ的改进加密算法及其在单片机中的实现技术.docx
《一种基于KEELOQ的改进加密算法及其在单片机中的实现技术.docx》由会员分享,可在线阅读,更多相关《一种基于KEELOQ的改进加密算法及其在单片机中的实现技术.docx(14页珍藏版)》请在咨信网上搜索。
1、一种基于KEELOQ的改进加密算法及其在单片机中的实现技术摘要:讨论了Microchip公司的KEELOQ加解密算法的实现机制,通过引入随随机数,提出了一种新的改进算法,并给出了其在单片机中的实现方案。该算法具有简单实用、所需硬件资源少、传输效率和安全性相对较高等优点,适用于需要数据加密的小型无线数据传输系统,具有广阔的应用前景。关键词:加密算法 KEELOQ 单片机 跳码技术当今的编解码电路已经朝着高度集成化和微电脑化发展。像普通的固定编解码芯片和MC145026/145027、PT2262/2272等已被广泛应用于公用系统中,给生活带来了方便。然而这些芯片不能保证系统的安全性。由于这些系统
2、每次发送的数据流一模一样,只是高低电平的组合,第三方面通过捕捉设备,一旦用户信号出现,便可瞬间取得合法的身份识别码;或使用编码扫描设备,主动攻击解码芯片。因此保证系统的安全性是一个很现实的问题。在此背景下,基于加密算法的编解码IC的安全机制得到了应用。Microchip公司的KEELOQ技术是这种技术的代表。KEELOQ技术是一种多变化、抗截获得、安全可靠性高的非线性跳码加密解密技术。KEELOQ目前是通过硬件芯片IC实现,主要应用于汽车阵盗系统和门禁系统,是无钥进入系统领域的首选芯片。但也由于硬件芯片本身的限制,使之很难用于其它领域。本文把这项封装在芯片里的KEELOQ加密技术用软件方式实现
3、,并针对单片机的特性进行了适当改进。这种在单片机中实现的改进算法不仅包含了原来HCS300所具备的所有功能,而且在系统安全性、灵活性、可扩展性、传输效率等方面均有较大改善,同时对改进算法在数据加密领域作为全新的尝试,以其特殊的密钥管理方法独立于对称型加密与不对称型加密算法,成为一种适用于无线传输领域小型系统的数据加密算法。1 KEELOQ技术简介及其硬件实现KEELOQ技术的核心思想是用64bit的EN_KEY64:0(加密密钥)去加密32bit的CSR31:0得到32bit的CRYP密文。加密机制为:首先定义一个非线性表,这个非线性表有5位输入NLF_IN4:0,一位输出NLF_OUT。它在
4、CSR31:0中间隔均匀地取固定5位:I0、I1、I2、I3、I4,通过非线性产生一个输出码NLF_OUT;这一位输出码NLF_OUT再与EN_KEY中的15位、CSR中的2位进行异或运算后输出第一位输出码CRYP0;每输出一位后,EN_KEY、CSR分别进行移位,EN_KEY作循环移位,CRYP0作为CSR移位的输入;重复上述步骤直到输出32位CRYP0:31。依此法,即使32bit的校验码CSR中只有一位发生变化,用KEELOQ加密算法得到的CRYP密文也会有50%以上的数据位发生变化。Microchip公司以KEELOQ技术为基础开发了滚动码系统专用芯片,HCS300是其中较典型的一款。
5、它是一块8引脚的编码IC芯片,里面集成了KEELOQ算法和其他一些功能,带有四个按键接口,实现15位的功能/命令码。内置192bitsEEPROM,用来存放EN_KEY、SN、SYNC、SEED等。序列号用来标识不同的对象;加密密钥用来对发送的数据进行加密,增加破译的难度,它不直接发送出去;同步计数器用来抗截获,每次发送数据时,同步计数器的值都被更新,所以每次发送的数据都不一样。种子码用于安全学习时参与加密密钥的生成。接收方必须先通过学习来获得并存储发送方的序列号、加解密密钥和当前同步计数器的值。学习相当于身份确认,只有经过学习的用户才能与主机通信。主机在接收到信号后,首先比对序列号,然后利用
6、学习过程中得到并存储的加密密钥对接收的数据进行解密;接着检查同步计数器是否匹配,在确认其匹配后,再去处理接收到的按键信令,并根据接收到的按键信令作出相应的动作反应。HCS300的系统使每次发送的密文都不相同,有效防止了空中截获法和数据重传带来的安全隐患。HCS300系统的加密密钥在学习过程中经密钥生成算法产生。学习分为一般学习和安全学习。一般模式下,解密解钥由MKEY和SN生成加解密密钥EN_KEY,其解密密钥隐含于发送信息中。安全模式下,增加了种子码SEED,它与MKEY和SN一起生成加解密密钥EN_KEY,而SEED_KEY在平时并不发送,这样增加了安全性。不过,在学习时SEED码的发送是
7、不经过加密的。2 KEELOQ技术的不足与改进加密算法的提出尽管KEELOQ技术有上述独特的优点,但是经过深入分析不难发现KEELOQ算法及其硬件实现技术也存在一些不足安全性基于出厂密钥和种码SEED。在HCS300芯片中,加密密钥EN_KEY是由出厂密钥MKEY、序列号SN和种子码SEED生成的。而SN和SEED在发送数据的过程中未经加密,是可截获的。理论上出厂密钥一经确定一般不会更改。所以,一旦出厂密钥外泄,后果极其严重。扩展功能弱、升级不方便。其算法由硬件芯片实现。其所能实现的功能由按键决定。其按键只有4个,最多也只有15种组合。发送方无法附加其余的信息,功能扩展几乎不可能。另外,某一特
8、定型号的芯片其序列号和同步计数器的长度是固定的。当系统建成后,开发者如果想只通过软件升级来扩充系统的容量或提高系统的性能、用硬件实现技术基本不可能。对功能码的检错和的功能较弱。在无线传输中,出现误码的概率比较大。功能码代表所要实现的功能,如开门、报警、开阀等。如果发送的数据是0010,而接收的数据为0100,其后果非常严重。传输效率较低。在发送的数据中,其有用信息全部在固定码中,加密码只作为一种加密用的附加数据,这样不但降低了安全性,而且传输效率不高。以HCS300为例,发送的66位数据中只有32位为有用信息,传输效率比较低。 无法用于数据加密。由于其是由硬件芯片实现的,它所能加密的数据只限于
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一种 基于 KEELOQ 改进 加密算法 及其 单片机 中的 实现 技术
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。