首页> 中国专利> RFID系统需要可信第三方的多所有者标签所有权转换方法

RFID系统需要可信第三方的多所有者标签所有权转换方法

摘要

本发明公开了一种RFID系统中需要可信第三方的多所有者标签所有权转换方法,多个原所有者通过安全的信道将子密钥发送给可信第三方,可信第三方利用所有权转换判断方法可以判断是否同意进行所有权转换。只有当同意进行所有权转换的所有者所占的份额达到阈值threshold时,才能够进行标签所有权转换。可信第三方生成新的所有权转换密钥,通过安全的信道将其发送给新所有者,并将其加密后发送给标签,攻击者无法获取标签与新所有者共享的所有权转换密钥,安全地实现具有多个所有者的标签的所有权转换。本发明标签的计算量较小。

著录项

  • 公开/公告号CN105160279A

    专利类型发明专利

  • 公开/公告日2015-12-16

    原文格式PDF

  • 申请/专利权人 郑州轻工业学院;

    申请/专利号CN201510481049.8

  • 申请日2015-08-07

  • 分类号G06K7/00;H04L9/32;

  • 代理机构郑州优盾知识产权代理有限公司;

  • 代理人张绍琳

  • 地址 450002 河南省郑州市东风路5号

  • 入库时间 2023-12-18 12:59:36

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-07-23

    未缴年费专利权终止 IPC(主分类):G06K7/00 授权公告日:20170714 终止日期:20180807 申请日:20150807

    专利权的终止

  • 2017-07-14

    授权

    授权

  • 2017-07-07

    著录事项变更 IPC(主分类):G06K7/00 变更前: 变更后: 申请日:20150807

    著录事项变更

  • 2016-01-13

    实质审查的生效 IPC(主分类):G06K7/00 申请日:20150807

    实质审查的生效

  • 2015-12-16

    公开

    公开

说明书

技术领域

本发明涉及信息安全的技术领域,具体涉及一种RFID系统需要可信第三方的多所有者标签所有权转换方法。

背景技术

无线射频识别(RadioFrequencyIdentification,RFID)是一种无需接触即可自动识别物品的技术,多用于物流管理和访问控制等领域。RFID系统一般由标签、读写器和后端数据库组成。物品在流通过程中,其所有者可以利用RFID技术通过附在物品上的标签识别该物品。该所有者与标签共享同一个密钥,所有者使用该密钥对标签进行认证,进而识别该物品,通常称该所有者拥有标签的所有权。当物品的所有权由原来的所有者交给新的所有者时,需要将标签的所有权也交给新所有者,原所有者不再具有对标签的所有权,不能通过访问标签来识别物品。原所有者将标签的所有权交给新所有者,进行标签所有权转换。标签与新所有者协商出新的共享密钥,新所有者可以与标签进行认证,获取了对标签的所有权。而标签与原所有者的共享密钥失效,原所有者不能使用该共享密钥对标签进行认证,失去了对标签的所有权。通常称这一过程为标签所有权转换。

目前,对于标签所有权转换方面的研究主要集中于具有单所有者标签的所有权转换,即物品的所有者只有一个,相应地,标签的所有者也只有一个,需要将标签的所有权从一个所有者转换给另一个所有者。然而,在一些应用场景中,物品可能会具有多个所有者,相应地,标签也可能会具有多个所有者,不同所有者拥有物品和标签的所有权的份额不同。在进行所有权转换时,需要一个或多个原所有者同意进行所有权转换,才能将标签的所有权交给新所有者。在所有权转换过程中,需要保护信息的安全性。由于标签自身计算资源有限,不能执行非常复杂的密码算法。因此,如何保护具有多个所有者的标签的所有权转换过程中信息的安全性,是一个亟待解决的问题。

发明内容

为了解决上述技术问题,本发明提供了一种RFID系统需要可信第三方的多所有者标签所有权转换方法,其计算量小,而且安全性较好。

为了达到上述目的,本发明的技术方案是:一种RFID系统需要可信第三方的多所有者标签所有权转换方法,步骤如下:一、初始化:标签中设有标签与所有者之间共享的认证密钥kau、所有权转换密钥kOT和标签身份识别码TIN;根据所有权转换密钥分割方法由可信第三方根据不同所有者所持有的标签所有权的份额对所有权转换密钥kOT进行分割,将其分割的不同的子密钥分配给相应的所有者;所有权转换阈值threshold

二、协议流程:

1)原所有者OOindex1生成随机数r1和所有权转换请求OORindex1,发送{OORindex1,IDOO-index1r1}给标签;其中,OORindex1为原所有者OOindex1要求标签进行所有权转换的请求,IDOO-index1为原所有者OOindex1的身份标识;

2)标签收到{OORindex1,IDOO-index1r1}后,生成随机数r2,计算H(OORindex1,IDOO-index1r1r2kau),并发送{OORindex1,IDOO-index1r1r2,H(OORindex1,IDOO-index1r1r2kau)}给原所有者OOindex1;其中,H(·)表示计算变量的Hash函数值,kau为标签与所有者之间共享的认证密钥;

