一种标签数据加密方法及标签数据解密方法与流程

文档序号:12809088阅读:581来源:国知局
一种标签数据加密方法及标签数据解密方法与流程

本发明涉及数据安全领域,具体地,涉及一种标签数据加密方法及标签数据解密方法。



背景技术:

射频识别(rfid)技术是一种无线通信技术,可以通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械接触或者光学接触。rfid技术最重要的优点是非接触识别,它能穿透雪、雾、冰、涂料、尘垢和条形码无法使用的恶劣环境阅读标签,并且阅读速度极快,大多数情况下不到100毫秒。除此之外,其还有数据容量大、使用寿命长、标签数据可动态更改等优点。因此电子标签被广泛应用于门禁识别、电子溯源、食品溯源、产品防伪等领域。

在被广泛应用的同时,与标签相关的安全隐患也随之产生。目前,安全问题已成为制约rfid技术推广应用的主要因素之一,其中,隐私数据保护是rfid发展过程中面临的重大挑战性向题。

越来越多的商家和用户担心rfid系统的安全问题和隐私保护问题,即在使用rfid系统过程中如何确保其安全性和隐私性,而不至于导致个人信息、业务信息和财产等的丢失或被他人盗用。可以设想,如果标签受到攻击,导致私数据泄露,很有可能产生不可估量的损失。然而标签是rfid系统中更容易暴露在被攻击环境中的,所以对标签数据的保护是rfid安全的一个重要方向。

rfid标签架构一般分为两种。一种rfid标签架构使用专用的标签芯片,其内部集成了专用的标签算法,并且将存储区域划分为多个部分,包括 密钥区、权限控制区和普通存储区,其中的敏感区使用硬件保护,因而无法直接读取密钥数据,密钥只在处理器内部进行运算和调用,保证了数据安全。这种rfid标签架构一般用在对信息安全要求比较高的领域。另一种rfid标签架构仅采用一个通用处理器和一个存储芯片(简称cpu+flash),在没有硬件的数据保护措施,只有标签id以一次性可编程(otp)的方式写入不可修改,一般用在数据信息不太敏感的领域。

第一种rfid标签的架构虽然安全性较高,但是需要专用的标签芯片和硬件安全模块,因而增加了标签的复杂性和成本;第二种rfid标签虽然结构简单,但是安全性较低。



技术实现要素:

本发明的目的是提供一种标签数据加密方法及标签数据解密方法,该标签数据加密方法及标签数据解密方法即降低了标签的复杂性和成本又保证了标签的安全性。

为了实现上述目的,本发明提供一种标签数据加密方法,所述标签数据加密方法包括:按照预定长度将数据划分为至少一个数据区;通过保护密钥k1对所述数据区的数据进行加密;以及根据映射表对经加密的数据区的数据进行映射以形成数据密文。

优选地,所述根据映射表对经加密的数据区的数据进行映射以形成数据密文包括:根据映射表m2对经加密的数据区的数据进行映射;以及根据映射表m1对经过所述映射表m2映射的数据区的数据进行映射。

优选地,所述根据映射表m2对经加密的数据区的数据进行映射包括:按照预定比特映射对所述经加密的数据区的数据进行映射;和/或所述根据映射表m1对经过所述映射表m2映射的数据区的数据进行映射包括:按照预定区映射对所述经过所述映射表m2映射的数据区的数据进行映射。

优选地,所述标签数据加密方法还包括以下至少一者:根据第一随机因子r1生成所述映射表m1;以及根据第二随机因子r2生成所述映射表m2。

优选地,以所述标签的id为基础因子生成所述第一随机因子r1和所述第二随机因子r2。

优选地,所述预定长度为16字节。

相应地,一种标签数据解密方法,所述标签数据解密方法包括:按照预定长度将数据划分为至少一个数据区;根据用于加密的映射表对所述数据区的数据进行逆映射;以及通过保护密钥k1对经过逆映射的所述数据区的数据进行解密。

优选地,所述根据用于加密的映射表对所述数据区的数据进行逆映射包括:根据用于加密的映射表m1对所述数据区的数据进行逆映射;以及根据用于加密的映射表m2对根据所述映射表m1逆映射的所述数据区的数据进行逆映射。

优选地,所述根据用于加密的映射表m1对所述数据区的数据进行逆映射包括:按照用于加密的预定区映射对所述数据区的数据进行逆映射。

