首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

RFID应用系统中的Tag-reader安全通信协议

RFID应用系统中的Tag-reader安全通信协议

关键字:RFID   Tag-reader   安全通信协议  
  1 无线射频识别技术简介

  无线射频识别技术(radio frequency identification,RFID)或称电子标签技术是从二十世纪六七十年代兴起的一项非接触式自动识别技术。它利用射频方式进行非接触双向通信,以达到自动识别目标对象并获取相关数据的目的,具有精度高、适应环境能力强、抗干扰性强、操作快捷等许多优点。最基本的RFID 系统主要由下面3部分组成:

  (1)标签(tag):又称电子标签、智能卡、识别卡或标识卡,由嵌入式处理器及其软件、卡内发射与接收天线、收发电路组成。标签为信息载体,含有内置天线,用于和射频天线问进行通信。

  (2)阅读器(reader):读取/写入标签信息的设备。

  (3)后台数据库(backend):用于存储标签标识所对应的相关数据。

  一般情况下,阅读器和后台数据库之间的通信可以认为是安全可靠的,本文将二者等同看待。

  2 RFID面临的安全问题

  无线射频识别技术的应用虽然十分广泛,但其存在一个不可忽视的隐患——安全机制。没有可靠的安全机制,就无法有效保护RFID标签中的数据信息。目前,RFID的安全性已经成为制约RFID广泛应用的重要因素。针对RFID的主要安全攻击可简单地分为主动攻击和被动攻击2种类型。主动攻击主要包括: (1)从获得的RFID标签实体,通过逆向工程手段,进行目标RFID 标签重构的复杂攻击;(2)通过软件,利用微处理器的通用通信接13,通过扫描RFID标签和响应阅读器的探询,寻求安全协议、加密算法以及它们实现的弱点,进而删除RFID标签内容或篡改可重写RFID标签内容的攻击;(3)通过干扰广播、阻塞信道或其他手段,产生异常的应用环境,使合法处理器产生故障,拒绝服务的攻击等。

  被动攻击主要包括:通过采用窃听或非法扫描等技术,获得RFID标签和识读器之间或其他RFID通信设备之间的通信数据,跟踪货品流通动态等。

  攻击者通过对RFID系统中的标签、标签中存储的数据以及标签与阅读器之间的通信实施主动攻击或被动攻击,将使RFID系统面临非常巨大的安全风险。

  RFID 系统中最主要的安全风险是“数据保密性”。显然,没有安全机制的RFID标签会向邻近的识读器泄漏标签内容和一些敏感信息。由于缺乏支持点对点加密和 PKI密钥交换的功能,在RFID系统应用过程中,攻击者有许多机会可以获取RFID标签上的数据。RFID系统中的另一个安全风险是“位置保密性”。如同个人携带物品的商标可能泄漏个人身份一样,个人携带物品的RFID标签也可能会泄漏个人身份,通过识读器就能跟踪携带系列不安全RFID标签的个人。此外,攻击者还可以利用伪造标签代替实际物品来欺骗货主,使其误认为物品还在货架上。攻击者也可能通过篡改RFID标签上的数据,用低价物品标签替换高价物品标签,以此来获取非法利益。

  3 基于Hash函数的安全通信协议

  为了解决RFID系统的安全问题,最大限度地降低其面临的安全风险,必须为RFID系统构造一个可靠的安全机制,用于tag与reader间的相互认证和传输数据。所有的安全机制都需要建立在一个加密算法的基础之上[2]。但由于RFID标签的使用数量大、范围广,必须将其造价控制在比较低廉的水平,这使得RFID标签通常只能拥有大约5 000个~10 000个逻辑门,而且这些逻辑门主要用于实现一些最基本的标签功能,仅剩少许可用于实现安全功能。但实现AES(advanced encryption standard)算法需要大约20 000个~30 000个逻辑 门[3],实现RSA、椭圆曲线密码等公钥密码算法则需要更多的逻辑门。因此,大多数RFID标签根本无法提供足够的资源来实现一些比较成熟和先进的加密算法,而只能采用一些 “PIN码”或“password”机制来保护秘密数据。

  按照目前已有的技术和芯片制造水平,在tag标签芯片中实现SHA-1等成熟Hash算法大约需要3 000个~4 000个逻辑门,因此,本文提出了基于Hash函数的安全通信协议,用于保证tag和reader之间数据传输的安全性,同时防止在传输时泄漏tag所携带的个人信息和位置信息。

  3.1 协议中的Hash函数

  在本协议中需要用到2个Hash函数:H和G,这2个Hash函数的实现是可以公开的,无须保密。而且,H和G理论上可以是同一算法,但是考虑到H仅用于计算一个标签标识串的Hash值,可以采用比较简单的算法,而G要用于计算tag和backend间互相鉴别和传输会话密钥时的Hash值,因此,应该采用安全强度较大的Hash算法。显然,作为Hash函数,H和G均应满足[4]:
看看了哇。。。
www.torinlogistics.com
看看了哇。。。
www.torinlogistics.com
返回列表