CN117640096A - 更新设备证书的方法和用于驱动该方法的设备 - Google Patents

更新设备证书的方法和用于驱动该方法的设备 Download PDF

Info

Publication number
CN117640096A
CN117640096A CN202311099330.6A CN202311099330A CN117640096A CN 117640096 A CN117640096 A CN 117640096A CN 202311099330 A CN202311099330 A CN 202311099330A CN 117640096 A CN117640096 A CN 117640096A
Authority
CN
China
Prior art keywords
certificate
endorsement
layer
unique
generating
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.)
Pending
Application number
CN202311099330.6A
Other languages
English (en)
Inventor
秋渊成
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN117640096A publication Critical patent/CN117640096A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/3263Cryptographic 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/3265Cryptographic 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
    • 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/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • 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
    • 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/3247Cryptographic 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
    • 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/3263Cryptographic 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/3268Cryptographic 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 validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

一种设备可以包括:处理电路,被配置为生成与设备相关联的设备标识符,以及生成与设备标识符相关联的唯一背书标识(ID);第一层子电路,被配置为接收设备标识符,以及基于设备标识符和唯一背书ID来生成第一证书和第二证书,第一证书和第二证书包括用于认证设备的信息,并且处理电路还被配置为接收第一证书和第二证书,以及基于第一证书和第二证书来验证设备是否已经被修改,其中,响应于第一层子电路被修改,第一层子电路还被配置为基于新的唯一背书ID生成背书密钥并且基于背书密钥生成针对新的唯一背书ID的证书签名请求。

Description