优选地,所述根据用于加密的映射表m2对根据所述映射表m1逆映射的所述数据区的数据进行逆映射包括:按照用于加密的预定比特映射对根据所述映射表m1逆映射的所述数据区的数据进行逆映射。

通过上述技术方案,通过保护密钥k1对划分的数据区的数据进行加密,然后根据映射表对经加密的数据区的数据进行映射以形成数据密文,如此即降低了标签的复杂性和成本又保证了标签的安全性。

本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与 下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:

图1是根据本发明提供的标签数据加密方法的流程图;

图2给出了根据本发明一种实施方式提供的按照预定比特映射的示意图;

图3给出了根据本发明一种实施方式提供的按照预定区映射的示意图;

图4是根据本发明一种实施方式提供的标签数据加密方法的流程图;

图5是根据本发明提供的标签数据解密方法的流程图;以及

图6是根据本发明一种实施方式提供的标签数据解密方法的流程图。

具体实施方式

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

图1是根据本发明提供的标签数据加密方法的流程图。如图1所示,在步骤10处,按照预定长度(例如,16字节)将数据划分为至少一个数据区;在步骤11处,通过保护密钥k1对所述数据区的数据进行加密;以及在步骤12处,根据映射表对经加密的数据区的数据进行映射以形成数据密文。如此即降低了标签的复杂性和成本又保证了标签的安全性。

其中,所述根据映射表对经加密的数据区的数据进行映射以形成数据密文包括:根据映射表m2对经加密的数据区的数据进行映射;以及根据映射表m1对经过所述映射表m2映射的数据区的数据进行映射。通过映射表m1和映射表m2的双重混淆,极大地降低了暴力破解成功的可能性。

所述根据映射表m2对经加密的数据区的数据进行映射包括:按照预定比特映射对所述经加密的数据区的数据进行映射,例如将第一比特的数据映 射至第八比特,第二比特的数据映射至第三比特……,当然本发明并不限制于此,本领域技术人员可以随意设置映射关系。图2给出了根据本发明一种实施方式提供的按照预定比特映射的示意图,如图2所示,按照预定比特映射将映射前比特的数据映射至相应的映射后比特中,应该理解的是,本领域技术人员可以按照任意设定的比特映射来完成本发明。和/或所述根据映射表m1对经过所述映射表m2映射的数据区的数据进行映射包括:按照预定区映射对所述经过所述映射表m2映射的数据区的数据进行映射,例如将地址1中的数据映射至地址4,地址2中的数据映射至地址11中……,,当然本发明并不限制于此,本领域技术人员可以随意设置映射关系。图3给出了根据本发明一种实施方式提供的按照预定区映射的示意图,如图3所示,按照预定区映射将映射前数据区的数据映射至相应的映射后数据区的数据中,应该理解的是,本领域技术人员可以按照任意设定的比特映射来完成本发明。

其中,所述标签数据加密方法还包括以下至少一者:根据第一随机因子r1生成所述映射表m1;以及根据第二随机因子r2生成所述映射表m2。可以以所述标签的id为基础因子生成所述第一随机因子r1和所述第二随机因子r2。

本发明提供的标签加密方法可以使用在具有处理器(cpu)和存储器(flash)的标签中,因而能够在保持通用性好、选择范围大、使用灵活、存储量大的基础上,保证了标签数据的安全性。在这种rfid标签的架构中,cpu负责标签功能的具体实现和加解密算法,而在flash部分存储所有的数据,包括敏感的密钥等数据。在逻辑层面,可以将存储区域分为密钥区、权限控制区、普通存储区,其中密钥区存储的是各个区域加解密的密钥和通信流程中所需要的密钥,而权限控制区是具有相应权限才能进入的加密存储区。密钥区和权限控制区的位置相对固定,如果不使用物理防护,很可能被暴力读出所有原始数据,最终会被破解得到敏感信息。然而,采用本发明提 供的加密方法和解密方法则完全可以极大地提高暴力破解的难度。

以下经通过具体实施方式来详细描述本发明,但是应该注意的是,本发明并不限制于此。

