×

RFID系统构成及协议分析资料下载

消耗积分:2 | 格式:pdf | 大小:467.49KB | 2021-04-23

张涛

分享资料个

  射频识别(Radio Frequency Identification,RFID)技术是20世纪90年代兴起的一项非接触式的自动识别技术,已经广泛应用于工业生产和日常生活的各个方面,如商 品和证件的防伪、供应链管理、图书管理、航空包裹管理和门禁等。由于缺乏可靠的信息安全机制,RFID系统无法有效地保护射频标签中的数据信息。如果标签 中的信息被窃取,甚至被恶意篡改,将可能带来无法估量的损失。另外,不具有可靠的信息安全机制的射频标签,还存在易向邻近的读写器泄漏敏感信息、易被干扰 和易被跟踪等安全隐患。如果RFID的安全性不能得到充分保证,RFID系统中的个人信息、商业机密和工业机密,都有可能被不法分子盗窃和利用。目 前,RFID的安全性已成为制约RFID广泛应用的重要因素之一。   1 RFID系统构成及协议分析   1.1 RIFD系统构成   RFID系统一般由电子标签(Tag)、读写器(Read—er)和后端数据库(Database)三部分组成,如图l所示。电子标签是物品识别的载体, 它由天线、射频威廉希尔官方网站 、存储器以及组成。电子标签与传统的条码技术相比最大的优点是可以对其中的数据进行反复擦写,从而可以实现重复利用。读写器是 一个带有天线的无线发射与接收设备,用于读取标签中携带的信息并且对标签写入数据。后端数据库中保存了标签与读写器的所有信息,通过与读写器的相互通信实 现对整个RFID系统运作的管理。      标签与读写器之间的工作频率分为低频、中高频、超高频等,现有的电子标签大多工作在13.56 MHz,而工作在超高频(UHF)915 MHz的标签传输距离更长。依据其能量来源,标签可以分为有源和无源两类,前者内置电池;后者的能量则是来自于读写器,其工作原理是当标签进入读写器的磁 场后由天线获得感应电流转换为芯片的电源,从而完成信息的发送接收和数据的处理。因此915 MHz无源电子标签成本低廉,使用寿命长,传输距离远,具有更好的应用前景。   1.2 EPCglobal协议安全性分析   目前尚未有全球统一的RFID规范,主要有ISO18000系列标准,欧美的EPC规范和日本的UID规范等。在EPCglobal Class一1 Generation一2协议中,读写器采用选择(Select)、盘存(Inventory)、访问(Access)三个基本操作管理标签群,同时标签 根据阅读器的操作有就绪(Ready)、仲裁(Arbitrate)、应答(Reply)、确认(Acknowledge)、开放(Open)、保护 (Secured)、杀死(Ki11)七种状态,如图2所示。      上电后标签处于就绪状态,接收到读写器发出的请求时通过防碰撞算法选择惟一的标签进行访问,并进入仲裁状态;此时如果读写器再次发起有效的命令请求,标签 将会返回一个随机数(RN),同时进入应答状态;读写器将会发送包含有RN*的命令,标签比较接收到的RN*与自身的RN,如果相等则反向散射其存储的 PC、EPC等信息,进入仲裁状态。读写器可以继续向标签发送请求使之进入开放状态,通过Read,Write等命令对标签进行读写,如果读写器持有者拥 有访问密码还可以使标签进入保护状态,或者通过杀死命令使标签进入永久失效的状态。   在EPC协议中存在着若干安全问题,从标签中读取的信息是以明文方式传送,会轻易向周围的攻击者泄漏标签中保存的信息。读写器在对标签进行写操作时会使用 一个句柄RN与待写入的数据异或后传送,这样避免了明文传输,但是攻击者可以很容易截获作为命令句柄的RN,从而分析出要写入标签的信息,甚至冒充合法读 写器对标签的数据任意篡改。         2 RFID安全方案   根据系统结构和协议分析,RFID系统的安全性应从以下方面来改进:   (1)采用标签与读写器相互认证的机制,防止非法的读写器获取标签信息或篡改标签数据,或者伪造的标签哄骗读写器。   (2)避免通信过程中使用明文传输,由于RFID标签成本低、功耗小、资源少的限制,应选取合适的加密算法。   (3)除了读写器与标签之间的通信,后端数据库的管理在RFID系统的安全中也起到了重要的作用,该部分受到攻击会导致系统中大量标签的数据、密钥等信息泄漏,造成无法估计的损失,所以应加强数据库管理。   2.1 相互认证   RFID安全机制研究多是基于密码技术的研究,目前已经提出了多种安全协议,例如Hash—Lock协议、随机化Hash—Lock协议、分布式RFID 询问一应答认证协议等,这些方法弥补了RFID协议中的一些安全漏洞,在一定程度上提高了系统安全性,但是仍有明显的安全弱点。在Hash—Lock协议 中存在着标签ID的明文传输,攻击者很容易获得该ID进行伪造,而且容易对标签进行跟踪。   针对以上问题,采用读写器与标签相互认证的机制,在系统的认证过程中加入了读写器对标签的认证,防止非法读写器通过攻击标签获取信息或者未授权的读写器跟 踪标签。同时在标签中加入了密文信息,通过数字签名技术保护标签中的秘密信息不被非法读取。后端数据库和标签包含的数据信息如图3所示。      标签与读写器之间的相互认证过程如图4所示。      首先标签对读写器进行认证,过程如下:   (1)读写器发送请求;   (2)标签接收到请求信号后发送一个随机数,并且利用存储器中的合法读写器ID(Ri)与该随机数进行加密计算得到Encrypt(RN,Ri);   (3)读写器接收到随机数后与自身ID进行与标签中相同的加密计算得到Encrypt*(RN,Ri),并且发送给标签。标签接收到该数据后与步骤(2) 中得出的En—crypt(RN,Ri)比较,如果相同则该读写器为合法的,标签进入下一个操作,否则返回初始状态。   读写器对标签的认证过程如下:   (1)读写器认证通过后,标签向读写器发送请求;   (2)读写器接收到请求信号后返回一个随机数RN给标签;   (3)标签将接收到的随机数与自身ID(Ti)进行加密计算,并将密文Encrypt(RN,Ti)传输给读写器;   (4)读写器将该密文用RN解密,得到Ti*,并回传给后端数据库;   (5)后端数据库快速查找是否存在该标签的ID,如果存在则证明该标签为合法标签,返回确认信息(ACK);   (6)读写器确认该标签为合法标签后开始对标签进行访问或读写,整个认证过程完成。   2.2 DES算法对系统安全性的加强   在以上认证过程中,Encrypt为加密函数,目前已有许多优秀的加密算法如ECC,RSA,AES等,但是这些算法资源开销过大,不适合用于低成本的 RFID标签威廉希尔官方网站 中。而DES算法设计的初衷就是为了硬件威廉希尔官方网站 的实现,加解密速度快,安全性好,从产生到现在仍然有着广泛的应用。本系统采用的是一种改进 的DES算法,适用于RFID系统。   DES算法的核心是一个轮函数,明文数据经过初始置换后进行16次轮函数的操作,最后经过一个逆初始置换输出结果。在每一次轮函数中所使用的密钥 Ki是初始密钥经过置换后的,所以每一轮的密钥都不同;对于输入的64 b明文,分成长度相同的两部分Li,Ri,则输出给下一轮的64 b数据为:      其中E表示将右半部分的32 b数据扩展为48 b,与密钥异或后经过8个S盒,每个S盒接收6 b的输入,产生4 b的输出。然后经过一个置换矩阵P,与左半部分再次异或后作为下一轮函数的右半部分数据。   由于S盒在整个算法中占据了很大的面积和功耗,所以本文针对原有算法对S盒进行改进,采用单个S盒来代替原来的8个,将经过扩展的48 b数分成8块,通过一个多路选择器依次通过S盒,再将产生的结果合成为一个32 b数输入置换矩阵P(如图5)。这样就大大减少了威廉希尔官方网站 的规模,同时由于尺寸的减小整个威廉希尔官方网站 的功耗也会降低,更适合用于RFID标签。   

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.obk20.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'RFID系统构成及协议分析资料下载',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.obk20.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);