3)原所有者OOindex1收到{OORindex1,IDOO-index1r1r2,H(OORindex1,IDOO-index1r1r2kau)}后,用自己存储的认证密钥k'au计算H(OORindex1,IDOO-index1r1r2k'au);若计算结果与收到的H(OORindex1,IDOO-index1r1r2kau)不相等,原所有者OOindex1无法确认标签的身份,协议终止;若计算结果与收到的H(OORindex1,IDOO-index1r1r2kau)相等,原所有者OOindex1通过对标签的认证,原所有者OOindex1将标签的身份标识和自己持有的子密钥{IDTkindex1}发送给可信第三方;

4)标签的其他原所有者OOindex2、OOindex3、……、OOindexn分别与标签执行上述步骤1)至步骤3),则可信第三方可收到原所有者OOindex2、OOindex3、……、OOindexn发来的子密钥kindex2kindex3、……、kindexnn为同意进行所有权转化的原所有者的个数;可信第三方根据收到的标签的身份标识IDT在自己的数据库中查找出对应的标签所有权转换密钥;可信第三方根据收到的原所有者发来的子密钥kindexii=1、2、……、n,采用所有权转换判断方法判断是否可以进行标签所有权转换;若不能进行标签所有权转换,则继续等待原所有者发来子密钥;若可以进行标签所有权转换,则可信第三方为标签生成新的所有权转换密钥kOT-new

5)可信第三方生成随机数r3,发送{OTRTTP,r3,H(OTRTTP,r3,TIN)}给标签;其中,OTRTTP为来自可信第三方的所有权转换请求,TIN为标签与可信第三方共享的标签身份识别码;

6)标签收到可信第三方发送的消息{OTRTTP,r3,H(OTRTTP,r3,TIN)}后,使用自己存储的标签身份识别码TIN'计算H(OTRTTP,r3,TIN'),将计算结果与收到的H(OTRTTP,r3,TIN)进行对比;若两者不一致,标签无法确认可信第三方的身份,协议终止;若两者一致,标签确认可信第三方的身份,通过对可信第三方的认证,标签生成随机数r4,计算H(OTRTTP,r3r4,TIN'),并发送{OTRTTP,r3r4,H(OTRTTP,r3r4,TIN')}给可信第三方;

7)可信第三方收到标签发来的消息{OTRTTP,r3r4,H(OTRTTP,r3r4,TIN')}后,用自己存储的标签身份识别码TIN计算H(OTRTTP,r3r4,TIN),将其与收到的H(OTRTTP,r3r4,TIN')进行对比;若两者不一致,可信第三方无法确认标签的身份,协议终止;若两者一致,可信第三方确认标签的身份,通过对标签的认证,可信第三方使用标签生成新的所有权转换密钥kOT-new计算H(r3r4,IDNO,TIN,kOT)⊕kOT-new和H(r3r4,IDNO,TIN,kOTkOT-new),发送{r3r4,IDNO,H(r3r4,IDNO,TIN,kOT)⊕kOT-new,H(r3r4,IDNO,TIN,kOTkOT-new)}给标签;

8)标签收到{r3r4,IDNO,H(r3r4,IDNO,TIN,kOT)⊕kOT-new,H(r3r4,IDNO,TIN,kOTkOT-new)}后,先用自己存储的标签身份识别码TIN'和所有权转换密钥k'OT计算H(r3r4,IDNO,TIN'k'OT),标签用自己存储的标签身份识别码TIN'和所有权转换密钥k'OT,以及计算出的k'OT-new计算H(r3r4,IDNO,TIN'k'OTk'OT-new),将计算结果与收到的H(r3r4,IDNO,TIN,kOTkOT-new)进行对比;若两者不相等,协议回到步骤5)执行;若两者相等,标签获得了正确的新的所有权转换密钥k'OT-new,标签计算H(r3r4,IDNO,TIN'k'OT-new),发送{r3r4,IDNO,H(r3r4,IDNO,TIN'k'OT-new)}给可信第三方;

9)可信第三方收到标签发来的消息{r3r4,IDNO,H(r3r4,IDNO,TIN'k'OT-new)}后,用自己存储的标签身份识别码TIN和新的所有权转换密钥kOT-new计算出H(r3r4,IDNO,TIN,kOT-new),并将该计算结果与收到的H(r3r4,IDNO,TIN'k'OT-new)进行对比;若两者不相等,协议回到步骤5)执行;若两者相等,可信第三方确定标签获得了正确的新的所有权转换密钥k'OT-new,可信第三方发送{OTSN,IDT,IDNOkOT-new}给新所有者NO;新所有者NO取得了所有权转换密钥kOT-new,获取了对标签的所有权,使用所有权转换密钥kOT-new与标签进行通信;其中,OTSN为所有权转换成功通知。

