[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN108347332A - 验证固件签名的方法及装置 - Google Patents

验证固件签名的方法及装置 Download PDF

Info

Publication number
CN108347332A
CN108347332A CN201710418279.9A CN201710418279A CN108347332A CN 108347332 A CN108347332 A CN 108347332A CN 201710418279 A CN201710418279 A CN 201710418279A CN 108347332 A CN108347332 A CN 108347332A
Authority
CN
China
Prior art keywords
public key
firmware
public
signature
programming
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
CN201710418279.9A
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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN201710418279.9A priority Critical patent/CN108347332A/zh
Publication of CN108347332A publication Critical patent/CN108347332A/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/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/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/321Cryptographic 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 a third party or a trusted authority
    • 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/3234Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例提供一种验证固件签名的方法及装置。所述方法包括:获取可信机构CA生成的公私钥对,使用所述公私钥对中的私钥对固件进行认证签名;在可信环境中,将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM;所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名。本发明通过将OTP、ROM、CA结合作为可信计算平台的可信核心根,确保了公钥、公钥哈希值和固件程序不会被篡改,且经过一系列的认证和信任传递,可以保证整个系统的固件是经过认证、完全可信的。

Description

验证固件签名的方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种验证固件签名的方法及装置。
背景技术
可信计算是指当前如果一个实体的行为总是以所期望的方式,朝着预期目标发展,那么它是可信的。如果从一个初始的可被信任的可信根出发,在平台计算环境的每一次转换时,这种信任状态可以通过传递的方式保持下去不被破坏,那么平台上的计算环境始终是可信的,在可信环境下的各种操作也不会破坏平台的可信,平台本身的完整性得到保证,这就是信任链的传递机制。
整个可信计算的核心就是可信根的设计如何保证安全可信,而可信根的设计是否安全可信直接影响整个系统的固件是否是经过认证、完全可信的。
发明内容
为了解决可信计算的可信根安全问题,即确保验证固件签名的公钥的安全性问题,本发明实施例提供一种验证固件签名的方法及装置。
为了达到上述目的,本发明实施例提供一种验证固件签名的方法,包括:获取可信机构CA生成的公私钥对,使用所述公私钥对中的私钥对固件进行认证签名;在可信环境中,将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM;所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名。
为了达到上述目的,本发明实施例还提供一种验证固件签名的装置,包括:签名模块,用于获取可信机构CA生成的公私钥对,使用所述公私钥对中的私钥对固件进行认证签名;烧写模块,用于在可信环境中,将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名。
本发明实施例所揭示的验证固件的方法和装置,通过将一次性可编程(One TimeProgramable,OTP)、只读存储器(Read-only Memory,ROM)、证书授权中心(CertificateAuthority,CA)结合作为可信计算平台的可信核心根,确保了公钥、公钥哈希值和固件程序不会被篡改,且经过一系列的认证和信任传递,可以保证整个系统的固件是经过认证、完全可信的。
附图说明
所包括的附图用来提供对本发明实施例的进一步的理解,其构成了说明书的一部分,用于例示本发明的实施方式,并与文字描述一起来阐释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例的验证固件签名的方法的处理流程图;
图2为本发明一实施例的验证固件签名的方法示意图;
图3为本发明另一实施例的验证固件签名的方法示意图;
图4为本发明又一实施例的验证固件签名的方法示意图;
图5为本发明实施例的验证固件签名的装置的结构示意图。
具体实施方式
参照附图,通过下面的说明书,本发明的前述以及其它特征将变得明显。在说明书和附图中,具体公开了本发明的特定实施方式,其表明了其中可以采用本发明的原则的部分实施方式,应了解的是,本发明不限于所描述的实施方式,相反,本发明包括落入所附权利要求的范围内的全部修改、变型以及等同物。
针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
应该强调,术语“包括/包含”在本文使用时指特征、整件、步骤或组件的存在,但并不排除一个或更多个其它特征、整件、步骤或组件的存在或附加。
本发明提出一种验证固件签名的方法及装置,其创新点在于提出一种全新的可信根的实现方式来保证固件验证的安全可信。可信根的实现所采用的技术手段是:将一次性可编程(One Time Programable,OTP)、只读存储器(Read-only Memory,ROM)、证书授权中心(Certificate Authority,CA)结合作为可信计算平台的可信核心根,CA作为认证方对固件认证后签名,确保程序不被篡改;同时用于验证签名的CA公钥的哈希值烧入OTP中,确保公钥不被篡改,而OTP一次性编程的硬件特性保证了哈希值的安全。经过这一系列的认证和信任传递,可以保证整个系统的固件是经过认证、完全可信的。
图1为本发明实施例的验证固件签名的方法的处理流程图。如图1所示,所述方法包括:
步骤S101,获取可信机构CA生成的公私钥对,使用所述公私钥对中的私钥对固件进行认证签名;
步骤S102,在可信环境中,将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM;
步骤S103,所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名。
在一个实施例的步骤S101中,可信机构CA使用非对称算法生成一对公私钥,通过分析代码确认固件的完整性后,使用私钥对固件进行签名。
并且,在使用所述公私钥中的私钥对固件进行认证签名之前,还包括:分析所述固件的代码,确定所述固件是否完整,当确定所述固件完整时,使用所述公私钥中的私钥对所述固件进行认证签名。可信机构CA是权威机构,其使用自己的方法去审查确认固件是否完整,在确认完毕后可信机构CA可以对固件进行签名,这样可信机构CA就认可了该固件的完整性。
在一个实施例的步骤S102中,在可信环境中,将公钥或公钥的哈希值烧写至OTP,确保OTP中的数据是可信的。同时为了简化流程,将BOOTLOADER烧写至ROM后,可在出厂时运行测试BOOTLOADER的安全性。将BOOTLOADER写入只读存储器ROM,是为了保证BOOTLOADER的安全性,一旦写入不能更改,这样出厂时运行确认其安全性后,能够保证BOOTLOADER运行时能够按照预先设计从OTP中读取公钥或其哈希值。
另外,可将签名后的固件烧写至设备非易失性存储器FLASH,该烧写操作不必在可信环境中进行。
在一个实施例的步骤S103中,上电运行后,引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名。如果引导代码BOOTLOADER从所述一次性可编程OTP区域读取到所述公钥,则直接使用所读取的公钥验证固件的签名,如果引导代码BOOTLOADER从所述一次性可编程OTP区域读取的是公钥的哈希值,则首先根据从ROM或者设备非易失性存储器FLASH中读取的公钥计算出其哈希值,与所述一次性可编程OTP中读取的公钥的哈希值进行比较,一致则认为公钥来自可信机构CA。确认公钥来自可信机构CA后,使用所读取的公钥验证固件的签名,进而验证固件的完整性。
最后,如果固件验证通过,则引导代码BOOTLOADER将可信的固件搬移至RAM中运行,完成信任链的传递。
实施例一:
在该实施例中,参看图2所示,在可信机构CA使用非对称算法生成一对公私钥对后,使用公私钥对中的私钥对固件进行认证签名,将签名后的固件存储在设备非易失性存储器FLASH中。同时,在OTP中存储公钥,在ROM中存储BOOTLOADER而不携带公钥。上电运行后,BOOTLOADER从OTP取用公钥,从设备非易失性存储器FLASH中读取签名后的固件,使用所读取的公钥验证固件的签名,进而验证固件的完整性。如果通过了签名验证,则确认固件完整性没有被破坏。
实施例二:
在该实施例中,参看图3所示,在可信机构CA使用非对称算法生成一对公私钥对后,使用公私钥对中的私钥对固件进行认证签名,将签名后的固件存储在设备非易失性存储器FLASH中。同时,在OTP中存储公钥的哈希值,在ROM中存储BOOTLOADER,在设备非易失性存储器FLASH中同时存储公钥。上电运行后,BOOTLOADER从OTP读取公钥的哈希值,从设备非易失性存储器FLASH读取公钥,确认公钥来源,即:读取公钥后计算哈希值,与OTP中的公钥的哈希值作比较,一致则认为公钥来自可信机构CA。在确认公钥来自可信机构CA后,从设备非易失性存储器FLASH中读取签名后的固件,使用所读取的公钥验证固件的签名,进而验证固件的完整性。由于OTP成本比较高,在本实施例中仅在OTP中存储公钥的哈希值,故可以降低成本。
实施例三:
在该实施例中,参看图4所示,在可信机构CA使用非对称算法生成一对公私钥对后,使用公私钥对中的私钥对固件进行认证签名,将签名后的固件存储在设备非易失性存储器FLASH中。同时,在OTP中存储公钥的哈希值,在ROM中存储BOOTLOADER以及公钥。上电运行后,BOOTLOADER从OTP读取公钥的哈希值,验证ROM中公钥的来源。即:读取公钥后计算哈希值,与OTP中的哈希值作比较,一致则认为公钥来自可信机构CA。确认公钥来自可信机构CA后,从设备非易失性存储器FLASH中读取签名后的固件,使用所读取的公钥验证固件的签名,进而验证固件的完整性。在本实施例中,一方面在OTP中存储公钥的哈希值,降低了成本,另一方面将公钥存储在ROM中可以防御攻击,保证了系统的稳定性。
从以上实施例可以得到,本发明实施例将一次性可编程(One Time Programable,OTP)、只读存储器(Read-only Memory,ROM)、证书授权中心(Certificate Authority,CA)结合作为可信计算平台的可信核心根,CA作为认证方对引导代码BOOTLOADER和固件认证后签名,确保程序不被篡改;同时用于验证签名的CA公钥的哈希值烧入OTP中,确保公钥不被篡改,而OTP一次性编程的硬件特性保证了哈希值的安全。经过这一系列的认证和信任传递,可以保证整个系统的固件是经过认证、完全可信的。
基于同一构思,本发明实施例还提供一种验证固件签名的装置,如图5所示,所述装置包括:签名模块501,用于获取可信机构CA生成的公私钥对,使用所述公私钥对中的私钥对固件进行认证签名;烧写模块502,用于在可信环境中,将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名。
在一实施例中,所述烧写模块502具体用于:将所述公钥烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER烧写至所述只读存储器ROM,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥,使用所述公钥验证所述固件的认证签名。
在一实施例中,所述烧写模块502具体用于:将所述公钥的哈希值烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER烧写至所述只读存储器ROM,将所述公钥烧写至设备非易失性存储器FLASH,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥的哈希值,从所述设备非易失性存储器FLASH中读取所述公钥,根据所述公钥的哈希值确定所述公钥的来源后,使用所述公钥验证所述固件的认证签名。
在一实施例中,所述烧写模块502具体用于:将所述公钥的哈希值烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER及所述公钥烧写至所述只读存储器ROM,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥的哈希值,从所述只读存储器ROM中读取所述公钥,根据所述公钥的哈希值确定所述公钥的来源后,使用所述公钥验证所述固件的认证签名。
在一实施例中,所述烧写模块502还用于在所述使用所述公私钥对中的私钥对固件进行认证签名之后,将认证签名后的固件烧写至设备非易失性存储器FLASH。本发明实施例所揭示的验证固件签名的方法和装置可以应用在嵌入式系统、PC机、服务器、手机、加密芯片等一切对安全性和可信程度要求比较高的系统中。并且,如果将一次性可编程(OneTime Programable,OTP)、只读存储器(Read-only Memory,ROM)、证书授权中心(Certificate Authority,CA)单独拿出来,可以封装成可信平台模块(trusted Platformmodule,TPM)芯片,实现更加灵活的安全策略配置。
可信平台模块是一种植于计算机内部为计算机提供可信根的芯片。根据本发明的实现可信根的方法,将一次性可编程(One Time Programable,OTP)、只读存储器(Read-only Memory,ROM)、证书授权中心(Certificate Authority,CA)结合作为可信平台模块的可信根,将该可信根置入到TPM芯片中且将该TPM芯片安装在计算机中,就能有效的保护计算机,防止非法用户访问。
本发明以上的装置和方法可以由硬件实现,也可以由硬件结合软件实现。本发明涉及这样的计算机可读程序,当该程序被逻辑部件所执行时,能够使该逻辑部件实现上文所述的装置或构成部件,或使该逻辑部件实现上文所述的各种方法或步骤。本发明还涉及用于存储以上程序的存储介质,如硬盘、磁盘、光盘、DVD、flash存储器等。
以上结合具体的实施方式对本发明进行了描述,但本领域技术人员应该清楚,这些描述都是示例性的,并不是对本发明保护范围的限制。本领域技术人员可以根据本发明的精神和原理对本发明做出各种变型和修改,这些变型和修改也在本发明的范围内。

Claims (11)

1.一种验证固件签名的方法,其特征在于,所述方法包括:
获取可信机构CA生成的公私钥对,使用所述公私钥对中的私钥对固件进行认证签名;
在可信环境中,将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM;
所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名。
2.根据权利要求1所述的验证固件签名的方法,其特征在于,所述将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM,包括:
将所述公钥烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER烧写至所述只读存储器ROM;
所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名,包括:
所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥,使用所述公钥验证所述固件的认证签名。
3.根据权利要求1所述的验证固件签名的方法,其特征在于,所述将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM,包括:
将所述公钥的哈希值烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER烧写至所述只读存储器ROM,将所述公钥烧写至设备非易失性存储器FLASH;
所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名,包括:
所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥的哈希值,从所述设备非易失性存储器FLASH中读取所述公钥,根据所述公钥的哈希值确定所述公钥的来源后,使用所述公钥验证所述固件的认证签名。
4.根据权利要求1所述的验证固件签名的方法,其特征在于,所述将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM,包括:
将所述公钥的哈希值烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER及所述公钥烧写至所述只读存储器ROM;
所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名,包括:
所述引导代码BOOTLOADER从所述一次性可编程OTP区域读取所述公钥的哈希值,从所述只读存储器ROM中读取所述公钥,根据所述公钥的哈希值确定所述公钥的来源后,使用所述公钥验证所述固件的认证签名。
5.根据权利要求1至4任一项所述的验证固件签名的方法,其特征在于,在所述使用所述公私钥对中的私钥对固件进行认证签名之后,还包括:将认证签名后的固件烧写至设备非易失性存储器FLASH。
6.根据权利要求1至4中任一项所述的验证固件签名的方法,其特征在于,在所述使用所述公私钥中的私钥对固件进行认证签名之前,还包括:
分析所述固件的代码,确定所述固件是否完整;
所述使用所述公私钥中的私钥对固件进行认证签名,包括:
当确定所述固件完整时,使用所述公私钥中的私钥对所述固件进行认证签名。
7.一种验证固件签名的装置,其特征在于,所述装置包括:
签名模块,用于获取可信机构CA生成的公私钥对,使用所述公私钥对中的私钥对固件进行认证签名;
烧写模块,用于在可信环境中,将所述公私钥对中的公钥或所述公钥的哈希值烧写至一次性可编程OTP区域,并将引导代码BOOTLOADER烧写至只读存储器ROM,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥或所述公钥的哈希值,验证所述固件的认证签名。
8.根据权利要求7所述的验证固件签名的装置,其特征在于,所述烧写模块具体用于:将所述公钥烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER烧写至所述只读存储器ROM,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥,使用所述公钥验证所述固件的认证签名。
9.根据权利要求7所述的验证固件签名的装置,其特征在于,所述烧写模块具体用于:将所述公钥的哈希值烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER烧写至所述只读存储器ROM,将所述公钥烧写至设备非易失性存储器FLASH,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥的哈希值,从所述设备非易失性存储器FLASH中读取所述公钥,根据所述公钥的哈希值确定所述公钥的来源后,使用所述公钥验证所述固件的认证签名。
10.根据权利要求7所述的验证固件签名的装置,其特征在于,所述烧写模块具体用于:将所述公钥的哈希值烧写至所述一次性可编程OTP区域,将所述引导代码BOOTLOADER及所述公钥烧写至所述只读存储器ROM,其中当进行固件验证时,所述引导代码BOOTLOADER用于从所述一次性可编程OTP区域读取所述公钥的哈希值,从所述只读存储器ROM中读取所述公钥,根据所述公钥的哈希值确定所述公钥的来源后,使用所述公钥验证所述固件的认证签名。
11.根据权利要求7至10任一项所述的验证固件签名的装置,其特征在于,所述烧写模块还用于在所述使用所述公私钥对中的私钥对固件进行认证签名之后,将认证签名后的固件烧写至设备非易失性存储器FLASH。
CN201710418279.9A 2017-06-06 2017-06-06 验证固件签名的方法及装置 Pending CN108347332A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710418279.9A CN108347332A (zh) 2017-06-06 2017-06-06 验证固件签名的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710418279.9A CN108347332A (zh) 2017-06-06 2017-06-06 验证固件签名的方法及装置

Publications (1)

Publication Number Publication Date
CN108347332A true CN108347332A (zh) 2018-07-31

Family

ID=62962431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710418279.9A Pending CN108347332A (zh) 2017-06-06 2017-06-06 验证固件签名的方法及装置

Country Status (1)

Country Link
CN (1) CN108347332A (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109445705A (zh) * 2018-10-29 2019-03-08 湖南国科微电子股份有限公司 固件认证方法及固态硬盘
CN110086623A (zh) * 2019-03-13 2019-08-02 捷德(中国)信息科技有限公司 一种基于安全元件的固件防伪方法及安全元件
CN111095213A (zh) * 2018-08-23 2020-05-01 深圳市汇顶科技股份有限公司 嵌入式程序的安全引导方法、装置、设备及存储介质
CN111160879A (zh) * 2018-11-07 2020-05-15 新明华区块链技术(深圳)有限公司 一种硬件钱包及其安全性提升方法和装置
CN111177693A (zh) * 2019-12-11 2020-05-19 福建魔方电子科技有限公司 一种验证终端根证书的方法、装置、设备和介质
CN111241522A (zh) * 2020-01-07 2020-06-05 杭州涂鸦信息技术有限公司 固件签名方法及装置、存储介质
CN112099855A (zh) * 2020-08-05 2020-12-18 联想(北京)有限公司 一种信息处理方法、电子设备和计算机存储介质
CN112511306A (zh) * 2020-11-03 2021-03-16 中国航空工业集团公司西安航空计算技术研究所 一种基于混合信任模型的安全运行环境构建方法
CN112612486A (zh) * 2020-12-28 2021-04-06 湖北芯擎科技有限公司 存储器烧录方法、装置和待烧录芯片
CN112632562A (zh) * 2020-12-28 2021-04-09 四川虹微技术有限公司 设备启动方法、设备管理方法和嵌入式设备
CN112955889A (zh) * 2018-11-07 2021-06-11 微安科技有限公司 安全启动装置及方法
CN113032786A (zh) * 2019-12-25 2021-06-25 成都鼎桥通信技术有限公司 认证凭证的传递方法、芯片及设备
CN113468559A (zh) * 2021-06-18 2021-10-01 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 固件校验方法以及系统
CN113486360A (zh) * 2021-07-14 2021-10-08 上海瓶钵信息科技有限公司 基于risc-v的安全启动方法及系统
CN114065218A (zh) * 2021-11-19 2022-02-18 山东方寸微电子科技有限公司 一种SoC系统芯片安全启动方法
US20220067166A1 (en) * 2020-08-25 2022-03-03 Samsung Electronics Co., Ltd. Storage device
CN114385248A (zh) * 2020-10-22 2022-04-22 四零四科技股份有限公司 处理信任链的计算系统及装置
CN114640461A (zh) * 2022-02-16 2022-06-17 深圳市优博讯科技股份有限公司 基于安全芯片的固件防篡改方法及系统
CN116032484A (zh) * 2022-12-07 2023-04-28 四川恒湾科技有限公司 一种通信设备安全启动的方法、装置和电子设备
CN117827229A (zh) * 2023-03-24 2024-04-05 进迭时空(珠海)科技有限公司 一种防止设备固件版本回滚的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120210115A1 (en) * 2011-02-11 2012-08-16 Park Dong-Jin Secure Boot Method and Method for Generating a Secure Boot Image
CN103974122A (zh) * 2013-02-04 2014-08-06 澜起科技(上海)有限公司 机顶盒芯片及应用在机顶盒芯片中的数字签名实现方法
CN105224875A (zh) * 2015-11-13 2016-01-06 上海斐讯数据通信技术有限公司 一种终端的安全启动系统和方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120210115A1 (en) * 2011-02-11 2012-08-16 Park Dong-Jin Secure Boot Method and Method for Generating a Secure Boot Image
CN103974122A (zh) * 2013-02-04 2014-08-06 澜起科技(上海)有限公司 机顶盒芯片及应用在机顶盒芯片中的数字签名实现方法
CN105224875A (zh) * 2015-11-13 2016-01-06 上海斐讯数据通信技术有限公司 一种终端的安全启动系统和方法

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111095213B (zh) * 2018-08-23 2024-04-30 深圳市汇顶科技股份有限公司 嵌入式程序的安全引导方法、装置、设备及存储介质
CN111095213A (zh) * 2018-08-23 2020-05-01 深圳市汇顶科技股份有限公司 嵌入式程序的安全引导方法、装置、设备及存储介质
CN109445705B (zh) * 2018-10-29 2022-03-22 湖南国科微电子股份有限公司 固件认证方法及固态硬盘
CN109445705A (zh) * 2018-10-29 2019-03-08 湖南国科微电子股份有限公司 固件认证方法及固态硬盘
CN111160879A (zh) * 2018-11-07 2020-05-15 新明华区块链技术(深圳)有限公司 一种硬件钱包及其安全性提升方法和装置
CN111160879B (zh) * 2018-11-07 2023-11-03 新明华区块链技术(深圳)有限公司 一种硬件钱包及其安全性提升方法和装置
CN112955889A (zh) * 2018-11-07 2021-06-11 微安科技有限公司 安全启动装置及方法
CN110086623A (zh) * 2019-03-13 2019-08-02 捷德(中国)信息科技有限公司 一种基于安全元件的固件防伪方法及安全元件
CN111177693A (zh) * 2019-12-11 2020-05-19 福建魔方电子科技有限公司 一种验证终端根证书的方法、装置、设备和介质
CN111177693B (zh) * 2019-12-11 2022-08-16 福建魔方电子科技有限公司 一种验证终端根证书的方法、装置、设备和介质
CN113032786A (zh) * 2019-12-25 2021-06-25 成都鼎桥通信技术有限公司 认证凭证的传递方法、芯片及设备
CN111241522A (zh) * 2020-01-07 2020-06-05 杭州涂鸦信息技术有限公司 固件签名方法及装置、存储介质
CN111241522B (zh) * 2020-01-07 2022-10-04 杭州涂鸦信息技术有限公司 固件签名方法及装置、存储介质
CN112099855B (zh) * 2020-08-05 2022-01-14 联想(北京)有限公司 一种信息处理方法、电子设备和计算机存储介质
CN112099855A (zh) * 2020-08-05 2020-12-18 联想(北京)有限公司 一种信息处理方法、电子设备和计算机存储介质
US11520896B2 (en) * 2020-08-25 2022-12-06 Samsung Electronics Co., Ltd. Storage device
US20220067166A1 (en) * 2020-08-25 2022-03-03 Samsung Electronics Co., Ltd. Storage device
CN114385248A (zh) * 2020-10-22 2022-04-22 四零四科技股份有限公司 处理信任链的计算系统及装置
CN114385248B (zh) * 2020-10-22 2024-04-23 四零四科技股份有限公司 处理信任链的计算系统及装置
CN112511306A (zh) * 2020-11-03 2021-03-16 中国航空工业集团公司西安航空计算技术研究所 一种基于混合信任模型的安全运行环境构建方法
CN112612486A (zh) * 2020-12-28 2021-04-06 湖北芯擎科技有限公司 存储器烧录方法、装置和待烧录芯片
CN112632562A (zh) * 2020-12-28 2021-04-09 四川虹微技术有限公司 设备启动方法、设备管理方法和嵌入式设备
CN112632562B (zh) * 2020-12-28 2024-01-26 四川虹微技术有限公司 设备启动方法、设备管理方法和嵌入式设备
CN113468559A (zh) * 2021-06-18 2021-10-01 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 固件校验方法以及系统
CN113468559B (zh) * 2021-06-18 2024-01-05 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 固件校验方法以及系统
CN113486360A (zh) * 2021-07-14 2021-10-08 上海瓶钵信息科技有限公司 基于risc-v的安全启动方法及系统
CN114065218B (zh) * 2021-11-19 2024-04-12 山东方寸微电子科技有限公司 一种SoC系统芯片安全启动方法
CN114065218A (zh) * 2021-11-19 2022-02-18 山东方寸微电子科技有限公司 一种SoC系统芯片安全启动方法
CN114640461A (zh) * 2022-02-16 2022-06-17 深圳市优博讯科技股份有限公司 基于安全芯片的固件防篡改方法及系统
CN116032484A (zh) * 2022-12-07 2023-04-28 四川恒湾科技有限公司 一种通信设备安全启动的方法、装置和电子设备
CN117827229A (zh) * 2023-03-24 2024-04-05 进迭时空(珠海)科技有限公司 一种防止设备固件版本回滚的方法

Similar Documents

Publication Publication Date Title
CN108347332A (zh) 验证固件签名的方法及装置
CN109313690B (zh) 自包含的加密引导策略验证
EP3295352B1 (en) Client software attestation
US11714633B2 (en) Method for providing a firmware update of a device
EP1922730B1 (en) Information carrier authentication with a physical one-way function
CN105144626B (zh) 提供安全性的方法和设备
EP3061027B1 (en) Verifying the security of a remote server
US11374961B2 (en) Methods for verification of software object authenticity and integrity
EP2081353A2 (en) System and method for digital signatures and authentication
CN110795126A (zh) 一种固件安全升级系统
CN106452783A (zh) 计算机系统及安全执行的方法
JP2004265026A (ja) アプリケーション認証システムと装置
CN104283860A (zh) 一种基于代码签名的elf文件鉴别方法和装置
TW201403376A (zh) 用於保全來源認證之系統、方法及設備
KR101740956B1 (ko) 자체 인증 서명을 기반으로 하는 공공 감사 방법 및 시스템
CN103269271A (zh) 一种备份电子签名令牌中私钥的方法和系统
JP2015232810A (ja) 記憶装置、情報処理装置および情報処理方法
CN104680061A (zh) 一种Android环境下应用程序启动中代码签名验证的方法和系统
JP6387908B2 (ja) 認証システム
CN109814934A (zh) 数据处理方法、装置、可读介质和系统
CN111147259B (zh) 鉴权方法和设备
CN114448794B (zh) 一种基于芯片可信根对固件进行安全升级的方法及装置
CN116896463A (zh) 一种基于区块链的可信环境认证方法及装置
CN113868628A (zh) 一种签名验证方法、装置、计算机设备和存储介质
CN114896640A (zh) 一种基于可信根的安全启动方法、装置、设备及可读介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180731