更新设备证书的方法和用于驱动该方法的设备
相关申请的交叉引用
该美国非临时申请基于2022年8月31日在韩国知识产权局提交的第10-2022-0110324号韩国专利申请并要求其优先权权益,该申请的公开内容通过引用整体结合于此。
技术领域
本发明构思的各种示例实施例涉及更新设备证书的方法、包括用于执行该方法的计算机可读指令的非暂时性计算机可读介质、和/或用于执行该方法的设备等,更具体地,涉及当设备被改变、更新和/或修改等时验证用于识别设备的证书并更新证书链的方法。
背景技术
通常,在公钥基础设施(Public Key Infrastructure,PKI)中,通过使用私钥在设备之间生成数字签名,并且通过使用公钥来验证数字签名。在PKI中,证书机构颁发证书来为公钥背书(endorse),并且通过证书的链验证来验证由证书机构颁发的公钥是否正确,以验证设备的公钥。
当设备的制造主体被改变时,证书机构颁发新的证书。在这种情况下,使用保全协议和数据模型(Secure Protocol And Data Model,SPDM)。
发明内容
根据至少一个示例实施例,一种生成与保全协议和数据模型(SPDM)相关联的安全信号的设备可以包括只读存储器(Read-Only Memory,ROM)、设备标识证书引擎、引导加载程序(bootloader)和/或固件等,并且响应于引导加载程序被设备的使用主体更新,可能在设备被驱动时发生错误。
本发明构思的各种示例实施例提供了一种更新证书的方法,其中,该方法即使在引导加载程序被改变时也能够进行设备的正常操作。
根据本发明构思的至少一个示例实施例,提供了一种设备,包括:处理电路,被配置为生成与设备相关联的设备标识符,以及生成与设备标识符相关联的唯一背书标识(ID);第一层子电路,被配置为接收设备标识符,以及基于设备标识符和唯一背书ID来生成第一证书和第二证书,第一证书和第二证书包括用于认证设备的信息,并且处理电路还被配置为接收第一证书和第二证书,以及基于第一证书和第二证书来验证设备是否已经被修改,其中,响应于第一层子电路被修改,第一层子电路还被配置为基于新的唯一背书ID生成背书密钥,并且基于背书密钥生成针对新的唯一背书ID的证书签名请求。
根据本发明构思的至少一个示例实施例,提供了一种更新设备证书的方法,该方法包括:生成与期望设备相关联的设备标识符,生成与设备标识符相关联的唯一背书标识(ID),将设备标识符发送到第一层子电路,该发送使得第一层子电路基于设备标识符和唯一背书ID来生成第一证书和第二证书,第一证书和第二证书包括用于认证期望设备的信息;接收第一证书和第二证书;以及基于第一证书和第二证书来验证期望设备是否已经被修改,其中,响应于第一层子电路被修改,还使得第一层子电路通过基于新的唯一背书ID生成背书密钥并且基于背书密钥生成针对新的唯一背书ID的证书签名请求,来生成第一证书和第二证书。
根据本发明构思的至少一个示例实施例,提供了一种更新设备的证书的方法,该方法包括:基于根证书的第一证书链来验证中间证书;基于中间证书的第二证书链来验证设备的引导加载程序是否已经被修改;以及基于设备证书签名请求和验证设备的引导加载程序是否已经被修改的结果而将设备证书链更新到中间证书。
附图说明
从以下结合附图的详细描述中,将更清楚地理解本发明构思的各种示例实施例,其中:
图1是根据至少一个示例实施例的设备的框图;
图2是根据至少一个示例实施例的处理器的框图;
图3示出了根据至少一个示例实施例的设备标识证书引擎;
图4示出了根据至少一个示例实施例的第一层;
图5示出了根据至少一个示例实施例的第二层;
图6示出了根据至少一个示例实施例的制造商证书块;
图7示出了根据至少一个示例实施例的中间生产商证书块;
图8是示出根据至少一个示例实施例的证书的更新的框图;
图9A和图9B示出了根据至少一个示例实施例的将证书与链进行组合;
图10是示出根据至少一个示例实施例的更新证书的方法的流程图;
图11是示出根据至少一个示例实施例的在更新证书的方法中生成证书签名请求的过程的流程图;
图12示出了根据至少一个示例实施例的在更新证书的方法中更新证书链的过程;
图13示出了根据至少一个示例实施例的在更新证书的方法中验证和更新证书的过程;以及
图14示出了根据至少一个示例实施例的处理器的示例实施方式。
具体实施方式
现在将参考附图更全面地描述发明构思的各种示例实施例。
图1是根据至少一个示例实施例的设备10的框图。
参考图1,根据至少一个示例实施例的设备10可以包括至少一个处理器100和/或至少一个保全存储装置200等,但不限于此。例如,设备10可以包括更多或更少数量的组成部件。
如图1所示,设备10可以作为电子设备等来处理数据。例如,设备10的处理器100可以是各种电子设备中包括的配置,各种电子设备诸如是移动设备、智能电话、个人数字助理(Personal Digital Assistant,PDA)、个人计算机(Personal Computer,PC)、平板PC、膝上型电脑、上网本、家用电器等,但示例实施例不限于此。
处理器100可以包括设备标识证书引擎(Device Identify Certificate Engine,DICE)110、第一层(层0)120和/或第二层(层1)130等,但不限于此。处理器100可以被整体地或部分地实施为处理电路,并且可以包括:硬件,包括逻辑电路;硬件/软件组合,诸如执行软件和/或固件的处理器;或它们的组合。例如,处理电路更具体地可以包括但不限于中央处理单元(Central Processing Unit,CPU)、算术逻辑单元(Arithmetic Logic Unit,ALU)、数字信号处理器、微型计算机、现场可编程门阵列(Field Programmable GateArray,FPGA)、片上系统(System-on-Chip,SoC)、可编程逻辑单元、微型处理器、专用集成电路(Application-Specific Integrated Circuit,ASIC)等,但不限于此。
DICE 110(例如,DICE设备、DICE子电路、DICE子组件等)可以生成设备唯一识别符(例如,期望设备的唯一识别符),并且将设备唯一识别符发送到第一层120。这里,设备唯一标识符可以用于生成与期望设备相关联和/或相对应的设备证书。此外,设备唯一标识符可以是一次生成的唯一值,并且可以通过使用例如一次性程序(One-Time Program,OTP)而生成。参考图2和图3详细描述DICE 110的配置。
第一层120(例如,第一层设备、第一层子电路、第一层子组件等)可以从DICE 110接收设备唯一标识符,并且生成设备证书(例如,第一证书)和/或别名证书(例如,第二证书)等。此外,第一层120可以是用于引导设备(例如,设备10)的引导加载程序,和/或可以将与设备10相对应的设备标识(ID)证书签名请求发送到设备证书机构,但示例实施例不限于此。此外,第一层120可以存储别名密钥、别名证书、设备ID证书和/或背书ID证书等,并且可以将其提供给第二层130。例如,第一层120可以被配置为存储别名密钥、别名证书、设备ID证书和/或背书ID证书的随机存取存储器(Random-Access Memory,RAM),和/或可以将其提供给第二层130,但不限于此。参考图2和图4详细描述第一层120。
第二层130(例如,第二层设备、第二层子电路、第二层子组件等)可以存储设备证书和/或设备证书链等。例如,第二层130可以是被配置为包括识别设备10的证书机构的固件,但不限于此。作为另一示例,第二层130可以是保全协议和数据模型(SPDM)固件,并且可以是请求方和/或证书存储装置(将在下面描述)在其中进行操作的层,但示例实施例不限于此。第二层130可以从第一层120接收别名密钥、别名证书、设备ID证书和/或背书ID证书等,并且可以根据和/或基于SPDM协议来执行,但不限于此。下面参考图2和图5详细描述第二层130。
保全存储装置200(例如,安全存储设备、安全存储电路等)可以被实施为集成电路(Integrated Circuit,IC)和/或半导体芯片,相应地,保全存储装置200可以被称为安全芯片,但示例实施例不限于此。保全存储装置200可以包括至少一个处理器和/或其中的加密引擎(例如,处理电路),并且其中执行的各种功能可以通过嵌入式硬件和/或嵌入式软件和硬件的组合等来实施。在保全存储装置200中实施的硬件和/或软件可以执行与证书生成相关的至少一个操作和/或与公钥基础设施(PKI)中的加密/解密相关的至少一个操作等,但不限于此。
保全存储装置200可以包括能够保护其中的信息免受外部攻击的至少一个单元(例如,组件、模块、设备、电路、电路系统等)。例如,保全存储装置200可以包括被实施为硬件和/或硬件和软件的组合的保护单元(例如,保护设备、保护子电路等),并且可以阻止通过保护单元从外部(例如,从外部源)访问存储在保全存储装置200内部的信息和/或数据,和/或即使当从外部(例如,从外部源)访问存储在保全存储器200内部的信息和/或数据时也改变信息和/或数据,从而减少和/或防止原始信息和/或数据泄漏到外部(例如,外部源)。
与基于公钥的通信相关的一个或多个密钥被安装和/或存储在保全存储装置200中,并且可以执行使用存储的密钥的各种算术运算和/或安全相关操作。例如,保全存储装置200可以存储与证书生成相关的至少一个私钥(例如,证书私钥CA-SK等),但不限于此。此外,保全存储装置200可以存储用于执行基于公钥的通信的至少一个密钥对(例如,设备公钥DEV-PK和相对应的设备私钥DEV-SK等),但示例实施例不限于此。例如,在保全存储装置200中,至少一个密钥对可以在其制造过程期间被安装和/或存储,但示例实施例不限于此。在至少一个其他示例实施例中,保全存储装置200包括用于在其中生成密钥对的软件(未示出),也可以在保全存储装置200被初始驱动时生成设备公钥DEV-PK和设备私钥DEV-SK,等等。
设备10可以根据和/或基于诸如SPDM协议等保全协议(例如,安全协议、加密协议等)与至少一个外部设备进行通信。例如,在基于公钥的通信中,可以由响应方220(例如,响应方设备、响应方子电路等)处理使用要被保护、保密、要被保全和/或加密的重要信息(例如,要被保全、加密等的信息)的操作,并且可以将操作的结果提供给第一层120。
例如,在诸如非对称密码算法(Rivest Shamir Adleman,RSA)、椭圆曲线密码(Elliptic Curve Cryptography,ECC)、数字签名标准(Digital Signature Standard,DSS)等密码操作中,使用设备私钥DEV-SK的操作可以由响应方220执行。此外,可以由证书机构(Certificate Authority,CA)代理210(例如,CA代理设备、CA代理子电路等)执行使用设备私钥DEV-SK的签名(例如,RSA签名),该签名是为设备10的认证而执行的。此外,响应方220可以从请求方(例如,请求设备、请求子电路等)接收根据和/或基于保全协议(例如,安全协议、加密协议等)进行处理的数据。参考图4详细描述请求方。
根据上述配置,设备10可以安全地颁发证书而不暴露重要信息(例如,要被保全、加密、保密的信息等)(诸如证书私钥和/或设备私钥等),并且还可以执行安全的保全协议,但不限于此。也就是说,在根据和/或基于保全协议颁发证书和/或执行通信的操作中,与以传统软件方式加密和使用证书私钥和/或设备私钥的情况相比,可以降低暴露存储在设备10上的私钥的可能性。
图2是根据至少一个示例实施例的处理器100的框图。此外,图3示出了根据至少一个示例实施例的设备标识证书引擎,图4示出了根据至少一个示例实施例的第一层,并且图5示出了根据至少一个示例实施例的第二层。
参考图2和图3,处理器100可以包括DICE 110、第一层120和/或第二层130等,但不限于此。
DICE 110可以包括设备信息存储单元111、第一函数生成单元112和/或第二函数生成单元113等,但不限于此。
在设备信息存储单元111(例如,设备信息存储设备、设备信息存储电路等)中,在制造设备10的至少一个操作期间,可以存储和/或预先存储设备唯一信息,但示例实施例不限于此。例如,设备信息存储单元111可以包括NOR闪存和/或NAND闪存等,并且可以被存储在OTP区域的期望区域和/或任意区域中,但不限于此。此外,设备信息存储单元111可以以硬件的形式存在,并且所存储的设备唯一信息可以通过例如网络弹性嵌入式系统(Cyberresilient embedded system,Cyres)锁存器等来访问。
第一函数生成单元112(例如,第一函数生成设备、第一函数生成子电路等)从设备信息存储单元111接收设备10的设备唯一信息CDS和/或从第一层120接收设备ID,但不限于此。第一函数生成单元112可以将设备唯一信息CDS和/或设备ID输入到存储在第一函数生成单元112中的至少一个函数中,例如,至少一个函数可以被预先存储在第一函数生成单元112中,但不限于此。这里,所存储的函数可以是基于散列的消息认证码(Hash-basedMessage Authentication Code,HMAC),但不限于此。此外,设备ID可以是第一层120的散列值和/或测量值,但不限于此。例如,当存储在第一函数生成单元112中的函数是HMAC函数时,由第一函数生成单元112接收的设备ID可以是第一层120的代码的散列值的形式,但示例实施例不限于此。另外,唯一设备秘密数据UDS和/或设备ID可以被输入到HMAC函数中,但示例实施例不限于此。
第二函数生成单元113(例如,第二函数生成设备、第二函数生成子电路等)可以从设备信息存储单元111接收设备10的设备唯一信息CDS,并且可以基于设备唯一信息CDS等生成唯一背书ID UEI。这里,第二函数生成单元113可以将设备10的设备唯一信息CDS输入到存储在第二函数生成单元113中的至少一个函数中,例如,输入到预先存储在第二函数生成单元113中的至少一个第二函数中,并且可以使用第二函数和设备唯一信息CDS来生成唯一背书ID UEI,但示例实施例不限于此。例如,第二函数生成单元113可以接收唯一设备秘密数据UDS作为输入,并且可以输出唯一背书ID UEI等。这里,存储在第二函数生成单元113中的第二函数可以是密钥推导函数(Key Derivation Function,KDF),但不限于此。当第一层120被执行时,第二函数生成单元113可以将生成的唯一背书ID UEI发送到第一层120。此外,从唯一设备秘密数据UDS中生成唯一背书ID UEI,因此,唯一背书ID UEI可以包括在制造设备10时输入的唯一信息和/或制造商的期望时间等,但示例实施例不限于此。此外,设备标识证书引擎110可以是只读存储器(ROM)形式的存储器,但示例实施例不限于此。
参考图2和图4,第一层120包括别名密钥生成单元121、设备ID生成单元122、唯一背书ID生成单元123、别名密钥证书生成单元124、设备ID证书生成单元125和/或证书签名请求生成单元126等,但不限于此。
别名密钥生成单元121(例如,别名密钥生成设备、别名密钥生成子电路等)接收来自DICE 110的设备标识符CDI和/或来自第二层130的固件信息FD,并且基于设备标识符CDI和/或固件信息FD来生成别名密钥,但不限于此。别名密钥可以被生成为别名私钥Alias_SK和别名公钥Alias_PK的非对称对,但示例实施例不限于此。这里,包括别名私钥Alias_SK和别名公钥Alias_PK的别名密钥对可以是用于认证设备信息的临时密钥,并且可以被发送到第二层130,但示例实施例不限于此。此外,别名公钥Alias_PK可以被发送到别名密钥证书生成单元124等。
设备ID生成单元122(例如,设备ID生成设备、设备ID生成子电路等)接收设备标识符CDI,并且基于设备标识符CDI等生成设备私钥DEV_SK和/或设备公钥DEV_PK。这里,设备私钥DEV_SK和设备公钥DEV_PK可以被生成为非对称对,并且设备私钥DEV_SK和设备公钥DEV_PK可以配置设备ID,但示例实施例不限于此。此外,设备私钥DEV_SK可以被发送到别名密钥证书生成单元124,和/或设备公钥DEV_PK可以被发送到设备ID证书生成单元125等。这里,设备ID可以是第一层120的测量值的散列值,但不限于此。
唯一背书ID生成单元123(例如,唯一背书ID生成设备、唯一背书ID生成子电路等)从DICE 110接收唯一背书ID UEI,并且基于唯一背书ID UEI等生成背书私钥EN_SK和/或背书公钥EN_PK。因为唯一背书ID UEI包括设备10的设备唯一信息CDS,所以背书私钥EN_SK和背书公钥EN_PK也可以是包括用于认证设备10的唯一信息的密钥对。例如,背书私钥EN_SK可以被发送到设备ID证书生成单元125和/或证书签名请求生成单元126,并且背书公钥EN_PK可以被发送到证书签名请求生成单元126,但示例实施例不限于此。也就是说,背书私钥EN_SK和背书公钥EN_PK可以各自用作用于确定第一层120是否已经被改变、修改和/或更新等的认证密钥。相应地,当第一层120被改变时,背书私钥EN_SK和背书公钥EN_PK可以被改变,以便成功地认证和/或验证设备10等。
别名密钥证书生成单元124(例如,别名密钥证书生成设备、别名密钥证书子电路等)接收来自第二层130的固件信息FD、别名公钥Alias_PK和/或设备私钥DEV_SK等,并且基于来自第二层130的固件信息FD、别名公钥Alias_PK和/或设备私钥DEV_SK等生成别名证书Alias_Cert,但示例实施例不限于此。根据至少一个示例实施例,别名证书Alias_Cert通过对设备ID进行加密而获得,并且可以用于检查第一层120是否已经被更新、修改和/或改变等。例如,别名证书Alias_Cert可以是通过对设备10的信息进行加密而获得的证书,但示例实施例不限于此。相应地,当第一层120被改变时,别名证书Alias_Cert可以被改变,以便成功地认证和/或验证设备10等。
此外,设备ID证书生成单元125(例如,设备ID证书生成设备、设备ID证书生成子电路等)接收设备公钥DEV_PK和/或背书私钥EN_SK,并且基于设备公钥DEV_PK和/或背书私钥EN_SK等生成设备ID证书DEVID_Cert。设备ID证书DEVID_Cert可以与存储在第二层130的请求方131中的制造商证书形成证书链,并且可以用于检查第一层120是否已经被更新。例如,因为设备ID生成单元122基于设备标识符CDI生成设备私钥DEV_SK和设备公钥DEV_PK,所以当第一层120已经被改变时,设备私钥DEV_SK和设备公钥DEV_PK可以被改变。相应地,当第一层120被更新时,设备私钥DEV_SK和设备公钥DEV_PK可以被改变,并且设备ID证书DEVID_Cert可以被改变。这里,设备ID证书DEVID_Cert可以具有X.509格式,但示例实施例不限于此。此外,设备ID证书DEVID_Cert可以通过对背书私钥EN_SK进行签名而生成。
证书签名请求生成单元126(例如,证书签名请求生成设备、证书签名请求生成子电路等)可以接收背书公钥EN_PK和/或背书私钥EN_SK,并且可以基于背书公钥EN_PK和/或背书私钥EN_SK等生成背书ID证书签名请求ENID_CSR。也就是说,背书ID证书签名请求ENID_CSR可以通过对基于设备标识符CDI而生成的背书私钥EN_SK进行签名来生成,但不限于此。背书ID证书签名请求ENID_CSR被提供给第二层130。例如,背书ID证书签名请求ENID_CSR可以基于背书公钥EN_PK和/或背书私钥EN_SK而生成,背书公钥EN_PK和/或背书私钥EN_SK是基于设备标识符CDI等而生成的。响应于第一层120被改变,设备标识符CDI被改变,因此背书ID证书签名请求ENID_CSR也被改变。相应地,当第一层120被改变时,设备ID证书签名请求DEVID_CSR也被改变。如下所述,第二层130可以基于对设备ID证书签名请求DEVID_CSR是否已经被改变的确定以及第一层120的更新信息来确定第一层120是否已经被改变、更新和/或修改,但示例实施例不限于此。此外,如下所述,背书ID证书签名请求ENID_CSR可以用于响应于第一层120被改变等而更新证书链。
参考图2和图5,第二层130可以包括请求方131和/或证书存储装置132等,但不限于此。
响应于第一层120被更新,请求方131从响应方220接收证书链的信息,并且验证证书链。例如,当第一层120被更新时,请求方131可以验证来自响应方220的先前存储在设备10中的证书链的根证书和/或中间证书。根据至少一个示例实施例,请求方131可以使用和/或基于根证书中包括的根证书公钥来验证对中间证书的签名,并且当中间证书的签名验证已经成功完成时,可以基于中间证书中包括的公钥来验证设备证书。另外,根证书可以是由制造商在制造设备10时存储的证书,但不限于此,并且中间证书可以是用于验证第一层120是否已经被改变的证书。此外,设备证书可以是包括第一层120的信息等的证书。参考图9详细描述当第一层120被更新时验证证书的过程。
证书存储装置132可以包括多个槽(slot),包括第一槽132_1、第二槽132_2、第三槽132_3…等,并且可以在多个槽的一个或多个中存储证书块,但示例实施例不限于此,并且在证书存储装置132等中可以包括更多或更少数量的槽。根据至少一个示例实施例,证书块可以包括包含设备10的信息的根证书、中间证书和/或设备证书等,但不限于此。参考图6详细描述证书块。然而,槽的数量不限于此,并且还可以包括第n槽132_n。请求方131可以基于存储在多个槽中的证书来检查和/或确定设备10的配置是否有改变。例如,当第一层120被中间生产商(例如,原始设备制造商(Original Equipment Manufacturer,OEM))改变时,请求方131将包括第一层120的新信息的证书存储在多个槽中。
证书存储装置132可以控制处理器100执行保全协议(例如,安全协议、加密协议等),保全协议可以被预先存储,但示例实施例不限于此。例如,证书存储装置132可以存储SPDM协议,并且响应于处理器100的第一层120被更新,证书存储装置132可以认证更新后的第一层120并控制更新证书链的操作。
图6示出了根据至少一个示例实施例的制造商证书块M_cert Blk。
参考图6,制造商证书可以被存储在第一槽132_1中,但不限于此。
根据至少一个示例实施例,制造商根证书(MR_Cert)132_1a、制造商中间证书(MI_Cert)132_1b和/或制造商背书证书(ME_Cert)132_1c形成为链CHN(例如,证书链),并且可以被存储在制造商证书块M_cert Blk中,并且制造商证书块M_cert Blk可以包括设备证书(Dev_Cert)132_1d和别名证书(Alias_Cert)132_1e等,但示例实施例不限于此。
例如,当制造设备10时,设备10的制造商可以将包括设备10的设备唯一信息的制造商证书块M_cert Blk存储在第一槽132_1中,但示例实施例不限于此。MR_Cert 132_1a可以用于基于对MI_Cert 132_1b的签名来验证MI_Cert 132_1b,并且可以形成链CHN。此外,MI_Cert 132_1b可以用于验证对ME_Cert 132_1c的签名,并且可以与ME_Cert 132_1c形成链CHN。当MR_Cert 132_1a、MI_Cert 132_1b和ME_Cert 132_1c形成证书链CHN时,设备10的认证可以成功完成。
此外,制造商证书块M_cert Blk可以包括基于ME_Cert 132_1a而颁发的Dev_Cert132_1d和基于Dev_Cert 132_1d而颁发的Alias_Cert 132_1e,但不限于此。例如,当MR_Cert 132_1a、MI_Cert 132_1b和ME_Cert 132_1c形成证书链CHN时,证书存储装置132可以确定设备10的认证已经成功完成。此外,证书存储装置132可以确定Dev_Cert 132_1d和Alias_Cert 132_1e是可信证书。此外,当证书存储装置132确定Dev_Cert 132_1d和Alias_Cert132_1e是可信证书时,证书存储装置132可以确定设备10的认证程序已经成功。当设备10的认证程序被确定为成功时,证书存储装置132可以信任处理器100。
图7示出了根据至少一个示例实施例的中间生产商证书块OEM_cert Blk。
参考图7,根据至少一个示例实施例的中间生产商证书块OEM_cert Blk可以被存储在第二槽132_2中,但示例实施例不限于此。然而,中间生产商证书块OEM_cert Blk可以被存储在第n槽131_1n(诸如第三槽132_3和/或第四槽)中,并且客户证书块可以另外以与下面将描述的方式相同的方式被存储在第n槽132_1n中,但示例实施例不限于此。
根据至少一个示例实施例,中间生产商根证书(OEM R_Cert)132_2a、中间生产商中间证书(OEM I_Cert)132_2b、中间生产商背书证书(OEM EN_Cert)132_2c和/或中间生产商设备证书(OEM DEVID_Cert)132_2d可以形成证书链CHN,并且可以被存储在中间生产商证书块OEM_cert Blk中,并且中间生产商证书块OEM_cert Blk还可以包括别名证书(Alias_Cert)132_2e等。
例如,当制造设备10时,设备10的中间生产商(例如,OEM等)可以在第二槽132_2中存储包括设备10的更新信息的中间生产商证书块OEM_cert Blk,但示例实施例不限于此。OEM R_Cert 132_2a可以用于通过验证对OEM I_Cert 132_2b的签名来验证OEM I_Cert132_2b,并且可以形成证书链CHN。此外,OEM I_Cert 132_2b可以验证对OEM EN_Cert 132_2c的签名,并且可以与OEM EN_Cert 132_2c形成证书链CHN,但示例实施例不限于此。此外,OEM EN_Cert 132_2c可以通过验证对OEM DEVID_Cert132_2d的签名等,与OEM DEVID_Cert132_2d形成证书链CHN。当证书存储装置132确定OEM R_Cert 132_2a、OEM I_Cert 132_2b、OEM EN_Cert132_2c和/或OEM DEVID_Cert 132_2d形成证书链CHN时,设备10的认证由证书存储装置132等成功完成,但示例实施例不限于此。
此外,中间生产商证书块OEM_cert Blk可以包括基于OEM DEVID_Cert132_2d而生成的Alias_Cert 132_2e。这里,响应于确定OEM R_Cert 132_2a、OEM I_Cert 132_2b、OEMEN_Cert 132_2c和/或OEM DEVID_Cert 132_2d形成证书链CHN(例如,被包括在证书链CHN等中),证书存储装置132可以确定设备10的认证程序已经成功。此外,响应于证书存储装置132确定设备10的认证已经成功完成,证书存储装置132可以确定OEM DEVID_Cert132_2d和Alias_Cert 132_2e是可信证书等。此外,响应于证书存储装置132确定OEM DEVID_Cert132_2d和Alias_Cert 132_2e是可信证书,证书存储装置132可以确定设备10的认证程序已经成功。响应于设备10的认证程序成功完成,证书存储装置132可以信任处理器100。
图8是示出根据至少一个示例实施例的证书的更新的框图。
参考图8,当第一层120被改变为中间生产商(例如,OEM等)的层时,存储在第一层120中的DEV_Cert 132_1d也被改变,因此设备证书必须被更新以正常地驱动和/或操作设备10等。这里,在至少一个示例实施例中,可以使用OEM DEVID_Cert 132_2d和/或Alias_Cert 132_2e中的任何一个,等等。例如,响应于第一层120被中间生产商改变,设备10可能在使用MR_Cert132_1a、MI_Cert 132_1b和/或DEV_Cert 132_1d(例如,原始证书等)时生成错误。相应地,响应于第一层120被改变,请求方131可以检测到和/或确定第一层120已经被改变,并且证书存储装置132可以请求OEM DEVID_Cert 132_2d和Alias_Cert 132_2e等中的任何一个。这里,请求方131提供OEM DEVID_Cert 132_2d和Alias_Cert 132_2e中的任何一个,因此设备10的证书链可以被更新,并且设备10的第一层120的更新可以被成功认证。
也就是说,响应于根据至少一个示例实施例的设备10的第一层120被更新,处理器100可以基于存储在第一槽132_1中的第一证书来确定第一层120是否被改变、修改和/或更新,并且处理器100可以基于对第一层120是否被改变、修改和/或更新等的确定的结果而接收改变后的认证信息和/或在第二槽132_2中更新包括改变后的证书链的第二证书的信息。这里,第一证书可以是DEV_Cert 132_1d,并且第二证书可以被定义为基于OEM DEV_Cert132_2d而颁发的OEM DEV_Cert 132_2d或Alias_Cert 132_2e,但示例实施例不限于此。
图9A和图9B示出了根据一些示例实施例的将证书组合成链。
参考图9A和图9B,当第一层120被更新时,在设备10的引导操作期间可能发生至少一个错误,或者换句话说,在第一层120已经被更新、改变、修改等之后,设备10可能无法正确地引导,因为设备10由于存储在设备10的存储器中的原始证书与更新后的第一层120的(多个)未认证证书之间的不匹配而无法通过保全引导验证操作。相应地,期望更新中间生产商的证书信息,以便执行设备10的正常引导操作等。
图9A示出了中间生产商的设备证书被更新为由制造商等颁发的证书和/或基于由制造商等颁发的证书。当首次制造设备10时,制造商可以将制造商根证书MR_Cert和/或制造商中间证书MI_Cert存储在证书存储装置132中,但示例实施例不限于此。例如,制造商根证书MR_Cert可以用于验证对制造商中间证书MI_Cert的签名,并且可以用于生成根链RT_CHN。此外,当中间生产商(例如,OEM)更新第一层120时,制造商中间证书MI_Cert可以用于验证对中间生产商设备证书OEM DEV_Cert的签名,并且可以通过设备链DEV_CHN等而连接到中间生产商设备证书OEM DEV_Cert。另外,制造商根证书MR_Cert、制造商中间证书MI_Cert和/或中间生产商设备证书OEM DEV_Cert可以被组合成证书链,证书存储装置132可以确定认证程序成功,并且信任由中间生产商改变的第一层120。
图9B示出了中间生产商的设备证书是使用和/或基于由制造商等颁发的证书而被别名证书Alias_Cert更新的。如上参考图9A所述,当首次制造设备10时,制造商可以将制造商根证书MR_Cert和/或制造商中间证书MI_Cert存储在证书存储装置132中,但示例实施例不限于此。例如,制造商根证书MR_Cert可以用于验证制造商中间证书MI_Cert的签名,并且可以用于生成根链RT_CHN等。此外,当中间生产商(例如,OEM)更新第一层120时,制造商中间证书MI_Cert可以用于验证对中间生产商设备证书OEM DEV_Cert的签名,并且可以连接到基于中间生产商设备证书OEM DEV_Cert等而生成的别名证书Alias_Cert。当制造商根证书MR_Cert、制造商中间证书MI_Cert和别名证书Alias_Cert被成功组合以形成证书链时,证书存储装置132可以确定认证程序成功,并且可以基于认证程序的成功结果而信任由中间生产商改变的第一层120。
图10是示出根据至少一个示例实施例的更新证书的方法的流程图。
参考图10,响应于处理器100的第一层120被改变,设备10可能不会正常地进行操作。相应地,在操作S110中,请求方131将证书请求信号GET_CERT发送到响应方220。
响应于证书请求信号GET_CERT被接收,在操作S120中,响应方220可以向请求方131提供证书链的散列数据CERT CHAIN_Hash和/或证书链数据CERT_CHAIN。
响应于证书链的散列数据CERT CHAIN_Hash和/或证书链数据CERT_CHAIN被接收,在操作S130中,请求方131可以检测到和/或确定第一层120已经被改变,并且可以向响应方220请求挑战CHALLENGE消息以更新证书链。这里,挑战CHALLENGE可以意味着用于更新证书链的证书链验证操作的一部分,但示例实施例不限于此。
在操作S140中,响应方220可以接收挑战CHALLENGE,并且可以制作和/或生成挑战批准CHALLENGE_AUTH消息等。挑战批准CHALLENGE_AUTH消息可以包括来自第一层120的改变后的信息,但不限于此。挑战批准CHALLENGE_AUTH消息可以基于设备私钥DEV_SK而生成,但不限于此。
在操作S150中,请求方131可以响应于挑战批准CHALLENGE_AUTH消息而向响应方220发送证书签名请求提供信号GET_CSR,并且在操作S160中,响应方220可以向请求方131提供设备10的证书签名请求CSR。这里,证书签名请求CSR可以由响应方220响应于第一层120被改变而新生成,或者换句话说,响应方220可以确定第一层120是否被改变、修改和/或更新,并且可以基于确定的结果来生成证书签名请求CSR。此外,证书签名请求CSR可以包括设备10的公钥和/或唯一序列号,并且可以由响应方220使用设备10的私钥来签名,但示例实施例不限于此。另外,根据一些示例实施例,证书签名请求CSR可以是由制造商和/或其他类似实体颁发和/或存储的信息。
在操作S170中,响应于证书签名请求CSR被接收,请求方131可以将接收到的证书签名请求CSR发送到中间生产商证书机构(例如,OEM CA)300。此外,响应于证书签名请求CSR被接收,在操作S180中,OEM CA 300可以将证书链CERT_CHAIN发送到请求方131。证书链CERT_CHAIN可以是由中间生产商生成的证书的链,并且可以不同于由制造商生成的设备证书。也就是说,请求方131可以向OEM CA 300发送证书签名请求CSR,并且可以接收新的证书链,从而更新证书。
在操作S190a中,在从OEM CA 300接收到证书链CERT_CHAIN之后,请求方131可以向响应方220发送新的证书设置信号SET_CERT。在操作S190b中,响应方220可以在第二层130的第二槽132_2中存储新的证书链(例如,SLOT#1CERT CHAIN UPDATE(槽#1证书链更新)),并且可以更新新的证书,但不限于此。然而,新的证书被更新的槽不限于第二槽132_2,而是可以包括第三槽132_3或第n槽132_n等。
图11是示出根据至少一个示例实施例的在更新证书的方法中生成证书签名请求的过程的流程图。
参考图11,在S210操作中,第一层120可以生成证书签名请求CSR。例如,证书签名请求CSR可以包括针对与中间生产商的设备ID相关联和/或相对应的签名的请求,但示例实施例不限于此。此外,如上所述,证书签名请求CSR可以基于设备的唯一背书ID UEI而生成,并且设备的唯一背书ID UEI可以由第一层120基于设备标识符CDI而生成,因此,证书签名请求CSR可以响应于第一层120被改变而新生成。此外,证书签名请求CSR可以包括设备10的公钥和/或唯一序列号等,但不限于此。例如,设备ID可以是第一层120的测量值的散列值,但示例实施例不限于此。
在操作S220中,第一层120可以将证书签名请求CSR发送到第二层130,并且第二层130可以认证第一层120。如将在下面描述的,第一层120的更新可以包括:第二层130确定第一层120是否已经被改变、更新和/或修改,接收改变后的认证信息,和/或响应于指示第一层120已经被改变的确定结果而将与包括改变后的证书链的第二证书相关联的信息存储在第二槽132_2中。例如,第二层130可以从第一层120接收证书签名请求CSR,并且可以生成与证书签名请求CSR相对应的中间生产商设备证书OEM DEV_Cert链,但不限于此。此外,第二槽132_2可以存储更新后的设备ID证书链信息,但不限于此。
在操作S230中,处理器100可以基于设备10的认证的结果来确定第一层120是否已经被改变。
在操作S240中,响应于确定第一层120已经被改变、修改、更新等,设备标识证书引擎110可以生成改变后的设备的唯一背书ID UEI,并且第一层120可以基于唯一背书ID UEI生成唯一背书密钥。例如,唯一背书密钥可以包括背书私钥EN_SK和/或背书公钥EN_PK,并且背书私钥EN_SK和背书公钥EN_PK可以被生成为非对称对,但示例实施例不限于此。
在操作S250中,响应于唯一背书密钥被生成,第一层120的证书签名请求生成单元126可以生成包括改变后的第一层120的信息的证书签名请求CSR。
然而,如果确定第一层120没有被改变,则证书存储装置132可以结束更新过程,而不经历单独的程序。
图12示出了根据至少一个示例实施例的在更新证书的方法中更新证书链的过程。
参考图12,一旦设备10被引导,请求方131就可以执行第一层120的认证程序,但不限于此。
在操作S310中,请求方131可以基于存储在证书存储装置132中的根证书和/或在其基础上来验证中间证书。请求方131可以使用根证书来生成对中间证书的证书签名请求,并且响应于中间证书的签名被验证,根证书可以信任中间证书。此外,响应于请求方131确定中间证书的验证成功,请求方131可以将根证书和中间证书进行组合以形成链,但不限于此。
根据至少一个示例实施例,根证书和/或中间证书可以是由制造商颁发的证书,但不限于此。例如,当第二中间生产商(例如,装配方等)更新由第一中间生产商生产的设备时,存储在证书机构中的证书可以是由第一中间生产商等颁发的证书。
在操作S320中,响应于中间证书的验证完成,请求方131可以使用中间证书来验证设备证书等。请求方131可以使用中间证书来生成设备证书的证书签名请求。另外,请求方131可以验证设备证书的签名,请求方131可以更新中间证书以指示设备证书是可信的。此外,请求方131可以响应于设备证书的成功验证而将中间证书和设备证书进行组合以形成链,但示例实施例不限于此。
根据至少一个示例实施例,在操作S330中,请求方131可以确定第一层120是否已经被改变,作为验证设备证书的结果。
响应于确定第一层120已经被改变,在操作S340中,请求方131可以将证书签名请求生成命令发送到第一层120,并且第一层120的证书签名请求生成单元126可以生成证书签名请求CSR。例如,证书签名请求CSR可以基于设备10的背书私钥EN_SK和/或背书公钥EN_PK而生成,并可以包括设备10的唯一背书ID UEI的信息,但示例实施例不限于此。
在操作S350中,响应于证书签名请求CSR被生成,第二层130可以接收证书签名请求CSR并更新证书链。这里,证书链可以由第二层130基于中间生产商设备证书的签名而生成,但示例实施例不限于此。响应于制造商根证书MR_Cert、制造商中间证书MI_Cert和/或中间生产商设备证书OEM DEV_Cert链被形成,并且这些链被成功组合,请求方131可以确定认证程序成功,并且可以信任由中间生产商等改变、修改和/或更新的第一层120。换句话说,请求方131可以通过检查和/或分析制造商根证书MR_Cert、制造商中间证书MI_Cert和/或中间生产商设备证书OEM DEV_Cert链等而在改变、更新和/或修改之后认证第一层120(例如,可以确定第一层120是否可信等)。
然而,响应于请求方131确定第一层120没有被改变,请求方131可以结束更新过程,而不经历单独的程序。
图13示出了根据至少一个示例实施例的在更新证书的方法中验证和更新证书的过程。
图13示出了根据通过由OEM 20生成的证书和由PKI 30生成的公钥对证书进行验证来更新证书链的过程,但示例实施例不限于此。
参考图13,响应于第一层(层0)120被更新和/或改变,在操作S410中,由制造商制造的设备标识证书引擎110使用第一函数来生成设备标识符CDI。这里,第一函数可以是HMAC函数,并且设备标识符CDI可以基于第一层120的设备唯一信息CDS和/或设备ID而生成,但示例实施例不限于此。
在操作S420中,设备标识证书引擎110可以响应于设备标识符CDI被生成而使用第二函数生成唯一背书ID UEI。唯一背书ID UEI可以是作为将设备唯一信息CDS输入第二函数的结果而输出的值,但不限于此。这里,第二函数可以是KDF函数,但不限于此。
响应于设备标识符CDI和唯一背书ID UEI被生成,在操作S430中,第一层120可以生成证书签名请求CSR。这里,证书签名请求CSR可以包括设备唯一背书ID证书EN_Cert等的信息。
在操作S440中,请求方131可以响应于证书签名请求CSR而生成根证书的第一公钥。证书代理可以包括请求方,但示例实施例不限于此。这里,根证书是指存储在请求方131中的证书,其认证和/或指示第一层120是否已经被改变,并且根证书的公钥可以用于验证由制造商颁发的第一证书是否已经被改变,但示例实施例不限于此。
在操作S450中,请求方131可以响应于公钥被生成等来验证中间证书的签名。中间证书和根证书可以通过链来进行组合,但示例实施例不限于此。
在操作S460中,请求方131可以验证中间证书的签名,并且第二层130可以响应于请求方131的签名验证结果来更新证书链。也就是说,请求方131可以通过在维持中间证书和/或根证书的链等的同时存储改变后的设备唯一背书ID证书EN_Cert和/或别名证书Alias_Cert的链,来更新改变后的证书。
图14是示出根据至少一个示例实施例的处理器100的示例的框图。
参考图14,应用处理器700可以被实施为片上系统(SoC),并且根据一些示例实施例,应用处理器700可以被安装在设备上以控制设备的总体操作,但示例实施例不限于此。应用处理器700可以包括中央处理单元(CPU)710、安全处理器720、请求方730、显示控制器740、ROM 750、存储器控制器760和/或RAM 770等。除了所示出的组件之外,应用处理器700还可以包括其他组件,例如,电源管理单元、图形处理单元(Graphics Processing Unit,GPU)、时钟单元等。
CPU 710可以处理和/或执行存储在ROM 750和/或RAM 770中的程序和/或数据。例如,CPU 710可以根据操作时钟来处理和/或执行程序和/或数据。CPU 710可以被实施为多核处理器,但不限于此。多核处理器是具有两个或更多个独立处理器(例如,核)的一个计算组件,并且两个或更多个处理器中的每一个可以读取和/或执行程序指令等。
ROM 750可以非易失性地存储程序和/或数据。ROM 750可以被实施为可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)和/或电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM),但不限于此。此外,RAM 770可以临时地存储程序、数据和/或指令。例如,存储在ROM 750中的程序和/或数据可以在CPU 710等的控制下被临时地存储在RAM 770中。RAM 770可以被实施为存储器,诸如动态RAM(Dynamic RAM,DRAM)、静态RAM(Static RAM,SRAM)等。
存储器控制器760执行与外部存储器设备接口的功能,并且根据数据访问请求控制外部存储器设备以写入和/或读取数据。此外,显示控制器740可以通过驱动显示设备来控制屏幕的显示操作。
根据至少一个示例实施例,应用处理器700可以与可被实施为外部分离的半导体芯片的安全存储装置(或安全IC)进行通信,但示例实施例不限于此。根据至少一个示例实施例,当应用处理器700被初始驱动时,可以针对应用处理器700和安全存储装置执行相互认证过程。根据至少一个示例实施例,当相互认证成功时,应用处理器700和安全存储装置可以使用对称密钥等执行加密通信。
此外,根据至少一个示例实施例,应用处理器700的安全处理器720和请求方730执行用于基于公钥的通信的各种操作。例如,应用处理器700可以向安全存储装置提供请求,使得在安全存储装置中执行与基于公钥的通信相关的多个功能中的至少一些。根据至少一个示例实施例,可以在安全存储装置中执行期望和/或要求相关信息不被暴露给外部的重要操作,诸如证书的电子签名、设备私钥等。
虽然已经具体示出和描述了本发明构思的各种示例实施例,但是应当理解,在不脱离所附权利要求的精神和范围的情况下,可以在形式和细节上进行各种改变。