所述所有权转换密钥分割方法的实现方法为:设子密钥的基本长度值为balen,所有权转换密钥kOT的长度为slenslen大于等于100×balen;为所有权转换密钥kOT中的每一个比特进行编号,最左边的比特编号为1,从左往右每一个比特的编号依次为1,2,3,……,slen;可信第三方将标签的原所有者进行随机排序;若第一个所有者所拥有的标签的所有权份额为sh1%,可信第三方将所有权转换密钥kOT的第1至第balen×sh1位作为该所有者所拥有的的子密钥,该所有者的序号为1;若第二个所有者所拥有的标签的所有权份额为sh2%,可信第三方将所有权转换密钥kOT的第balen×sh1+1至第balen×sh1+1+balen×sh2-1位作为该所有者所拥有的的子密钥,该所有者的序号为balen×sh1+1;若第三个所有者所拥有的标签的所有权为份额sh3%,可信第三方将所有权转换密钥kOT的第balen×(sh1+sh2)+1至第balen×(sh1+sh2)+1+balen×sh3-1位作为该所有者所拥有的子密钥,该所有者的序号为balen×(sh1+sh2)+1;以此类推;其中,sh1sh2sh3……为大于等于1,小于等于100的正整数,且sh1+sh2+sh3+……=100。

所有权转换判断方法的实现方法是:可信第三方收到同意进行所有权转换的原所有者的子密钥之后,将每个同意进行所有权转换的原所有者的子密钥按照该原所有者的序号进行重组;将重组后的子密钥与自己存储的所有权转换密钥kOT进行对比,一致的比特数的比值与所有权转换阈值threshold相比较。

所有权转换判断方法的步骤为:可信第三方在自己的存储空间中划分出存储空间T-Space,从存储空间T-Space最左边开始,为每一比特进行编号,依次为1,2,3,……,slen;可信第三方按照序号依次将收到的子密钥放入存储空间T-Space中,若收到的子密钥不是连续的,则不同子密钥之间缺失的部分不存储任何数据;将收到的子密钥全部放入存储空间T-Space中,与自己存储的所有权转换密钥kOT进行对比,其中一致的有corlen比特;若corlen/slen的值大于等于所有权转换阈值threshold,则同意标签所有权转换;若corlen/slen的值小于所有权转换阈值threshold,则不可以进行所有权转换。

所述所有权转换阈值threshold由可信第三方添加进标签或用户根据实际需要设定。

所述所有权转换阈值threshold为0.5。

所述随机数r1r2r3r4、标签与所有者之间共享的认证密钥kau、原所有者持有的子密钥、子密钥基本长度值balen、原所有者与标签共享的所有权转换密钥kOT和新所有者与标签共享的新的所有权转换密钥kOT-new的长度不低于128比特。

所述随机数r1r2r3r4和、标签与所有者之间共享的认证密钥kau、原所有者持有的子密钥、所有权转换密钥kOT和新所有者与标签共享的新的所有权转换密钥kOT-new应满足下列条件:

(1)不能所有比特均为0或1,且0和1出现的概率应相等或接近;

(2)每个比特的值为0或1的概率应该是相等的。

本发明的有益效果包括:

1)为具有多个所有者的标签进行所有权转换

目前,对于标签所有权转换方面的研究大多集中于具有单所有者标签的所有权转换,即标签原本只有一个所有者,要将标签的所有权转换给另一个所有者。本发明所提出的技术方案能够进行具有多个所有者的标签的所有权转换。标签的多个原所有者将自己持有的子密钥发送给可信第三方,可信第三方通过所有权转换判断方法决定是否可以进行所有权转换。在确定可以进行所有权转换后,将所有权交给新所有者。只有当同意进行所有权转换的原所有者所持有的标签所有权的份额达到某个阈值时,才能将标签的所有权交给新所有者。

因此,本发明可以为具有多个所有者的标签进行所有权转换。

2)为多所有者标签所有权转换提供安全保护

在本发明中,多个原所有者通过安全的信道将子密钥发送给可信第三方,由可信第三方判断是否可以进行所有权转换。在此过程中,攻击者无法获取子密钥,也无法获取标签的所有权转换密钥。可信第三方生成新的所有权转换密钥后,通过安全的信道将其发送给新所有者,并将其加密后发送给标签。在整个所有权转换过程中,攻击者和原所有者都无法获取标签与新所有者共享的新的所有权转换密钥。

因此,本发明可以为具有多个所有者的标签的所有权转换提供安全保护。

3)标签计算量较小

RFID标签只具有非常有限的计算资源,不能执行复杂的密码算法。因此,标签的计算量对于协议的执行效率非常重要。在本发明中,标签只需要能执行Hash函数和异或运算,这两种计算的计算量都较小。其中,所有权转换密钥分割方法和所有权转换判断方法都由可信第三方执行,无需标签参与。

因此,本发明中标签的计算量较小。

附图说明

图1为本发明中所有权转换密钥分割方法示意图。

图2为本发明的通信协议流程图。

图3为本发明中异或运算的示意图。

具体实施方式

下面通过附图和实施例具体描述一下本发明。

1.初始化阶段

