CN104715187A - 用于认证电子通信***中的节点的方法和装置 - Google Patents

用于认证电子通信***中的节点的方法和装置 Download PDF

Info

Publication number
CN104715187A
CN104715187A CN201410681506.3A CN201410681506A CN104715187A CN 104715187 A CN104715187 A CN 104715187A CN 201410681506 A CN201410681506 A CN 201410681506A CN 104715187 A CN104715187 A CN 104715187A
Authority
CN
China
Prior art keywords
node
intrinsic
code
yard
host computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410681506.3A
Other languages
English (en)
Other versions
CN104715187B (zh
Inventor
S·切尔拉帕
桐畑外志昭
S·罗塞恩布拉特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kaiwei International Co
Marvell International Ltd
Marvell Asia Pte Ltd
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN104715187A publication Critical patent/CN104715187A/zh
Application granted granted Critical
Publication of CN104715187B publication Critical patent/CN104715187B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2103Challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2129Authenticate client device independently of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3273Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供用于认证电子通信***中的节点的方法和装置。第一节点的固有ID的第一副本可以存储在第二节点上。第一节点可以接收使得其生成其固有ID的第二副本的要求。第二副本和随机值可以用作函数的输入以生成第一码。第一码发送到第二节点。第二节点使用随机值和/或固有ID的其本地副本来对第一码进行解码。第二节点针对其本地信息来检查已解码信息,并且如果存在匹配,则认证第一节点。

Description

用于认证电子通信***中的节点的方法和装置
技术领域
本申请总体涉及电子通信,更具体地说,涉及用于各电子设备之间的电子通信的认证协议。
背景技术
发送机和接收机之间的电子通信可以包括一个或多个安全或认证等级,包括:确认发送机和接收机的各个身份以及对它们之间所传送的数据进行加密。对于认证,一些传统方法使用ID和密码。可以使用公钥和私钥通过加密来保护通信。然而,当未授权的发送机和接收机获知ID和密码时,未授权的访问或未授权的通信是可能的。相应地,可能期望实现通信协议以保护电子***不受未授权的访问或使用。
发明内容
本公开的实施例包括一种用于认证电子通信***中的节点的方法、***和计算机程序产品。从节点接收认证请求。将生成要求发送到所述节点,其中,所述生成要求提示所述节点生成表示具有包括第一随机值和基于固有特征的第一固有ID的输入的第一加密要求的输出的第一码。从所述节点响应于所述生成要求而接收所述第一码。生成第二码,其中,所述第二码表示具有包括所述第一码、第二随机值以及第二固有ID中的至少两个的输入的第二加密要求的输出,其中,从除了所述节点之外的源获得所述第二固有ID。基于以下项中的一个或多个来认证所述节点:(a)所述第二加密要求具有所述第二随机值和所述第二固有ID的输入以及所述第二码匹配所述第一码;(b)所述第二加密要求具有所述第一码和所述第二随机值的输入以及所述第二码匹配所述第二固有ID;以及(c)所述第二加密要求具有所述第一码和所述第二固有ID的输入以及所述第二码匹配所述第二随机值;由此,所述第一随机值匹配所述第二随机值,所述第一固有ID匹配所述第二固有ID。
以下参照附图详细描述各个实施例的其它特征以及结构和操作。在附图中,相同标号指示相同或功能相似的要素。
附图说明
图1是描述根据本公开实施例的通信***的示意性框图;
图2A是描述根据本公开实施例的使用至少一个固有ID的通信***的示意性框图;
图2B是描述根据本公开实施例的使用至少两个固有ID的通信***的示意性框图;
图2C是描述根据本公开实施例的使用至少三个固有ID的通信***的示意性框图;
图2D是描述根据本公开实施例的使用一个或多个固有ID的通信***的示意性框图;
图3是描述根据本公开实施例的用于认证通信***中的节点的方法的步骤的流程图;
图4是描述根据本公开实施例的计算机***的示意性框图;
图5是描述根据本公开实施例的示例性云计算环境的示意性框图;以及
图6是描述根据本公开实施例的图5的云计算环境的多层功能实施例的示意性框图。
具体实施方式
图1是描述根据本公开的实施例的通信***101的示意性框图。现参照图1,本公开的实施例包括基于固有ID的芯片对芯片通信***101。通信***101可以启用包括例如节点100A、100B和100C的两个或更多个节点100之间的安全通信。每个这样的节点100可以分别包括通信设备或芯片110,例如芯片110A、110B和110C。在有关实施例中,芯片110可以是对应通信设备的构成组件。给定对应生成要求,每个芯片110可以具有可以用于生成一个或多个对应固有ID的唯一固有特征(IF)200或特性。例如,芯片110的IF可以是SRAM(静态随机存取存储器)的通电电压值、环形振荡器物理不可克隆函数(PUF)配对或DRAM保留故障计数。通常,芯片110的IF 200可以是其它芯片中无法复制的芯片110的唯一物理特性。所生成的固有ID可以是例如所生成的数字二进制矢量,如{0010100001111…1101}。
可以采用若干方法、机制和***以响应于生成要求而使用其IF200来生成芯片110的一个或多个唯一并且难以复制的固有ID。如以下更详细地描述的那样,生成要求可以被设计为:从芯片110诱发对于芯片并且还对于生成要求都唯一的固有ID响应。响应于生成要求所生成的固有ID可以是例如数字二进制矢量。由于从芯片110的IF200推导固有ID,因此不同的芯片110将不能够产生对给定生成要求的同一固有ID响应。用于生成固有ID的IF 200可以不随着时间以及其它字段条件而变化。基于芯片110的IF 200所生成的固有ID唯一地依赖于芯片的某种固有属性,从而使用同一要求的不同芯片将不能够产生同一固有ID或该固有ID的紧密近似。在一些实施例中,芯片110可以基于多个生成要求而生成大量这样的固有ID,以使得能够在芯片110享有的/进行的每个认证和/或通信期间使用不同的固有ID,这进一步加强了安全性。
用于生成芯片的唯一固有ID的一种实现方式描述于2013年5月23日公开的Fainstein等人的题为“Retention Based IntrinsicFingerprint Identification Featuring a Fuzzy Algorithm and aDynamic Key”的美国专利公开20130133031A1(“Fainstein 2013”)中,通过其引用而全部合并到此。
生成芯片的唯一固有ID的附加实现方式描述于IEEE Journal ofSolid-State Circuits,Vol.48,No.4,April 2013中公开的Rosenblatt等人的“Field Tolerant Dynamic Intrinsic Chip ID Using 32nmHigh-K/Metal Gate SOI Embedded DRAM”(“Rosenblatt 2013”)中,通过其引用而全部合并到此。
生成芯片的唯一固有ID的另一实现方式描述于CustomIntegrated Circuits Conference(CICC),2011IEEE的Chellappa等人的“Improved Circuits for Microchip Identification using SRAMMismatch”(“Chellappa 2011”)中,通过其引用而全部合并到此。
生成芯片的唯一固有ID的另一实现方式描述于Proceedings ofthe 44th Annual Design Automation Conference(ACM),2007,Suh等人的“Physical Unclonable Functions for Device Authentication andSecret Key Generation”(“Suh 2007”)中,通过其引用而全部合并到此。
用于生成芯片的唯一固有ID的附加实现方式描述于Ravikanth等人的博士论文“Physical One-Way Functions”(“Ravikanth 2001”)中,通过其引用而全部合并到此。
虽然芯片110包含固有特征IF 200,但它们的对应固有ID并未保存在芯片110自身或包含芯片110的节点100上。或者,芯片110能够使用它们的各个IF 200来生成固有ID。图1中所描述的芯片110A、110B和110C的IF 200可以分别是例如IF 200A、IF 200B和IF 200C。
各节点100的认证和/或它们之间的通信可以为主机***300所便利,主机***300可以是例如原始设备制造商(OEM)或网络管理器。主机***300可以保存芯片110的固有ID(即基于节点100上的芯片110的对应IF 200的固有ID)的记录(即副本)。可以如下获得主机***300的记录中所保存的这些副本:生成要求可以呈现给芯片110,响应于此,芯片110使用芯片110的IF 200来生成固有ID的副本。芯片110的固有ID的所生成的副本连同用于生成它的要求一起可以存储在主机***300的记录中。此后,如以下将描述的那样,可以询问主机***300的记录以获得所存储的芯片110固有ID的副本。所询问的副本可以然后用于便利芯片110、节点100和/或它们进行的通信的认证。
在原始制造商可以操作主机***300的情况下,可以从已知的芯片110固有ID组装芯片110的固有ID的记录。例如,一旦原始制造商制造了芯片110,原始制造商就可以生成芯片110的固有ID,并且在记录中存储它们,如上所述。替代地,并且并非限制,可以许可节点100和/或芯片110注册到主机***300,由此,主机***300接收注册芯片110和/或节点100的固有ID的记录。在有关实施例中,芯片110的固有ID的记录/副本可以存储在与主机***300通信的不同***上的记录中,由此,主机***300可以重获固有ID的副本。
任何节点100可以将请求130发送到主机***300,以认证节点100和/或许可与另一节点100或与多个节点100的通信。例如,节点100A可以将请求130A发送到主机300,请求对于与节点100B的通信的认证和/或许可。相似地,节点100B可以将请求130B发送到主机***300,请求对于与节点100A或与另一节点100的通信的认证和/或许可。
在从节点100接收到请求130时,主机***300可以通过对从芯片的IF 200生成的请求节点的芯片110的至少一个固有ID的所生成的副本(即,作为认证处理的一部分所生成的固有ID的副本)、与由主机***300或主机***300能访问的另一***/设备所保存的主机***300的记录中存储的芯片固有ID的对应的所存储的一份副本(或多份副本)进行比较来认证节点100。固有ID的所生成的副本与固有ID的所存储的副本之间的比较无需是直接的,即,在比较之前,可以存在一个或多个加密等级,如结合以下更详细讨论的本公开实施例所描述的那样。
发送请求130的节点100上的芯片110的固有ID的所生成的副本由请求芯片110动态地生成(即,其是作为认证方法的一部分而生成的),而主机***300的记录中所存储的对应副本是芯片110的固有ID的对应副本。如果请求节点100得以成功地认证,则主机***300可以将对应的认证成功消息140传送到节点100。主机***300可以批准150用于节点100A与节点100B之间的通信105开始的许可。如果认证失败,则主机***300可以传送对应的认证失败消息141,并且可以拒绝151用于节点100A与节点100B的通信的许可。
在另一示例性实施例中,继续参照图1,建立芯片对芯片通信105的处理可以开始于例如节点100A将请求130A发送到主机***300,其可以是对认证的请求和/或对与节点100B通信的请求。主机***300可以通过确认其芯片110A的身份来认证请求节点100A,如本公开实施例中描述的那样。主机***300也可以认证节点100B。相应地,主机***300可以通过对使用芯片110A和110B的IF 200A和IF 200B生成的节点100A和100B的固有ID与主机***300的记录中的对应的所存储的副本进行比较来认证它们。请求和认证方法对于这两个节点100A和节点100B可以是相同的,并且可以进一步扩展到其它连接到与主机***300进行通信的节点100的网络的其它节点(100C等)。如果节点100A和节点100B是认证的,则主机***300可以分别将对应认证成功消息(或信号)140A和140B发送到节点100A和节点100B。如果这两个节点不是认证的,则主机***300可以分别将对应认证失败消息(或信号)141A和141B发送到节点100A和节点100B。如果两个节点100A和100B的认证是成功的,则主机***300可以批准150对节点100A和100B通信的许可。否则,主机***300可以拒绝151通信。
虽然对本公开实施例的主机***300的引用将主机***300描述为便于两个或更多个节点100之间的通信,但主机***300并不一定促进这些通信而超出认证通信中所涉及的节点100。因此,根据本公开一些实施例,主机***300可以是单机认证***,或可以是执行附加连网和通信功能的较大***的一部分。
图2A描述根据本公开示例性实施例的包括节点100A和主机***300的图1的通信***100的子集。为了发起通信,请求通信的节点(例如节点100A)可以将通信请求130A发送到主机***300。这可能要求节点100A通过可以用于在主机***的300的数据库中查询节点100A的ID细节的唯一公共标识符(如MAC地址、制造商序列号)来标识自身。操作于或结合于节点100A和/或主机***300的计算机程序351可以促进节点100A和主机***300的功能。程序351可以发送/接收通信请求,促进节点100A上的固有ID生成,促进主机***300上的固有ID询问,执行所生成的和所询问的固有ID和/或基于此的加密值的比较。程序351在主机***300和节点100A上可以是相同的。替代地,均可以具有执行上述功能子集的不同程序。
在从节点100A接收到通信请求130A时,主机***300可以访问其数据库,如以下更详细描述的那样,以定位节点100A的固有ID细节。主机***300也可以从多个可用的生成要求当中选择生成要求135,并且将所选择的生成要求135发送到节点100A。生成要求135可以被设计为:诱发来自芯片110A的固有ID响应(例如ID1201A),其对于芯片并且也对于生成要求135都是唯一的。响应于生成要求所生成的固有ID可以是例如数字二进制矢量。由于从每个芯片的唯一固有属性(例如IF 200A)推导固有ID,因此相同类型的不同芯片可以对于给定的生成要求并不生成同一固有ID(例如UD 201A)。
在例如以上通过引用所合并的Fainstein 2013、Rosenblatt 2013、Chellappa 2011和Suh2007以及Ravikanth 2001中所描述的生成要求135的说明性和非限定性示例包括:SRAM的通电电压、环形振荡器PUF的配对、DRAM保留失败计数、仲裁器PUF中的竞争情况的结果、或无序三维微结构的光学斑点。在SRAM示例中,每个单元的位线和字线节点可以在存储器的通电期间一起短接到电源。如何对两个节点通电的这种要求从可以读取高电压(“1”)或低电压(“0”)的每个SRAM单元生成固有响应。这些电压读数可以用于生成芯片的对应唯一固有ID。在环形振荡器PUF中,芯片上的环形振荡器的配对的固有频率彼此比较,如果第一频率大于第二频率,则不等式的结果为“1”,否则为“0”。存在N个环形振荡器的N!个独立配对。选取哪些独立配对以创建数字二进制矢量可以构成一个要求。作为第三示例,可以通过字线低电压VWL来调整DRAM的保留失败计数,直到达到目标失败计数要求。
响应于生成要求135,芯片110A可以生成固有ID 201A,其可以是数字二进制矢量,如上所述。芯片110A响应于要求135所生成的固有ID可以包括使用至少一个ID1201A的至少一个部分。其也可以包括使用两个ID(例如ID1201A和ID2202A)的两个部分,如参照图2B所描述的那样,或使用三个ID(例如ID1201A、ID2202A和ID3203A)的三个部分,如结合图2C所描述的那样。在其它实施例中,单个所生成的ID可以划分为用于认证和/或通信处理的多个部分。
图2A描述芯片110A的所生成的固有ID包括单个固有ID分量ID1201A的实施例。替代地,节点100A可以通过使用主机***300和节点100A先前已经协定的算法而使用主机***300提供的要求135以生成一个内部要求(或在其它实施例中两个或三个内部要求);例如,作为通信***101的组件用于定义通信协议和策略的配置文件的一部分。在使用多于一个的固有ID的实施例中,可以响应于分离的生成要求而生成每个固有ID。
除了生成要求135之外,响应于节点100A生成固有ID,加密要求也可以从主机300发送到节点100A。加密要求可以用于对可以在主机***300和节点100A的其它认证函数中所使用的一个或多个值进行加密和/或解密,如下所述。在节点100A进行接收时,所生成的ID1201A连同随机生成的数R 210一起可以输入到加密要求。加密要求可以是例如数学函数f1220,其中,函数f1(ID1201A,R 210)的输出取决于其给定的输入。函数f1220可以作为加密要求由主机***300发送到节点100A,或其可以是对于节点100A和主机***300都可访问的预定函数。随机数R 210(其可以是矢量)可以是预定的并且存储在对应芯片110A或节点100A中,或其可以由节点100A或芯片110A使用例如作为对使用加密要求的预定算法的输入的***时间或用于随机要求生成器的种子而得以动态地生成,以在需要随机数的每个操作期间具有唯一随机数210。节点100A外部的随机生成器也可以生成随机数R 210。当随机数R 210是预定的并且存储在节点100A中或芯片110A中时,主机***300也可以存储同一随机数R 210的本地副本。
函数f1220可以是具有当其它输入为已知的时可以用于重获各原始输入f1220(例如ID1201A或R 210)之一的逆函数f1 -1320这样的函数。也可以在考虑没有其输入的先验知识的情况下选取函数f1220,其对于反向工程应该是困难的,并且仅使用输出f1(ID1201A,R 210)生成ID1201A和R 210。
函数f1(ID1201A,R 210)可以生成/输出第一码IDC-I 220A。一旦生成,该码就可以发送到主机***300,或可以在发送之前使用任何已知的加密协议而进一步被加密。所述加密协议可以包括但不限于传输层安全(TLS)、内部密钥交换、IPsec、KerBeros、点对点协议、或使用公钥架构(PKI)的协议。在一个实施例中,IDC-I 220A可以在发送之前散列化。当由主机***300接收时,IDC-I 220A表示函数f1220的输出。其是否实际上是函数f1220的输出取决于芯片110A和/或节点100A是否是认证的。因此,如下所述,主机***300可以针对另一值检查IDC-I 220A,以确定节点100A是否实际上是认证的。
主机***300可以从芯片110A接收IDC-I 220A,f1(ID1201A,R 210)的输出。在使用加密算法已经在发送之前对IDC-I 220A进行加密的情况下,主机***300可以在使用IDC-I 220A在执行其它操作之前对IDC-I 220A进行解密。通过使用IDC-I 220A,主机***300可以使用对应逆函数f1 -1320提取对f1220的原始输入中的一个或多个,如下所述。主机***300也可以询问其数据库记录以查询芯片110A固有ID(即ID 311A)的所存储的副本,其为与节点100A和要求135关联的副本(在具有多于一个的ID的实施例中,在图2B-图2C中,ID 312A,在图2C中,ID 313A)。ID 311A是芯片110A的固有ID的所存储的副本:ID1201A(以及在使用多于一个的ID的情况下,ID2202A(图2B-图2C)、ID3203A(图2C)),即,其与要求135对应。其为例如在芯片的制造或注册之后在主机***的300的数据库中所记录的固有ID。
主机***300可以使用逆函数f1 -1320以从所接收到的IDC-I220A提取f1220的输入中的一个或两个,只要主机***300具有IDC-I220A以及两个f1220输入ID1201A或R 210中的至少一个即可。相应地,主机***300可以尝试从IDC-I 220A提取R 210或ID1201A。
主机***300可以如下尝试提取R 210:其可以对逆函数f1 -1320提供IDC-I 220A和ID1311A,以提取EV 324作为输出(其中,EV代表“所提取的值”)。如果节点100A及其芯片110A是认证的,则ID1311A应匹配ID1201A,并且EV 324应匹配作为对f1220的输入由芯片110A所使用的R 210值,以生成IDC-I 220A。主机***300可以具有作为对f1220的输入由芯片110A使用的R 210的本地副本。这可以是这样的情况,例如,主机***300使用***时间在主机***300内部或从主机***300和节点100A都可访问的另一源再生R 210(或从与节点100A同步的随机值生成器获得它)。
在R 210的本地副本对于主机***300可用的情况下,主机***300可以执行检查344以比较EV 324与R 210的本地副本。可以从主机***300外部以及节点100A外部的随机生成器获得R 210的本地副本,其中,主机***300和节点100A都同时(例如当节点100A进行请求130A时)获得随机数。替代地,作为主机***300的一部分的随机数生成器可以获得R 210的本地副本,其中,所同步的***时间在节点100A与主机***300之间传送,以生成相同R 210值。如果EV 324匹配R 210的主机***的300的本地副本,则主机***300可以生成认证成功消息140A并且将其发送到节点100A。否则,主机***300可以响应于确定节点100A并非认证的而生成并且发送认证失败消息141A。在主机***300不保留或具有对R 210的本地副本的访问的实施例中,主机***300可以采用结合图2C所描述的认证机制。
替代地,或除从IDC-I 220A提取R 210之外,主机***300可以从IDC-I 220A提取ID1201A。相应地,其可以通过对逆函数f1 -1320输入R 210和IDC-I 220A的主机***的300的本地副本来确定EV 324。主机***300可以然后针对ID1311A检查344该EV 324。如果节点100A是认证的,则EV 324必须与ID1201A相同,并且因此将产生匹配,在此情况下,主机***300可以响应于认证请求130A而将认证成功消息140A发送到节点100A;否则,主机***300可以响应于认证请求130A而将认证失败消息141A发送到节点100A。
根据另一替选实施例,主机***300可以使用随机数的其自身的副本和ID1311A来生成IDC-I的本地副本(未示出)。主机***300可以因此直接对从节点100A接收到的IDC-I 220A与IDC-I的其本地副本进行比较。
在使用直接IDC-I比较的有关实施例中,主机***300和节点100A可以分别生成IDC-I 220A和本地副本,并且均可以通过散列算法来处理对应IDC-I码以到达对应散列值。散列算法可以是例如固有ID(例如{01000…})和随机数(例如{100010…})的OR函数(例如{110010…})。可选地,OR函数可以包括偏移。主机***300可以从节点100A接收散列值,并且对其与其自身的散列值进行比较。如果它们匹配,则节点100A将被看作是认证的;否则,认证将失败。在有关实施例中,芯片110A所生成的固有ID可以被散列化,并且与主机***300在记录中保存的固有ID的对应副本的散列值进行比较。
在使用散列函数的实施例中,如上所述,可以在附加安全性是期望的情况下实现。在这些实施例中,所生成的或询问的固有ID(例如分别ID1201A和ID1311A)或基于这些固有ID(例如IDC-I 220A)的加密码无法用在逆函数中以提取固有ID或对加密函数的其它输入(例如具有至少R 210或所生成或询问的固有ID的输入的f1220)。相应地,主机***300和节点100A均可以分别使用加密函数(例如f1220)以及随机数(例如R 210)和询问的固有ID(例如ID1311A)以及所生成的固有ID(例如ID1201A)的输入来生成码(例如IDC-I220A)。主机***300和节点100A可以均使用散列算法以生成对应散列值。如果不使用逆函数以对散列值进行解码,主机***300和节点100A可以均使用在进行散列值对散列值比较中的这些散列值以彼此认证,如上所述。
选择哪些值以用于生成码(例如IDC-I 220A)并且提取值(例如EV 324)取决于本公开特定实施例,包括各种考虑,如其对于动态地生成随机数(或存储预定值)是否是优选的。然而,在每种情况下,所生成的固有ID或其副本可以用在对应函数中。
图2B描述图1和图2A中所描述的通信***101的子集的替选实施例。通信***101可以包括结合图2A所描述的组件以及附加组件。节点100A的固有特征IF 200A可以用于生成两个而非仅一个对于认证所使用的所生成的固有ID。它们可以是ID1201A和ID2202A。
节点100A可以提交主机***300可以接收的认证请求130A。主机***300可以选择生成要求135,并且将其传送到节点100A,以使得其使用IF 200A生成其固有ID,即ID1201A和ID2202A(在有关实施例中,可以基于不同的生成要求或预定算法来生成这些ID中的每一个)。节点100A可以使用ID1201A和R 210作为函数f1220的输入,以产生IDC-I 220A。节点100A可以将IDC-I 220A传送到主机***300。
主机***300可以使用IDC-I 220A和ID1311A(后者是芯片的110A固有ID的主机***的本地副本)作为对f1 -1320的输入,以产生EV 324。如果ID1311A与ID1201A相同,则EV 324将等于R 210。如以上结合图2A所讨论的那样,R 210可以由主机***300本地存储或生成,或可以由主机***300从外部源获得。相应地,存在节点100A为认证的指示,并且主机***300可以生成对应认证成功消息140A。
随后,主机***300可以使用EV 324和ID2312A作为对第二可逆函数f2330的输入,从而f2(ID2312A,EV 324)生成被称为IDC-II330A的第二标识码的输出。函数f2330可以是与具有对应逆f1 -1230函数的f1220相似的函数。IDC-II 330A值可以发送到节点100A。与IDC-I 220A相似,可以使用本领域公知的技术在发送之前对第二标识码IDC-II 330A进行加密。除了生成并且发送IDC-II 330A之外,主机***300还可以执行结合图2A所描述的认证功能。替代地,主机***300可以保持认证确定,直到已经进行其它认证功能(例如,在主机***300没有随机数R 210的本地副本的情况下)。
继续参照图2B,节点100A可以从主机***300接收IDC-II 330A。节点100A可以使用逆f2 -1230函数以提取EV 240值(其中,EV代表“所提取的值”)。在确定EV 240的值中,节点100A可以使用f2 -1(IDC-II 330A,R 210)或f2 -1(IDC-II 330A,ID2202A)。如果节点100A和主机***300都是认证的,则在第一情况下,EV 240将是等于ID1201A的值,而在第二情况下,EV 240将是等于R 210的值。因此,节点100A可以执行检查244,以对EV 240与ID2202A或与R210进行比较。节点100A可以执行这两个检查,但这不是必须的。如果检查244是成功的(即,如果存在匹配),则节点100A可以做出认证确定180a:主机***300是认证的。否则,其可以确定主机***300并非认证的,并且其可以结束180其与主机***300的通信。这种功能提供针对非认证主机***300的节点100A保护,从而即使主机***300确定节点100A为认证的,节点100A也不一定必须信任主机***300,并且可以关于其是否应与另一节点(例如节点100B)进行通信而进行其自身的确定。
图2C描述图1-图2B中所描述的通信***101的替选实施例。通信***101可以包括结合图1-图2B所描述的组件和功能,并且可以包含在此所描述的附加或替选组件和功能。主机***300可以响应于来自节点100A的对认证的请求130A而传送生成要求135。响应于生成要求135,节点100A可以使用IF 200A(和/或芯片110A的其它IF)以及预定算法(其可以是生成要求135)来生成固有ID即ID1201A、ID2202A和ID3203A。替代地,可以使用一个IF 200A响应于三个不同的生成要求135而单独生成这三个固有ID。主机***300可以具有记录中所存储的包括ID1311A、ID2312A和ID3313A的这些ID的对应副本(或可以另外具有对其的访问)。如果主机***300和节点100A都是认证的,则主机***的300所保存的固有ID的所存储的副本将匹配节点100A/芯片110A所生成的固有ID。
节点100A可以通过使用f1(ID1201A,R 210)来生成IDC-I 220A,并且将其发送到主机***300。主机***300可以执行结合图2A所描述的认证功能。替代地,或外加地,主机***300可以生成IDC-II 330A,并且将其发送到节点100A,如结合图2B所描述的那样。替代地,或外加地,节点100A可以于在检查244中确定匹配时使用第三可逆函数f3250生成具有R 210和ID3203A的输入的第三码IDC-III 250A。主机***300可以接收IDC-III 250A,并且连同ID3313A或主机***的300的本地副本或R 210一起将其用作对逆函数f3 -1350的输入,从而(如果节点100A是认证的,则)f3 -1(IDC-III 250A,ID3313A)生成等于R 210的主机***的300的本地副本的EV 340(其中,EV代表“所提取的值”),并且(如果节点100A是认证的,则)f3 -1(IDC-III250A,ID3313A)生成等于ID3313A的EV 340。取决于对f3 -1350的输入,主机***300可以执行检查344以对EV 340与R 210的其本地副本或与ID3313A或与二者进行比较(但这并非必须的)。如果检查344的结果是肯定的(即存在匹配),则主机***300可以生成认证成功信号140A,并且将其发送到节点100A,否则,可以生成认证失败信号141A,并且将其发送到节点100A。
现参照图1-图2C,(例如,通过做出请求130B并且接收认证成功消息140B或认证失败消息141B),主机***300和节点100B可以进行主机***300和节点100A所进行的相同认证和/或通信请求和批准/拒绝过程,以认证节点100B,并且对于节点100B以认证主机***300。在节点100B得以认证时,主机***300可以把传达两个节点的成功标识的许可批准信号150发送到这两个节点100A和节点100B。
在这两个节点100A和节点100B都被批准对通信的许可之后,它们可以开始使用工业标准安全加密通信协议来彼此进行通信。
在一个或多个节点100之间的所建立的通信期间,***101的任何第一节点(例如节点100A或节点100B)可以请求主机***300重新认证第一节点正与之通信的第二节点。在此情况下,主机***300可以从第二节点请求标识。此时,上述整个认证和/或通信请求可以再一次出现。
图2D示出图1和图2A-图2C的通信***101的示例性实施例,并且还描述节点100A和主机***300的附加细节。根据图2D中所描述的实施例,通过使用其构成SRAM或DRAM单元的某种独特属性,存储器域或体115A的节点100A固有特征IF 200A可以用于使用大型板载存储器***(如缓存或随机存取存储器)来生成对应固有ID。芯片110A的不同部分(如存储器的不同体或域115A)上的同一生成要求135可以优选地生成三个不同的独特ID(例如ID1201A、ID2202A、ID3203A)。存储器域/体115A可以包括可以用于生成包括例如ID1201A、ID2202A和ID3203A的对应固有ID的项120A。
在从节点100A接收到通信请求时,主机***300可以询问其数据库400,并且重获与节点100A关联的记录404。记录404可以具有包含节点100A的固有ID的副本的多个项,每个项与不同生成要求135关联。记录404可以具有例如具有对应生成要求135的项404A。记录400的很多项中的项404的选择可以基于主机***300和节点100A都已知的预定算法。项404A可以例如与ID即ID1311A、ID2312A和ID3313A对应(也描述于图2C中)。与项404A关联的生成要求135可以由主机***300传送到节点100A。
现通常参照图2A-图2C,函数f1220、f2330和f3250均可以是包括XOR函数或偏移函数(例如比特移位运算)的可逆函数。对于每个这样的函数,只要其结果和其各输入之一是已知的,就可以使用对应逆函数来确定另外输入。通过将输出乘以或加上常数值可以进一步修改该函数的输出。逆函数f1 -1320、f2 -1230和f3 -1350均可以分别是f1220、f2330和f3250的除法的逆函数,并且可以还包括例如由同一常数值进行的除法或减法。
在替选实施例中,主机***300所提供的生成要求135或其一部分可以用于从预定义的函数的集合动态地选择函数f1220、f2330和f3250。预定义的函数可以是对于主机***300以及***101的各节点100中的每一个都可用的。
在替选实施例中,函数f1220、f2330和f3250可以是相同的函数。
再次参照图1-图2C,根据本公开替选实施例,可以通过以下方式来执行主机***300进行的认证:芯片110A可以生成IDC-I 220A值(即f1(ID1201A,R 210)的乘积),并且将其发送到主机***300。主机***300可以通过使用f1 -1320从所发送的IDC-I 220A值提取R 210的值,如上所述,其中,所提取的值是EV 324。主机300可以然后使用ID2312A和IDC-I 220A的值生成IDC-II 330A值。因此,可以根据f2(ID2312A,IDC-I 220A)(其也可以描述为f2(ID2312A,f1(R 210,ID1201A)))形成IDC-II 330A。该替选IDC-II 330A值可以发送回到节点100A。
节点100A可以从所发送的IDC-II 330A值提取EV 240值,以使用IDC-I 220A和R 210作为对f2 -1230的输入来验证主机***300,并且然后根据f3(EV 240,R 210)生成IDC-III 250A。替选IDC-III250A可以发送到主机***300。
主机***300可以使用具有IDC-III 250A和EV 324的输入的f3 -1350从所发送的值提取EV3340值,并且使用它来针对ID3313A的值而在检查344中认证节点100A。
相应地,ID1201A、ID2202A和R 210的组合可以使用仅两个ID来生成足够的不同消息(即f1(ID1201A,R 210)、f2(ID2202A,f1(R 210,ID1201A))、f3(ID2202A,R 210)),其难以为了获取关于单个ID的信息而反向工程。
再次参照图1-图2C,根据本公开附加实施例,节点100A可以如下认证主机***300。节点100A可以对主机***300发送认证请求130A,其可以是对主机***300将加密码发送到节点100A从而节点100A可以认证主机***300的请求。主机***300或节点100A可以选择对应生成要求135并且将其传送到彼此。主机***300所发送的加密码可以是例如由主机***300使用f1220所生成的具有(使用主机***300所保存/获得的R 210的副本的)R 210和ID1311A(其为来自与芯片110A和所传送的要求135对应的记录的主机***300所询问的节点100A上的芯片110A的固有ID的副本)的输入的IDC-I220A的副本。主机***300可以将该加密码传送到节点100A,并且可以在传送之前通过散列算法来处理它。节点100A可以自身使用采用(使用由节点100A所保存/获得的R 210的副本的)R 210和ID1201A(使用所协定的加密要求135所生成的芯片110A的固有ID的副本)的输入的f1220来生成IDC-I 220A。节点100A可进一步使用散列算法对IDC-I 220A进行加密,散列算法可以是主机***300和节点100A都具有访问并且协调以使用的散列算法。在从主机***300接收到加密码时,节点100A可以对加密码与节点100A上所生成的IDC-I220A或与其散列值进行比较。如果比较指示匹配,则节点100A可以认证主机300,并且基于认证而执行附加功能(未示出)。在该实施例中,节点100A不必将从加密要求推导的任何码发送到主机***300。
图3描述便于结合图1-图2D所描述的功能的在图2A-图2C中所描述的程序351的示例性实施例。程序351可以实施为在通信***101中的节点上操作的计算机程序,或其可以实施在多个节点100上。在多节点实施例中,程序351可以包括在例如主机***300上操作的组件351A和例如在节点100A上操作的组件351B。
请求节点100可以将组件351B的步骤352中的认证和/或通信请求发送到接收节点(其中,请求可以是请求130A,接收节点可以是主机***300)。作为该请求的一部分,或除该请求之外,请求节点也可以对接收节点发送公共ID(如MAC地址或制造商序列号)。请求节点具有可以用于促进认证的至少一个固有特征IF(例如IF 200A)。
接收节点的组件351A可以连同公共ID(如MAC地址)一起在步骤354中接收认证请求。在步骤356中,组件351A可以使用MAC地址来询问数据库(例如图2D中的数据库400),以选择生成要求(例如生成要求135)以及一个或多个对应固有ID(例如可以在记录404中存储的所询问的固有ID即ID1311A、ID2312A、ID3313A)。如果请求节点是认证的,则请求节点在程序351的其它步骤中所生成的固有ID(例如所生成的固有ID ID1201A、ID2202A、ID3203A)将匹配接收节点所询问的固有ID。在步骤356中,接收节点将所选择的生成要求传送到请求节点。
在步骤362中,请求节点接收所选择的生成要求。通过使用该生成要求,请求节点使用请求节点的固有特征(IF)(例如IF 200A)或请求节点的组件(例如芯片和集成电路)或具有固有特征的其它组件(例如节点100A的芯片110A)的IF来生成固有ID(例如所生成的固有ID ID1201A、ID2202A、ID3203A)。
在步骤366中,请求节点使用步骤362中所生成的固有ID来生成对应第一码(例如IDC-I 220A)。第一码表示第一加密要求的输出(例如函数f1220)。如果请求节点是认证的,则第一码可以由接收节点用于认证请求节点。如果请求节点并非认证的,则第一码在程序351的其它步骤中不会通过由接收节点所执行的检查(例如检查344),如以下将描述的那样。第一加密要求可以是在步骤362中生成的具有第一随机数(例如R 210)和请求节点的所生成的固有ID(例如ID1201A)的输入的可逆函数。一旦生成,就在步骤366中将第一码发送到接收节点。
在步骤370中,接收节点从请求节点接收第一码。
在步骤374中,接收节点生成第二码作为第二加密要求的输出。在步骤378中,第一值得以从第一码推导出来,并且与第二码进行比较,并且请求节点在比较指示这两个值匹配时得以认证。
步骤374中所生成的第二码以及从第一码推导的第一值可以是取决于本公开特定实施例而通过若干方式确定的,并且可以包括而不限于以下。
在关于步骤374的本公开的一个方面中,第二码可以是第二加密函数的输出,其中,第二加密函数和第一加密函数是请求节点和接收节点都获知的同一函数(例如f1220)。在此情况下,从第一码推导的第一值是第一码自身(例如IDC-I 220A)。因此,如果第二码匹配第一码,则认证请求节点。在有关实施例中,第一码和第二码中的每一个可以在接收节点接收第一码之前由它们各自的节点散列化,在此情况下它们的散列值彼此比较。
在关于步骤374的本公开的另一方面中,可以使用第一加密要求或函数(例如f1 -1320)从第一码提取从第一码推导出的第一值(例如作为EV 324值)。第一逆加密函数可以是第一加密要求或函数(例如f1220)的逆函数,其中,第一加密函数具有第一随机数(例如节点100A所保存的R 210)和请求节点的所生成的固有ID(例如ID1201A)的所生成的副本的输入(请求节点自身使用IF执行固有ID生成)。在该实施例中,接收节点可以提取第一加密函数的两个输入中任一个:随机数或所生成的固有ID。在第一情况下,第二码可以是对于接收节点本地可用的随机数(例如主机***300所保存的R 210)的所生成的/获得的/存储的副本(即来自除了第一码之外的源)。在第二情况下,第二码可以是请求节点的固有ID(例如ID1311A)的所询问的副本。在任一情况下,接收节点可以在第一值(其为所提取的值)匹配第二码时认证请求节点。
程序351及其组件351A和351B可以包括附加步骤(未示出),由此,请求节点认证接收节点。在本公开的该方面中,接收节点可以将其生成的第二码(例如与主机***300使用函数(如f1220)本地生成的IDC-I 220A相似的码)发送到请求节点,请求节点可以直接对第二码与第一码进行比较,或(使用f1 -1320)以与接收节点从第一码提取第一值相同的方式从第二码提取第二值(例如EV 240)。替代地,接收节点所生成的第二码可以是具有第二询问固有ID(例如ID2312)和第一随机数或第二随机数(例如节点100A所保存的并且主机***300所提取的R 210或主机***300在本地保存的R 210)的输入的不同的第二加密要求函数(例如f2330)的输出。请求节点可以使用第一随机数(例如节点100A本地保存的R 210)和第二所生成的固有ID(例如ID2202A)的输入来生成对应码(例如节点100A使用f2330本地生成的IDC-II 330A的副本),并且对第二码与对应码进行比较。在二者匹配时,请求节点可以认证接收节点。
在附加实施例(未示出)中,程序351及其组件可以包括附加认证步骤,由此,请求节点使用第三加密要求(例如f3250)或具有第一随机数(例如节点100A所保存的R 210)和第三所生成的固有ID(例如ID3203A)的输入的函数来生成第三码(例如IDC-III 250A)。替代地,可以使用具有至少一个所提取的值(例如EV 240)的第三加密要求(例如f3250)作为其各输入之一来生成第三码,其中,所提取的值是接收节点用作对第二加密要求(例如f2330)的输入的第二随机数(例如来自主机***300的R 210)或第二固有ID(例如ID2312A)的所询问的副本。也可以使用第二码(例如从主机***300接收的IDC-II 330A或其本地所生成的副本)作为输入来生成第三码。
在以上实施例中,请求节点可以将第三码发送到接收节点。接收节点可以通过与以上关于从第一码提取的第一值和从第二码提取的第二值相同的方式从第三码提取第三值(例如EV 340)。接收节点可以针对第二随机数(即主机***300本地保存的R 210)或更早提取的随机数(例如EV 324)或针对第三固有ID(例如ID3313A)的所询问的副本来检查(例如检查344)第三值。在比较指示匹配时,接收节点可以认证请求节点。
在程序351的其它步骤(未示出)中,接收节点可以执行以上步骤中的一个或多个,以认证请求节点希望与之通信的附加节点(例如节点100B)。在认证请求节点和附加节点二者时,程序351可以许可它们俩之间的通信,或否则可以拒绝这种通信。
现参照图4,结合图1-图3所描述的节点、设备和/或***中的一个或多个可以是计算设备1000,并且可以包括内部组件800和外部组件900的各个集合。内部组件800的各集合中的每一个包括一个或多个处理器820;一个或多个计算机可读RAM 822;一条或多条总线826上的一个或多个计算机可读ROM 824;一个或多个操作***828;执行方法351的一个或多个软件应用828a(例如程序351及其组件351A和351B和/或设备驱动器模块);以及一个或多个计算机可读有形存储设备830。一个或多个操作***828以及设备驱动器模块840被存储在各个计算机可读有形存储设备830中的一个或多个上,以用于经由各个RAM 822(其典型地包括缓存存储器)中的一个或多个由各个处理器820中的一个或多个执行。在图4所示的实施例中,计算机可读有形存储设备830中的每一个是内部硬驱的磁盘存储设备。替代地,计算机可读有形存储设备830中的每一个是半导体存储设备,如ROM824、EPROM、闪存或可以存储计算机程序和数字信息的任何其它计算机可读有形存储设备。
内部组件800的每个集合还包括R/W驱动或接口832,以读取自或写入到一个或多个计算机可读有形存储设备936,例如薄设施存储设备、CD-ROM、DVD、SSD、存储棒、磁带、磁盘、光盘或半导体存储设备。R/W驱动或接口832可以用于将设备驱动器840固件、软件或微码加载到有形存储设备936,以促进与计算设备1000的组件的通信。
内部组件800的每个集合可以还包括网络适配器(或交换端口卡)或接口836,如TCP/IP适配器卡、无线WI-FI接口卡或3G或4G无线接口卡或其它有线或无线通信链路。与计算设备1000关联的操作***828可以经由网络(例如互联网、局域网或广域网)以及各个网络适配器或接口836从外部计算机(如服务器)下载到计算设备1000。从网络适配器(或交换端口适配器)或接口836以及与计算设备1000关联的操作***828加载到各个硬驱830和网络适配器836中。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。
外部组件900的各集合中的每一个可以包括计算机显示监视器920、键盘930和计算机鼠标934。外部组件900可以还包括触摸屏、虚拟键盘、触摸板、指点设备和其它人机接口设备。内部组件800的各集合中的每一个还包括设备驱动器840,用于对计算机显示监视器920、键盘930和计算机鼠标934进行接口连接。设备驱动器840、R/W驱动或接口832以及网络适配器或接口836包括硬件和(存储设备830和/或ROM 824中存储的)软件。
现参照图5,描述说明性云计算环境500。如所示,云计算环境500包括一个或多个云计算节点,其中的每一个可以是云消费者所使用的本地计算设备(例如个人数字助理(PDA)或蜂窝电话500A、台式计算机500B、膝上型计算机500C和/或汽车计算机***500N)可以与之通信的***1000(图4)。各节点1000可以彼此通信。它们在一个或多个网络(如如上所述的私有云、社区云、公共云或混合云或其组合)通过物理或虚拟方式而分组(未示出)。这允许云计算环境500提供基础架构、平台和/或软件作为云消费者无需在本地计算设备上为此而保存资源的服务。应理解,图5所示的计算设备500A-N的类型意图仅是说明性的,计算节点1000和云计算环境500可以通过任何类型的网络和/或网络可寻址连接(例如使用web浏览器)与任何类型的计算机化的设备进行通信。
现参照图6,示出云计算环境500(图5)所提供的功能抽象层集合。预先应理解,图6所示的组件、层和功能意图仅是说明性的,本发明实施例不限于此。如所描述的那样,提供以下层和对应功能。
硬件和软件层610包括硬件和软件组件。硬件组件的示例包括大型机,在一个示例中***;基于RISC(精简指令集计算机)架构的服务器,在一个示例中IBM***;IBM***;IBM***;存储设备;网络和连网组件。软件组件的示例包括网络应用服务器软件,在一个示例中为IBM应用服务器软件;以及数据库软件,在一个示例中为IBM数据库软件(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere和DB2是在全球很多辖区注册的国际商业机器公司的商标)。
虚拟化层614提供可以提供虚拟实体的以下示例的抽象层:虚拟服务器、虚拟存储件、包括虚拟私有网络的虚拟网络、虚拟应用和操作***、以及虚拟客户机。
在一个示例中,管理层618可以提供下述功能。资源供给提供计算资源和用于在云计算环境内执行任务的其它资源的动态获取。计量和定价随着在云计算环境内利用资源而提供成本跟踪以及对于这些资源的消耗的计费或开票。在一个示例中,这些资源可以包括应用软件执照。安全性提供用于云消费者和任务的身份验证以及用于数据和其它资源的保护。用户入口提供用于消费者和***管理者的对云计算环境的访问。服务等级管理提供云计算资源分配和管理,从而所需的服务等级得以满足。服务等级协定(SLA)规划和实施提供用于根据SLA来预期未来需求的云计算资源的预先布置和获取。
工作负荷层622提供云计算环境可以被利用的功能的示例。从该层可以提供的负荷和功能的示例包括:构图和导航;软件开发和生命周期管理;虚拟课堂教育传送;数据分析处理;事务处理;以及例如结合图1–图5所描述和讨论的本公开实施例所提供的通信认证。
虽然关于本发明优选实施例特别示出并且描述了本发明,但本领域技术人员应理解,在不脱离该申请的精神和范围的情况下,可以在形式和细节方面进行改变。因此,本发明意图并非受限于在此所描述和示出的确切形式和细节,而是落入所附权利要求的范围内。
所属技术领域的技术人员知道,本发明的各个方面可以实现为***、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“模块”或“***”。此外,本发明的各个方面还可以采用在一个或多个计算机可读介质中实施的计算机程序产品的形式,该计算机可读介质上实施有计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中例如实施了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上实施的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明各方面操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述本发明的方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令可以指导计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
计算机程序指令也可以加载到计算机、其它可编程数据处理装置或其它设备以产生待在计算机或其它可编程装置或其它设备上执行的一系列操作,以产生计算机实现的处理,从而在计算机或其它可编程装置上执行的指令提供用于实现流程图和/或框图块中指定的功能/动作的处理。
附图中的流程图和框图显示了根据本发明的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
虽然已经使用数字和字母依次或顺序地标识所公开的方法的步骤以及所公开的***的组件以及环境,但这种排号或用词并非指示这些步骤必须以所陈述的顺序来执行,而仅是被提供以促进方法的步骤的清楚引用。此外,可以并行执行方法的步骤以执行它们的所描述的功能。

Claims (14)

1.一种用于认证电子通信***中的节点的计算机实现的方法,所述方法包括:
从节点接收认证请求;
将生成要求发送到所述节点,其中,所述生成要求提示所述节点生成表示具有包括第一随机值和基于固有特征的第一固有ID的输入的第一加密要求的输出的第一码;
响应于所述生成要求来从所述节点接收所述第一码;
生成第二码,其中,所述第二码表示具有包括所述第一码、第二随机值以及第二固有ID中的至少两个的输入的第二加密要求的输出,其中,从除了所述节点之外的源获得所述第二固有ID;以及
基于以下项中的一个或更多个来认证所述节点:
所述第二加密要求具有所述第二随机值和所述第二固有ID的输入,以及所述第二码匹配所述第一码;
所述第二加密要求具有所述第一码和所述第二随机值的输入,以及所述第二码匹配所述第二固有ID;以及
所述第二加密要求具有所述第一码和所述第二固有ID的输入,以及所述第二码匹配所述第二随机值;
由此,所述第一随机值匹配所述第二随机值,所述第一固有ID匹配所述第二固有ID。
2.如权利要求1所述的方法,其中:
所述固有特征是所述节点的固有特征;
所述第一固有ID是使用所述生成要求基于所述节点的所述固有特征由所述节点动态生成的所述节点的固有ID;以及
所述第二固有ID是从与所述生成要求和所述节点相关联的数据库记录中获得的,其中,所述数据库记录未保存在所述节点上。
3.如权利要求1所述的方法,其中:
所述第一固有ID是从与所述生成要求相关联的数据库记录获得的,其中,所述数据库记录能够由所述节点获得;以及
基于所述固有特征使用所述生成要求来动态生成所述第二固有ID。
4.如权利要求1所述的方法,其中:
从同一随机值生成器获得所述第一随机值和所述第二随机值;
所述第二码是具有所述第二随机数和所述第二固有ID的输入的第二加密要求的输出;以及
基于与所述第二码的散列化值匹配的所述第一码的散列化值来认证所述节点,其中,使用散列算法来生成所述第一码的所述散列化值和所述第二码的所述散列化值。
5.如权利要求1所述的方法,还包括:
将多个附加生成要求发送到所述节点,其中,所述多个附加生成要求提示所述节点生成所述节点的对应的多个固有ID;
接收所述多个固有ID的加密副本;
对所述多个固有ID的所述加密副本进行解密,以生成对应的多个解密值;以及
基于与从除了所述节点之外的源获得的对应固有ID匹配的所述多个解密值中的每一个来认证所述节点。
6.如权利要求1所述的方法,其中,所述固有特征包括以下项中的一个或更多个:SRAM的通电电压值、环形振荡器物理不可克隆函数值的配对、DRAM保留故障计数、仲裁器物理不可克隆函数中的竞争情况的结果、以及无序三维微结构的光学斑点。
7.如权利要求1所述的方法,其中,所述第一加密要求是可逆函数。
8.一种用于认证电子通信***中的节点的***,所述***包括:
计算机,具有处理器和有形存储设备;以及
在存储设备上实施以用于所述处理器执行的程序,所述程序具有多个模块,所述多个模块包括:
接收模块,被配置为从节点接收认证请求;
发送模块,被配置为把生成要求发送到所述节点,其中,所述生成要求提示所述节点来生成表示具有包括第一随机值和基于固有特征的第一固有ID的输入的第一加密要求的输出的第一码;
第二接收模块,被配置为响应于所述生成要求来从所述节点接收所述第一码;
生成模块,被配置为生成第二码,其中,所述第二码表示具有包括所述第一码、第二随机值以及第二固有ID中的至少两个的输入的第二加密要求的输出,其中,从除了所述节点之外的源获得所述第二固有ID;以及
认证模块,被配置为基于以下项中的一个或更多个来认证所述节点:
所述第二加密要求具有所述第二随机值和所述第二固有ID的输入,以及所述第二码匹配所述第一码;
所述第二加密要求具有所述第一码和所述第二随机值的输入,以及所述第二码匹配所述第二固有ID;以及
所述第二加密要求具有所述第一码和所述第二固有ID的输入,以及所述第二码匹配所述第二随机值;
由此,所述第一随机值匹配所述第二随机值,所述第一固有ID匹配所述第二固有ID。
9.如权利要求8所述的***,其中:
所述固有特征是所述节点的固有特征;
所述第一固有ID是使用所述生成要求基于所述节点的所述固有特征由所述节点动态生成的所述节点的固有ID;以及
所述第二固有ID是从与所述生成要求和所述节点相关联的数据库记录获得的,其中,所述数据库记录未被保存在所述节点上。
10.如权利要求8所述的***,其中:
所述第一固有ID是从与所述生成要求相关联的数据库记录中获得的,其中,所述数据库记录能够由所述节点获得;以及
基于所述固有特征使用所述生成要求动态生成所述第二固有ID。
11.如权利要求8所述的***,其中:
从同一随机值生成器获得所述第一随机值和所述第二随机值;
所述第二码是具有所述第二随机数和所述第二固有ID的输入的第二加密要求的输出;以及
基于与所述第二码的散列化值匹配的所述第一码的散列化值来认证所述节点,其中,使用散列算法来生成所述第一码的所述散列化值和所述第二码的所述散列化值。
12.如权利要求8所述的***,还包括:
将多个附加生成要求发送到所述节点,其中,所述多个附加生成要求提示所述节点生成所述节点的对应的多个固有ID;
接收所述多个固有ID的加密副本;
对所述多个固有ID的所述加密副本进行解密,以生成对应的多个解密值;以及
基于与从除了所述节点之外的源获得的对应固有ID匹配的所述多个解密值中的每一个来认证所述节点。
13.如权利要求8所述的***,其中,所述固有特征包括以下项中的一个或更多个:SRAM的通电电压值、环形振荡器物理不可克隆函数值的配对、DRAM保留故障计数、仲裁器物理不可克隆函数中的竞争情况的结果、以及无序三维微结构的光学斑点。
14.如权利要求8所述的***,其中,所述第一加密要求是可逆函数。
CN201410681506.3A 2013-12-11 2014-11-24 用于认证电子通信***中的节点的方法和装置 Expired - Fee Related CN104715187B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/102,607 US9219722B2 (en) 2013-12-11 2013-12-11 Unclonable ID based chip-to-chip communication
US14/102,607 2013-12-11

Publications (2)

Publication Number Publication Date
CN104715187A true CN104715187A (zh) 2015-06-17
CN104715187B CN104715187B (zh) 2017-11-14

Family

ID=52425426

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410681506.3A Expired - Fee Related CN104715187B (zh) 2013-12-11 2014-11-24 用于认证电子通信***中的节点的方法和装置

Country Status (3)

Country Link
US (1) US9219722B2 (zh)
CN (1) CN104715187B (zh)
GB (1) GB2522971B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9628272B2 (en) * 2014-01-03 2017-04-18 William Marsh Rice University PUF authentication and key-exchange by substring matching
US9497027B2 (en) * 2014-06-02 2016-11-15 GlobalFoundries, Inc. Encryption engine with twin cell memory array
US9880929B2 (en) * 2014-12-17 2018-01-30 Schneider Electric It Corporation Systems and methods for generating a unique device id
JP2017028354A (ja) * 2015-07-16 2017-02-02 渡辺 浩志 電子装置ネットワーク及びチップ認証方式
US10262164B2 (en) 2016-01-15 2019-04-16 Blockchain Asics Llc Cryptographic ASIC including circuitry-encoded transformation function
EP3203477B1 (en) * 2016-02-03 2020-01-01 Hiroshi Watanabe Semiconductor apparatus and identification method of a semiconductor chip
US9947391B1 (en) * 2017-04-12 2018-04-17 Nxp Usa, Inc. SRAM based physically unclonable function and method for generating a PUF response
AU2018309432A1 (en) * 2017-08-03 2020-02-27 Entersekt International Limited System and method for authenticating a transaction
CN107666491B (zh) * 2017-11-15 2020-05-05 北京交通大学 基于对称加密的空地一体化网络的数据传输方法
US10291414B1 (en) 2017-12-11 2019-05-14 International Business Machines Corporation SRAM as physically unclonable function
US11522724B2 (en) 2017-12-11 2022-12-06 International Business Machines Corporation SRAM as random number generator
US10558604B2 (en) * 2017-12-20 2020-02-11 Qualcomm Incorporated Communication interface transaction security
US10372943B1 (en) 2018-03-20 2019-08-06 Blockchain Asics Llc Cryptographic ASIC with combined transformation and one-way functions
US10256974B1 (en) 2018-04-25 2019-04-09 Blockchain Asics Llc Cryptographic ASIC for key hierarchy enforcement
US11044107B2 (en) * 2018-05-01 2021-06-22 Analog Devices, Inc. Device authentication based on analog characteristics without error correction
US20190372973A1 (en) * 2018-05-30 2019-12-05 Cisco Technology, Inc. Device onboarding with automatic ipsk provisioning in wireless networks
KR102600349B1 (ko) * 2018-11-16 2023-11-09 한국전자통신연구원 링 발진기 구조 기반의 비밀 정보 생성 장치 및 방법
CN111580741B (zh) * 2019-02-15 2023-06-13 群联电子股份有限公司 数据写入方法、存储器控制电路单元与存储器存储装置
FR3093203A1 (fr) * 2019-02-22 2020-08-28 Proton World International N.V. Procédé d'authentification
US11245680B2 (en) 2019-03-01 2022-02-08 Analog Devices, Inc. Garbled circuit for device authentication

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1200608A (zh) * 1997-05-08 1998-12-02 国际商业机器公司 协调服务器组之间的动作的方法
CN2786685Y (zh) * 2003-11-19 2006-06-07 松下电器产业株式会社 认证***
CN101291224A (zh) * 2007-04-17 2008-10-22 美国博通公司 在通信***中处理数据的方法和***
CN101541002A (zh) * 2008-03-21 2009-09-23 展讯通信(上海)有限公司 一种基于Web服务器的移动终端的软件许可证下载方法
US20130133031A1 (en) * 2011-11-22 2013-05-23 International Business Machines Corporation Retention Based Intrinsic Fingerprint Identification Featuring A Fuzzy Algorithm and a Dynamic Key

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4924210A (en) 1987-03-17 1990-05-08 Omron Tateisi Electronics Company Method of controlling communication in an ID system
JP3541522B2 (ja) * 1995-10-09 2004-07-14 松下電器産業株式会社 機器間通信保護システムおよび機器
US6826690B1 (en) * 1999-11-08 2004-11-30 International Business Machines Corporation Using device certificates for automated authentication of communicating devices
EP2224637B1 (en) 2001-08-13 2014-10-08 The Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption
US7895443B2 (en) * 2002-11-05 2011-02-22 Safenet, Inc. Secure authentication using hardware token and computer fingerprint
KR100571820B1 (ko) 2003-10-20 2006-04-17 삼성전자주식회사 신원 정보를 기반으로 하는 암호 시스템에서의 컨퍼런스세션 키 분배 방법
US7600113B2 (en) * 2004-02-20 2009-10-06 Microsoft Corporation Secure network channel
KR100584604B1 (ko) * 2004-08-14 2006-05-30 삼성전자주식회사 디바이스를 인증하기 위한 키 생성 방법/장치 및 디바이스인증 방법/장치
JP4546231B2 (ja) 2004-12-09 2010-09-15 株式会社日立製作所 Idベース署名及び暗号化システムおよび方法
WO2006067739A2 (en) 2004-12-22 2006-06-29 Koninklijke Philips Electronics N.V. Method and device for key generation and proving authenticity
WO2006078730A2 (en) 2005-01-21 2006-07-27 Rambus, Inc. Communication system with low power, dc-balanced serial link
EP1762943B1 (en) 2005-09-09 2014-07-09 STMicroelectronics Srl Chip-to-chip communication system
US8590024B2 (en) 2007-02-01 2013-11-19 The Boeing Company Method for generating digital fingerprint using pseudo random number code
WO2009079050A2 (en) 2007-09-19 2009-06-25 Verayo, Inc. Authentication with physical unclonable functions
WO2011102087A1 (en) * 2010-02-16 2011-08-25 Panasonic Corporation Information processing device, information processing system, software routine execution method, and remote attestation method
DE102010039782A1 (de) 2010-08-26 2012-03-01 Robert Bosch Gmbh Verfahren zur Durchführung einer Kommunikation
JP5499365B2 (ja) 2010-09-29 2014-05-21 国立大学法人神戸大学 メモリセルアレイを用いたidチップおよびその生成方法
TWI430426B (zh) 2010-10-19 2014-03-11 Univ Nat Chiao Tung 使用共用傳導層傳送晶片間多重信號之系統
US8386990B1 (en) 2010-12-07 2013-02-26 Xilinx, Inc. Unique identifier derived from an intrinsic characteristic of an integrated circuit

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1200608A (zh) * 1997-05-08 1998-12-02 国际商业机器公司 协调服务器组之间的动作的方法
CN2786685Y (zh) * 2003-11-19 2006-06-07 松下电器产业株式会社 认证***
CN101291224A (zh) * 2007-04-17 2008-10-22 美国博通公司 在通信***中处理数据的方法和***
CN101541002A (zh) * 2008-03-21 2009-09-23 展讯通信(上海)有限公司 一种基于Web服务器的移动终端的软件许可证下载方法
US20130133031A1 (en) * 2011-11-22 2013-05-23 International Business Machines Corporation Retention Based Intrinsic Fingerprint Identification Featuring A Fuzzy Algorithm and a Dynamic Key

Also Published As

Publication number Publication date
GB2522971B (en) 2016-06-15
GB201421545D0 (en) 2015-01-21
GB2522971A (en) 2015-08-12
US20150163211A1 (en) 2015-06-11
CN104715187B (zh) 2017-11-14
US9219722B2 (en) 2015-12-22

Similar Documents

Publication Publication Date Title
CN104715187A (zh) 用于认证电子通信***中的节点的方法和装置
CN109951489B (zh) 一种数字身份认证方法、设备、装置、***及存储介质
US20230231711A1 (en) Blockchain-implemented method and system
JP6547079B1 (ja) 登録・認可方法、装置及びシステム
Lim et al. Blockchain technology the identity management and authentication service disruptor: a survey
CN110555029B (zh) 基于区块链的票务管理方法、装置及存储介质
WO2020048241A1 (zh) 区块链跨链的认证方法、***、服务器及可读存储介质
CN106797317B (zh) 安全共享密钥共享***及方法
JP2023502346A (ja) 量子安全ネットワーキング
US20140282840A1 (en) Managing data handling policies
WO2018069566A1 (en) Method, device and system for validating sensitive user data transactions within trusted circle
US20210243037A1 (en) Method for information processing in digital asset certificate inheritance transfer, and related device
CN104283688B (zh) 一种USBKey安全认证***及安全认证方法
KR101982237B1 (ko) 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템
US10270757B2 (en) Managing exchanges of sensitive data
WO2015072203A1 (ja) 情報配信システム
CN105144670A (zh) 启用无线联网的个人标识***
CN105099673A (zh) 一种授权方法、请求授权的方法及装置
TWI679556B (zh) 用於虛擬實境環境的交易方法、裝置及系統
CN109587101A (zh) 一种数字证书管理方法、装置及存储介质
CN104412273A (zh) 用于进行激活的方法和***
EP3206329A1 (en) Security check method, device, terminal and server
US10395052B2 (en) Managing data handling policies
KR20210046357A (ko) 블록체인 기반 시스템을 위한 키의 저장 및 복구 방법과 그 장치
CN101944216A (zh) 双因子在线交易安全认证方法及***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20171127

Address after: Grand Cayman, Cayman Islands

Patentee after: GLOBALFOUNDRIES INC.

Address before: American New York

Patentee before: Core USA second LLC

Effective date of registration: 20171127

Address after: American New York

Patentee after: Core USA second LLC

Address before: American New York

Patentee before: International Business Machines Corp.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201127

Address after: Hamilton, Bermuda Islands

Patentee after: MARVELL INTERNATIONAL Ltd.

Address before: Grand Cayman Islands

Patentee before: GLOBALFOUNDRIES INC.

Effective date of registration: 20201127

Address after: Ford street, Grand Cayman, Cayman Islands

Patentee after: Kaiwei international Co.

Address before: Hamilton, Bermuda Islands

Patentee before: Marvell International Ltd.

Effective date of registration: 20201127

Address after: Singapore City

Patentee after: Marvell Asia Pte. Ltd.

Address before: Ford street, Grand Cayman, Cayman Islands

Patentee before: Kaiwei international Co.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20171114

Termination date: 20201124