Claims (20)

1.一种用于更新设备证书的设备,包括:
处理电路,被配置为:
生成与所述设备相关联的设备标识符,并且
生成与所述设备标识符相关联的唯一背书标识ID;
第一层子电路,配置为:
接收所述设备标识符,并且
基于所述设备标识符和所述唯一背书ID来生成第一证书和第二证书,第一证书和第二证书包括用于认证所述设备的信息;以及
所述处理电路还被配置为:
接收第一证书和第二证书,并且
基于第一证书和第二证书来验证所述设备是否已经被修改,
其中,响应于第一层子电路被修改,第一层子电路还被配置为:
基于新的唯一背书ID生成背书密钥,并且
基于所述背书密钥生成针对所述新的唯一背书ID的证书签名请求。
2.根据权利要求1所述的设备,其中,所述处理电路还被配置为通过将唯一设备秘密数据输入到第一函数中来生成所述设备标识符。
3.根据权利要求2所述的设备,其中,所述处理电路还被配置为通过将所述唯一设备秘密数据输入到第二函数中来生成所述唯一背书ID。
4.根据权利要求1所述的设备,其中,第一层子电路还被配置为生成背书私钥和背书公钥。
5.根据权利要求4所述的设备,其中,第一层子电路还被配置为基于所述背书私钥和所述背书公钥来生成背书证书签名请求。
6.根据权利要求1所述的设备,其中,所述处理电路还被配置为基于第二证书和所述证书签名请求来验证第一层子电路是否已经被修改。
7.根据权利要求6所述的设备,其中,第一层子电路还被配置为:
确定第一层子电路是否已经被修改;以及
基于所述证书签名请求和所述确定的结果来更新证书链。
8.一种更新设备证书的方法,所述方法包括:
生成与期望设备相关联的设备标识符;
生成与所述设备标识符相关联的唯一背书标识ID;
将所述设备标识符发送到第一层子电路,所述发送使得第一层子电路,基于所述设备标识符和所述唯一背书ID来生成第一证书和第二证书,第一证书和第二证书包括用于认证所述期望设备的信息;
接收第一证书和第二证书;以及
基于第一证书和第二证书来验证所述期望设备是否已经被修改,
其中,响应于第一层子电路被修改,还使得第一层子电路通过基于新的唯一背书ID生成背书密钥并且基于所述背书密钥生成针对所述新的唯一背书ID的证书签名请求,来生成第一证书和第二证书。
9.根据权利要求8所述的方法,其中,所述生成所述设备标识符还包括通过将唯一设备秘密数据输入到第一函数中来生成所述设备标识符。
10.根据权利要求9所述的方法,其中,所述生成所述唯一背书ID还包括通过将所述唯一设备秘密数据输入到第二函数中来生成所述唯一背书ID。
11.根据权利要求8所述的方法,其中,所述生成所述背书密钥还包括生成背书私钥和背书公钥。
12.根据权利要求11所述的方法,其中,所述生成第一证书和第二证书还包括基于所述背书私钥和所述背书公钥来生成背书证书签名请求。
13.根据权利要求8所述的方法,其中,所述验证所述期望设备是否已经被修改还包括基于第一证书、第二证书和所述证书签名请求来确定第一层子电路是否已经被修改。
14.根据权利要求13所述的方法,其中,所述验证所述期望设备是否已经被修改还包括基于所述证书签名请求和确定第一层子电路是否已经被修改的结果来更新所述期望设备的证书链。
15.一种更新设备的证书的方法,所述方法包括:
基于根证书的第一证书链来验证中间证书;
基于所述中间证书的第二证书链来验证所述设备的引导加载程序是否已经被修改;以及
基于设备证书签名请求和验证所述设备的引导加载程序是否已经被修改的结果而将设备证书链更新到所述中间证书。
16.根据权利要求15所述的方法,其中,所述设备证书链的更新包括:
生成与所述设备相关联的设备标识符;以及
通过将唯一设备秘密数据分别输入到第一函数和第二函数中来生成与所述设备标识符相关联的唯一背书标识ID。
17.根据权利要求15所述的方法,其中,所述设备证书链的更新包括:
生成背书私钥和背书公钥;以及
基于所述背书私钥和所述背书公钥来生成背书密钥。
18.根据权利要求17所述的方法,其中,所述设备证书链的更新还包括:
基于所述背书私钥和所述背书公钥来生成背书证书签名请求。
19.根据权利要求15所述的方法,其中,所述设备证书链的更新包括:
基于所述根证书、所述中间证书和所述设备证书签名请求来验证所述设备中包括的第一层子电路的修改。
20.根据权利要求19所述的方法,还包括:
响应于确定第一层子电路是否已经被更新的结果而基于所述设备证书签名请求更新所述设备的证书链。
CN202311099330.6A 2022-08-31 2023-08-29 更新设备证书的方法和用于驱动该方法的设备 Pending CN117640096A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2022-0110324 2022-08-31
KR1020220110324A KR20240030815A (ko) 2022-08-31 2022-08-31 디바이스 인증서의 업데이트 방법 및 이를 구동하는 디바이스