标签被生产出来时,与可信第三方(Trustedthirdparty,TTP)共享一个所有权转换密钥。若标签所附物品具有多个所有者,可信第三方根据多个所有者所持有的物品所有权的份额,为标签的每个所有者分配子密钥。不同的所有者所持有的份额不同,其所拥有的子密钥也不相同。拥有所有权份额较多的所有者持有的子密钥长度也较长。当可信第三方收到标签原所有者发来的子密钥时,可以使用所有权转换判断方法来判断是否可以进行标签所有权转换。只有当同意进行所有权转换的所有者所拥有的份额达到设定的阈值后,才可以进行标签所有权转换。

本发明中所用到的定义、变量及运算符号分别说明如下:

OOindex:序号为index的标签的原所有者。其中,index为标签的所有者的序号,由标签所有者拥有的子密钥在标签所有权转换密钥中的位置决定,slenindex≥1。

slen:标签所有权转换密钥的长度,单位为比特。

NO:标签的新所有者。

IDT:标签的身份标识,存储在标签、所有者和可信第三方中。

IDOO-index:标签原所有者OOindex的身份标识,存储在标签和原所有者中。

IDNO:新所有者的身份标识,存储在标签、新所有者和可信第三方中。

r1r2r3r4:标签、原所有者或新所有者生成的随机数。

kau:标签与所有者之间共享的认证密钥,该密钥用于标签与所有者之间的身份认证。在一个所有者中,kau是唯一的,不同的标签具有不同的kau

kindex:由原所有者OOindex持有的子密钥,当需要进行所有权转换时,将其发送给可信第三方。可信第三方根据所有权转换判断方法决定是否可以进行标签所有权转换。

kOT:可信第三方与标签共享的所有权转换密钥。在一个可信第三方中,kOT是唯一的,不同的标签具有不同的kOT

kOT-new:可信第三方与标签共享的新的所有权转换密钥。在一个可信第三方中,kOT-new是唯一的,不同的标签具有不同的kOT-new

TIN:由标签与可信第三方共享的标签身份识别码。在一个可信第三方中,TIN是唯一的,不同的标签具有不同的TIN。

threshold:进行所有权转换时的阈值,100%≥threshold≥0。只有当同意进行所有权转换的所有者所拥有的标签所有权的份额之和大于等于阈值时,才能进行所有权转换,将标签的所有权交给新的所有者。

sh%:所有者拥有的标签所有权的份额。

x,y:变量xy的串联。

xy:变量xy进行异或运算。

x/y:变量x除以变量y

H(x):计算变量x的Hash函数值,如MD5值。

标签在被生产出来后,其内部存储器中被写入了认证密钥kau、所有权转换密钥kOT和标签身份识别码TIN。本发明中的阈值threshold可以由可信第三方添加进标签内,用户也可以根据实际需要设定新的阈值。阈值的主要作用是保证只有当拥有标签所有权大部分份额的所有者或多个所有者同意进行所有权转换时,才能将标签的所有权交给新的所有者。如果只有拥有标签所有权小部分份额的所有者或多个所有者同意进行所有权转换,则无法进行标签所有权转换。因此,通常设置阈值threshold为50%。若标签的所有权非常重要,也可以将阈值threshold的值增大,如设置阈值threshold为75%。如此,就需要同意进行标签所有权转换的所有者所持有的份额更多,才能进行转换。用户也可以根据实际需要设定阈值threshold。在本发明中,设阈值threshold为50%。

在本发明中,标签需要与所有者和可信第三方进行通信,所有者也需要与可信第三方进行通信。由于标签的计算资源非常有限,无法执行复杂的密码算法,因此假设标签与所有者和可信第三方之间的信道是不安全的;而标签的所有者和可信第三方都具有充足的计算资源,可以执行复杂的密码算法,以保护通信的安全性。因此,假设所有者与可信第三方之间的信道是安全的。此外,假设在进行所有权转换之前,标签的新所有者已经与原所有者进行了通信,标签的原所有者已经将新所有者的身份标识等相关信息发送给了可信第三方。

在进行标签所有权转换之前,可信第三方与标签共享一个所有权转换密钥kOT。可信第三方根据所有权转换密钥分割方法和标签所有者持有的所有权的份额对所有权转换密钥kOT进行分割,将其分割为多个子密钥,不同的所有者拥有的子密钥不同,并将子密钥发送给相应的标签所有者。所有者拥有标签所有权的份额越多,其拥有的子密钥的长度越长。当需要进行所有权转换时,可信第三方根据所有权转换判断方法和所有者发送来的子密钥判断是否可以进行标签所有权转换。

可信第三方首先将一个所有权转换密钥kOT写入标签内,所有权转换密钥kOT的长度为slen,然后为不同的所有者分配子密钥。设置一个子密钥基础长度值,用balen表示,每一个子密钥的长度为balen的正整数倍。为抵御穷举攻击,建议balen的值不小于128比特。

