CN104537293B - 认证设备和系统 - Google Patents
认证设备和系统 Download PDFInfo
- Publication number
- CN104537293B CN104537293B CN201510058364.XA CN201510058364A CN104537293B CN 104537293 B CN104537293 B CN 104537293B CN 201510058364 A CN201510058364 A CN 201510058364A CN 104537293 B CN104537293 B CN 104537293B
- Authority
- CN
- China
- Prior art keywords
- certificate
- authenticating device
- signature
- certification
- numerical value
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/006—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
- H04L9/007—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models involving hierarchical structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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 involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3263—Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3265—Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明是认证设备和系统。一种用于创建轻量签名(382)的方法(370),所述方法包括:根据签名格式形成格式化数据元素(330),其中所述签名格式包括对数据的表示(340)以及用于存储填充值的填充字段(332),其中包含所述填充字段的格式化数据元素(330)具有比私钥的加密模量的数值小的数值;以及使用所述私钥对所述格式化数据元素(330)施加加密算法(380)。
Description
本申请是申请日为2011年8月22日,申请号为201180040180.0的专利申请“认证设备和系统”的分案申请。
本申请要求2010年8月20日提交的题为“产品认证方法、系统和设备(ProductAuthentication Method,System and Device)”的美国临时申请No.61/375,756的权益,其全部内容通过引用合并在此。
认证设备(authentication device)是能够以密码方式向鉴定设备(verification device)证明真实性的设备。当将认证设备附着至或包括在另一设备或产品中时,认证设备也可以证明该相应设备或产品的真实性。因此,可以将常规认证设备作为反伪造方案来使用。
图1示出了常规认证架构10的框图,其中认证设备12与鉴定设备14通信。认证设备12包括对于认证设备12而言独有的认证私钥16和认证公钥证书18。认证公钥证书18包括识别信息20,该识别信息20包括与认证设备12的身份和/或认证设备12所附着的另一设备或产品(未示出)的身份有关的信息。认证设备12也可以包括一个或更多个可选的中间证书22,以将认证公钥证书18与鉴定设备14中存储的可信根认证证书24相联系。可信根认证证书24形成针对认证证书链的信任根(the root of trust)。
常规认证过程典型地包括执行认证协议,其中认证设备12向鉴定设备14证明其知道认证私钥16。在该认证过程期间鉴定设备14使用来自认证公钥证书18的公钥来确定认证设备12是否知道认证私钥16。该认证过程也称为挑战-响应协议。然后,鉴定设备14鉴定认证公钥证书18。该鉴定包括对关于认证设备12和/或其所连接的设备的身份的信息进行鉴定。如果在认证证书链中存在多个证书,则鉴定设备14也使用来自认证证书链中下一证书的公钥来鉴定认证证书链中的每个证书,直到达到认证根证书24。
虽然常规认证系统在某些方面是有效的,但是常规认证系统的其他方面带来不必要的局限。例如,认证公钥只能由认证证书链中下一证书的认证私钥的所有者来产生。此外,稍后无法更新(或者非常难以更新)认证公钥证书。
常规认证系统中实施的证书和签名方案的多个方面也存在某些缺点。具体地,典型地通过对消息施加单向变换(散列)来创建经由该消息的密码签名。然后用公钥密码算法的认证私钥对散列加密。多种常规签名方案提供部分消息恢复,其中可以从签名中恢复受签名的消息的一部分。这就产生了常规的证书格式,其除了包含签名之外还包含数量显著的元数据。具体地,在无消息恢复(或仅部分消息恢复)的情况下使用散列和签名方案造成大多数或所有经散列处理的文本与签名一起发送,导致要存储和/或传输大量数据。
描述装置实施例。在一个实施例中,该装置是认证设备。该认证设备包括存储设备和处理逻辑电路。存储设备存储数据。处理逻辑电路配置为在存储设备中存储设备认证私钥、设备认证公钥证书和配置根证书。处理逻辑电路还配置为根据设备认证协议,使用设备认证私钥和设备认证公钥证书来促进向鉴定设备认证该认证设备。处理逻辑电路还配置为根据配置认证协议,使用配置根证书来促进向认证设备认证配置设备。还描述了装置的其他实施例。
还描述了认证方法的实施例。在一个实施例中,认证方法包括在认证设备上存储设备认证私钥。该认证方法还包括在认证设备上存储设备认证公钥证书。设备认证私钥和设备认证公钥证书促进根据设备认证协议向鉴定设备认证该认证设备。该认证方法还包括在认证设备上存储配置根证书。配置根证书促进根据配置认证协议向认证设备认证配置设备。还描述了认证方法的其他实施例。
还描述了针对认证设备的配置方法的实施例。在一个实施例中,配置方法包括初始化认证设备上的认证参数以向鉴定设备认证该认证设备。配置方法还包括锁定认证设备上的认证参数以排除与任何参数有关的其他初始化操作。配置方法还包括在锁定认证参数之后在认证设备处接收配置参数。配置方法还包括对配置参数进行认证。配置方法还包括在认证设备上存储配置参数。还描述了配置方法的其他实施例。
还描述了一种用于创建轻量签名(lightweight signature)的方法的实施例。在一个实施例中,创建方法包括根据签名格式形成格式化数据元素。该签名格式包括对数据的表示以及用于存储填充值的填充字段。包含填充字段的格式化数据元素具有比私钥的加密模量(encryption modulus)的数值小的数值。在特定实施例中,填充字段包括格式化数据元素的数值解释(numerical interpretation)的最高有效位。该方法还包括随后使用私钥对格式化数据元素施加加密算法。还描述了配置方法的其他实施例。
描述了系统实施例。在一个实施例中,系统是用于在认证构架中结合轻量证书来创建和使用轻量签名的系统。该系统包括用于存储数据和私钥的存储设备。该系统还包括耦接至存储设备的处理器。该处理器配置为根据签名格式形成格式化数据元素。该签名格式包括对数据的表示以及用于存储填充值的填充字段。包含填充字段的格式化数据元素具有比私钥的加密模量的数值小的数值。在特定实施例中,填充字段包括格式化数据元素的数值解释的最高有效位。该处理器还配置为随后使用私钥对格式化数据元素进行加密。还描述了系统的其他实施例。
从以下结合附图的详细描述中,本发明实施例的其他方面和优点将显而易见,附图示出了本发明原理的示例。
图1示出了常规认证架构的框图。
图2示出了认证设备建立过程的阶段的一个实施例的框图。
图3示出了认证过程的一个实施例的框图。
图4示出了包括配置设备的认证架构的一个实施例的框图。
图5A示出了初始化认证设备的初始化操作的一个实施例的流程图。
图5B示出了初始化配置设备的另一初始化操作的一个实施例的流程图。
图6示出了配置操作的一个实施例的流程图。
图7示出了配置设备的一个实施例的框图。
图8示出了认证操作的一个实施例的流程图。
图9示出了计算机的一个实施例的框图。
图10示出了签名创建引擎的一个实施例的框图。
图11示出了签名格式化方案的一个实施例的框图。
图12示出了签名产生(signature generation)的一个实施例的流程图。
图13示出了签名鉴定(signature verification)的一个实施例的流程图。
图14示出了证书格式化方案的一个实施例的框图。
图15示出了证书鉴定(certificate verification)的一个实施例的流程图。
图16示出了挑战-响应格式化方案的一个实施例的框图。
图17示出了响应产生(response generation)的一个实施例的流程图。
图18示出了响应鉴定(response verification)的一个实施例的流程图。
在以下描述中,类似附图标记可以用于指示类似元素。
容易理解本文总体上描述并在附图中示出的实施例的组成部分可以按照多种不同配置来布置和设计。因此,对图中所示的多种实施例的以下具体描述不是旨在限制本公开的范围,而仅仅表示多种实施例。在图中提供了实施例的多种方面,除非特别指明,否则图不一定是按照比例绘制的。
本发明可以实施为其他具体形式而不背离本发明精神或必要特征。所示实施例在所有方面均应视为是示例性的而非限制性的。因此,本发明的范围由所附权利要求而非具体描述来表示。在权利要求等同物的含义和范围内的所有变化均应涵盖在权利要求的范围内。
整个说明书中对特征、优点的引述或类似表述不是意味着利用本发明可以实现的所有特征和优点应该在本发明的任何单个实施例中。而是,对于特征和优点的表述应理解为结合实施例描述的具体特征、优点或特性包括在本发明的至少一个实施例中。因此整个说明书中对特征、优点的讨论或类似表述可以但不一定指示相同实施例。
此外,可以在一个或多个实施例中按照任意合适方式组合本发明的所有特征、优点和特性。根据本文描述,相关技术领域的技术人员会认识到,可以在无需特定实施例的一个或多个具体特征或优点的情况下实施本发明。在其他情况下,可以在某些实施例中认识到本发明所有实施例中未呈现的附加特征和优点。
至于整个说明书中的“一个实施例”或“实施例”意味着在本发明的至少一个实施例中包括了所描述的与所述实施例相关的特征、结构或者特点。因此,在整个说明书的不同位置出现的短语“在一个实施例中”、“在实施例中”或类似表述不一定但是可以涉及相同的实施例。
本文描述了多个实施例,所述实施例中的至少一些关注于依赖公钥密码来证明真实性的认证设备。在一个实施例中,认证设备的交互包括多个过程,例如认证过程和配置过程。
对于引述,使用多种不同名称和命名来指示设备认证的一个或多个方面中涉及的设备、各方和/或实体。这些名称中的一些是产品、认证设备、制造商、品牌所有者、可信方和主机。对于产品的引述一般是是指一种产品,对于该产品需要或期望进行真实性证明。对于认证设备的引述一般是指嵌入在产品中或附着至产品的设备。对于制造商的引述一般是指认证设备的制造商。对于品牌所有者的引述一般是指与产品关联的知识产权的所有者。对于可信方的引述一般是指管理认证系统的一方。因此,品牌所有者可以依赖于可信方来证明真实性。对于主机的引述一般是指执行产品认证的一方或设备。
一个或更多个实施例的一些特征可以包括但不限于如下:产品认证使用公钥密码和证书;公钥系统由可信方管理;初始化独立于品牌所有者;品牌所有者可以安全地配置设备;系统可以与现有PKI系统结合使用;如果需要,系统可以与现有签名方案一起有效地使用;不需要品牌所有者密钥或证书来用于鉴定,只需要可信方的根认证证书;不需要秘密值来用于鉴定;每个可以配置有独有私钥,用于限制在违背认证设备安全性的情况下的影响;等等。
图2示出了认证设备建立过程的阶段的一个实施例的框图。所示实施例包括第一阶段100、第二阶段102和第三阶段104。在一些实施例中,认证设备建立过程可以包括更少或更多阶段。
在所示实施例中,设备建立第一阶段100在认证部分和配置部分两者中均是未锁定的,使得可以将信息保存至设备。在第二阶段102,认证部分存储认证信息并被锁定了。在所示实施例中,示出了某些认证参数。然而,其他实施例可以包括更少、更多或其他认证参数。在第二阶段102的所示实施例中,配置部分保持未锁定。在第三阶段104,认证部分被锁定,并且配置部分存储配置参数。此外,配置部分被锁定以最终化认证设备。
在一些实施例中,认证设备的制造商可以在认证部分中保存信息并锁定认证部分,而保留配置部分未锁定以由其他人或实体使用或访问。例如,用户可以在无制造商的直接动作的情况下,向配置部分添加信息。然后可以锁定配置部分以最终化设备用于使用。其他实施例可以促进其他优点并可以按照不同顺序执行。
图3示出了认证进程110的一个实施例的框图。所示认证进程110大体上示出了与认证处理的实施例中涉及的阶段和各方对应的操作。虽然这里示出并描述了具体阶段和各方,但是其他实施例可以通过更少或更多的各方来实施更少或更多的阶段。备选地,可以在与图3所示具体实施例不同的其他阶段中实施所示操作中的至少一些。
在所述实施例中,有4方或4个实体,即可信方、技术所有者(也称为品牌所有者)、制造商和鉴定方。此外,有4个不同阶段,即生产阶段、初始化阶段、配置阶段和认证阶段。
在生产阶段,制造商生产认证设备(参照图4)。在初始化阶段,可信方向鉴定设备发送认证根证书(ARC)。可信方还向认证设备发送认证私钥(APrK)和对应的认证公钥证书(APuKC)。备选地,认证设备产生认证密钥并将公钥输出至可信方,可信方将公钥放置在证书中并将证书发送回认证设备。在这些操作之后,可以锁定认证设备的初始化以防止可能修改或改变认证设备上的认证私钥和/或认证公钥证书的其他初始化操作。
此外,在初始化阶段,可信方向认证设备发送配置根证书(CRC)。可信方还向配置设备发送配置私钥(CPrK)和对应的配置公钥证书(CPuKC)。备选地,配置设备产生配置密钥并将公钥输出至可信方,可信方将公钥放置在证书中并将证书发送回配置设备。在这些操作之后,可以锁定配置设备的初始化,以防止可能修改或改变配置设备上的配置私钥和/或配置公钥证书的其他初始化操作。在备选实施例中,可以在后续阶段期间(通过存储相应的密钥和证书)执行用于建立认证设备和配置设备之间的关系的操作中的一些或全部,在这种情况下,可以延迟锁定认证设备和/或配置设备。
在设置了认证设备以对来自配置设备的数据进行认证之后,配置设备可以向认证设备发送一个或更多个配置参数以存储在认证设备上。配置参数的一些示例包括但不限于品牌名称和产品名称。如图所示,认证设备附着至产品、与产品集成或者与产品关联。可以由技术所有者来执行认证设备和产品之间的附着、集成或其他关联。这样,认证设备的制造商不一定必须卷入由技术所有者进行的品牌、产品或产品的与认证设备关联的其他类似参数的最终配置中。
在利用配置参数配置了认证设备之后,可以在正常事务中使用产品,包括后续的认证事务来鉴定对产品真实性的证明。此外,在一些实施例中,技术所有者可以在稍后时间使用本文所述的配置认证过程来修改或更新一个或更多个配置参数。
如图3所示,本文所述公钥架构包括两个分离的证书链,它们均源自作为信任根的可信方。第一证书链允许可信方实施对品牌所有者执行的配置操作的控制。这确保品牌所有者可以执行配置操作以将认证设备与其产品绑定。配置根证书是针对配置证书链的信任根。该证书安装在所有认证设备上以使它们可用于鉴定品牌所有者配置公钥证书。在配置操作期间使用品牌所有者配置公钥证书来向认证设备认证品牌所有者。在一个实施例中,配置公钥证书包含在配置期间存储在认证设备中的品牌所有者信息。这两个证书构成对认证设备处的配置参数的访问进行最终控制的配置证书链。可以在配置证书链中包括中间配置证书。在一些实施例中,除非可信方能够严格控制哪些品牌所有者配置公钥证书由中间配置证书来签名,否则不包括中间配置证书。
第二证书链用于证明认证设备以及认证设备中存储的品牌所有者和产品信息的真实性。第二证书链由主机使用,通过跟踪它回到信任根即,可信方)来鉴定产品真实性。认证根证书是针对认证证书链的信任根。该证书安装在所有主机上以便主机能够鉴定产品的真实性。设备认证证书是设备专用证书,可以用认证根证书直接鉴定该设备专用证书,或者可以经由引导至可信方根证书的一系列中间认证证书来鉴定该设备专用证书。它们一起形成认证证书链,该认证证书链最终证明包含设备私钥的认证设备是真实的。
图4示出了包括配置设备162的认证架构160的一个实施例的框图。认证架构160也包括认证设备164和鉴定设备166。配置设备162可操作与认证设备164通信。认证设备164也可操作与鉴定设备166通信。虽然这里利用特定部件和功能描述和示出了认证架构160,但是认证架构的其他实施例可以具有更少或更多部件,并可以实施更少或更多功能。
在一个实施例中,可以在例如移动电话或其他移动电子设备等近场通信(NFC)设备中实施鉴定设备166。通过将这里描述的一些或所有鉴定功能结合到具有NFC操作性的移动电子设备中,移动电子设备的消费者或其他操作者能够扮演本文所述认证方案中的鉴定方的角色。类似地,可以将移动电子设备配置为扮演任何其他认证方案中的鉴定方的角色。
所示配置设备162包括对于认证设备164而言独有的配置私钥168和配置公钥证书170。配置公钥证书170包括一组约束172。该约束可以指定认证设备164上配置设备160未授权或被授权来促进的配置操作。所述配置设备162包括一组可选的配置中间证书174来将配置公钥证书170与认证设备164中存储的可信配置根证书186相联系。每个中间配置证书可以包含一组约束176,该约束176比证书链下一密钥(即,离根证书更近一步的证书)的那组约束的限制性更强。
认证设备164包括对于认证设备164而言独有的认证私钥178和认证公钥证书180。认证公钥证书180可以包括与认证设备164和/或与认证设备164所附着至或其中包括认证设备164的设备的身份有关的一些信息182。认证设备164还包括一组可选的认证中间证书184以将认证公钥证书180与可信根认证证书相联系。认证设备164还包括可信配置根证书186,可信配置根证书186形成针对配置认证链的可信根。在一些实施例中,认证设备164还包括与认证设备164和/或认证设备164所附着至或包括在其中的设备的身份有关的附加信息188。只有在配置设备162使用其认证私钥168和证书链向认证设备164进行认证之后,配置设备163能够将该附加信息188存储在认证设备164中。鉴定设备166包括可信认证根证书190,可信认证根证书190形成针对认证证书链的信任根。
在一个实施例中,认证架构160促进认证过程。认证过程的实施例包括执行认证协议(例如,挑战-响应协议),其中认证设备164向鉴定设备166证明其知晓认证私钥178。认证协议还证明与认证设备164和/或认证设备164所附着至的设备的身份有关的附加信息。在该认证协议期间,鉴定设备166使用来自认证公钥证书180的公钥来确定认证设备162是否知道对应的私钥。然后,鉴定设备166鉴定认证公钥证书180。该鉴定包括鉴定与认证设备164和/或认证设备164所连接的设备的身份有关的信息182。如果没有中间证书,则鉴定设备166直接利用认证根证书190来鉴定认证公钥证书。否则,如果在认证证书链中存在多个证书,则鉴定设备160还使用来自认证证书链中下一证书的公钥来鉴定认证证书链中的每个证书,直到达到认证根证书190。
认证架构160还促进配置过程。配置过程在一定程度是指配置设备162与认证设备164之间的单独的认证过程,如果该认证过程成功,则使配置设备162有可能在认证设备164处设定配置参数。配置过程的实施例包括执行认证协议(例如,挑战-响应协议),其中配置设备162向认证设备164证明其知晓配置私钥168。配置协议还证明如下附加信息:配置设备162正试图在认证设备164处进行存储。在该配置协议期间,认证设备164使用来自配置公钥证书170的公钥来确定配置设备162是否知道对应的私钥。然后,认证设备164鉴定配置公钥证书170。该鉴定包括鉴定配置公钥证书170中编码的约束172,以及使用来自配置证书链中下一证书的公钥来鉴定证书。如果没有中间证书,则认证设备164直接使用配置根证书186来鉴定配置公钥证书170。否则,如果在配置证书链中存在多个证书,则认证设备164还使用来自配置证书链中下一证书的公钥来鉴定配置证书链中每一个证书,直到达到配置根证书186。在一个实施例中,该鉴定包括鉴定配置中间证书174中编码的约束176,以便认证设备164检查对于链中的下一证书,约束176的限制性是否更弱。
除了通过实施图4的认证架构160的各个部件所取得的优点之外,认证架构160的一些实施例还提供优于常规认证技术的其他优点。例如,在一些实施例中,持有与配置根证书186或配置中间证书174对应的私钥168的每个实体能够创建证书170,该证书170允许第二实体通过创建与配置设备162的配置私钥168对应的配置证书来配置认证设备。通过针对每个配置设备162执行一次该操作,一旦配置设备已经加载有其配置证书170和可应用的配置中间证书174,配置设备162就能够配置任意数目的附加认证设备164。相反,使用常规方法,与认证根证书190或认证中间证书184对应的私钥的持有方产生针对每个认证设备164的证书180。
作为一个或更多个实施例的潜在优点的另一示例,持有与配置根证书186或配置中间证书174对应的私钥的实体可以同时使用配置证书170中编码的约束172对配置设备162执行的配置操作进行控制。这也可能允许对认证设备164中的附加识别信息199进行修改/更新。可以实施严格控制以促进这种修改/更新。
作为一个或更多个实施例的潜在优点的另一示例,认证证书是通用的,从而可以应用于多种认证设备162。如本文所使用的,通用认证证书和/或设备是指不存在产品、品牌或其他特征化信息,从而认证证书和/或设备不是特定于具体产品。虽然每个认证设备具有不同的私钥和对应证书,但是在将认证设备修改为包括产品、品牌或其他特定信息之前,认证设备是通用的。使用通过认证证书可以降低制造成本。相反,使用常规方法,针对每个认证设备162均专门产生和特征化新的证书。包括产品信息使得认证设备对于该产品是特定的,因此对认证设备的生产过程带来巨大制约。相反,不包括或者延迟产品信息特征化,这维持了认证设备的通用本质。
在一些实施例中,可以用特定认证信息对认证设备进行预加载。例如,可以用指定了要保护的产品的制造商和/或品牌名称的认证证书来预加载认证设备。在该示例中,配置证书包含允许在认证设备中仅写入产品名称、类型和序列号的约束。这种设置允许制造商订购只能与其产品一起使用的大量认证设备,但是仍具有将产品相关信息安全加载到认证设备上的灵活性。在其他实施例中,可以由制造商和/或另一授权方来指定和加载不同的配置参数。
在一些实施例中,可以用通用信息来预加载认证设备,以促进针对专门应用的进一步定制化。例如,可以用通用认证证书(即,只包含由第三方证明的证书,第三方确保认证设备本身是真实的)预加载认证设备,随后使用配置证书来配置认证设备。在一些实施例中,配置证书也在持有配置和认证根证书的同一第三方的控制之下。由该第三方或其委托方之一(持有配置中间证书)发布的配置证书可以包含允许在认证设备中写入特定制造商和/或品牌名称(或其他配置参数)的约束、以及任何产品名称、类型和序列号。该示例设置允许生产可以销售该多种制造商和/或品牌所有者的大量认证设备。这些制造商和/或品牌所有者可以随后在认证设备中配置它们自己的制造商和/或品牌名称(或其他许可的配置参数)以及它们产品的任何产品名称、类型和序列号。
在另一个实施例中,配置证书可以包含允许修改认证设备上的认证证书的约束。这允许在认证设备上安装新的证书。这还允许用具有不同信任根(例如,由品牌所有者管理)的不同认证证书链来替换认证证书链。
图5A示出了用于初始化认证设备的初始化操作200的一个实施例的流程图。在初始化操作期间,认证设备产生202认证私钥和公钥。然后,认证设备将公钥发送204给可信方。当接收206到公钥时,可信方将公钥放置208在证书中并将证书发送210回认证设备。认证设备接收212并存储认证公钥证书。可信方确保在这之后不可能有其他初始化操作。从此时开始,可信方控制那些能够由认证设备执行的仅有操作(配置和认证)。用于执行该初始化操作的方法和安全机制在一些实施例中可以是很不重要或根本不重要的,并且典型地是在制造商和可信方之间达成共识的。其他实施例可以包括更少或更多操作。
图5B示出了用于初始化配置设备的另一初始化操作220的一个实施例的流程图。在一些实施例中,品牌所有者向可信方注册222和224。品牌所有者还产生225针对配置设备的公钥/私钥对,并向可信方请求226和228所有者配置证书。可信方将发布236包含公钥和所有者信息的所有者证书。可信方确保230所有者信息的独有性,意味着可信方在以前从未发布过具有相同所有者信息的所有者证书,并且在以后也决不会这种做。对于可信方已产生和将产生的所有证书,可信方确保所有者信息的独有性。依据所有者信息中包含什么信息,存在多种不同的可能方式来确保所有者信息的独有性。可信方还产生234所有者证书,并向配置设备发布236和238证书。证书中包含的公钥对应于所有者所有的私钥。存在若干方法来确保可信方获得公钥,并且确保在该过程之后,所有者具有私钥以及对应的公钥证书。这也将分开讨论。在一个实施例,对于每个独有的所有者信息,该过程只执行一次。
图6示出了配置操作240的一个实施例的流程图。在配置操作240期间,品牌所有者可以将品牌和产品信息添加到认证设备。在所示操作240中,所有者利用与品牌所有者配置证书对应的私钥对包含产品信息的配置串进行签名241,并将配置串与品牌所有者配置证书一起发送242给认证设备。该签名可以包括一字段,该字段确保所签名的消息只能用于特定设备(例如,从设备接收的独有设备标识符或挑战)。
认证设备接收签名并使用品牌所有者配置证书中的公钥来鉴定244签名。认证设备通过检查签名中包括的用于确保消息只能用于特定设备的字段,来鉴定该消息不是针对不同的认证设备。然后,认证设备使用来自可信方根配置证书的公钥来鉴定246品牌所有者配置证书。如果两个操作都成功,则在认证设备中永久地存储248来自品牌所有者配置证书的品牌所有者信息和来自签名的产品信息。推荐方式是在该操作之后(自动或手动)锁定250认证设备以用于进一步配置。
在一些实施例中,可信方可以按照不同方式确保品牌所有者信息的独有性,每种方式均有其自己的特性。在一个示例中,品牌所有者信息包含由可信方产生的独有标识符。该方法要求主机能够建立和鉴定品牌所有者与独有标识符之间的联系。存在若干能够建立该联系的实际使用情况。例如,主机可以由品牌所有者提供或受品牌所有者的控制。作为另一示例,品牌所有者按照容易鉴定的方式来公布其标识符,例如在经过认证的网页上公布。
在该实施例中,可信方在向品牌所有者分配标识符之前不必执行任何检查。品牌所有者负责确保能够建立其自身与其标识符之间的联系。
在另一实施例中,品牌所有者标识包含品牌所有者的文本表示、其品牌名称或品牌所有者希望可鉴定的其他商标。在这种情况下,可信方需要确保品牌所有者信息与品牌所有者有关(例如,不侵犯其他品牌所有者的商标、品牌名称等),并且随后不会被发布至另一品牌所有者。在该实施例中,主机获得人类可读的品牌所有者信息,主机通过挑战-响应协议和证书链的鉴定,知道该品牌所有者信息是真实的。这在设想主机向人显示该信息作为产品真实性证明的情况下特别有用。
若干其他实施例也是可能的。例如,实施例可以使用人类可读的由公证方或其他可信的(官方)第三方数字签名的品牌所有者信息。另一可能方式是可信方立即发布包含标识符的品牌所有者证书,但是仅在已执行鉴定之后才公布该标识符和相联系的品牌所有者数据。这可以例如通过在经过认证的网页上公布包含标识符和对应的品牌所有者在内的列表来实现。
关于公私钥对(public-private key pair),可以按照多种不同方式来产生公私钥对。依据由谁产生这些密钥,可能需要向可信方和/或品牌所有者发送公钥或者私钥或者公钥和私钥两者。
在一个实施例中,可信方产生公私钥对。在这种情况下,可信方一旦接收到/产生了品牌所有者信息,就可以产生针对公钥的证书。然后,可信方将证书和秘密密钥以安全方式(例如,经由安全信息)发送给品牌所有者。
在另一实施例中,品牌所有者产生公私钥对。在这种情况下,品牌所有者需要将其公钥(可能还包括其品牌所有者信息)发送给可信方。于是,可信方可以产生品牌所有者证书并将其发送回品牌所有者。发送该证书不需要安全连接。
对于该技术,可以使用由证明授权方使用的标准方法。可以使用证书请求向可信方发送公钥。如果该证书请求由品牌所有者提供,则该证书请求不需要用于品牌所有者标识的所需附加字段。品牌所有者证书的产生也非常类似于标准互联网证书的产生,但是考虑到品牌所有者信息。
用于向可信方传送公钥、产生品牌所有者证书和将其传送给品牌所有者的任何其他方法也是可能的。
该方法的实施例可以是可信方向品牌所有者提供软件工具,如果可信方要求,则软件工具收集品牌所有者信息,产生针对该品牌所有者的公私钥对,向可信方发送公钥,并从可信方取回品牌所有者证书。仅运行该软件工具一次后,品牌所有者就具有为配置其产品中嵌入的认证设备而所需的所有信息。
图7示出了配置设备260的一个实施例的框图,可以如上所述将该实施例的至少一部分实现为软件交换工具262。所示交换工具262包括信息收集器264、密钥对产生器266、发送引擎268和配置设备证书获取器270,以执行上述和本文其他部分描述的操作。
图8示出了认证操作280的一个实施例的流程图。在认证操作期间,认证设备向主机证明其是真实的。为此,认证设备以经认证的方式向主机发送品牌所有者信息和产品信息。
在主机执行认证操作之前,用可信方认证根证书对主机进行配置282。该证书不是秘密的,但是需要保护该证书不受修改。可以使用满足该要求的任何常规方法来防止修改。
在一个实施例中,认证操作280开始于主机向认证设备发布284包含挑战的认证请求。认证设备接收286该请求和挑战。作为响应,认证设备构建288包含该挑战、品牌所有者信息、产品信息和其他可选字段的响应消息,并用其私钥对该响应消息签名。其他实施例可以包括更少或更多信息。认证设备对响应签名290并将签名的响应与认证证书链中存在的所有可选中间认证证书一起发送292回主机。
主机接收294响应并对其进行鉴定。在一个实施例中,主机执行一系列操作以促进该鉴定。例如,在一个实施例中,主机利用来自设备认证证书的公钥检查296该签名,检查298品牌所有者信息对于产品是否是正确的,并检查302产品信息对于产品是否是正确的。然后,主机检查302证书链,直至可信方认证根证书。作为检查证书链的一部分,主机可以使用下一级证书的公钥来鉴定302设备认证证书。如果下一级证书是可信方认证根证书,则该过程在此停止,并且证书链已鉴定。然而,如果下一级证书是中间认证证书,则使用该证书之上的证书的公钥来鉴定该证书。该过程重复,直至达到可信方认证根证书。
主机确定304在该过程中是否有任何检查失败,如果有,则中止306,产品认证失败。否则,如果所有步骤都成功,则可信方通过所有中间证书和设备认证证书证明308认证设备的私钥是真实的,从而认证设备自身是真实的。
由于可信方也严格控制品牌所有者信息和品牌所有者添加产品信息的能力,所以在一些实施例中品牌所有者和产品信息也由可信方证明,从而证明该产品是真实的(可靠的)。
在其他实施例中,当可信方的公钥由属于另一PKI的密钥来签名时,通过整个认证证书链继承了来自该PKI的信任。这允许对可信方进行融合或者创建具有多个可信方的认证系统,该多个可信方共享共用的信任根。可以将挑战-响应机制的使用扩展到其他应用,例如web接口上的安全登录或者依赖于PKI基础设施来进行认证的任何其他应用。
图9示出了计算机320的一个实施例的框图。所示计算机320一般代表任何电子计算设备,不管尺寸或功能资源如何。所示计算机320包括处理器322、数据存储装置324、存储器设备326和网络接口卡(NIC)328(或者其他通信连接功能)。
在一些实施例中,输入/输出或I/O设备(包括但不限于键盘、显示器、指示设备等)可以直接或通过介入的I/O控制器耦接至系统。此外,网络适配器也可以耦接至系统,使得数据处理系统能够通过介入的私有或公共网络耦接至其他数据处理系统或存储设备。调制解调器、有线调制解调器和以太网卡是当前可用类型的网络适配器中的一些。
基于轻量签名方案的轻量证书格式提供了消息恢复,但是不像常规方案中那样典型地依赖于单向变换或散列。这允许以更少程序代码或硬件来实施签名方法,因为不必提供散列函数。此外,证书格式紧凑足以从签名完全恢复,并且仅包含最小量的元数据,使得容易解析。
当使用具有消息恢复的签名方案时,可以通过将品牌信息和产品信息包括在可恢复消息中,来显著降低认证(响应)有效载荷的长度。这样,除了签名之外的其他这些字段无需发送。
由于挑战原本是由主机发送的,所以不需要将挑战与签名一起发送回。(这应用于所有签名方案,不仅仅是具有消息恢复的签名方案)。
轻量格式的一些实施例的优点包括:执行编码过程时字节数量相对少;由于最少量元数据,所以解析相对容易;以及消除了散列函数以降低处理和其他需求。其他实施例也具有能够完全恢复数据的优点。
图10示出了签名创建格式元素330的一个实施例的框图。通过向该元素330施加利用私钥的RSA加密来创建签名。将元素330格式化为包括填充数据332、版本334、冗余元素336、常量元素338、签名数据340和冗余元素342。具体地,在所示实施例中,元素330的部分如下:
·填充数据332:格式化数据元素的前N个最高有效位。必须选择N和填充数据332的值,使得格式化数据元素330的数值严格小于RSA模量(RSA modulus)的数值。在示例实施例中,选择N为12比特,其中格式化数据元素330的总长度是8比特的倍数。选择填充数据332的数值,使得该数值是使格式化数据330的数值小于RSA模量的最大可能数值。
·版本334:在示例实施例中,版本334是固定的4比特值。
·冗余元素336:在示例实施例中,冗余元素336是在格式化数据中重复两次的4字节随机数。
·常量元素338:在示例实施例中,常量元素338是4字节常量。
·签名数据340:签名数据340具有固定长度,即以比特表示的将RSA模量向上取整到8的2倍的长度减去14*8比特。
·冗余元素342:在元素330的示例实施例中,冗余元素342在功能和描述上类似于冗余元素336。
除了填充数据之外,其他所有元素的相对位置可以改变,并且字段的长度可以改变,只要总长度保持等于以比特表示的将RSA模量向上取整到8的2倍的长度。版本、常量元素和冗余元素都是冗余编码的元素。只要满足上述条件,就可以包括更多或更少冗余编码元素。冗余编码元素的总长度是重要的安全参数。
在一些实施例中,可以通过向签名施加利用公钥的RSA加密,并鉴定格式化数据元素是具有正确的格式化,来鉴定签名。在示例实施例中,这包括鉴定常量值和版本、鉴定冗余元素与另一冗余元素、以及鉴定填充数据是上述最大可能值。其他实施例可以包括更少或更多的元素或者在签名创建格式元素330的每个元素中包括更多或更少功能。
图11示出了签名格式化方案350的一个实施例的框图。数据格式化的目的是将数据输入(消息)变换为RSA私有操作能够直接使用的形式,并能够插入冗余,在鉴定过程期间可以使用冗余来确保签名是有效的。
数据格式化过程采用L-14字节的数据作为输入,并将其变换为L字节的输出数据,如图11所示,其中L是RSA模量M的字节长度。校验值和固定值允许鉴定过程来检测签名是否是正确和有效的。首部的目的是确保格式化块的数值解释严格小于RSA模量。
具体地,图11的签名格式化方案350的所示实施例包括首部352、值354、校验值356、签名数据358和随机数_1 360。此外,首部352向下继续至填充数据362和值364。在一个实施例中,填充数据362促进随机数(R+1)*28*L-12<M,其中M是RSA模量的值。值364向下继续至随机数_2 366和固定值368。在一个实施例中,估计值368的格式是[4E 58 50]十六进制。
在所示实施例中,给出了示例性字节数量和尺寸。在其他实施例中,可以使用其他尺寸和数量。
图12示出了签名产生的一个实施例的流程图370。具体地,流程图370开始于数据372。针对长度来校验374数据。如果失败,则终止374过程。如果未失败,则流程图前进至格式化378并继续至私有RSA操作380。最后,得到长度为L的签名382。
基本上,签名产生流程370校验输入是否具有正确长度,向输入施加格式化,然后利用私钥对格式化的输出执行RSA取幂。其他实施例可以按照不同顺序或采用更多或更少功能执行上述过程。
图13示出了签名鉴定的一个实施例的流程图390。图13所示签名鉴定采用签名392,对输入执行采用公钥的RSA操作394,并鉴定版本号396、固定值398和校验值400。如果这些检验中的任一失败,则鉴定失败402,否而返回404从签名恢复的数据(消息)。
图14示出了证书格式化方案的一个实施例的框图410。所示实施例包括版本412、类型414、CID/DID 416、SID 418、RSA模量420和失效日期422。此外,所示实施例包括类型列424、CID/DID列426和日期格式428。证书格式化的目的是为了将公钥编码成轻量签名操作能够使用的形式,并插入确定有效性所需并在鉴定过程期间允许使用的附加字段。在一个实施例中,证书格式化过程采用最多m字节的RSA模量420,向该模量施加填充,直至其长度刚好是m字节,然后将其插入到L-16字节的结构中。能够由长度L的签名密钥签名的模量的最大长度m是m=L-32。
下表1中标识并列出了多种证书字段以便参考。类似地,下表2中标识并列出了多种证书类型。
表1轻量证书字段
表2轻量证书类型
图15示出了证明鉴定的一个实施例的流程图。在一个实施例中,证书鉴定包括以上参照图13所示的签名鉴定。证书鉴定还鉴定版本号432、失效日期434和CID/DID 436a-d。如果这些检验中的任一失败,则鉴定失败438。否则,返回从签名恢复的公钥440。
在一些实施例中,轻量证书的使用对公钥基础设施(PKI)造成一个或更多个约束。虽然这些约束对PKI分级结构的设计具有灵活性方面的限制,但是这些约束不带来安全问题。事实上,对PKI分级结构设计的一些约束一般被视为是好的实践。可以对PKI分级结构施加的约束的一些类型示例包括与签名密钥的长度、证书链的长度、自签名证书的使用和公共指数有关的约束。
轻量证书的使用造成根据密钥长度严格排序的PKI分级结构。在一些实施例中,对轻量证书签名的密钥必须始终比被签名的密钥长32字节。这是由于如下事实:所签名密钥从证书恢复,并且签名444和证书442包含安全性446所需的一些附加数据。由于使用比证书中包含的密钥长的密钥对证书进行签名一般是好的实践,所以该约束对于安全性是无关紧要的。
证书授权方使用的密钥的长度增加对证书链的长度造成实际约束,因为RSA密钥越长,鉴定所要求的资源(例如,存储器、处理时间)越多。证书链的长度一般对鉴定证书链所需的资源量的影响大得多。有可能减小证书链的长度,而非损害链中最短密钥的安全性。在一些实施例中,针对轻量认证应用的PKI架构使用最多不超过两个或三个证书鉴定。
在一些实施例中,无法用轻量签名方案来产生自签名证书。这是因为如下事实:签名密钥不得不比被签名的密钥长。应该注意,从安全性方面来看,自签名证书只提供误差检测。如果被另一自签名证书替换,则主机无法对此进行检测。因此,主机负责保护根公钥的完整性,与根公钥是否存储在自签名证书中无关。
在一些实施例中,证书不包含RSA公钥的公共指数的值。该值可以通过另一方法来确定。存在可以用于此的若干可能方法,包括将公共指数的值固定为用于系统中所有公钥的值,并在证书的DID/CID字段中编码公共指数的值。可以保留DID/CID的少量比特以从固定值列表中选择公共指数,或者可以通过算法从CID/DID字段中导出公共指数。在证明授权方证书的情况下,也可以使用保留(RFU)比特。
在大多数PKI系统中,固定公共指数(public exponent)的值或者从短的固定值列表中选择公共指数是可能的。在一些情况下,可能的是,当现有密钥需要被再使用时,无法以充分的灵活性对公共指数编码。然而,在大多种现有PKI系统中,已经将公共指数设定为事实上的标准值65537。
轻量挑战-响应协议可以由主机使用,在给定可信的公钥时对认证设备进行认证。建议该信任是无关紧要的,因此假定主机已经鉴定了认证设备的公钥证书或者在需要时能够鉴定认证设备的公钥证书。
主机通过向认证设备发送挑战来发起挑战-响应协议。然后,认证设备将该挑战格式化为固定结构,并对格式化的挑战施加签名以产生响应。然后,主机通过使用可信公钥执行签名鉴定操作并鉴定施加的格式化和挑战是正确的,来鉴定该响应。在一些实施例中,挑战-响应协议提供从响应获得经认证数据串的可能性,这可以用于建立产品的真实性。
图16示出了挑战-响应格式化方案的一个实施例的框图450。所示格式化方案包括版本字段452、设备标识符(DID)字段454、挑战字段455、经认证串字段456、(RFU)字段458、计数器字段460和随机数字段462。在所示实施例中,经认证串字段456包括卖方信息字段464和产品信息字段466。每一个这些字段均配置为存储对挑战响应的一部分加以表示的对应数据值。在其他实施例中,这里所述字段的一些或全部可以重新排序或者具有不同的分配大小。
数据格式化的潜在目的是将挑战变换成签名操作能够直接使用的形式,以及插入在鉴定过程期间用来证明设备和产品真实性的附加字段。这样,散列函数不是必需的。
在一个实施例中,数据格式化过程从字段创建长L-14字节的输出,其中L是签名密钥RSA模量M的字节长度。除了挑战,格式化数据还可以包括设备标识符(DID)和经认证串。DID用于将响应与认证设备绑定,经认证串使得可以将产品特定信息(例如,品牌、型号...)传递给由签名认证的主机。计数器通过维护同步的计数器来提供了对至主机的绑定进行改进的可能性,并且随机数提供了附加的熵,使得对密文的攻击更加困难。
图17示出了响应产生的一个实施例的流程图470。当标签接收到响应472时,标签根据所示过程470对挑战进行处理以产生响应474。在一个实施例中,响应产生过程开始于将卖方信息476与产品信息478组合成串,一旦计算出响应,则该串形成经认证串480。对串的长度进行检查482以确保不超过可用的最大长度L-48字节。如果串通过检查,则将串插入到格式化例程484中,格式化例程在左侧添加填充数据,直至串刚好是L-48字节长。在一个实施例中,所用填充值是00hex。
响应产生过程还将计数器488递增490,并检查492是否溢出。然后可以将递增后的计数器值488、挑战472和其他字段插入格式化例程484中,以产生格式化的数据块。然后对格式化的数据块进行签名486以产生响应474。
图18示出了响应鉴定的一个示例的流程图490。在所示实施例中,接收响应492并鉴定签名494。如果确定496签名无误,则检查版本。如果确定498版本无误,则解析500响应以访问响应的多个字段中的数据。然后将多个字段与预期值(例如,预期挑战502、预期DID504、预期长度506、计数器508等)相比较。如果确定510,512和514签名、版本或其他预期值不匹配,则响应鉴定失败516。否则,识别经认证串匹配518,并且响应鉴定成功520。在一些实施例中,卖方522和产品信息524(或其他配置信息)也被鉴定,作为响应鉴定过程的一部分。
系统实施例包括至少一个处理设备,直接耦接至存储器元件或通过数据、地址和/或控制总线等系统总线间接耦接至存储器元件。存储器元件可以包括在实际执行程序代码期间采用的本地存储器、大容量存储装置和高速缓存存储器,高速缓存存储器提供执行期间对至少一些程序代码的临时存储,以减少必须从大容量存储装置获取代码的次数。
应该注意,可以使用存储在计算机可用存储介质上以由计算机执行的软件指令来实现方法操作中的至少一些。例如,计算机程序产品的实施例包括存储计算机可读程序的计算机可用存储介质,当在计算机上执行时计算机可读程序使计算机执行本文所述操作。
本发明实施例可以采取全硬件实现形式、全软件实现形式或包含硬件和软件元素两者的实现形式。在一个实施例中,本发明实现为软件,包括但不限于固件、驻留软件、微代码等。
此外,本发明实施例可以采取从计算机可用或计算机可读介质可获得的计算机程序产品的形式,计算机可用或计算机可读介质提供程序代码,程序代码由计算机或其他指令执行系统使用或与之结合使用。为描述目的,计算机可用或计算机可读介质可以是包含、存储、传送、传播或传输程序的任何装置,程序由指令执行系统、装置或设备使用或与之结合使用。
计算机可用或计算机可读介质可以是电子、磁、光、电磁、红外或半导体系统(或装置或设备),或者是传播介质。在具体实施例中,也可以使用存储在物理存储设备(例如,计算机可读存储介质)上以由多种类型的处理器执行的软件来实现本文所述功能。计算机可读存储介质的示例包括但不限于,半导体或固态存储器、磁带、可拆除计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性磁盘和光盘。光盘的当前示例包括具有只读存储器的压缩盘(CD-ROM)、带读/写的压缩盘(CD-R/W)、以及数字视频盘(DVD)。
所标识的可执行代码模块可以例如包括组织为对象、过程或功能等的一个或多个计算机指令的物理或逻辑块。然而,所标识的模块的可执行代码不需要在物理上位于一起,而是可以包括在不同位置存储的分立指令,当在逻辑上接合在一起时,包括上述模块并实现模块的所述目的。
确实,可执行代码模块可以是单个指令或多个指令,并甚至可以分布在不同程序之中的若干不同代码段上以及分布在若干存储或记忆设备上。类似地,可以在模块内标识和示出操作性数据,并可以按照适合形式实现操作性数据,并可以在任何适合类型的数据结构内组织操作性数据。可以收集操作性数据为单个数据集,或者可以将操作性数据分布在包括不同存储设备的不同位置上,并且操作性数据可以至少部分地作为电子信号存在于系统或网络上。如果模块或部分模块以软件实现,则软件部分存储在这里称为计算机可读介质的一个或多个物理设备上。
在一些实施例中,软件部分存储在非临时性状态下,使得软件部分或其表示在一段时间上驻留在相同物理位置。此外,在一些实施例中,软件部分存储在一个或多个非临时性存储设备上,非临时性存储设备包括能够存储表示软件部分的非临时性状态和/或信号的硬件元件,即便非临时性存储设备的其他部分能够改变和/或传输信号。非临时性存储设备的一个示例包括只读存储器(ROM),其可以在一段时间上存储表示软件部分的非临时性状态和/或信号。然而,存储信号和/或状态的能力不会由于传输与所存信号和/或状态相同的信号或者表示所存信号和/或状态的信号这一功能而减弱。例如,处理器可以访问ROM以获得表示所存信号和/或状态的信号,从而执行对应的软件指令。
在以上描述中,提供了多种实施例的具体细节。然而,可以采用比这些具体细节少的细节来实施一些实施例。在其他情况下,为了简洁和清楚目的,仅在能够实现本发明多种实施例的程度上描述了某些方法、过程、部件、结构和/或功能。
虽然按照具体顺序示出和描述了本文方法的操作,但是每个方法的操作顺序可以改变,从而可以按照倒序来执行某些操作,或者可以至少部分地与其他操作并发地执行某些操作。在另一实施例中,可以按照间断和/或交替方式来实施不同操作的指令或子操作。
虽然描述和示出了本发明具体实施例,但是本发明不限于所述和所示部分的具体形式互布置。本发明范围由所附权利要求及其等同物限定。
Claims (13)
1.一种用于创建轻量签名(382)的方法(370),所述方法包括:
根据签名格式形成格式化数据元素(330),其中所述签名格式包括对数据的表示(340)以及用于存储填充值的填充字段(332),其中包含所述填充字段的格式化数据元素(330)具有比RSA模量的数值小的数值;以及其中所述填充值的数值是使所述格式化数据元素(330)的数值小于RSA模量的数值的最大可能数值,
所述方法还包括:使用不包括散列函数的操作来产生所述格式化数据元素(330),以及在RSA私有操作中使用所述格式化数据元素(330)。
2.根据权利要求1所述的方法(370),其中,所述签名格式还包括针对至少一个冗余编码元素(336,342)的至少两个字段。
3.根据权利要求2所述的方法(370),其中,所述至少一个冗余编码元素(336,342)包括冗余编码版本元素(334)和冗余编码常量元素(338)。
4.根据权利要求2所述的方法(370),其中,所述至少一个冗余编码元素(336,342)的熵等于或高于熵阈值。
5.根据权利要求1所述的方法(370),其中,所述签名格式还包括针对至少一个常量元素(338)的至少一个字段。
6.根据权利要求1所述的方法(370),其中,将所述填充字段(332)定位为所述格式化数据元素(330)的数值解释的最高有效位。
7.一种产品认证系统(320),包括:
存储设备(326),存储数据和私钥;
处理器(322),耦接至所述存储设备(326),其中所述处理器(322)配置为根据签名格式形成格式化数据元素(330),其中所述签名格式包括对数据的表示(340)以及用于存储填充值的填充字段(332),其中包含所述填充字段的所述格式化数据元素(330)具有比RSA模量的数值小的数值;以及其中所述填充值的数值是使所述格式化数据元素(330)的数值小于RSA模量的数值的最大可能数值,
其中所述处理器(322)还配置为使用不包括散列函数的操作来产生所述格式化数据元素(330),以及在RSA私有操作中使用所述格式化数据元素(330)。
8.根据权利要求7所述的系统(320),其中,所述签名格式还包括针对至少一个冗余编码元素(336,342)的至少两个字段。
9.根据权利要求8所述的系统(320),其中,所述至少一个冗余编码元素(336,342)包括冗余编码版本元素(334)和冗余编码常量元素(338)。
10.根据权利要求8所述的系统(320),其中,所述至少一个冗余编码元素(336,342)的熵等于或高于熵阈值。
11.根据权利要求7所述的系统(320),其中,所述签名格式还包括针对至少一个常量元素(338)的至少一个字段。
12.根据权利要求7所述的系统(320),其中,将所述填充字段(332)定位为所述格式化数据元素(330)的数值解释的最高有效位。
13.根据权利要求7所述的系统(320),其中,所述处理器(322)还配置为将配置参数包括在认证有效载荷(340)的可完全恢复的消息部分中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37575610P | 2010-08-20 | 2010-08-20 | |
US61/375,756 | 2010-08-20 | ||
CN201180040180.0A CN103081399B (zh) | 2010-08-20 | 2011-08-22 | 认证设备和系统 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180040180.0A Division CN103081399B (zh) | 2010-08-20 | 2011-08-22 | 认证设备和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104537293A CN104537293A (zh) | 2015-04-22 |
CN104537293B true CN104537293B (zh) | 2018-01-19 |
Family
ID=44681395
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510058364.XA Active CN104537293B (zh) | 2010-08-20 | 2011-08-22 | 认证设备和系统 |
CN201180040180.0A Active CN103081399B (zh) | 2010-08-20 | 2011-08-22 | 认证设备和系统 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180040180.0A Active CN103081399B (zh) | 2010-08-20 | 2011-08-22 | 认证设备和系统 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10042997B2 (zh) |
EP (2) | EP2606605B1 (zh) |
CN (2) | CN104537293B (zh) |
WO (1) | WO2012023122A2 (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105378774A (zh) * | 2013-03-12 | 2016-03-02 | 英特托拉斯技术公司 | 安全交易系统和方法 |
US9197607B2 (en) * | 2013-08-15 | 2015-11-24 | Yahoo! Inc. | Enhancing network security |
EP2869231B1 (en) * | 2013-10-29 | 2020-08-05 | KONE Corporation | Verification of authenticity of a maintenance means connected to a controller of a passenger transportation/access device of a building and provision and obtainment of a license key for use therein |
DE102014102168A1 (de) | 2014-02-20 | 2015-09-03 | Phoenix Contact Gmbh & Co. Kg | Verfahren und System zum Erstellen und zur Gültigkeitsprüfung von Gerätezertifikaten |
US10114939B1 (en) * | 2014-09-22 | 2018-10-30 | Symantec Corporation | Systems and methods for secure communications between devices |
CN105989477A (zh) * | 2014-11-07 | 2016-10-05 | 天地融科技股份有限公司 | 数据交互方法 |
EP3048776B2 (en) * | 2015-01-22 | 2021-03-17 | Nxp B.V. | Methods for managing content, computer program products and secure element |
FR3032293B1 (fr) * | 2015-02-03 | 2018-03-23 | Stmicroelectronics (Rousset) Sas | Procede d'authentification d'un objet par un dispositif capables de communiquer mutuellement sans contact, systeme et objet correspondants |
GB2535165B (en) * | 2015-02-09 | 2021-09-29 | Arm Ip Ltd | A method of establishing trust between a device and an apparatus |
CN115414003A (zh) | 2015-08-11 | 2022-12-02 | 启迪医疗仪器公司 | 应用程序 |
US10863558B2 (en) * | 2016-03-30 | 2020-12-08 | Schweitzer Engineering Laboratories, Inc. | Communication device for implementing trusted relationships in a software defined network |
EP3276879B1 (de) * | 2016-07-26 | 2020-06-17 | Siemens Aktiengesellschaft | Verfahren zum betreiben einer anordnung, die eine unterstation und zumindest ein daran angeschlossenes endgerät umfasst |
CN107172105A (zh) * | 2017-05-13 | 2017-09-15 | 深圳市欧乐在线技术发展有限公司 | 一种实现多业务的安全认证方法及系统 |
US11290466B2 (en) * | 2017-08-16 | 2022-03-29 | Cable Television Laboratories, Inc. | Systems and methods for network access granting |
JP2019190111A (ja) * | 2018-04-24 | 2019-10-31 | 株式会社東海理化電機製作所 | 鍵情報生成システム及び鍵情報生成方法 |
CN112955884B (zh) * | 2018-11-01 | 2024-02-06 | 惠普发展公司,有限责任合伙企业 | 用于认证的设备、在网络中登记设备的方法 |
US11050570B1 (en) * | 2018-11-21 | 2021-06-29 | Amazon Technologies, Inc. | Interface authenticator |
US11017090B2 (en) | 2018-12-17 | 2021-05-25 | Hewlett Packard Enterprise Development Lp | Verification of a state of a platform |
US11409858B2 (en) * | 2019-05-13 | 2022-08-09 | Hewlett Packard Enterprise Development Lp | Authorized device or component determinations |
US11360784B2 (en) * | 2019-09-10 | 2022-06-14 | Hewlett Packard Enterprise Development Lp | Integrity manifest certificate |
CN111740839B (zh) * | 2020-05-26 | 2023-02-17 | 深圳市共进电子股份有限公司 | 一种证书验证方法、装置、终端设备及介质 |
WO2022265618A1 (en) * | 2021-06-14 | 2022-12-22 | Hewlett-Packard Development Company, L.P. | Authentication |
US11977640B2 (en) * | 2021-07-12 | 2024-05-07 | Dell Products, L.P. | Systems and methods for authenticating the identity of an information handling system |
US11336564B1 (en) | 2021-09-01 | 2022-05-17 | Schweitzer Engineering Laboratories, Inc. | Detection of active hosts using parallel redundancy protocol in software defined networks |
US11750502B2 (en) | 2021-09-01 | 2023-09-05 | Schweitzer Engineering Laboratories, Inc. | Detection of in-band software defined network controllers using parallel redundancy protocol |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101401341A (zh) * | 2005-11-18 | 2009-04-01 | 安全第一公司 | 安全数据解析方法和系统 |
CN101626293A (zh) * | 2008-07-09 | 2010-01-13 | 上海格尔软件股份有限公司 | 一种数据加密保护及解密方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5956404A (en) * | 1996-09-30 | 1999-09-21 | Schneier; Bruce | Digital signature with auditing bits |
US6141544A (en) | 1998-11-30 | 2000-10-31 | Telefonaktiebolaget Lm Ericsson | System and method for over the air activation in a wireless telecommunications network |
US7194619B2 (en) | 2002-03-26 | 2007-03-20 | International Business Machines Corporation | Remotely booting devices in a dense server environment without manually installing authentication parameters on the devices to be booted |
JP2004040246A (ja) * | 2002-06-28 | 2004-02-05 | Canon Inc | 情報処理装置、情報処理方法 |
GB2413465B (en) * | 2004-04-23 | 2007-04-04 | Hewlett Packard Development Co | Cryptographic method and apparatus |
US20060140399A1 (en) * | 2004-12-28 | 2006-06-29 | Young David W | Pre-calculation mechanism for signature decryption |
US20070050622A1 (en) | 2005-09-01 | 2007-03-01 | Rager Kent D | Method, system and apparatus for prevention of flash IC replacement hacking attack |
US7929703B2 (en) * | 2005-12-28 | 2011-04-19 | Alcatel-Lucent Usa Inc. | Methods and system for managing security keys within a wireless network |
US20080104402A1 (en) * | 2006-09-28 | 2008-05-01 | Shay Gueron | Countermeasure against fault-based attack on RSA signature verification |
US20080172562A1 (en) * | 2007-01-12 | 2008-07-17 | Christian Cachin | Encryption and authentication of data and for decryption and verification of authenticity of data |
US8347365B2 (en) * | 2007-03-29 | 2013-01-01 | Cardiac Pacemakers, Inc. | System and method for confirming identity and authority by a patient medical device |
US8169958B2 (en) * | 2008-03-27 | 2012-05-01 | Cisco Technology, Inc. | Obtaining information regarding services available from a wireless local area network |
US9395929B2 (en) * | 2008-04-25 | 2016-07-19 | Netapp, Inc. | Network storage server with integrated encryption, compression and deduplication capability |
US8515909B2 (en) * | 2008-04-29 | 2013-08-20 | International Business Machines Corporation | Enhanced method and system for assuring integrity of deduplicated data |
EP2134027A1 (en) * | 2008-06-09 | 2009-12-16 | Thomson Licensing | Method and apparatus for generating a signature for a message and method and apparaturs for verifying such a signature |
US20100212017A1 (en) * | 2009-02-18 | 2010-08-19 | International Business Machines Corporation | System and method for efficient trust preservation in data stores |
US20110028091A1 (en) * | 2009-08-03 | 2011-02-03 | Motorola, Inc. | Method and system for near-field wireless device pairing |
US8555054B2 (en) * | 2009-10-12 | 2013-10-08 | Palo Alto Research Center Incorporated | Apparatus and methods for protecting network resources |
US8347080B2 (en) * | 2010-05-10 | 2013-01-01 | Research In Motion Limited | System and method for multi-certificate and certificate authority strategy |
-
2011
- 2011-08-22 US US13/817,641 patent/US10042997B2/en active Active
- 2011-08-22 CN CN201510058364.XA patent/CN104537293B/zh active Active
- 2011-08-22 WO PCT/IB2011/053683 patent/WO2012023122A2/en active Application Filing
- 2011-08-22 EP EP11761407.3A patent/EP2606605B1/en active Active
- 2011-08-22 EP EP13169564.5A patent/EP2634957B1/en active Active
- 2011-08-22 CN CN201180040180.0A patent/CN103081399B/zh active Active
-
2018
- 2018-07-25 US US16/045,645 patent/US11170093B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101401341A (zh) * | 2005-11-18 | 2009-04-01 | 安全第一公司 | 安全数据解析方法和系统 |
CN101626293A (zh) * | 2008-07-09 | 2010-01-13 | 上海格尔软件股份有限公司 | 一种数据加密保护及解密方法 |
Non-Patent Citations (4)
Title |
---|
《A Secure Communication Protocol for Low-cost RFID System》;Jung-Hyun Oh et al;《Seventh International Conference on Computer and Information Technology》;20071016;第949-954页 * |
《Chapter11: Digital Signatures》;Menezes A J et al;《HANDBOOK OF APPLIED CRYPTOGRAPHY》;19961001;第425-488页 * |
《Message Authentication in Computationally Constrained Environments》;Benjamin Arazi et al;《IEEE Transactions On Mobile Computing》;20090701;第968-974页 * |
《Using Merkle"s Puzzle for Key agreement with Low-end Devices》;Frederik Armknecht et al;《The 4th IEEE International Workshop on Practical Issues In Building Sensor Network Applications》;20091020;第858-864页 * |
Also Published As
Publication number | Publication date |
---|---|
WO2012023122A3 (en) | 2012-07-26 |
CN103081399A (zh) | 2013-05-01 |
US11170093B2 (en) | 2021-11-09 |
CN104537293A (zh) | 2015-04-22 |
US10042997B2 (en) | 2018-08-07 |
US20180330073A1 (en) | 2018-11-15 |
WO2012023122A2 (en) | 2012-02-23 |
EP2634957B1 (en) | 2016-06-08 |
EP2606605B1 (en) | 2017-06-28 |
EP2634957A1 (en) | 2013-09-04 |
US20130290735A1 (en) | 2013-10-31 |
EP2606605A2 (en) | 2013-06-26 |
CN103081399B (zh) | 2016-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104537293B (zh) | 认证设备和系统 | |
US20210044441A1 (en) | Method and system for creating and checking the validity of device certificates | |
CN110546604B (zh) | 基于未确定数据保护区块链交易 | |
Nikitin et al. | {CHAINIAC}: Proactive {Software-Update} transparency via collectively signed skipchains and verified builds | |
CN104901931B (zh) | 证书管理方法与装置 | |
US8572673B2 (en) | Data processing apparatus and method | |
KR101937220B1 (ko) | 키 관리가 필요없는 블록체인을 기반한 전자서명 또는 메시지 인증 코드를 생성 및 검증 방법 | |
JP4841563B2 (ja) | 暗号機能を実行するためのデータ処理システム、方法、およびコンピュータ・プログラム | |
CN102549595B (zh) | 信息处理装置、控制器、密钥发行站、无效化列表有效性判定方法以及密钥发行方法 | |
EP2340483B1 (en) | Method for provisioning trusted software to an electronic device | |
CN101977193B (zh) | 安全下载证书的方法及系统 | |
CN110050273A (zh) | 利用系统产生的装置程序化 | |
KR101598738B1 (ko) | 제어 프로그램 관리 시스템, 및 제어 프로그램의 변경 방법 | |
US20090077376A1 (en) | Method and a system for secure execution of workflow tasks in a distributed workflow management system within a decentralized network system | |
US20120324229A1 (en) | System and method for generating keyless digital multi-signatures | |
CN101573936A (zh) | 使用可信处理技术的数字版权管理 | |
CN112084484B (zh) | 一种设备硬件安全检测方法、装置、电子设备及存储介质 | |
CN102177678A (zh) | 可信和机密的远程tpm初始化 | |
CN101438274A (zh) | 信任关系的声明变换 | |
CN114267100B (zh) | 开锁认证方法、装置、安全芯片及电子钥匙管理系统 | |
US20240241976A1 (en) | System and method for security suite concatenating validation elements for blockchain binding operations | |
Pintaldi | Implementation of a Blockchain-based Distributed PKI for IoT using Emercoin NVS and TPM 2.0 | |
CN117014176A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN114448646A (zh) | 一种跨链交易的权限管理方法、系统、设备及介质 | |
CN113641986B (zh) | 基于SoftHSM实现联盟链用户私钥托管方法与系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |