APP下载

基于RFID的电力资产管理的信息安全研究

2014-12-25陈景晖陈亚猛黄晓云王宏伟郑成贺

科技视界 2014年23期
关键词:秘钥数字签名阅读器

吴 飞 陈景晖 陈亚猛 黄晓云 王宏伟 郑成贺

(1.国网福建省电力有限公司,福建 福州350003;2.国网福建省电力有限公司 泉州供电公司,福建 泉州362000;3.国网信通亿力科技有限责任公司,福建 福州350003)

1 RFID 概述

射频识别(Radio Frequency Identification)是一种非接触的无线自动识别技术。 它通过射频信号自动识别目标对象并获取相关数据,在工作过程中不需要人工操作, 相当于无线的条形码, 但相比条形码RFID 技术具有防水、防磁、耐高温、读取距离大、使用寿命更长、标签数据能够加密、存储数据容量更大、存储信息更改自如等优点[1]。

RFID 系统主要由以下三个部分组成:应答器:由天线,耦合元件及芯片组成,通常使用标签作为应答器,每个标签上有一个唯一的标识码及标签key,用于识别标签黏贴的对象。 阅读器:与应答器相同内部都有天线,耦合元件和芯片,是作为读取或写入标签信息的相应设备,根据应用场景不同,可设计为手持或者固定的RFID 阅读器。 应用软件系统:作为RFID 数据处理后端,主要是将收集的数据做进一步处理[2]。

RFID 的工作原理是标签通过与读写器发生电磁耦合从而获得能量,并将标签上的数据信息传送给读写器。整个过程是自动进行,无需系统做出任何物理性接触就能够完成对区域内特定目标对象的自动识别,并且可以工作在各种恶劣的环境,同时还能够对不止一个标签进行数据交换,操作简单快捷。 从20 世纪起RFID 技术就逐渐进入企业应用的领域中。

虽然如上所述RFID 技术有着许多传统识别技术所欠缺的优点,但由于标签和读写器之间传输数据的方式是通过无线射频信号进行的,在传输过程中这些数据相当于广播发送,完全暴露在一定范围内,任何人想获取这些数据信息都可以通过相关手段得到,这样就会造成一些敏感信息泄露,使得RFID 系统存在着传统识别系统不需要特殊考虑的传输方面等安全隐私问题[3]。

本文的提出就是为了解决由于RFID 引入而存在的安全隐患,其中安全认证技术是解决RFID 安全的关键问题之一。 只有设计了可靠的安全机制,才能够保证RFID 标签里面的数据、相关信息不被窃取、篡改、干扰、RFID 系统中的相关个人信息,甚至是商业机密才能不被不法分子盗取和利用。 同时注重数据读写传输过程的安全问题,最终达到提升电力资产管理系统的安全性,可靠性的目的。

2 RFID 系统安全问题

在安全缺陷方面RFID 除了与传统计算机网络的相同之处外,还存在以下四种不同的安全缺陷类型[4]:

2.1 标签自身的访问缺陷

由于标签的成本有限,标签自身很难具备保证安全的能力,这就使整个系统面临了很大的安全问题。非法用户能够利用合法的阅读器或是自己构建一个阅读器与标签直接进行通信。进而轻松获取标签里面的数据。 对于读写标签,还能够被非法用户篡改标签内数据。

2.2 通信链路上的安全问题

RFID 的信息通信链路是无线通信链路。 与传统的有线连接的端到端传输不同,无线传输相当于广播,信号本身就是开放式的。信号覆盖区域内的非法用户可以很方便的进行各种操作如下:

(1)非法截取窃听通信信息数据;

(2)业务拒绝式攻击,通过发射大量干扰信号来堵塞区域内通信链路,使阅读器不断接收处理垃圾数据,而无法接收处理标签发送过来的正常数据;

(3)利用冒名代替正常的标签向阅读器发送虚假数据,使得阅读器处理的都是非法用户的数据,真实数据则被隐藏起来。

2.3 阅读器内在的安全风险

在阅读器中,只有提供一些简单的数据筛选,时间过滤和管理功能,对外只提供用户对应的业务接口,没有用于提升安全性能的相应接口。

2.4 后端系统的脆弱性

除了前端标签,阅读器以及标签阅读器之间存在的风险,后端系统同时存在安全问题,例如后端数据的储存安全,后端系统访问安全,后端系统与其他系统的交互安全等。

根据上述的RFID 缺陷问题,容易引发的攻击方式可分为:主动攻击和被动攻击[5]。

主动攻击:对获取到的标签,在实验室环境下通过物理手段去除标签芯片的外部封装,使用微探针进行敏感信号获取,从而进行重构标签的复杂性攻击;通过软件手段,利用微处理器上的通用通信接口,不断扫描,探询标签与读写器间的安全认证协议与加密算法以及对应存在的弱点,进行篡改标签内容的攻击;通过发送大量干扰广播以阻塞信道或使用其他手段,使区域内工作环境异常,阅读器无法正常工作,进行业务拒绝式攻击等。

被动攻击:采用窃听技术,通过分析正常工作下微处理器产生的各种电磁信号,获得标签和识读器之间或与其他RFID 设备之间的通信信息 (由于接收到阅读器传来的密码不正确时标签的能耗会上升,功率消耗模式可被加以分析以确定何时标签接收了正确和不正确的密码位)。

3 RFID 安全认证与读写安全设计实现

RFID 的安全认证主要提供对信息来源方的鉴别、 保证信息的完整和不可否认等功能,而这三种功能都需要通过数字签名实现[6]。数字签名的基本过程为:发送方将明文用相关算法获得数字摘要,用签名私钥对摘要进行加密得到数字签名,发送方将明文与数字签名一起使用对称加密发送给接收方;接收方先使用秘钥解密,然后使用发送方公钥解密数字签名,则验证发送方真实身份并得出数字摘要;接收方将明文采用同样算法计算出新的数字摘要,对比两个数字摘要,相同则证明内容未被篡改。 该密钥系统既能发挥对称加密算法加密效率高、速度快,安全性好的优点;又能发挥非对称加密算法密钥管理方便、安全性高、可实现数字签名的优点;各取所长,使得RFID 系统更安全、快速,运行代价更低。

其中数字签名的原理简述为:用非对称算法的私钥加密的内容只能用对应的公钥来解密。而私钥是不公开的。因此,如果一段信息能用某个人的公钥解密,那么它一定是用此人的私钥加密的。 它和物理的签名一样,是很难伪造的。根据项目实际需求,选取SSL 作为电力资产管理主站与RFID 终端双向认证技术:通过建立HTTPS 信息安全通道保证资产数据传输的安全性和通讯双方身份的真实性;采用数字证书及数字签名进行双端实体验证, 用非对称加密算法进行秘钥协商,用对称加密算法将数据加密后进行传输以保证数据的保密性,验证数据在传输过程中是否被篡改和伪造,从而为敏感数据的传输提供了一种安全保障手段。主要提供以下三种服务:RFID 终端入网注册成功后自动安装安全证书, 在和管理主站在握手交换数据时进行数字认证,需要持有正确的秘钥和安全证书才可以进行握手通信;在传输过程中对资产数据进行加密以防止数据中途被窃取; 维护字长数据的完整性,确保在传输过程中不被改变。

使用TOMCAT+SSL 双向认证进行模拟试验。首先,客户端将要认证服务器的安全性,确保访问的是正确的服务器,而非假冒的钓鱼网站;其次,服务器也要认证客户端的安全性,只有那些拥有服务器授权证书的客户端才可以访问。 设计实现步骤如下:

1)在E 盘下建立目录:mykeys

2)启动命令行,并转到E:/mykeys

a)创建服务器密钥,其密钥库为E:/mykeys/server.ks,keypass和storepass 需要保持一致,它们分别代表密钥密码和密钥库密码,在CN=localhost中,localhost 表示要配置SSL 的主机名,不能随意指定

E:/mykeys >keytool -genkey -v -alias serverKey -dname "CN =localhost" -keyalg RSA -keypass zch123 -keystore server.ks -storepass zch123

b)创建客户端密钥,其密钥库为E:/mykeys/client.p12,这个密钥库的后缀名类型为PKCS12

E:/mykeys >keytool -genkey -v -alias clientKey -dname "CN =SomeOne" -keyalg RSA -keypass test123-keystore client.p12 -storepass test123-storetype PKCS12

c)将客户端密钥导出为证书文件

E:/mykeys >keytool -export -alias clientKey -file clientKey.cer -keystore client.p12 -storepass test123-storetype PKCS12

d) 将上述客户端密钥文件导入服务器证书库, 并设置为信任证书; E:/mykeys>keytool -import -v -alias clientKey -file clientKey.cer -keystore server.ks -storepass zch123

3)为了在本机浏览器中进行SSL 访问,双击E:/mykeys/client.p12,启动证书向导

a)要导入的文件文件名 E:/mykeys/client.p12

b)为私钥键入密码test123,并勾选:标志此密钥为可导出的

c)证书存储,选:将所有的证书放入下列存储区,然后,浏览-个人

d)打开IE,查看证书:工具-Internet 选项-内容-证书-个人,看到SomeOne 证书已被安装

4) 配 置TOMCAT 服 务 器, 以 支 持SSL 认 证, 编 辑 文 件:%tomcat_home%/conf/server.xml,下面这段配置代码原本是被屏蔽的,需要取消其屏蔽,并相应增加密钥库的配置,设置clientAuth="true" 用以启动双向认证,否则,只有客户端单向认证服务器

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"maxThreads="150" scheme="https" secure="true"

clientAuth="true" sslProtocol="TLS"

keystoreFile="E:/mykeys/server.ks" keystorePass="zch123"

truststoreFile="E:/mykeys/server.ks " truststorePass=" zch123" />

5)启动TOMCAT,在IE 浏览器中访问:https://localhost:8443/

a)弹出一个消息框,要客户端认证服务器,查看证书可看到服务器证书为localhost

b)页面出现,说明客户端被允许访问

6) 再次打开IE, 工具-Internet 选项-内容-证书-个人, 删除SomeOne 证书

再在IE 浏览器中访问:https://localhost:8443

7)再次重复3 步骤,之后再尝试访问

至此,在本机上SSL 双向配置已经成功,在另一台电脑来访问本机服务器,把E:/mykeys/client.p12 复制到该机器,然后执行3 步骤,将这个证书导入到该机器的IE 浏览器个人证书中, 密码为:test123;在这台电脑上访问时,要将localhost 修改为本机主机名或IP 地址

要使WEB 程序应用SSL 安全访问, 需在应用的web.xml 文件的<web-app></web-app>中加入如下配置

<login-config>

<! -- Authorization setting for SSL -->

<auth-method>CLIENT-CERT</auth-method>

<realm-name>Client Cert Users-only Area</realm-name>

</login-config>

<security-constraint>

<! -- Authorization setting for SSL -->

<web-resource-collection >

<web-resource-name >SSL</web-resource-name>

<url-pattern>/*</url-pattern>

</web-resource-collection>

<user-data-constraint>

<transport -guarantee >CONFIDENTIAL </transport -guarantee>

</user-data-constraint>

</security-constraint>

最后使用http://....:8080 来访问应用程序, 被重 定 向 为https://....8443 访问,此时应用已经强制使用SSL 安全访问层,表示双向认证已经成功。

秘钥协商选择RSA 非对称算法进行,具体设计实现步骤如下:

第一步,选择密钥长度为128、256、512 或者1024 比特,如下图所示:

第二步,随机选取两个大素数,如下图所示:

第三步,将两个大素数相乘运算得到一个大整数n,如下图所示:

第四步,随机选择一个公钥e,根据公式ed=1mod(p-1)(q-1),计算出私钥d,如下图:

第五步,输入要加密的明文,并得到对应ASCII 码,如下图所示

第六步,将明文分块,如下图所示:

第七步,根据公式c=m^emodn,计算出密文c,如下图所示:

第八步,根据公式m=c^dmodn,解密出明文m,如下图所示:

在数据传输过程中使用AES 对称加密算法进行, 具体设计实现步骤如下:

第一步,输入需要加密的明文,转换为对应的ASCII 码,如下图所示:

第二步,选择加密秘钥,将秘钥转换为4×4 字节矩阵,再经过矩阵行列变换与异或等运算生成第一个轮秘钥, 然后进行11 轮子密钥生成,如下图所示:

第三步,将第一步中需要加密的明文转换为4X4 的矩阵,依次使用子秘钥进行矩阵运算,最终得到加密后的密文,如下图所示:

4 结语

RFID 作为物联网的重要核心技术, 在许多行业有着广阔的发展前景,受到越来越多人的关注,其中RFID 系统的安全问题又作为最主要的关注点。 本文首先介绍了RFID 概述,进而研究了RFID 存在的常见安全问题,最后结合电力资产管理系统中RFID 实际应用,设计实现了SSL 双向认证,非对称RSA 算法协商秘钥,对称AES 算法加密传输数据。 为RFID 应用于电力行业奠定了一定基础,但有关认证与加密算法在生产环境下运行效率问题还需进一步研究改善。

[1]沈祥金.深度理解物联网[J].电子商务,2011(9).

[2]Eun K R,Takagi TA. hybrid approach for privacy-preserving RFID tags[J].Wireless Communications Computer Standards& Interfaces,2009.

[3]富春岩,周虹,等.RFID 系统的安全隐患问题综述[J].电脑知识与技术,2013(15).

[4]胡国胜,方龙雄.RFID 系统安全分析[J].网络安全技术与应用,2013(2).

[5]何伟刚.物联网中RFID 节点通信安全研究[J].信息安全与技术,2011(7).

[6]张文丽,赵峰.RFID 双向安全认证协议的设计及分析[J].智能计算机与应用,2013(5).

猜你喜欢

秘钥数字签名阅读器
基于反向权重的阅读器防碰撞算法
ETC秘钥国产化升级改造方案设计与实现
浅析计算机安全防护中数字签名技术的应用
干细胞开启未来大健康的“秘钥” 专家与媒体面对面活动走进中源协和—山西省干细胞基因工程有限公司
一种高效的RFID系统冗余阅读器消除算法
基于数字签名的QR码水印认证系统
基于Unity 3D的产品秘钥二维码实现
数字签名简述
一种RFID网络系统中消除冗余阅读器的高效算法
基于二元多项式与中国剩余定理的多秘密分享方案