标签所有者持有的所有权份额之和为100%,所有者最少持有的所有权份额为1%。因此,一个标签的所有者的最大数量为100个。拥有1%所有权份额的所有者持有的子密钥长度为1×balen比特,拥有2%所有权份额的所有者持有的子密钥长度为2×balen比特,拥有sh%所有权份额的所有者持有的子密钥长度为sh×balen比特,以此类推。其中,sh为正整数且100≥sh≥1。不同的子密钥互相不相同。因此,所有权转换密钥的长度slen的值应大于等于100×balen

接下来对所有权转换密钥分割方法和所有权转换判断方法进行说明。

1)所有权转换密钥分割方法

所有权转换密钥分割方法由可信第三方执行。该算法的输入为所有权转换密钥kOT,以及不同所有者所持有的标签所有权的份额。输出是为不同所有者生成的子密钥。为所有权转换密钥中的每一个比特进行编号,最左边的比特编号为1,从左往右每一个比特的编号依次为1,2,3,……,slen。假设子密钥基本长度balen的值为128比特。

可信第三方将标签的原所有者随机排列。若第一个所有者所拥有的标签的所有权份额为sh1%,可信第三方将所有权转换密钥kOT的第1至第128×sh1比特作为该所有者所拥有的的子密钥,其长度为128×sh1比特。该子密钥中的比特在所有权转换密钥中的最小编号即为该所有者的序号。第一个所有者拥有的子密钥在所有权转换密钥中的最小编号为1,因此该所有者的序号为1。

若第二个所有者所拥有的标签的所有权份额为sh2%,可信第三方将所有权转换密钥kOT的第128×sh1+1比特至第128×sh1+1+128×sh2-1即128×(sh1+sh2)比特作为该所有者所拥有的子密钥,其长度为128×sh2比特。第二个所有者拥有的子密钥在所有权转换密钥中的最小编号为128×sh1+1,因此,该所有者的序号为128×sh1+1。

若第三个所有者所拥有的标签的所有权份额为sh3%,可信第三方将所有权转换密钥kOT的第128×(sh1+sh2)+1比特至第128×(sh1+sh2)+1+128×sh3-1即128×(sh1+sh2+sh3)比特作为该所有者所拥有的子密钥,其长度为128×sh3比特。第三个所有者拥有的子密钥在所有权转换密钥中的最小编号为128×(sh1+sh2)+1,因此,该所有者的序号为128×(sh1+sh2)+1,……以此类推。其中,sh1sh2sh3……为大于等于1,小于等于100的正整数,且sh1+sh2+sh3+……=100。所有权转换密钥分割方法如图1所示。

例如,假设标签共有四个原所有者,分别为Owner-A、Owner-B、Owner-C和Owner-D。原所有者Owner-A拥有标签所有权的份额为5%,可信第三方将所有权转换密钥kOT的第1比特至128×5比特即第1比特至第640比特的所有权转换密钥作为原所有者Owner-A所拥有的子密钥,将其通过安全信道发送给原所有者Owner-A。该子密钥的长度为640比特,原所有者Owner-A的序号为1。

原所有者Owner-B拥有标签所有权的份额为25%,可信第三方将所有权转换密钥kOT的第128×5+1比特至128×5+1+128×25-1比特,即第641比特至3840比特的所有权转换密钥作为原所有者Owner-B所拥有的子密钥,将其通过安全信道发送给原所有者Owner-B。该子密钥的长度为128×25=3200比特,原所有者Owner-B的序号为641。

原所有者Owner-C拥有标签所有权的份额为35%,可信第三方将所有权转换密钥kOT的第128×(5+25)+1比特至128×(5+25)+1+128×35-1比特,即第3841比特至8320比特的所有权转换密钥作为原所有者Owner-C所拥有的子密钥,将其通过安全信道发送给原所有者Owner-C。该子密钥的长度为128×35=4480比特,原所有者Owner-C的序号为3841。

原所有者Owner-D拥有标签所有权的份额为35%,可信第三方将所有权转换密钥kOT的第128×(5+25+35)+1比特至128×(5+25+35)+1+128×35-1比特,即第8321至12800位的所有权转换密钥作为原所有者Owner-D所拥有的子密钥,将其通过安全信道发送给原所有者Owner-D。该子密钥的长度为128×35=4480比特,原所有者Owner-D的序号为8321。

2)所有权转换判断方法

该方法的输入为标签的不同所有者拥有的子密钥,输出为一个布尔类型的值,只有2个可能的取值,分别为truefalse。若输出值为true,则表示可以进行标签所有权转换;若输出值为false,则表示不可以进行标签所有权转换。

可信第三方收到同意进行所有权转换的原所有者的子密钥之后,将每个同意进行所有权转换的原所有者的子密钥按照该原所有者的序号进行重组。具体步骤为:可信第三方在自己的存储空间中划分出专用的存储空间,该存储空间在初始化时没有存储任何数据,设该存储空间为T-Space,其基本存储单位为比特。从存储空间最左边的比特开始,为每一个比特的存储空间进行编号,依次为1,2,3,……,slen。可信第三方按照序号依次将收到的子密钥放入存储空间T-Space中,若收到的子密钥不是连续的,则不同子密钥之间缺失的部分仍然不存储任何数据。将收到的子密钥全部放入存储空间T-Space中后,将存储空间T-Space中的比特值与自己存储的所有权转换密钥kOT进行对比,即T-Space中的编号为1的比特与所有权转换密钥中编号为1的比特进行对比,T-Space中编号为2的比特与所有权转换密钥中编号为2的比特进行对比,T-Space中的编号为3的比特与所有权转换密钥中编号为3的比特进行对比……。设其中一致的有corlen比特。若corlen/slen的值大于等于阈值threshold,则输出值为True,认为同意进行标签所有权转换的所有者所拥有的标签所有权的份额之和大于等于阈值threshold,可以进行所有权转换,将标签的所有权交给新所有者。若corlen/slen的值小于阈值threshold,则输出值为False,认为同意进行标签所有权转换的所有者所拥有的标签所有权的份额之和小于阈值threshold,不可以进行所有权转换。

延续上面的例子,假设标签的原所有者Owner-A和Owner-C同意进行所有权转换,可信第三方已经收到了Owner-A和Owner-C所持有的子密钥。所有权转换判断方法的具体步骤为:可信第三方将原所有者Owner-A发来的子密钥放入自己专门划出的存储空间T-Space中。由于该子密钥的序号为1,因此该子密钥应从编号为1的比特开始存放,直至该子密钥的值全部存储进存储空间T-Space中为止。可信第三方还收到了原所有者Owner-C的子密钥,并将该子密钥放入自己专门划出的存储空间T-Space中。由于该子密钥的序号为3841,因此该子密钥应从编号为3841的比特开始存放,直至该子密钥的值全部存储进存储空间T-Space中为止。至此,可信第三方所拥有的所有子密钥均已存储进存储空间T-Space中。存储空间T-Space中没有存储数据的比特仍然保持空白。此时,可信第三方将存储空间T-Space中的值与自己存储的所有权转换密钥kOT进行对比。由于可信第三方拥有原所有者Owner-A的子密钥,该子密钥长度为128×5=640比特。可信第三方还拥有原所有者Owner-C的子密钥,该子密钥长度为128×35=4480比特。可信第三方总共拥有子密钥的长度为640+4480=5120比特。这5120比特的数据应该与可信第三方拥有的所有权转换密钥kOT中的相应比特是相同的。这些比特在整个所有权转换密钥kOT中所占的比例为5120/12800=0.4,该值并未达到阈值0.5。因此,输出False,不能进行所有权转换,此次所有权转换失败,只有原所有者Owner-A和Owner-C的子密钥不能进行标签的所有权转换。

若原所有者Owner-D也同意进行所有权转换,并将自己拥有的子密钥发送给可信第三方。可信第三方采用上述同样的方法将原所有者Owner-D的子密钥放入存储空间T-Space中的相应存储空间中。由于该子密钥的序号为8321,因此该子密钥应从编号为8321的比特开始存放,直至该子密钥的值全部存储进存储空间T-Space中为止。存储空间T-Space中没有存储数据的比特仍然保持空白。此时,标签总共拥有子密钥的长度为640+4480+128×35=9600比特。这9600比特的数据应该与可信第三方拥有的所有权转换密钥kOT中的相应比特是相同的。这些比特在整个所有权转换密钥kOT中所占的比例为9600/12800=0.75,该值已经超过阈值0.5。因此,输出True,可以进行所有权转换,将标签的所有权交给新所有者。因此,拥有原所有者Owner-A、Owner-C和Owner-D的子密钥可以进行标签的所有权转换。

2.协议流程

协议流程如图2所示。

1)原所有者OOindex1生成随机数r1和所有权转换请求OORindex1,发送{OORindex1,IDOO-index1r1}给标签。其中,OORindex1为原所有者OOindex1要求标签进行所有权转换的请求,OORindex1含有原所有者OOindex1的序号,即OOindex1所拥有的子密钥在所有权转换密钥中的最小编号。

2)标签收到{OORindex1,IDOO-index1r1}后,生成随机数r2,计算H(OORindex1,IDOO-index1r1r2kau),并发送{OORindex1,IDOO-index1r1r2,H(OORindex1,IDOO-index1r1r2kau)}给原所有者OOindex1;其中,IDOO-index1为原所有者OOindex1的身份标识,存储在标签和原所有者OOindex1中。

3)原所有者OOindex1收到{OORindex1,IDOO-index1r1r2,H(OORindex1,IDOO-index1r1r2kau)}后,用自己存储的密钥k'au计算H(OORindex1,IDOO-index1r1r2k'au)。若该计算结果与收到的H(OORindex1,IDOO-index1r1r2kau)相等,说明标签使用的密钥kau和原所有者使用的密钥k'au是相同的,即kau=k'au,原所有者OOindex1确认标签的身份,通过对标签的认证。原所有者OOindex1将标签的身份标识IDT和自己持有的子密钥kindex1发送给可信第三方,即发送{IDTkindex1}给可信第三方。