在标签出厂的时候可以不内置密钥,在初始发行的时候,随机生成数据保护密钥k1;并以标签id为基础因子(标签id唯一不重复),生成第一随机因子r1和第二随机因子r2,并根据第一随机因子r1生成数据映射表m1,根据第二随机因子r2生成数据映射表m2。映射表m1是由混前数据区a(n)(映射前数据区)和混后数据区a’(n)(映射后数据区)组成,以每个地址存放1k数据为准,n的长度代表了密文极限值。

映射表m1可以称为是一级映射表,映射表m2可以称为是二级映射表。整个存储区按照存储器特性进行分区,一般来说每16字节划分为一个区(sector),n个sector组成整个存储区。映射表m1是虚拟区到物理区的映射。m2表是1个sector内虚拟bit到物理bit的映射。映射表基于随机数生成。当然,可以将上述所划分的区设定为相应的地址,即一个区对应一个地址。

以下将参考图4详细描述本发明的标签数据加密流程。

如图4所示,在步骤41处,随机生成保护密钥k1,以标签id为基础因子生成第一随机因子r1和第二随机因子r2,然后根据r1生成映射表m1并根据r2生成映射表m2;

在步骤42处,按照16字节将标签数据划分为多个数据区d1、d1至dn;

在步骤43处,利用保护密钥对各个数据区d1、d1至dn的数据进行加密,获得e1=k1(d1),e2=k1(d2),en=k1(dn),并获得加密后的总数据e=e1+e2+……+en;

在步骤44处,判断是否所有数据区的数据加密成功,如果成功则转至步骤45;

在步骤45处,根据映射表m2对e1至en进行映射,在该实施方式中,每个数据区为16字节,128位,按照映射表m2将这128位数据进行混淆,获得映射后的数据e1'、e2'……en',如果映射成功,则转至步骤46处;

在步骤46处,根据映射表m1对e1'、e2'……en'进行映射,将各数据区进行混淆;

在步骤47处,将最终获得的数据写入物理层,完成标签数据加密。

如此,标签数据经过加密,然后经过私有映射表进行两次映射,因而暴力破解成功的可能性会降的非常低。另外,应该注意的是,如果标签数据的长度不是预定长度的整数倍,在加密过程中,可以将其补齐,并约定所补充的数据为无效数据,以便解密后可以将所补充的数据丢弃。

相应地,与上述标签数据加密方法相对应,本发明还提供一种标签数据解密方法,图5是根据本发明提供的标签数据解密方法的流程图。如图5所示,在步骤50处,按照预定长度将数据划分为至少一个数据区;在步骤51处,根据用于加密的映射表对所述数据区的数据进行逆映射;以及在步骤52处,通过保护密钥k1对经过逆映射的所述数据区的数据进行解密。

以下将参考图6通过具体实施方式来详细描述本发明,但是应该注意的是本发明并不限制于此。

图6是根据本发明一种实施方式提供的标签数据解密方法的流程图。

如图6所示,在步骤61处,将读取的标签数据按照16字节划分为多个数据区;

在步骤62处,获取映射表m1、映射表m2、保护密钥k1;

在步骤63处,根据用于加密的映射表m1对所述数据区的数据进行逆映射,例如按照用于加密的预定区映射对所述数据区的数据进行逆映射;

在步骤64处,根据用于加密的映射表m2对根据所述映射表m1逆映射的所述数据区的数据进行逆映射,例如,按照用于加密的预定比特映射对 根据所述映射表m1逆映射的所述数据区的数据进行逆映射,如果所有数据区的数据逆映射成功,则转至步骤65处;

在步骤65处,通过保护密钥k1对经过逆映射的所述数据区的数据进行解密,在所有数据区的数据解密成功后,完成数据的还原。

为了更大限度保证数据的安全性,可以设置保护密钥k1的有效期,临近到期时会生成新的保护密钥k2,同时提示更换保护密钥,这时可以将使用保护密钥k1加密的数据重新备份并更换保护密钥。更换保护密钥的周期可以根据数据的敏感性进行更改。

本发明提供的标签数据加解密方法可以在使用普通处理器和存储器搭建的标签的情况下,使用私有算法对数据进行加解密,并在存储方面使用多重映射的方法,对密文使用私有映射表表进行了打散和混淆,有效的降低了暴力攻击的成功率。在标签初始发行的时候,使用随机因子,可以有效防止攻击,使得标签具有耦合性低、易用性好、安全性高的优势。

以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。

此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1