用于统一近场通信基础架构的装置、方法及服务器转让专利
申请号 : CN201680005690.7
文献号 : CN107113553B
文献日 : 2018-12-18
发明人 : 郭旭 , 艾丁·艾苏
申请人 : 高通股份有限公司
摘要 :
权利要求 :
1.一种用于统一近场通信基础架构的装置,其包括:
适于存储敏感数据的存储器电路;
适于使用NFC协议发射和接收信息的NFC接口;以及
以通信方式耦合到所述存储器电路和所述NFC接口的处理电路,所述处理电路适于从多个提供者接收多个提供者标识PID编号,每一PID编号与不同提供者相关联,在所述存储器电路处存储所述PID编号,以及向所接收和存储的每一PID编号分配多个特权掩码中的特权掩码,所述多个特权掩码中的每一特权掩码将所述敏感数据的受限部分标示为可由所述多个提供者中的提供者访问,每一特权掩码在所述敏感数据的所述受限部分将由所述提供者访问时进一步标示待由所述装置和所述提供者遵循的特定响应协议。
2.根据权利要求1所述的装置,其中所述处理电路进一步适于:
基于分配到与每一提供者相关联的所述PID编号的所述特权掩码而向所述提供者发射与所述提供者相关联的所述敏感数据的所述受限部分。
3.根据权利要求1所述的装置,其中所述处理电路进一步适于:
在向所接收和存储的每一PID编号分配所述特权掩码之前,从每一提供者接收指示所希望的敏感数据访问等级的特权掩码请求。
4.根据权利要求1所述的装置,其进一步包括:
以通信方式耦合到所述处理电路的物理不可克隆函数PUF电路,所述PUF电路适于产生输入询问的输出响应,并且其中所述处理电路进一步适于:向所述PUF电路提供所述多个PID编号中的一或多个PID编号作为输入询问,以及响应于提供所述一或多个PID编号作为输入询问而从所述PUF电路接收一或多个PUF输出响应,所述PUF输出响应彼此不同且与不同提供者相关联。
5.根据权利要求4所述的装置,其中所述处理电路进一步适于:
至少部分地使用与所述不同提供者相关联的所述一或多个PUF输出响应来认证一或多个提供者。
6.根据权利要求1所述的装置,其中所述处理电路进一步适于根据安全配置登记至少第一提供者,从而使所述处理电路进行以下操作:从所述第一提供者接收第一PID编号,所述第一PID编号标识所述第一提供者;
在所述存储器电路处存储所述第一PID编号;
向所述第一PID编号分配第一特权掩码,所述第一特权掩码将所述敏感数据的至少一部分标示为第一提供者敏感数据;以及向所述第一提供者发射与所述装置相关联的用户标识UID编号,所述UID编号标识所述装置。
7.根据权利要求6所述的装置,其中所述处理电路进一步适于根据所述安全配置验证所述第一提供者,从而使所述处理电路进行以下操作:从所述第一提供者接收所述第一PID编号;
应用分配到所述第一PID编号的所述第一特权掩码,以将可用于所述第一提供者的所述敏感数据限制为所述第一提供者敏感数据;以及向所述第一提供者发射所述UID编号和所述第一提供者敏感数据。
8.根据权利要求1所述的装置,其进一步包括以通信方式耦合到所述处理电路的物理不可克隆函数PUF电路,所述PUF电路适于产生输入询问的输出响应,并且其中所述处理电路进一步适于根据安全配置登记至少第一提供者,从而使所述处理电路进行以下操作:从所述第一提供者接收第一消息,所述第一消息包含第一PID编号和所述第一PID编号与第一随机数r1的散列,所述第一PID编号标识所述第一提供者;
在所述存储器电路处存储所述第一PID编号;
向所述第一PID编号分配第一特权掩码,所述第一特权掩码将所述敏感数据的至少一部分标示为第一提供者敏感数据;
向所述PUF电路提供所述第一PID编号和所述第一随机数r1的所述散列作为输入询问以获得第一嘈杂响应ke;
执行帮助程序数据产生函数以产生与所述第一嘈杂响应ke相关联的帮助程序数据he;
以及
向所述第一提供者发射第二消息,所述第二消息包含用户标识UID编号、所述第一嘈杂响应ke和所述帮助程序数据he,所述UID编号标识所述装置。
9.根据权利要求8所述的装置,其中所述处理电路进一步适于根据所述安全配置验证所述第一提供者,从而使所述处理电路进行以下操作:从所述第一提供者接收第三消息,所述第三消息包含所述第一PID编号、所述第一随机数r1以及所述第一PID编号和所述第一随机数r1的所述散列;
应用分配到所述第一PID编号的所述第一特权掩码,以将可用于所述第一提供者的所述敏感数据限制为所述第一提供者敏感数据;
向所述PUF电路提供所述第一PID编号和所述第一随机数r1的所述散列作为输入询问以获得由目标产生的第二嘈杂响应kv_t,其中所述由目标产生的第二嘈杂响应kv_t不同于所述第一嘈杂响应ke;
执行所述帮助程序数据产生函数以产生与所述由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv;
计算包含所述UID编号、所述帮助程序数据hv、所述由目标产生的第二嘈杂响应kv_t和第二随机数r2的散列的值u1;以及向所述第一提供者发射第四消息,所述第四消息包含所述UID编号、所述值u1、所述第二随机数r2、所述帮助程序数据hv,以及所述第一提供者敏感数据。
10.根据权利要求8所述的装置,其中所述处理电路进一步适于根据安全配置验证所述第一提供者,从而使所述处理电路进行以下操作:向所述第一提供者发射所述UID编号;
从所述第一提供者接收第三消息,所述第三消息包含所述第一PID编号、所述第一随机数r1以及所述第一PID编号和所述第一随机数r1的所述散列;
向所述PUF电路提供所述第一PID编号和所述第一随机数r1的所述散列作为输入询问以获得由目标产生的第二嘈杂响应kv_t,其中所述由目标产生的第二嘈杂响应kv_t不同于所述第一嘈杂响应ke;
执行所述帮助程序数据产生函数以产生与所述由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv;
向所述第一提供者发射第四消息,所述第四消息包含第二随机数r2和所述帮助程序数据hv,所述第二随机数r2不同于所述第一随机数r1;
从所述第一提供者接收第五消息,所述第五消息包含第三随机数r3和值u1,所述第三随机数不同于所述第一随机数r1和所述第二随机数r2,所述值u1基于所述UID编号、由提供者产生的第二嘈杂响应kv_p、所述第二随机数r2和所述第三随机数r3的散列;
基于所述UID编号、所述由目标产生的第二嘈杂响应kv_t、所述第二随机数r2和所述第三随机数r3的散列而计算值u2;
基于接收到的所述值u1和计算出的所述值u2而认证所述第一提供者;
应用分配到所述第一PID编号的所述第一特权掩码,以将可用于所述第一提供者的所述敏感数据限制为所述第一提供者敏感数据;以及向所述第一提供者发射第六消息,所述第六消息包含所述第一提供者敏感数据以及所述UID编号、所述由目标产生的第二嘈杂响应kv_t和所述第三随机数r3的散列。
11.根据权利要求10所述的装置,其中所述处理电路进一步适于:
在向所述第一提供者发射所述第六消息之前,将所述由目标产生的第二嘈杂响应kv_t用作密码密钥来加密所述第六消息中的所述第一提供者敏感数据。
12.一种用于统一近场通信基础架构的方法,所述方法在装置处操作,所述方法包括:从多个提供者接收多个提供者标识PID编号,每一PID编号与不同提供者相关联;
在存储器电路处存储所述PID编号;以及
向所接收和存储的每一PID编号分配多个特权掩码中的特权掩码,所述多个特权掩码中的每一特权掩码将敏感数据的受限部分标示为可由所述多个提供者中的提供者访问,每一特权掩码在所述敏感数据的所述受限部分将由所述提供者访问时进一步标示待由所述装置和所述提供者遵循的特定响应协议。
13.根据权利要求12所述的方法,其进一步包括:
在向所接收和存储的每一PID编号分配所述特权掩码之前,从每一提供者接收指示所希望的敏感数据访问等级的特权掩码请求。
14.根据权利要求12所述的方法,其进一步包括:
向PUF电路提供所述多个PID编号中的一或多个PID编号作为输入询问,以及响应于提供所述一或多个PID编号作为输入询问而从所述PUF电路接收一或多个PUF输出响应,所述PUF输出响应彼此不同且与不同提供者相关联。
15.根据权利要求14所述的方法,其进一步包括:
至少部分地使用与所述不同提供者相关联的所述一或多个PUF输出响应来认证一或多个提供者。
16.一种用于统一近场通信基础架构的服务器,其包括:
通信接口,其适于直接和/或间接向近场通信NFC目标装置发射信息和从所述近场通信NFC目标装置接收所述信息;
存储器电路;以及
处理电路,其以通信方式耦合到所述通信接口和所述存储器电路,所述处理电路适于向所述NFC目标装置发射提供者标识PID编号,所述PID编号与提供者相关联,所述提供者与所述服务器相关联,所述PID编号不同于其它提供者的其它PID编号,向所述NFC目标装置发射特权掩码请求,所述特权掩码请求指示所希望的将与所述PID编号相关联的特权掩码,所述所希望的特权掩码将存储在所述NFC目标装置处的敏感数据的受限部分标示为与所述提供者相关联且可由所述服务器访问的提供者敏感数据,所述所希望的特权掩码在所述敏感数据的所述受限部分将由所述服务器访问时进一步标示待由所述服务器和所述NFC目标装置遵循的特定响应协议,从所述NFC目标装置接收与所述NFC目标装置相关联的用户标识UID编号,所述UID编号标识所述NFC目标装置,以及在所述存储器电路中存储所述UID编号。
17.根据权利要求16所述的服务器,其中向所述NFC目标装置发射所述PID编号、向所述NFC目标装置发射所述特权掩码请求以及接收和存储所述UID编号根据安全配置而使用所述NFC目标装置登记所述提供者,并且其中所述处理电路进一步适于根据所述安全配置验证所述NFC目标装置,从而使所述处理电路进行以下操作:向所述NFC目标装置发射所述PID编号;
从所述NFC目标装置接收第一消息,所述第一消息包含所述UID编号和所述提供者敏感数据;
验证在所述第一消息中接收到的所述UID编号匹配存储于所述存储器电路中的所述UID编号;以及接受接收到的所述提供者敏感数据。
18.根据权利要求16所述的服务器,其中所述处理电路进一步适于根据安全配置而使用所述NFC目标装置进行登记,从而使所述处理电路进行以下操作:向所述NFC目标装置发射第一消息,所述第一消息包含所述PID编号和所述PID编号与第一随机数r1的散列;
从所述NFC目标装置接收第二消息,所述第二消息包含所述UID编号、第一嘈杂响应ke和与所述第一嘈杂响应ke相关联的帮助程序数据he,其中所述第一嘈杂响应ke是通过向以通信方式耦合到所述处理电路的物理不可克隆函数PUF电路提供所述PID编号和所述第一随机数r1的所述散列作为输入询问而获得的,且其中所述帮助程序数据he是通过执行帮助程序数据产生函数而产生的;
基于所述第一嘈杂响应ke和所述帮助程序数据he而执行再现函数,以再现物理不可克隆函数PUF响应k;以及在所述存储器电路中存储所述响应k,并且其中所述处理电路进一步适于根据所述安全配置验证所述NFC目标装置,从而使所述处理电路进行以下操作向所述NFC目标装置发射第三消息,所述第三消息包含所述PID编号、所述第一随机数r1以及所述PID编号和所述第一随机数r1的所述散列,从所述NFC目标装置接收第四消息,所述第四消息包含所述UID编号、值u1、不同于所述第一随机数r1的第二随机数r2、与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv,以及所述提供者敏感数据,其中所述由目标产生的第二嘈杂响应kv_t是通过向所述PUF电路提供所述PID编号和所述第一随机数r1的所述散列作为输入询问而获得的,所述由目标产生的第二嘈杂响应kv_t不同于所述第一嘈杂响应ke,其中所述帮助程序数据hv是通过执行所述帮助程序数据产生函数而产生的,且其中所述值u1由所述处理电路计算得出并且包括所述UID编号、所述帮助程序数据hv、所述由目标产生的第二嘈杂响应kv_t和所述第二随机数r2的散列,基于所述NFC目标装置的所述UID编号而获得所述PUF响应k,
基于所述PUF响应k和所述帮助程序数据hv而执行所述再现函数,以再现由提供者产生的第二嘈杂响应kv_p,基于所述UID编号、所述帮助程序数据hv、所述由提供者产生的第二嘈杂响应kv_p和所述第二随机数r2的散列而计算值u2,基于接收到的所述值u1和计算出的所述值u2而认证所述NFC目标装置,以及接受接收到的所述提供者敏感数据。
19.根据权利要求16所述的服务器,其中所述处理电路进一步适于根据安全配置而使用所述NFC目标装置进行登记,从而使所述处理电路进行以下操作:向所述NFC目标装置发射第一消息,所述第一消息包含所述PID编号和所述PID编号与第一随机数r1的散列;
从所述NFC目标装置接收第二消息,所述第二消息包含所述UID编号、第一嘈杂响应ke和与所述第一嘈杂响应ke相关联的帮助程序数据he,其中所述第一嘈杂响应ke是通过向以通信方式耦合到所述处理电路的物理不可克隆函数PUF电路提供所述PID编号和所述第一随机数r1的所述散列作为输入询问而获得的,且其中所述帮助程序数据he是通过执行帮助程序数据产生函数而产生的;
基于所述第一嘈杂响应ke和所述帮助程序数据he而执行再现函数,以再现物理不可克隆函数PUF响应k;以及在所述存储器电路中存储所述响应k,并且其中所述处理电路进一步适于根据所述安全配置验证所述NFC目标装置,从而使所述处理电路进行以下操作从所述NFC目标装置接收所述UID编号,
验证从所述NFC目标装置接收的所述UID编号匹配存储于所述存储器电路中的所述UID编号,向所述NFC目标装置发射第三消息,所述第三消息包含所述PID编号、所述第一随机数r1以及所述PID编号和所述第一随机数r1的所述散列,从所述NFC目标装置接收第四消息,所述第四消息包含不同于所述第一随机数r1的第二随机数r2和与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv,其中所述由目标产生的第二嘈杂响应kv_t是通过向所述PUF电路提供所述PID编号和所述第一随机数r1的所述散列作为输入询问而获得的,所述由目标产生的第二嘈杂响应kv_t不同于所述第一嘈杂响应ke,且其中所述帮助程序数据hv是通过执行所述帮助程序数据产生函数而产生的,基于所述NFC目标装置的所述UID编号而获得所述PUF响应k,基于所述PUF响应k和所述帮助程序数据hv而执行所述再现函数,以再现由提供者产生的第二嘈杂响应kv_p,基于所述UID编号、所述由提供者产生的第二嘈杂响应kv_p、所述第二随机数r2和不同于所述第一随机数r1与所述第二随机数r2的第三随机数r3的散列而计算值u1,向所述NFC目标装置发射第五消息,所述第五消息包含所述值u1和所述第三随机数r3,从所述NFC目标装置接收第六消息,所述第六消息包含所述提供者敏感数据以及基于所述UID编号、所述由目标产生的第二嘈杂响应kv_t和所述第三随机数r3的散列的值u2,基于所述UID编号、所述由提供者产生的第二嘈杂响应kv_p和所述第三随机数r3的散列而计算值u3,基于接收到的所述值u2和计算出的所述值u3而认证所述NFC目标装置,以及接受接收到的所述提供者敏感数据。
20.根据权利要求19所述的服务器,其中通过所述由目标产生的第二嘈杂响应kv_t对所述提供者敏感数据进行加密,并且所述处理电路进一步适于:使用所述由提供者产生的第二嘈杂响应kv_p对接收到的所述提供者敏感数据进行解密。
说明书 :
用于统一近场通信基础架构的装置、方法及服务器
技术领域
背景技术
NFC涉及发起者和目标。NFC目标可含有存储器电路,所述存储器电路可存储可以通过NFC发起者读取和/或写入的数据。发起者有源地产生射频(RF)场,所述射频(RF)场可为NFC目标
供电,所述NFC目标常常是一种不具有自己的电源的无源装置。因此,此类无源NFC目标可采用极其简单的不需要电池的外观尺寸,例如标签、黏贴签或卡。
NFC目标上的与他们没有关联或应该以其它方式不可访问的敏感数据的安全协议和装置。
另外,需要有助于阻止克隆卡的安全协议和装置。此外,还需要提供NFC目标和服务提供者/商家两者的相互认证的安全协议和装置,由此允许服务提供者和商家在向NFC目标提供敏
感数据之前验证NFC目标的身份。
发明内容
口的处理电路。处理电路用于从多个提供者接收多个提供者标识(PID)编号,其中每一PID
编号与不同提供者相关联,在存储器电路处存储PID编号,并且向接收到的和存储的每一
PID编号分配多个特权掩码中的特权掩码,其中所述多个特权掩码中的每一特权掩码将敏
感数据的至少一部分标示为与多个提供者中的提供者相关联。根据一个方面,基于分配到
与每一提供者相关联的PID编号的特权掩码,处理电路进一步用于向所述提供者发射与所
述提供者相关联的敏感数据的部分。根据另一方面,处理电路进一步用于在向接收到的和
存储的每一PID编号分配特权掩码之前,从每一提供者接收指示所希望的敏感数据访问等
级的特权掩码请求。
步用于提供多个PID编号中的一或多个PID编号作为PUF电路的输入询问,并响应于提供一
或多个PID编号作为输入询问,从PUF电路接收一或多个PUF输出响应,所述PUF输出响应彼
此不同,且与不同提供者相关联。根据一个方面,处理电路进一步用于至少部分地使用与不同提供者相关联的一或多个PUF输出响应来认证一或多个提供者。根据另一方面,处理电路进一步用于根据安全配置登记至少第一提供者,从而使处理电路从第一提供者接收第一
PID编号,所述第一PID编号标识第一提供者;在存储器电路处存储第一PID编号;向第一PID编号分配第一特权掩码,所述第一特权掩码将敏感数据的至少一部分标示为第一提供者敏
感数据;以及向第一提供者发射与NFC目标装置相关联的用户标识(UID)编号,所述UID编号标识NFC目标装置。
第一提供者的敏感数据限制为第一提供者敏感数据,以及向第一提供者发射UID编号和第
一提供者敏感数据。根据另一方面,NFC目标装置进一步包括以通信方式耦合到处理电路的物理不可克隆函数(PUF)电路,所述PUF电路用于产生输入询问的输出响应,并且其中处理
电路进一步用于根据安全配置登记至少第一提供者,从而使处理电路从第一提供者接收第
一消息,所述第一消息包含第一PID编号和第一PID编号与第一随机数r1的散列,所述第一
PID编号标识第一提供者;在存储器电路处存储第一PID编号;向第一PID编号分配第一特权掩码,所述第一特权掩码将敏感数据的至少一部分标示为第一提供者敏感数据;向PUF电路提供第一PID编号和第一随机数r1的散列作为输入询问,以获得第一嘈杂响应ke;执行帮助程序数据产生函数以产生与第一嘈杂响应ke相关联的帮助程序数据he;以及向第一提供者
发射第二消息,所述第二消息包含用户标识(UID)编号、所述第一嘈杂响应ke和帮助程序数据he,所述UID编号标识NFC目标装置。
提供者的敏感数据限制为第一提供者敏感数据;向PUF电路提供第一PID编号和第一随机数
r1的散列作为输入询问,以获得由目标产生的第二嘈杂响应kv_t;执行帮助程序数据产生函数以产生与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv;计算值u1,其包含UID编号、帮助程序数据hv、由目标产生的第二嘈杂响应kv_t和第二随机数r2的散列;以及向第一提供者发射第四消息,所述第四消息包含UID编号、值u1、第二随机数r2、帮助程序数据hv,以及第一提供者敏感数据。根据另一方面,处理电路进一步用于根据安全配置验证第一提供
者,从而使处理电路向第一提供者发射UID编号;从第一提供者接收第三消息,所述第三消息包含第一PID编号、第一随机数r1以及第一PID编号和第一随机数r1的散列;向PUF电路提供第一PID编号和第一随机数r1的散列作为输入询问,以获得由目标产生的第二嘈杂响应
kv_t;执行帮助程序数据产生函数以产生与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv;向第一提供者发射第四消息,所述第四消息包含第二随机数r2和帮助程序数据
hv,所述第二随机数r2不同于第一随机数r1;从第一提供者接收第五消息,所述第五消息包含第三随机数r3和值u1,所述第三随机数不同于第一随机数r1和第二随机数r2,值u1基于UID编号、由提供者产生的第二嘈杂响应kv_p、第二随机数r2和第三随机数r3的散列;基于UID编号、由目标产生的第二嘈杂响应kv_t、第二随机数r2和第三随机数r3的散列而计算值u2;基于接收到的值u1和计算出的值u2而认证第一提供者;应用分配到第一PID编号的第一特权掩码以将可用于第一提供者的敏感数据限制为第一提供者敏感数据;以及向第一提供者发射第
六消息,所述第六消息包含第一提供者敏感数据以及UID编号、由目标产生的第二嘈杂响应kv_t和第三随机数r3的散列。根据另一个方面,处理电路进一步用于在向第一提供者发射第六消息之前,将由目标产生的第二嘈杂响应kv_t用作密码密钥来加密第六消息中的第一提
供者敏感数据。
根据一个方面,所述方法进一步包括在向接收到的和存储的每一PID编号分配特权掩码之
前,从每一提供者接收指示所希望的敏感数据访问等级的特权掩码请求。根据另一方面,所述方法进一步包括向PUF电路提供多个PID编号中的一或多个PID编号作为输入询问,以及
响应于提供一或多个PID编号作为输入询问而从PUF电路接收一或多个PUF输出响应,所述
PUF输出响应彼此不同且与不同提供者相关联。根据另一个方面,所述方法进一步包括至少部分地使用与不同提供者相关联的一或多个PUF输出响应来认证一或多个提供者。
通信接口、存储器电路,以及以通信方式耦合到通信接口和存储器电路的处理电路,所述处理电路用于向NFC目标装置发射提供者标识(PID)编号,所述PID编号与提供者相关联且不
同于其它提供者的PID编号;向NFC目标装置发射特权掩码请求,所述特权掩码请求指示所
希望的将与PID编号相关联的特权掩码,所述所希望的特权掩码将存储在NFC目标装置处的
敏感数据的至少一部分标示为与提供者相关联且可由服务器访问的提供者敏感数据;从
NFC目标装置接收与NFC目标装置相关联的用户标识(UID)编号,所述UID编号标识NFC目标
装置;以及在存储器电路中存储UID编号。根据一个方面,向NFC目标装置发射PID编号、向NFC目标装置发射特权掩码请求以及接收和存储UID编号根据安全配置而在NFC目标装置处
登记提供者,并且其中处理电路进一步用于根据安全配置验证NFC目标装置,从而使处理电路向NFC目标装置发射PID编号;从NFC目标装置接收第一消息,所述第一消息包含UID编号
和提供者敏感数据;验证在第一消息中接收到的UID编号是否匹配存储于存储器电路中的
UID编号;以及接受接收到的提供者敏感数据。
机数r1的散列;从NFC目标装置接收第二消息,所述第二消息包含UID编号、第一嘈杂响应ke和与第一嘈杂响应ke相关联的帮助程序数据he;基于第一嘈杂响应ke和帮助程序数据he而
执行再现函数,以再现物理不可克隆函数(PUF)响应k;以及在存储器电路中存储响应k,并且其中处理电路进一步用于根据安全配置而验证NFC目标装置,从而使处理电路向NFC目标
装置发射第三消息,所述第三消息包含PID编号、第一随机数r1以及PID编号和第一随机数r1的散列;从NFC目标装置接收第四消息,所述第四消息包含UID编号、值u1、不同于第一随机数r1的第二随机数r2、与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv,以及提供者敏感数据;基于NFC目标装置的UID编号而获得PUF响应k;基于PUF响应k和帮助程序数
据hv而执行再现函数,以再现由提供者产生的第二嘈杂响应kv_p;基于UID编号、帮助程序数据hv、由提供者产生的第二嘈杂响应kv_p和第二随机数r2的散列而计算值u2;基于接收到的值u1和计算出的值u2而认证NFC目标装置;以及接受接收到的提供者敏感数据。根据另一方面,处理电路进一步用于根据安全配置而在NFC目标装置处登记,从而使处理电路向NFC目
标装置发射第一消息,所述第一消息包含PID编号和PID编号与第一随机数r1的散列;从NFC目标装置接收第二消息,所述第二消息包含UID编号、第一嘈杂响应ke和与第一嘈杂响应ke相关联的帮助程序数据he;基于第一嘈杂响应ke和帮助程序数据he而执行再现函数,以再现物理不可克隆函数(PUF)响应k;以及在存储器电路中存储响应k,并且其中处理电路进一步用于根据安全配置而验证NFC目标装置,从而使处理电路从NFC目标装置接收UID编号;验证从NFC目标装置接收的UID编号是否匹配存储于存储器电路中的UID编号;向NFC目标装置发
射第三消息,所述第三消息包含PID编号、第一随机数r1以及PID编号和第一随机数r1的散
列;从NFC目标装置接收第四消息,所述第四消息包含不同于第一随机数r1的第二随机数r2和与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv;基于NFC目标装置的UID编
号而获得PUF响应k;基于PUF响应k和帮助程序数据hv而执行再现函数,以再现由提供者产
生的第二嘈杂响应kv_p;基于UID编号、由提供者产生的第二嘈杂响应kv_p、第二随机数r2和不同于第一随机数r1与第二随机数r2的第三随机数r3的散列而计算值u1;向NFC目标装置发射第五消息,所述第五消息包含值u1和第三随机数r3;从NFC目标装置接收第六消息,所述第六消息包含提供者敏感数据以及基于UID编号、由目标产生的第二嘈杂响应kv_t和第三随机数r3的散列的值u2;基于UID编号、由提供者产生的第二嘈杂响应kv_p和第三随机数r3的散列而计算值u3;基于接收到的值u2和计算出的值u3而认证NFC目标装置;以及接受接收到的提供者敏感数据。根据另一方面,通过由目标产生的第二嘈杂响应kv_t对提供者敏感数据进行加密,并且处理电路进一步用于使用由提供者产生的第二嘈杂响应kv_p对接收到的提供者
敏感数据进行解密。
附图说明
具体实施方式
电路。处理电路从多个提供者接收多个提供者标识(PID)编号,其中每一PID编号与不同提
供者相关联。处理电路还在存储器电路处存储PID编号,并向接收到的和存储的每一PID编
号分配特权掩码。NFC目标装置还可包含物理不可克隆函数(PUF)电路。处理电路可另外向
PUF电路提供一或多个PID编号作为输入询问,并从PUF电路接收一或多个PUF输出响应,其
中PUF输出响应彼此不同且与不同提供者相关联。
106a、106b……106n。
根据另一实例,NFC目标102可为具有自己的电源的有源装置。出于清楚和简单性起见,本文中,NFC目标102可被称作“NFC卡”。然而,NFC卡102可为任何其它类型的NFC目标装置,其不限于标签、黏贴签、密钥卡等。
WCD 104还可通过有线通信协议、远程无线通信协议或其它短程通信协议而与一或多个服
务器106a、106b……106n和其它装置通信。WCD 104的一些非限制性实例可为(但不限于)膝上型计算机、智能手机、平板计算机、个人数字助理、桌上型终端、具有NFC功能性的包含智能手表和头戴式显示器的可穿戴装置。
与向超过某一年龄的成人提供酒精类饮品的机构相关联,第二服务器106b可与例如超市的
商家相关联,所述商家向它的客户提供会员卡以有助于促进奖励计划,并且另一服务器
106n可为服务的提供者,例如安全公司,其向它的客户分配安全密钥卡和相关账户信息。
特有的询问-响应机制。当向PUF施加物理刺激(例如,询问)时,PUF以不可预测但可重复的方式产生响应,这是因为刺激与采用PUF的装置的物理微观结构发生复杂交互。这个精确的微观结构取决于在制造采用PUF的装置期间引入的物理因素,所述物理因素是不可预测的。
PUF难以克隆,因为采用PUF的每一装置具有将询问映射到响应的唯一且不可预测的方式,
即使一个装置与另一看起来相同的装置是用相同过程制造的。因此,用与另一装置的PUF相同的询问-响应行为建构PUF极不实际,因为对制造过程的精确控制(如果可行的话)极其困
难。
116的生日、身分证号码、电话号码、年龄、地址和信用卡号码。敏感数据110还可包含(例如)与不同提供者118相关联的账号、客户编号和/或奖励计划账户数据。敏感数据110可包含用户116和/或提供者118希望确保安全的多个其它类型的数据。
蜂窝式网络和/或短程通信协议(例如, 等)而与一或多个服务器106a、
106b……106n通信的无线通信接口。
到他们的NFC卡102。例如,WCD 104可包含软件应用程序,用户116可使用所述软件应用程序以编程(例如,写入数据)他们的NFC卡102,从而包含某些数据110。
作人员可使用WCD 104以从用户116的NFC卡102读取数据110和/或将数据110写入到用户
116的NFC卡102。
的安全数据110访问等级。在登记期间,与提供者相关联的服务器106a可向NFC卡102提供它的PID。在一些情况下,服务器106a还可提供额外数据(例如,Data1)。这可通过向WCD 104发射PID+Data1(202)来实现,所述WCD 104随后通过NFC协议而向NFC卡102发射PID+Data1
(204)。在WCD 104属于用户或另外与用户相关联的情况下,驻留在WCD 104上的应用程序
206可供用户用于使WCD 104从服务器106a接收PID+Data1(202)以及向用户的NFC卡102发
射PID+Data1(204)。在另一情况下,用户可接近在提供者上且与提供者相关联的WCD 104,以使他们的NFC卡102接收PID+Data1(204)。
到提供者和它的服务器106a。
PID+Data1。根据一个方面,存储器电路216可为任何类型的非易失性存储媒体,包含但不限于快闪存储器、磁性存储装置、固态驱动、光学存储装置、磁带等。
来实现,所述WCD 104随后通过NFC协议而向NFC卡102发射PID+Data2(304)。在WCD 104属于用户或另外与用户相关联的情况下,驻留在WCD104上的应用程序206可供用户用于使WCD
104从服务器106a接收PID+Data2(302)以及向用户的NFC卡102发射PID+Data2(304)。在另一情况下,用户可接近在提供者上且与提供者相关联的WCD 104,以使他们的NFC卡102接收
PID+Data2(304)。
如,PID和Data1)进行比较来实现。假设NFC卡102验证服务器106a的真实性(306),NFC卡102基于PID应用与提供者和/或服务器106a相关联的特权掩码(308)。取决于所应用(308)的特
权掩码,NFC卡102产生具有不同复杂性和安全性的一或多个响应并将它们发射回到提供者
的服务器106a(310)。如下文将更详细地描述,在一个方面中,响应于接收到提供者的PID+Data2(304),响应可仅将与NFC卡102相关联的用户标识(UID)编号提供回到服务器106a。在其它方面中,一或多个响应的安全性和复杂性可能会增加,并且可并入(例如)对由NFC卡的PUF 108产生的询问的响应。
102的响应。服务器106a接着可任选地验证从NFC卡102接收的响应(314),例如,通过比较它与存储在它的存储器电路216中(214)的先前检索的响应。因此,如果在验证期间在服务器
106a处接收到的(312)响应匹配与NFC卡102(例如,NFC卡A)相关联的先前存储(214)的响应
数据,那么NFC卡102可认证成功,并且可信任从NFC卡102检索的数据110。
PIDB、PIDN),所述PID唯一地标识它们以便在NFC卡102(例如,NFC卡A)处登记和验证。以此方式,多个提供者可使用他们的唯一PID而在系统中登记。NFC卡102可存储与所登记的提供者的服务器106a、106b……106n中的每一个相关联的数据402、404、406(例如,PID信息和其它数据)。响应于供应到NFC卡102的PID和其它数据,每一服务器106a、106b……106n可存储由NFC卡102产生的唯一响应410、412、414。存储这些响应410、412、414以使得服务器106a、
106b……106n可稍后验证NFC卡102的真实性。服务器106a、106b……106n可存储它们已经
登记的每一不同NFC卡的响应。WCD 104可充当服务器106a、106b……106n和NFC卡102之间
的通信管道。
分,其可根据第一特权掩码而可用于(例如,被发射到)第一提供者(例如,提供者A)的服务器106a。第一提供者敏感数据502可包含(例如)NFC卡用户的名称、年龄和用户116的照片。
因此,假设必要时,NFC卡102和/或服务器106a认证成功,那么最多只有这个信息可用于和/或被发射到第一提供者的服务器106a。
的奖励计划卡/账户号码。因此,假设必要时,NFC卡102和/或服务器106b认证成功,那么最多只有这个信息可用于和/或被发射到第二提供者的服务器106b。以此方式,敏感数据110
可包含与N个不同提供者和/或服务器相关联的N个提供者敏感数据502、504、506。
106a的密码认证。
(606)。特权掩码有助于限定敏感数据110中为提供者敏感数据(例如,第一提供者敏感数据
502)的部分,其可在(例如)服务器106a稍后尝试访问存储在NFC卡102上的敏感数据110时
被提供到服务器106a。根据一个方面,在NFC卡102分配特权掩码之前,NFC卡102和服务器
106a协商待分配的特权掩码。这可包含服务器106a向NFC卡102发射特权掩码请求,所述特
权掩码请求指示所希望的对存储在NFC卡102上的某些类型的敏感数据110的访问等级。然
而,NFC卡102可最终决定是否允许服务器106a的请求,以及向它的PID分配哪一特权掩码
(606)。以此方式,NFC卡102可控制提供者敏感数据502中包含在验证之后服务器106a可稍
后访问的哪些敏感数据。在分配特权掩码(606)之后,NFC卡102向服务器106a发射与NFC卡
102相关联的用户标识(UID)编号(608)。UID是唯一标识NFC卡102的唯一编号或值。接着,服务器106a存储与NFC卡102相关联的UID(610)。
联的特权掩码(654)。接着,NFC卡102向服务器106a发射它的用户标识(UID)编号和与提供
者和/或服务器106a相关联的第一提供者敏感数据502(656)。然后,服务器106a验证它实际上是否存储有匹配从NFC卡102接收的UID的UID值(658)。假设它存储有所述UID值,那么服
务器106a可接受接收到的第一提供者敏感数据502(660)。
消息(702)。NFC卡102接着可存储接收到的PID(704),并分配与PID相关联的特权掩码
(706)。根据一个方面,NFC卡102和服务器106a协商所分配的特权掩码(例如,服务器106a发射指示所希望的敏感数据访问等级的特权掩码请求)。在分配特权掩码(706)之后,NFC卡
102将它具有h(PID,r1)的PUF 108执行为询问(708),由此产生嘈杂响应ke。响应ke是嘈杂
的,因为它在一定程度上不同于预期的清晰(即,非嘈杂)响应k,这是由与NFC卡102和/或
PUF 108装置自身相关联的噪声(例如,热、电等)导致的。因此,理想的是,PUF 108将产生针对询问h(PID,r1)的响应k,但是由于噪声,PUF实际上产生了嘈杂响应ke。然而,如所属领域中已知,可使用帮助程序数据产生函数(本文中表示为Gen())来产生帮助程序数据,以使
得清晰PUF响应能够基于嘈杂响应再现。
从嘈杂响应ke中再现清晰响应k。因此,服务器106a可执行Rep(ke,he)(714)以产生清晰响应k。服务器106a接着可存储UID和响应k(716)。
执行为询问(756),由此产生NFC的由目标产生的第二嘈杂响应kv_t。第二嘈杂响应kv_t不同于第一嘈杂响应ke,即使询问(h(PID,r1))因为噪声的不可预测性而为相同的。NFC卡102接着执行Gen(kv_t)(758)以产生与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv。
502的消息从NFC卡102发射到服务器106a(762)。
106a是参与登记过程的与彼此相同的装置(即,两个都不是由不同的装置冒充的),那么由
目标产生的第二嘈杂响应kv_t和由提供者产生的第二嘈杂响应kv_p应该相同。接着,服务器
106a使用它先前再现(766)的由提供者产生的第二嘈杂响应kv_p来产生u2=h(UID,hv,kv_p,r2)(768),以验证它从NFC卡102接收的值u1是否匹配(例如,等于)它产生的值u2(770)。如果u1=u2,那么NFC卡102由服务器106a认证通过,并且服务器106a可以可靠地接受接收到的第一提供者敏感数据502(772)。
面,NFC卡102和服务器106a协商所分配的特权掩码(例如,服务器106a发射指示所希望的敏感数据访问等级的特权掩码请求)。在分配特权掩码(806)之后,NFC卡102将它具有h(PID,
r1)的PUF 108执行为询问(808),由此产生嘈杂响应ke。
106a向NFC卡102发射包含PID、h(PID,r1)和r1的消息(856)。NFC卡102接着可将它具有h
(PID,r1)的PUF 108执行为询问(858),由此产生由目标产生的第二嘈杂响应kv_t。由目标产生的第二嘈杂响应kv_t不同于第一嘈杂响应ke。NFC卡102接着执行Gen(kv_t)(860)以产生与第二嘈杂响应kv_t相关联的帮助程序数据hv,并向服务器106a发射包含帮助程序数据hv和第二随机数r2(不同于第一随机数r1)的消息(862)。
据502的特征。
870、872、874、876、878的相互认证。然而,作为对安全性的额外测量,在应用特权掩码(878)之后,NFC卡102发射包含值u3和与提供者和/或服务器106a相关联的第一提供者敏感数据
502的加密版(由函数Enc()表示)的消息(902)。将由目标产生的第二嘈杂响应kv_t用作密
钥来加密第一提供者敏感数据502。在验证值u3=u4(884)之后,服务器106a接受敏感数据,并使用服务器106a先前产生(866)的由提供者产生的第二嘈杂响应kv_p对接收到的敏感数
据进行解密(904)。在一种情况下,NFC卡102可将由目标产生的第二嘈杂响应kv_t用作密钥来加密发射(902)的整个消息。在此情况下,在产生u4和验证u3=u4之前,服务器106a首先使用它的由提供者产生的第二嘈杂响应kv_p,对接收到的消息进行解密。
104(见图1到4)可充当NFC卡102和服务器106a之间的通信中间物(例如,使用NFC向NFC卡
102发射数据/从NFC卡102接收数据以及使用远程或短程通信协议向服务器106a发射数据/
从服务器106a接收数据)。在其它方面中,服务器106a可自身具有NFC接口,并因此可使用
NFC而与NFC卡102直接通信。
NFC目标装置相关联的用户标识(UID)编号,其中UID编号标识NFC目标装置1008。
1102。然后,装置应用分配到第一PID编号的第一特权掩码,以将可用于第一提供者的敏感数据限制为第一提供者敏感数据1104。接着,目标装置向第一提供者发射UID编号和第一提供者敏感数据1106。
第一提供者1202。然后,NFC目标装置在存储器电路处存储第一PID编号1204。接着,目标装置向第一PID编号分配第一特权掩码,其中第一特权掩码将敏感数据的至少一部分标示为
第一提供者敏感数据1206。然后,NFC目标装置向PUF电路提供第一PID编号和第一随机数r1的散列作为输入询问以获得第一嘈杂响应ke 1208。接着,目标装置执行帮助程序数据产生函数以产生与第一嘈杂响应ke相关联的帮助程序数据he1210。然后,目标装置向第一提供者发射第二消息,所述第二消息包含用户标识(UID)编号、第一嘈杂响应ke和帮助程序数据he,其中UID编号标识NFC目标装置1212。
限制为第一提供者敏感数据1304。然后,目标装置向PUF电路提供第一PID编号和第一随机
数r1的散列作为输入询问以获得由目标产生的第二嘈杂响应kv_t1306。接着,目标装置执行帮助程序数据产生函数以产生与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv
1308。然后,目标装置计算包含UID编号、帮助程序数据hv、由目标产生的第二嘈杂响应kv_t和第二随机数r2的散列的值u1 1310。接着,目标装置向第一提供者发射第四消息,其中第四消息包含UID编号、值u1、第二随机数r2、帮助程序数据hv,以及第一提供者敏感数据1312。
1402。然后,目标装置从第一提供者接收第三消息,其中第三消息包含第一PID编号、第一随机数r1以及第一PID编号和第一随机数r1的散列1404。接着,目标装置向PUF电路提供第一
PID编号和第一随机数r1的散列作为输入询问以获得由目标产生的第二嘈杂响应kv_t
1406。然后,目标装置执行帮助程序数据产生函数以产生与由目标产生的第二嘈杂响应kv_t相关联的帮助程序数据hv 1408。接着,目标装置向第一提供者发射第四消息,其中第四消息包含第二随机数r2和帮助程序数据hv,并且第二随机数r2不同于第一随机数r1 1410。然后,目标装置从第一提供者接收第五消息,其中第五消息包含第三随机数r3和值u1,第三随机数不同于第一随机数r1和第二随机数r2,并且值u1基于UID编号、由提供者产生的第二嘈杂响应kv_p、第二随机数r2和第三随机数r3的散列1412。
且可由服务器访问的提供者敏感数据1504。接着,服务器从NFC目标装置接收与NFC目标装
置相关联的用户标识(UID)编号,其中UID编号标识NFC目标装置1506。然后,服务器在存储器电路中存储UID编号1508。
然后,服务器接受接收到的提供者敏感数据1608。
1708。
1808。然后,服务器基于UID编号、帮助程序数据hv、由提供者产生的第二嘈杂响应kv_p和第二随机数r2的散列而计算值u2 1810。接着,服务器基于接收到的值u1和计算出的值u2而认证NFC目标装置1812。然后,服务器接受接收到的提供者敏感数据1814。
着,服务器验证从NFC目标装置接收的UID编号是否匹配存储于存储器电路中的UID编号
1904。然后,服务器向NFC目标装置发射第三消息,其中第三消息包含PID编号、第一随机数r1,以及PID编号和第一随机数r1的散列1906。接着,服务器从NFC目标装置接收第四消息,其中第四消息包含不同于第一随机数r1的第二随机数r2和与由目标产生的第二嘈杂响应kv_t
相关联的帮助程序数据hv 1908。然后,服务器基于NFC目标装置的UID编号而获得PUF响应k
1910。接着,服务器基于PUF响应k和帮助程序数据hv而执行再现函数,以再现由提供者产生的第二嘈杂响应kv_p 1912。
输出发送到两个或两个以上交换器(复用器)2004、2006。询问充当到每一交换器2004、2006的输入,这使得每一交换器2004、2006接着从多个RO 2002之中选择单个RO。发送到交换器
2004、2006的询问被设计成使得每一交换器2004、2006选择不同的RO。所选择的RO各自具有与它们相关联的略微不同的谐振频率,这是由于半导体等级制造的细微差异,即使每一RO
可能都被制造成相同的。PUF输出(响应)由如通过计数器2010、2012所测量/存储的这些所
选择的环形振荡器的频率的成对比较2008产生。例如,如果相比于第二计数器2012,第一计数器2010检测更高的频率,那么可产生逻辑“1”,否则可产生逻辑“0”。以此方式,所进行的比较表示其中所选RO对是询问而RO频率比较结果是响应的询问/响应机制。发布到不同但
(几乎)以相同方式制造的NFC卡102的相同询问将会产生不同的响应值,所述NFC卡102具有
PUF 108。这反过来又有助于标识不同的NFC卡102,即使NFC卡102可能被制造成相同的。
12、13、14A、14B、15、16、17、18A、18B、19A和/或19B中所示和描述的敏感数据110。I/O接口
2106可包含一或多个按钮、键盘、传感器、相机、触摸屏等。可替代地,NFC目标装置2100可能不具有I/O接口2106。NFC通信接口2108允许NFC目标装置2100通过NFC协议发射和接收数
据。例如,NFC通信接口2108允许NFC目标装置2100与具有NFC询问器的WCD 104和/或装备有NFC询问器的服务器106a通信。
不同提供者相关联;在存储器电路2104处存储PID编号;向接收到的和存储的每一PID编号
分配多个特权掩码中的特权掩码;基于分配到与提供者相关联的PID编号的特权掩码,向每一提供者发射与提供者相关联的敏感数据的部分;在向接收到的和存储的每一PID编号分
配特权掩码之前,从每一提供者接收指示所希望的敏感数据访问等级的特权掩码请求;向
PUF电路108提供多个PID编号中的一或多个PID编号作为输入询问;响应于提供一或多个
PID编号作为输入询问而从PUF电路108接收一或多个PUF输出响应,所述PUF输出响应彼此
不同且与不同提供者相关联;和/或至少部分地使用与不同提供者相关联的一或多个PUF输
出响应来认证一或多个提供者。
置接收与NFC目标装置相关联的用户标识(UID)编号;和/或在存储器电路2204中存储UID编
号。
22中所示出的设备、装置和/或组件可经配置以执行在图6、7A、7B、8A、8B、9、10、11、12、13、
14A、14B、15、16、17、18A、18B、19A和/或19B中所描述的方法、特征或步骤中的一或多个。本文中所描述的算法还可高效地实施在软件中和/或内嵌于硬件中。
10、11、12、13、14A和/或14B和相关文本中所描述的算法、方法和/或步骤。因此,此类专用处理器(例如,ASIC)可为用于执行在图6、7A、7B、8A、8B、9、10、11、12、13、14A和/或14B中所描述的算法、方法和/或步骤的装置的一个实例。
18B、19A和/或19B和相关文本中所描述的算法、方法和/或步骤。因此,此类专用处理器(例如,ASIC)可为用于执行在图6、7A、7B、8A、8B、9、15、16、17、18A、18B、19A和/或19B中所描述的算法、方法和/或步骤的装置的一个实例。
行本文中描述的功能的任何组合来实施或执行结合本文中揭示的实例而描述的各种说明
性逻辑块、模块、电路、元件和/或组件。通用处理器可为微处理器,但是在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算组件的组合,例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心或任何其它此类配置。
置中或跨越多个装置而分布。软件模块可驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM,或所属领域中已知的任何其它形式的存储媒体中。存储媒体可耦合到处理器,使得处理器可从存储媒体读取信息且将信
息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。
以及强加于整个系统的设计约束。