若原所有者OOindex1计算出的H(OORindex1,IDOO-index1r1r2k'au)与收到的H(OORindex1,IDOO-index1r1r2kau)不相等,说明标签使用的kau和原所有者使用的k'au是不相同的,即kauk'au,原所有者OOindex1无法确认标签的身份,协议终止。

4)标签的其他原所有者OOindex2、OOindex3……、OOindexn分别与标签执行上述步骤1)至步骤3),则可信第三方可收到原所有者OOindex2、OOindex3、……、OOindexn发来的子密钥kindex2kindex3、……、kindexn。由于标签所有者所拥有的所有权份额之和为100%,而且最少拥有的所有权份额为1%。因此,一个标签的所有者的最大数量n为100个。可信第三方根据收到的标签的身份标识IDT可以在自己的数据库中查找出对应的标签所有权转换密钥。每当收到原所有者发来的子密钥时,可信第三方根据已经收到的原所有者发来的子密钥kindexii=1、2、……、n,采用所有权转换判断方法来判断是否可以进行标签所有权转换。若不能进行标签所有权转换,则继续等待其他原所有者发来子密钥。若可以进行标签所有权转换,则可信第三方为标签生成新的所有权转换密钥kOT-new

5)可信第三方生成随机数r3,发送{OTRTTP,r3,H(OTRTTP,r3,TIN)}给标签。其中,OTRTTP为来自可信第三方的所有权转换请求,TIN为标签与可信第三方共享的标签身份识别码。

6)标签收到可信第三方发送的消息{OTRTTP,r3,H(OTRTTP,r3,TIN)}后,使用自己存储的标签身份识别码TIN'计算H(OTRTTP,r3,TIN'),并将该计算结果与收到的H(OTRTTP,r3,TIN)进行对比。若两者不一致,说明标签存储的标签身份识别码TIN'与可信第三方存储的标签身份识别码TIN是不一致的,即TIN'≠TIN,标签无法确认可信第三方的身份,协议终止。若两者一致,说明标签存储的标签身份识别码TIN'与可信第三方存储的标签身份识别码TIN是一致的,即TIN'=TIN,标签确认可信第三方的身份,通过对可信第三方的认证。标签生成随机数r4,计算H(OTRTTP,r3r4,TIN'),并发送{OTRTTP,r3r4,H(OTRTTP,r3r4,TIN')}给可信第三方。

7)可信第三方收到标签发来的消息{OTRTTP,r3r4,H(OTRTTP,r3r4,TIN')}后,用自己存储的标签身份识别码TIN计算H(OTRTTP,r3r4,TIN),并将其与收到的H(OTRTTP,r3r4,TIN')进行对比。若两者不一致,说明可信第三方存储的标签身份识别码TIN与标签存储的标签身份识别码TIN'是不一致的,即TIN≠TIN',可信第三方无法确认标签的身份,协议终止。若两者一致,说明可信第三方存储的标签身份识别码TIN与标签存储的标签身份识别码TIN'是一致的,即TIN=TIN',可信第三方确认标签的身份,通过对标签的认证。可信第三方使用为标签生成的新的所有权转换密钥kOT-new计算H(r3r4,IDNO,TIN,kOT)⊕kOT-new和H(r3r4,IDNO,TIN,kOTkOT-new),发送{r3r4,IDNO,H(r3r4,IDNO,TIN,kOT)⊕kOT-new,H(r3r4,IDNO,TIN,kOTkOT-new)}给标签。

8)标签收到{r3r4,IDNO,H(r3r4,IDNO,TIN,kOT)⊕kOT-new,H(r3r4,IDNO,TIN,kOTkOT-new)}后,先用自己存储的标签身份识别码TIN'和所有权转换密钥k'OT计算H(r3r4,IDNO,TIN'k'OT),并将计算结果与收到的H(r3r4,IDNO,TIN,kOT)⊕kOT-new进行异或。若标签存储的标签身份识别码TIN'和所有权转换密钥k'OT分别与可信第三方存储的标签身份识别码TIN和所有权转换密钥kOT相等,则计算出的H(r3r4,IDNO,TIN'k'OT)与收到的H(r3r4,IDNO,TIN,kOT)相同,H(r3r4,IDNO,TIN'k'OT)⊕H(r3r4,IDNO,TIN,kOT)⊕kOT-new=kOT-new。为了和可信第三方拥有的所有权转换密钥kOT-new有所区别,将标签计算出的新的所有权转换密钥kOT-newk'OT-new表示。

标签用自己存储的标签身份识别码TIN'k'OT,以及计算出的新的所有权转换密钥k'OT-new计算H(r3r4,IDNO,TIN'k'OTk'OT-new),并将该计算结果与收到的H(r3r4,IDNO,TIN,kOTkOT-new)进行对比。

若两者不相等,说明标签存储的标签身份识别码TIN'或所有权转换密钥k'OT或计算出的k'OT-new与可信第三方存储的标签身份识别码TIN或所有权转换密钥kOTkOT-new不一致,即三个不等式TIN'≠TIN、k'OTkOTk'OT-newkOT-new中至少有一个是成立的。在此种情况下,标签与可信第三方未能协商出一个共享的新的所有权转换密钥,协议从步骤5)重新开始执行。

若两者相等,说明标签存储的标签身份识别码TIN'、所有权转换密钥k'OT和计算出的新的所有权转换密钥k'OT-new与可信第三方存储的标签身份识别码TIN、kOTkOT-new一致,即三个等式TIN'=TIN、k'OT=kOTk'OT-new=kOT-new都是成立的。在此种情况下,标签已经成功获得了正确的新的所有权转换密钥k'OT-new,标签与可信第三方拥有同一个新的所有权转换密钥。标签计算H(r3r4,IDNO,TIN'k'OT-new),发送{r3r4,IDNO,H(r3r4,IDNO,TIN'k'OT-new)}给可信第三方。

9)可信第三方收到标签发来的消息{r3r4,IDNO,H(r3r4,IDNO,TIN'k'OT-new)}后,用自己存储的标签身份识别码TIN和新的所有权转换密钥kOT-new计算出H(r3r4,IDNO,TIN,kOT-new),并将该计算结果与收到的H(r3r4,IDNO,TIN'k'OT-new)进行对比。

若两者不相等,说明可信第三方存储的标签身份识别码TIN或所有权转换密钥kOT-new与标签存储的TIN'k'OT-new不一致,即个两不等式TIN'≠TIN和k'OT-newkOT-new中至少有一个是成立的。在此种情况下,可信第三方与标签未能协商出一个共享的新的所有权转换密钥,协议从步骤5)重新开始执行。

若两者相等,说明可信第三方存储的标签身份识别码TIN和所有权转换密钥kOT-new与标签存储的TIN'和k'OT-new一致,即两个等式TIN'=TIN和k'OT-new=kOT-new都是成立的。在此种情况下,可信第三方与标签协商出一个共享的新的所有权转换密钥,并且可信第三方确定标签已经成功获得了正确的新的所有权转换密钥k'OT-new

可信第三方发送{OTSN,IDT,IDNOkOT-new}给新所有者。其中,OTSN为所有权转换成功通知,用于通知新所有者获取标签新的所有权转换密钥kOT-new,所有权转换完成。新所有者取得了所有权转换密钥kOT-new,获取了对标签的所有权,可使用所有权转换密钥kOT-new与标签进行通信。

在一些所有权转换协议中,为防止原所有者监听新所有者与标签之间的通信,以获取新所有者与标签的共享密钥,通常要求新所有者与标签协商共享密钥要在原所有者的通信范围之外进行。在本发明中,由可信第三方为标签和新所有者分配新的所有权转换密钥kOT-new。该密钥受到标签和可信第三方共享的标签身份识别码的保护,攻击者必须同时拥有标签身份识别码和原所有权转换密钥kOT才能获得kOT-new。而标签身份识别码TIN只有标签和可信第三方拥有,故原所有者无法获取可信第三方为标签和新所有者分配的新的所有权转换密钥kOT-new

穷举攻击是针对受保护信息的一种重要的攻击方法,攻击者逐一尝试密钥的所有可能取值,直至攻击成功为止。为抵御此种攻击,通常采用增加密钥和其他部分变量的长度的方式来扩大密钥空间。因此,建议本发明中所用的随机数r1r2r3r4、标签身份识别码TIN、认证密钥kau、原所有者持有的子密钥kindex、子密钥基本长度值balen、原所有者与标签共享的所有权转换密钥kOT和新所有者与标签共享的新的所有权转换密钥kOT-new等随机数和秘密值的长度不低于128比特。其中,原所有者与标签共享的所有权转换密钥kOT和新所有者与标签共享的新的所有权转换密钥kOT-new的长度值应大于等于100×balen比特。上述随机数和秘密值等变量还应满足下列条件:

(1)不能所有比特均为0或1,且0和1出现的概率应相等或接近;

(2)每个比特的值为0或1的概率应该是相等的。

使用者也可以根据自己的需要自行设定协议中所用参数的长度。

异或运算需要参与计算的值具有同样的长度,例如,参与异或运算的两个值都是8比特长度。若发生参与计算的两个数值长度不同这样的情况,则长度较短的值先与长度较长的值的左端部分进行异或,然后再与长度较长的值的剩下部分的左端部分进行异或,如此依次进行异或,将每次异或的结果按照顺序依次排列,即构成了这两个值的异或结果。例如,4比特长度的变量val1的值为1011,10比特长度的变量val2的值为1110011001,要计算val1val2的异或运算结果。在计算时,先计算1011⊕1110=0101,再计算1011⊕0110=1101,然后再计算10⊕01=11。最终的计算结果为0101110111,如图3所示。

本发明能够对具有多个所有者的标签所有权进行转换,标签的不同所有者分别持有标签所附物品一定份额的所有权。当部分标签的所有者同意进行所有权转换时,可信第三方利用所有权转换判断方法可以判断是否同意进行所有权转换。只有当同意进行所有权转换的所有者所占的份额达到阈值threshold时,才能够进行所有权的转换,将标签的所有权交给新所有者。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号