Publications (1)

Publication Number Publication Date
CN117640096A true CN117640096A (zh) 2024-03-01

Family

ID=87889166

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311099330.6A Pending CN117640096A (zh) 2022-08-31 2023-08-29 更新设备证书的方法和用于驱动该方法的设备

Country Status (4)

Country Link
US (1) US20240073033A1 (zh)
EP (1) EP4333361A1 (zh)
KR (1) KR20240030815A (zh)
CN (1) CN117640096A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11533183B2 (en) * 2020-01-10 2022-12-20 Lennox Industries Inc. Secure provisioning of digital certificate

Also Published As

Publication number Publication date
EP4333361A1 (en) 2024-03-06
US20240073033A1 (en) 2024-02-29
KR20240030815A (ko) 2024-03-07

Similar Documents

Publication Publication Date Title
CN109313690B (zh) 自包含的加密引导策略验证
US10771264B2 (en) Securing firmware
US10528767B2 (en) Systems, methods and apparatuses for secure storage of data using a security-enhancing chip
CN111264044B (zh) 芯片、生成私钥的方法和可信证明的方法
EP2989741B1 (en) Generation of working security key based on security parameters
US10841087B2 (en) Security device, system, and security method
US11050562B2 (en) Target device attestation using a trusted platform module
US10853472B2 (en) System, apparatus and method for independently recovering a credential
EP4333361A1 (en) Method of updating device certificate and device for driving the method
CN116710914A (zh) 边缘设备的密钥撤销
JP2018117185A (ja) 情報処理装置、情報処理方法
AU2022311741A1 (en) Measured restart of microcontrollers
CN117397198A (zh) 绑定加密密钥证明
US10067770B2 (en) Platform key hierarchy
EP4350552A1 (en) Certificate update method and certificate update system of device driving the same
CN112000935B (zh) 远程认证方法、装置、系统、存储介质及计算机设备
EP4264466B1 (en) Attesting update of a firmware layer
WO2023217357A1 (en) Platform key certification with device class root-of-trust
CN116015976A (zh) 一种数据加密传输方法及装置
WO2019212545A1 (en) Updating a security policy

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication