提高射频识别系统安全性的通信方法
技术领域
本发明涉及一种射频识别技术,特别是涉及一种提高射频识别系统安全性的通信方法。
背景技术
随着射频识别系统在实际应用中的范围和规模的不断扩大,其数据安全性越来越引起业界的重视。目前,为了提高射频识别系统的安全性,各种有效的方法被提出,最典型的为安全认证和数据加密的方法。通过安全认证的过程,标签和读写器之间可以进行单向或者多向认证,防止不匹配的读写器或者标签窃取数据来破坏整个系统的安全性。而数据加密的方法则是采用加密算法对读写器和标签之间的数据通信进行加密,使得数据以密文的形式进行传播,从而提高整个系统的安全性。
然而,这两种方法只能在一定程度上提高系统的安全性,密钥(key)是加密算法的核心之一,一旦密钥泄露将会对系统的安全性带来极大的威胁。由于加密算法在射频识别系统中应用的特殊性,加密算法的复杂度不能太大,因此密钥更新的方法被提出。密钥更新的主要思想在于读写器通过发送密钥更新相关的指令来更改密钥的内容。为了保证每个标签密钥的独特性,密钥的产生基于标签某项参数,比如TID(标签身份)。首先,读写器通过发送读取该项参数的相关命令来获取该项参数,用这个参数来形成相应的密钥。为了增加密钥的数量,同时保证读写器和标签密钥的同步,需要索引来记录密钥更新的进度。标签通过索引和参数,采用一定的算法来产生新的密钥。为了减少操作时间和运算功耗,读写器不需要像标签一样采用相同的算法来产生密钥,而是在获得索引和参数后,用它们在标签密钥列表中寻找相应的新密钥,通过这个新密钥来进行后面的操作。密钥更新使得标签的密钥能够在读写器的控制下发生变化,从而使得攻击者很难对系统进行攻击,从而提高系统的安全性。
请参阅图1,为现有技术中射频识别标签的状态转换示意图,如图所示,未销毁标签上电后经过盘点和安全认证过程进入到开放状态,不需要进行安全认证的标签经过盘点过程直接到达开放状态,此时标签能进行正常的读写擦除等功能。开放状态下的标签经过访问过程能够进入安全状态。根据各种标签功能的差异,标签支持在开放和安全状态或者只有在安全状态下能进行密钥更新操作,从而提高RFID系统的安全性。
但是,上述方法的应用也有很大的局限性。比如在标签数目很多的复杂射频识别系统中,标签数目的庞大使得相应的密钥数量很多,读写器通过参数和索引来获得相应密钥的时间比较长,也使得存储密钥的存储资源非常大。例如,一个射频识别系统中包含一百万个不同的标签,每个标签可用的密钥有100个,这样系统就需要记住一亿个标签密钥,如果标签密钥长度为128bits,则系统仅仅用来存储标签密钥的存储需求就有12.8G bits;同时,为了保证读写器和标签密钥的同步,索引被用来表明密钥更新的进度。而索引具有周期性,密钥同时也具有周期性,索引和密钥的周期性给射频识别系统带来了很大的安全隐患,攻击者只要成功破译这些周期性的密钥和加密算法,就能对整个系统的进行有效地攻击。
因而,如何提供一种密钥更新技术,已解决现有技术中数据库存储的密钥数量太大,存储空间要求很大,存取密钥所需时间较长,以及因密钥具有周期性而带来的系统安全性不高等问题,实已成为本领域从业者亟待解决的技术问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种提高射频识别系统安全性的通信方法,用于解决现有技术中数据库存储的密钥数量太大,存取密钥所需时间较长以及因密钥具有周期性而带来的系统安全性不高等问题。
为实现上述目的及其他相关目的,本发明提供一种提高射频识别系统安全性的通信方法,至少包括以下步骤:
1)在标签的物理存储空间中增设一高权限密码空间,并在该高权限密码空间中预存高权限访问密码;以及在读写器的映射规则中增设用以发送预设格式指令的驱动程式,并与所述标签相映射,以令所述标签接收到该预设格式指令时予以识别并响应;
2)在所述标签经由盘点及开放过程后,所述读写器发送一随机数获取指令;
3)所述标签接收到该随机数获取指令后反馈一随机数给所述读写器;
4)所述读写器接收到该随机数后,发送一包含有该随机数及密钥的异或结果的预设格式指令给所述标签;
5)所述标签接收到该预设格式指令中的异或结果后,依据所述随机数解密该密钥,并将解出的密钥与预存在所述高权限密码空间中的高权限访问密码进行比较,若相同,则进入高权限状态,若否,则转回到盘点过程中的仲裁状态;
6)所述标签进入高权限状态后,所述读写器发送包含有新密钥长度和内容的密钥更新指令给所述标签;
7)所述标签接收到该密钥更新指令后,依据新密钥长度和内容对密钥进行更新并存储至所述高权限密码空间中以替换预存的高权限访问密码;
8)销毁所述标签。
在本发明提高射频识别系统安全性的通信方法中,所述高权限密码的总长度为16bits的倍数,在具体的实施过程中,所述高权限密码长度16bits的倍数等于所述步骤1)至步骤4)循环的次数。
在本发明提高射频识别系统安全性的通信方法中,所述预设格式指令为中的预设格式为前导码分隔符的宽度、Tari参数的宽度、或TRcal参数的宽度中的至少一种。所述预设格式指令中前导码分隔符的宽度≠12.5us。具体地,所述预设格式指令中前导码的分隔符宽度为19us。
在本发明提高射频识别系统安全性的通信方法的步骤2)中,在所述标签经由盘点及开放过程后,还需再通过一安全访问过程进入安全状态后,再由所述读写器发送一随机数获取指令,请求进入高权限访问过程。
如上所述,本发明的提高射频识别系统安全性的通信方法,具有以下有益效果:密钥的设定可以根据用户的需要选择长度和内容,具有很强的随机性,因此安全性更高。在高权限状态下,一旦密钥被设定,读写器开始更新密钥,只需要一个密钥的存储空间来存储一个标签的密钥,因此密钥存储占据的资源少,存取速度也快。在本发明中,如果密钥的长度最大长度为128bits,一个标签占用的密钥存储资源最大为128bits,假设系统中标签的数目为100万,数据库用于密钥存储的资源最大为128M bits。相对现有的在技术,本发明节省了至少99%的密钥存储资源,寻址速度也会随之增加。
附图说明
图1为现有技术中射频识别标签的状态转换示意图。
图2显示为本发明射频识别标签在实施例一中的状态转换示意图。
图3显示为本发明提高射频识别系统安全性的通信方法的流程图。
图4显示为本发明的通信方法中请求高权限访问过程的示意图。
图5显示为本发明中预设格式指令的前导码格式示意图。
图6显示为本发明射频识别标签在实施例二中的状态转换示意图。
图7显示为本发明射频识别标签在实施例三中的状态转换示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
请参阅图2至图7。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
实施例一
本发明提供一种提高射频识别系统安全性的通信方法,所述射频识别系统至少包括标签、与所述标签进行通信的读写器、以及对读写器进行控制并处理标签的数据信息的应用系统(未图示)。在本实施例中,请参阅图2至图5,本发明的提高射频识别系统安全性的通信方法增加了高权限访问过程和高权限状态,在开放状态下的标签能够通过高权限访问过程进入到高权限状态,在此状态下,读写器可以修改密钥的内容和长度,从而提高系统的安全性,如图3所示,所述的提高射频识别系统安全性的通信方法至少包括以下步骤:
如图3及图4所示,首先执行步骤S101,在标签的物理存储空间中增设一高权限密码空间,并在该高权限密码空间中预存高权限访问密码;以及在读写器的映射规则中增设用以发送预设格式指令的驱动程式,并与所述标签相映射,以令所述标签接收到该预设格式指令时予以识别并响应,换言之,就是说,所述读写器发送预设格式指令可以被标签识别,在具体的实施例中,所述高权限密码的总长度为16bits的倍数,在本实施例中,所述高权限密码的总长度暂以48bits为例进行说明。
在具体的实施例中,所述预设格式指令为中的预设格式为前导码(preamble)分隔符(delimiter)的宽度、Tari参数的宽度、或TRcal参数的宽度中的至少一种。所述预设格式指令中前导码分隔符的宽度≠12.5us。在本实施例中,暂以预设格式为前导码分隔符的宽度的特殊设计为例进行说明,请参阅图5,如图所示,图中B部分所示的预设格式指令中前导码的分隔符宽度为19us,不同于图中A部分所示的预设格式指令中前导码的分隔符宽度为12.5us(于图中A部分所示的预设格式指令中前导码的分隔符宽度为常见的前导码格式),在实际的实施过程中,所述读写器的特殊性在于它能发送特殊指令。特殊指令的特殊性体现在前导码(preamble)格式的特殊,B部分所示的分隔符(delimiter)的宽度为19us,区别于A部分所示的12.5us,标签在检测到分隔符长度时就能区别该时刻进行一般的指令操作还是进行高权限访问过程。
在步骤S102中,在所述标签经由盘点(inventory)及开放(open)过程后,所述读写器发送一随机数获取指令,在本实施例中,所述读写器先发送随机数获取指令(Req_RN)。接着执行步骤S103。
在步骤S103中,所述标签接收到该随机数获取指令后反馈一随机数给所述读写器,即所述标签接收到指令以后返回随机数RN16,接着执行步骤S104。
在步骤S104中,所述读写器接收到该随机数后,发送一包含有该随机数及密钥的异或结果的预设格式指令给所述标签,即所述读写器接收到RN16以后,发送高权限访问指令,指令中包括随机数和密钥的异或结果在具体的实施过程中,根据高权限密码的总长度,发送多次高权限访问指令。如果高权限访问指令长度为48bits,则需要发送3次,如果长度为64bits,则需要发送4次。在本实施例中,由于所述高权限密码的总长度为48bits,则需要由所述读写器发送3次高权限访问指令,也就是说,将步骤S102至步骤S104循环3次后再转至步骤S105(呈如图4所示)。
在步骤S105中,所述标签接收到该预设格式指令中的异或结果后,依据所述随机数解密该密钥,并将解出的密钥与预存在所述高权限密码空间中的高权限访问密码进行比较,若相同,则进入高权限状态,若否,则转回到盘点过程中的仲裁状态,换言之,在所述标签接收到异或结果以后,用上次生成的RN16解密出密钥(passwd),将解出的密钥与实际存在标签存储器相应位置的高权限访问密码进行比较,如果相同则进入高权限状态,否则,标签跳转回盘点过程中的仲裁状态。也就是说,经过多次高权限访问指令的密钥判断,如果密钥正确,标签进入高权限状态,否则,标签返回到盘点过程中的仲裁状态。接着执行步骤S106。
在步骤S106中,所述标签进入高权限状态后,所述读写器发送包含有新密钥长度和内容的密钥更新指令给所述标签;接着执行步骤S107。
在步骤S107中,所述标签接收到该密钥更新指令后,依据新密钥长度和内容对密钥进行更新并存储至所述高权限密码空间中以替换预存的高权限访问密码;接着执行步骤S108。
在步骤S108中,销毁(kill)所述标签。
由于标签进入到高权限状态以后,读写器发送密钥更新指令,指令包含新密钥的长度和内容,标签接受到新密钥信息以后,将新密钥保存在存储器的相应位置。因此,经过高权限访问过程后,用户可以对密钥的长度和内容进行修改,增强了密钥的随机性;与此同时,存储标签密钥的数据库只用存储该标签的新密钥,不需要将这个标签所有的周期性的密钥全部存储起来,节省了存储资源。
实施例二
在本实施例中,请参阅图6,显示为标签只有在安全状态下才能通过高权限访问过程进入高权限状态,即开放(open)状态下的标签必须经过有效的访问过程进入安全(secure)状态,在安全状态下才能通过高权限访问过程进入到高权限状态。如图所示,本发明的提高射频识别系统安全性的通信方法相较于实施例一增设了标签只有在安全状态下才能通过高权限访问过程进入高权限状态,因为标签从开放状态到安全状态需要通过访问过程进行访问密钥的检测,所以图6的高权限状态安全性最高。在具体的实施过程中,是在所述步骤S102中,在所述标签经由盘点及开放过程后,还需再通过一安全访问过程进入安全状态后,再由所述读写器发送一随机数获取指令,请求进入高权限访问过程,在通过高权限访问的状态下,读写器可以修改密钥的内容和长度,从而提高系统的安全性。需要说明的是,所述标签请求进入高权限访问过程与实施例一中描述的过程相同,在此不再予以赘述。
实施例三
在本实施例中,请参阅图7,显示为在开放和安全状态下的标签均能够通过安全性更高的高权限访问过程进入到高权限状态,在通过高权限访问的状态下,读写器可以修改密钥的内容和长度,从而提高系统的安全性。换言之,在开放(open)或安全(secure)状态下,读写器和标签经过高权限的访问过程使得标签进入到高权限的状态,在此状态下,读写器可以通过发送密钥修改相关指令的方法对密钥的内容和长度进行修改,标签返回修改成功的信息后,新密钥取代旧密钥,存储在相应的密钥存放位置。需要说明的是,所述标签请求进入高权限访问过程与实施例一及实施例二中描述的过程相同,在此不再予以赘述。
综上所述,本发明的提高射频识别系统安全性的通信方法,具有以下有益效果:密钥的设定可以根据用户的需要选择长度和内容,具有很强的随机性,因此安全性更高。在高权限状态下,一旦密钥被设定,读写器开始更新密钥,只需要一个密钥的存储空间来存储一个标签的密钥,因此密钥存储占据的资源少,存取速度也快。在本发明中,如果密钥的长度最大长度为128bits,一个标签占用的密钥存储资源最大为128bits,假设系统中标签的数目为100万,数据库用于密钥存储的资源最大为128M bits。相对现有的在技术,本发明节省了至少99%的密钥存储资源,寻址速度也会随之增加。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。