CN106452783A - 计算机***及安全执行的方法 - Google Patents
计算机***及安全执行的方法 Download PDFInfo
- Publication number
- CN106452783A CN106452783A CN201610851651.0A CN201610851651A CN106452783A CN 106452783 A CN106452783 A CN 106452783A CN 201610851651 A CN201610851651 A CN 201610851651A CN 106452783 A CN106452783 A CN 106452783A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- certificate
- trusted
- trusted module
- cryptographic hash
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- 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
-
- 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
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4403—Processor initialisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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/3236—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 using cryptographic hash functions
-
- 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/3236—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 using cryptographic hash functions
- H04L9/3242—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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- 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/3268—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 validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供一种包括处理器及存储器的计算机***。处理器包括微码执行单元、及可编程熔丝用以储存由中国商用密码算法所预先产生的可信信息。存储器在操作上耦合至处理器,且储存可信模块及可信模块的数字证书。微码执行单元使用中国商用密码算法并根据上述可信信息对上述数字证书进行验证,再根据验证通过的上述数字证书对上述可信模块进行验证。
Description
技术领域
本申请主要关于安全执行的技术,特别有关于使用中国商用密码算法实现基于静态信任根(Static Root of Trust for Measurement,SRTM)或动态信任根(Dynamic Rootof Trust for Measurement,DRTM)的安全开机以及安全执行***软件的方法。
背景技术
英特尔(Intel)的TXT技术,是可信执行技术(Trusted Execution Technology)的简称,直接从处理器的层级进行安全性的确认。明确来说,TXT技术主要使用了RSA或SHA-256加密算法构建信任链(chain of trust)来确保计算机***的可信状态,包括确保安全开机、以及确保操作***(Operating System,OS)及软件应用(Application,APP)的安全运行。
针对安全开机的部分,TXT技术首要从静态信任根开始创建静态信任链,对基本输入输出***(Basic Input/Output System,BIOS)中的验证码模块(Authenticated CodeModule,ACM)进行验证。
另外,针对操作***及软件应用的安全运行,TXT技术是在操作***的运行过程中,从动态信任根开始动态地创建动态信任链,对安全初始化验证码模块(SINIT ACM)进行验证。
发明内容
本申请的第一实施例提供了一种计算机***,其包括处理器以及存储器。上述处理器包括微码执行单元(microcode executing unit)、以及可编程熔丝(programmablefuse)用以储存由中国商用密码算法所预先产生的可信信息。上述存储器于操作上耦合至(operatively coupled to)上述处理器,且储存可信模块(trusted module)及上述可信模块的数字证书(Digital Certificate,DC)。其中上述微码执行单元使用中国商用密码算法并根据上述可信信息对上述数字证书进行验证,再根据验证通过的上述数字证书对上述可信模块进行验证。
本申请的第二实施例提供了一种安全执行的方法,适用于处理器。上述安全执行的方法包括以下步骤:从存储器读取可信模块及上述可信模块的数字证书;使用中国商用密码算法并根据由中国商用密码算法所预先产生的可信信息对上述数字证书进行验证,再根据验证通过的上述数字证书对上述可信模块进行验证;以及于上述可信模块验证通过后允许上述可信模块所关联的基本输入输出***、操作***、或软件应用的执行。
值得注意的是,本申请使用的是中国商用密码算法(例如SM2及SM3),且除了针对可信模块进行验证之外,还进一步对可信模块的数字证书(或安全性更高的证书链)进行验证,因此可提高安全性的检验。关于本发明其它附加的特征与优点,此领域的熟习技术人士,在不脱离本申请的精神和范围内,当可根据本案实施方法中所揭露的计算机***及安全执行的方法做些许的更动与润饰而得到。
附图说明
图1为根据本申请一实施例所述的计算机***的示意图。
图2A及图2B为根据本申请一实施例所述的安全执行方法的流程图。
图3为根据本申请一实施例所述的数字证书的验证流程图。
图4为根据本申请一实施例所述的证书链的示意图。
图5为根据本申请一实施例所述的证书链的验证流程图。
图6为根据本申请一实施例所述的可信模块的验证流程图。
图7为根据本申请一实施例所述以中国商用密码算法实现的信任链传递的示意图。
具体实施方式
本章节所叙述的是实施本申请的最佳方式,目的在于说明本申请的精神而非用以限定本申请的保护范围,应理解下列实施例可经由软件、硬件、固件、或上述任意组合来实现。文中述及由中国国家密码管理局(Office of State Cryptography Administration)所制订的中国商用密码算法(例如SM2及SM3)的规格标准书仅用以协助表达本申请的精神,而非用以限制本申请的保护范围。
图1为根据本申请一实施例所述的计算机***的示意图。计算机***100包括处理器110以及存储器120,其中存储器120操作上耦合至处理器110。计算机***100可为桌上型计算机、平板计算机、笔记型计算机、工作站、功能型手机、智能型手机、或任何电子计算装置。
在一实施例,存储器120可为非瞬时(non-transitory)的计算机可读取储存媒体,例如:闪存(Flash memory),用以储存可信模块(trusted module)以及可信模块的数字证书(Digital Certificate,DC)或证书链。在某些实施例中,为了增加辨识度,存储器120还储存用户身份信息,明确来说,用户身份信息可包括:使用者姓名或账号名、使用者性别、以及/或使用者所属工作单位名称等。在对辨识度要求不高的实施例中,可以使用默认的用户身份信息来参与可信模块的数字证书的验证(图3会详述)。
处理器110可为通用处理器、微处理器(Micro Control Unit,MCU)、应用处理器(Application Processor,AP)、或数字信号处理器(Digital Signal Processor,DSP)等。明确来说,处理器110包括储存装置10、微码执行单元(Microcode Executing Unit)20、电子熔丝存储器(efuse)30、以及微码只读存储器(Microcode Read-Only Memory,MicrocodeROM)40。
储存装置10可为随机存取存储器或高速缓存,用以储存从存储器120读取出来的数据,例如:可信模块、可信模块的数字证书或证书链、以及/或用户身份信息。
微码执行单元20可包括各式电路逻辑,用以从储存装置10及电子熔丝存储器30中读取或写入数据、并加载并执行微码只读存储器40中所储存的微码,以提供本申请的安全执行方法。
本领域技术人员当可理解,微码执行单元20中的电路逻辑通常可包括多个晶体管,用以控制该电路逻辑的运作以提供所需的功能及操作。还进一步的,晶体管的特定结构及其之间的连结关系通常是由编译器所决定,例如:缓存器转移语言(Register TransferLanguage,RTL)编译器可由处理器所运作,将类似汇编语言码的指令文件(script)编译成适用于设计或制造该电路逻辑所需的形式。
电子熔丝存储器30为可编程的熔丝结构存储器,用以储存由中国商用密码算法(例如SM2及SM3)所预先产生的可信信息,本发明利用这些可信信息以建立静态信任根(Static Root of Trust for Measurement,SRTM)或动态信任根(Dynamic Root of Trustfor Measurement,DRTM)。明确来说,建立静态/动态信任根所需的可信信息至少包括:可信模块的数字证书的公钥哈希值(hash value)Hpubk、用户身份信息的哈希值HENTL_ID、以及可信模块的版本号Vn。
微码只读存储器40用以储存由微码(microcode)所构成的软件模块,明确来说,软件模块包括:静态入口41、动态入口42、中国商用密码算法SM2模块43、中国商用密码算法SM3模块44、证书验证模块45、证书链验证模块46、以及可信模块验证模块47。
处理器110在重置(例如:计算机***100开机时)之后,会直接进入静态入口41,透过静态入口41中所记录的默认值取得可信模块在存储器120中的起始地址、以及可信模块的数字证书在存储器120中的地址,并且将可信模块及其数字证书读取到储存装置10。值得注意的是,建立静态信任根是为了确保开机的安全性,因此此时可信模块为可信固件(trusted firmware),例如基本输入输出***的验证码模块。
在软件(例如:操作***或软件应用(APP))执行过程中,特定指令(例如:x86***中的GETSEC指令)会触发处理器110进入特定模式并检查与该软件相配套的硬件平台设定(例如:芯片组的设定)是否满足建立动态信任根的前提条件,如果前提条件都满足了,则进入动态入口42,透过动态入口42接收该特定指令的参数所传递的信息,包括:可信模块在存储器120中的起始地址、以及可信模块的数字证书在存储器120中的地址,然后将可信模块及其数字证书读取到储存装置10。值得注意的是,建立动态信任根是为了保证软件(操作***或软件应用)执行的安全性,因此这里的可信模块为操作***或软件应用的可信功能区块之一。
中国商用密码算法SM2模块43为依据中国国家密码管理局所制订的规格标准书提供的加密算法,规格标准书例如包括:GM/T-0003-2012、GM/T-0009-2012、GM/T-0010-2012、以及GM/T-0015-2012。
中国商用密码算法SM3模块44为依据中国国家密码管理局所制订的规格标准书(例如:GM/T-0004-2012)提供的加密算法。值得注意的是,本说明书后面的叙述均采用中国商用密码算法SM2及SM3来验证数字证书、证书链以及可信模块本身,但本发明不限于此,即是说,中国商用密码算法SM2模块43 以及SM3模块44也可以采取其它密码算法。
证书验证模块45用以提供验证数字证书的功能,明确来说,其针对可信模块的数字证书进行验证以确保其可信状态。相关的验证流程将于图3作进一步说明。
证书链验证模块46用以提供验证证书链的功能,明确来说,其针对可信模块的证书链进行验证以确保其可信状态。相关的验证流程将于图5作进一步说明。
可信模块验证模块47用以提供验证可信模块的功能,明确来说,其针对可信模块进行验证以确保其可信状态。相关的验证流程将于图6作进一步说明。
虽未绘示,图1所示的计算机***还可进一步包括其它功能组件,例如:显示装置(如:液晶显示器(Liquid-Crystal Display,LCD)、发光二极管(Light-Emitting Diode,LED)显示器、或电子纸显示器(Electronic Paper Display,EPD)等)、有线/无线网络接口、电源供应器、输入输出装置(如:按钮、键盘、鼠标、触碰板、视讯镜头、麦克风、以及/或喇叭等),且本申请的保护范围不在此限。
图2A及图2B为根据本申请一实施例所述的安全执行方法的流程图。首先,若是针对安全开机,则微码执行单元20于***开机时进入静态入口,若是针对操作***/软件应用的安全运行,则微码执行单元20于操作***/软件应用执行时进入动态入口。透过静态入口或动态入口取得可信模块在存储器120中的起始地址、以及可信模块的数字证书/证书链在存储器120中的地址(步骤201),然后,微码执行单元20将可信模块及其数字证书读取到储存装置10(步骤202)。值得注意的是,「可信模块」在针对安全开机时指可信固件(例如:基本输入输出***的验证码模块);「可信模块」在针对操作***/软件应用安全执行时指可信功能区块(例如:操作***或软件应用的功能区块之一)。
进一步说明,如果在存储器120中所储存的是证书链,则微码执行单元20仅先读取证书链中的根证书(root certificate)。
接着,微码执行单元20使用中国商用密码算法SM3计算出数字证书的公钥哈希值H’pubk(步骤203),然后把H’pubk与电子熔丝存储器30所储存的公钥哈希值Hpubk做比对(步骤204),若相同,则表示该公钥合法,并接续进行数字证书的验证(步骤205)。关于验证数字证书的详细流程将于图3进一步说明。反之,若公钥不合法,则中止(abort)***开机的程序、或中止操作***/软件应用的执行(步骤206)。
在根据数字证书的验证完成后,微码执行单元20决定其验证结果是否指示数字证书合法(步骤207),若是,则微码执行单元20从储存装置10读取数字证书的基本证书域(TBSCertificate),并从基本证书域中的扩展项(extension)读取该数字证书的证书链长度(Certificate Chain Length,CCL)(步骤208);反之,若数字证书不合法,则流程前往步骤S206。
接续步骤S208,微码执行单元20决定证书链长度等于1或大于1(步骤209),如果证书链长度大于1,则微码执行单元20执行证书链的验证(步骤210)。明确来说,证书链的验证依据证书链中的多个数字证书之间的顺序关系,由根证书往叶证书(leaf certificate)的方向一个证书一个证书逐级进行验证,关于验证证书链的详细流程将于图5进一步说明。反之,如果证书链长度等于1,则微码执行单元20从数字证书的扩展项中读取与可信模块对应的哈希值Htf及版本号V’n(步骤211)。
之后,微码执行单元20把V’n与电子熔丝存储器30所储存的Vn做比对(步骤212),若V’n旧于Vn,则表示可信模块已过期,则流程前往步骤S206。反之,若V’n新于或等于Vn,则微码执行单元20执行可信模块的验证(步骤213),然后流程结束。关于验证可信模块的详细流程将于图6进一步说明。
图3为根据本申请一实施例所述的数字证书的验证流程图。首先,微码执行单元20从电子熔丝存储器30读取HENTL_ID(步骤301),然后从存储器120读取用户身份信息,再使用中国商用密码算法SM3计算用户身份信息的哈希值H’ENTL_ID并储存至储存装置10(步骤302)。
接着,微码执行单元20把H’ENTL_ID与HENTL_ID做比对(步骤303),若相同,才继续执行数字证书的验证;若不同,则流程前往步骤S206。
接续步骤303,若H’ENTL_ID相同于HENTL_ID,则微码执行单元20根据预处理程序1计算出包含用户身份信息的哈希值Z(步骤304),预处理程序1例如为图1中的中国商用密码算法SM2模块43采用规格标准书GM/T-0009-2012所规定的预处理程序;然后将哈希值Z与数字证书的基本证书域进行拼接,并根据预处理程序2计算出哈希值H(步骤305),预处理程序2例如为图1中的中国商用密码算法SM2模块43采用规格标准书GM/T-0009-2012所规定的预处理程序。
之后,微码执行单元20根据中国商用密码算法SM2相关的数字签名验证算法及流程来验证数字证书的数字签名(步骤306),然后流程结束。这里的数字签名验证算法及流程例如为图1中的中国商用密码算法SM2模块43采用规格标准书GM/T-0003.2-2012所规定的数字签名验证算法及流程。也就是说,若数字签名通过验证即代表数字证书合法,反之,则代表数字证书不合法。
值得注意的是,在另一些对用户辨识度要求不高的实施例中,步骤S304可以直接使用默认的用户身份信息计算哈希值Z,而在步骤S305使用默认的用户身份信息计算的哈希值Z以对数字证书的基本证书域计算哈希值。在这种实施例中,存储器120中无需存储用户身份信息,因此无需执行步骤S301至S303的验证存储器120中的用户身份信息的步骤。
图4为根据本申请一实施例所述的证书链的示意图。在此实施例,所示为3级证书链,其中每一证书为采固定格式的证书,例如每一证书均为自签名X509V3证书且遵守规格标准书GM/T-0015-2012的规定。
如图4所示,根证书至少包含了根认证中心(Certificate Authority,CA)的标示名(Distinguished Name,DN)、根认证中心的公钥、以及根证书的数字签名。中级证书(intermediate certificate)至少包含了中级认证中心的标示名、中级认证中心的公钥、根认证中心的标示名、以及中级证书的数字签名。叶证书至少包含了叶认证中心的标示名、叶认证中心的公钥、中级认证中心的标示名、叶证书的数字签名、以及叶证书的扩展项,其中,叶证书的扩展项包含了可信模块的哈希值。
需特别说明的是,证书链所包括的三个数字证书之间的验证有特定的顺序关系:由根证书验证中级证书、由中级证书验证叶证书、由叶证书验证可信模块。其中,还进一步由中级证书回溯根证书、由叶证书回溯中级证书。
具体而言,首先根据根认证中心的公钥验证根证书的数字签名(如图2A的步骤S205,其具体步骤参考图3),如果根证书验证通过时(如图2A的步骤S207的“是”),并且中级证书中所包含的根认证中心的标示名与根证书的根认证中心的标示名匹配时,微码执行单元20根据验证通过的根证书中的根认证中心的公钥验证中级证书的数字签名(验证中级证书的的数字签名的具体步骤也可参考图3);当叶证书所包含的中级认证中心的标示名与中级证书的中级认证中心的标示名匹配时,微码执行单元20根据验证通过的中级证书中的中级认证中心的公钥验证叶证书的数字签名(验证叶证书的的数字签名的具体步骤也可参考图3)。也就是说,若一个一个来看,对当前的数字证书来说,其包含的公钥用以验证下一级证书的数字签名,此外,还能根据认证中心的标示名去回溯上一级证书。而对整条证书链来说,只有叶证书的扩展项包含了本申请特有的参数字段,具体来说,参数除了可信模块的哈希值之外,还可进一步包括:固件类型、证书链长度、以及可信模块的版本号等信息用于可信模块进行验证。验证可信模块的详细流程将于图6进一步说明。
本领域技术人员当可理解,本申请所述数字证书也可采用X509以外其它的已知规格、或任何自订的证书格式,且本申请的保护范围不在此限。
图5为根据本申请一实施例所述的证书链的验证流程图。由于根证书已于步骤S202完成读取了,所以在本流程首先,微码执行单元20从存储器120将证书链中剩余的数字证书都读取到储存装置10(步骤501),然后将当前的数字证书(以图4的范例来说,即指中级证书)视为证书x、将其上级的数字证书(以图4的范例来说,即指根证书)视为证书x-1(步骤502)。
接着,微码执行单元20从证书x-1取得用以验证证书x的公钥(步骤503),并根据证书x的认证中心、版本号、以及数字签名来验证证书x的合法性(步骤504)。明确来说,微码执行单元20可先比对证书x与证书x-1的认证中心的标示名是否相同,接着根据图3的步骤304~306的流程对证书x的数字签名进行验证。
根据验证结果,微码执行单元20决定证书x是否合法(步骤505),若否,则流程前往步骤S206;反之,若证书x合法,则决定证书x是否为证书链中的最后一个证书(步骤506)。
接续步骤S506,如果证书x不是证书链中的最后一个证书,则将x累加为x+1(步骤507),流程返回至步骤S503持续往下一级证书进行验证。
接续步骤S506,如果证书x是证书链中的最后一个证书,则微码执行单元20取得证书链中的最后一个数字证书(以图4的范例来说,即指叶证书)(步骤508),然后流程结束。
图6为根据本申请一实施例所述的可信模块的验证流程图。首先,微码执行单元20使用中国商用密码算法SM3计算出储存装置10中可信模块的哈希值H’tm(步骤601),然后将该哈希值H’tm与从数字证书的扩展项中取得的可信模块的哈希值Htm进行比对(步骤602)。
若比对结果是相同的,则微码执行单元20从储存装置10中的可信模块读取其与硬件平台相关的信息(步骤603),然后根据该信息决定可信模块是否符合计算机***100的硬件平台规格(步骤604)。明确来说,可信模块中除了待执行的程序代码之外,还包括与硬件平台相关的信息,而微码执行单元20可根据这些信息来决定可信模块是否与计算机***100的硬件平台规格相匹配,这些信息包括:适用的芯片组清单、以及版本号等信息。
接续步骤S604,如果符合,则决定可信模块通过验证并允许执行可信模块(步骤605),换句话说,即允许可信模块所关联的***开机或操作***/软件应用执行。反之,如果不符合,则流程前往步骤S206。
图7为根据本申请一实施例所述以中国商用密码算法实现的信任链传递的示意图。为了因应不同的使用场景,计算机***中有的软/固件是要求防止被窜改的,而有的软/固件则允许视情况进行的更新或修改,为了方便说明,可将前者软/固件称为可信模块(Trusted Module,TM),后者则可称为非可信模块(Non-Trusted Module,NTM)。
在计算机***开机或运行的过程中,可信模块与非可信模块可同时存在并组成一个链,以链为单位交错运行。对于由多个可信模块所构成的可信模块链来说,每一可信模块均可使用图2A及图2B所述的安全执行方法流程来验证,以建构基于中国商用密码算法的信任链,包括:静态信任链、及动态信任链。
如图7所示,在处理器通电后(意即计算机***开机后),首先进行子信任链0的验证,由于子信任链0为静态信任链,其中,从根据可信信息建立静态信任根(如图2A及图2B所示的流程直至数字证书/证书链验证通过,则静态信任根建立)开始,再根据静态信任根对可信模块TM0_0进行验证,然后接着按可信模块之间的顺序关系,逐一由当前可信模块向下级可信模块进行验证。在子信任链0的验证结束后,接续的是非可信模块链0的执行,需了解的是,非可信模块由于不具备安全属性因此不会对其进行验证,但其为计算机***100执行时的必要模块。
在非可信模块链0的执行结束后,接着进行子信任链1的验证,由于子信任链1为动态信任链,其中,从根据可信信息建立动态信任根(如图2A及图2B所示的流程直至数字证书/证书链验证通过,则动态信任根建立)开始,再根据动态信任根0对可信模块TM1_0进行验证,然后接着按可信模块之间的顺序关系,逐一由当前可信模块向下级可信模块进行验证。在子信任链1的验证结束后,接续的是非可信模块链1的执行。之后,多条动态信任链的验证持续往下,从子信任链2到子信任链m,其中再穿插非可信模块链2到非可信模块链m的执行。如前所述,本申请可根据触发指令(例如:x86***中的GETSEC指令)创建出多条动态信任链。即是说,当处理器执行触发指令(例如x86***中的GETSEC指令)时,处理器执行多个可信模块的第一个的验证,并逐一由多个可信模块的其中一个向下一个进行验证,从而建立动态信任链。每一动态信任链所包括的可信模块关联至操作***或软件应用的功能区块,处理器在操作***或软件应用被执行时,针对其每一功能区块分别建立不同的动态信任链。
在建构基于中国商用密码算法的信任链时,可能还需要利用可信密码模块(Trusted Cryptography Module,TCM)或可信平台模块(Trusted Platform Module,TPM)提供的可信储存功能,此功能需要使用中国商用密码算法对其储存的内容进行保护,而储存的内容可包括:用于验证某个模块的密钥、对某个模块的量测结果等。
根据上述图2A、图2B、图3、图5、图6、图7的实施例,当可理解的是,本申请的安全执行的方法,使用中国商用密码算法实现基于静态信任根或动态信任根的安全开机以及安全执行***软件。值得注意的是,相较于英特尔的TXT技术,其使用的是RSA或SHA-256加密算法,且针对可信模块进行验证;而本申请使用的是中国商用密码算法(例如SM2及SM3),且除了针对可信模块进行验证之外,还进一步对可信模块的数字证书(或安全性更高的证书链)进行验证,当可提高安全性的检验。
本申请虽以各种实施例揭露如上,然而其仅为范例参考而非用以限定本申请的范围,任何本领域技术人员,在不脱离本申请的精神和范围内,当可做些许的更动与润饰。因此上述实施例并非用以限定本申请的范围,本申请的保护范围当视权利要求书所界定的为准。
Claims (20)
1.一种计算机***,其特征在于,包括:
处理器,包括微码执行单元、以及可编程熔丝用以储存由中国商用密码算法所预先产生的可信信息;以及
存储器,操作上耦合至上述处理器,且储存可信模块以及上述可信模块的数字证书;
其中上述微码执行单元使用中国商用密码算法并根据上述可信信息对上述数字证书进行验证,再根据验证通过的上述数字证书对上述可信模块进行验证。
2.根据权利要求1所述的计算机***,其特征在于,上述可信信息包括上述数字证书的公钥所对应的第一哈希值,上述微码执行单元还计算出上述公钥的第二哈希值,并于上述第一哈希值与上述第二哈希值相同时才执行上述对数字证书的验证。
3.根据权利要求1所述的计算机***,其特征在于,上述存储器还储存用户身份信息,上述可信信息包括上述用户身份信息所对应的第一哈希值,上述微码执行单元还计算出上述用户身份信息的第二哈希值,并于上述第一哈希值与上述第二哈希值相同时基于上述用户身份信息验证上述数字证书的数字签名。
4.根据权利要求1所述的计算机***,其特征在于,当上述数字证书验证通过时,上述微码执行单元还从上述数字证书的扩展项读取与上述可信模块对应的第一哈希值,以执行上述对可信模块的验证。
5.根据权利要求4所述的计算机***,其特征在于,上述微码执行单元还计算出上述可信模块的第二哈希值,并于上述第一哈希值与上述第二哈希值相同时比对上述可信模块是否符合上述计算机***的硬件平台规格,若是,则决定上述可信模块通过验证。
6.根据权利要求1所述的计算机***,其特征在于,当上述数字证书验证通过时,上述微码执行单元还从上述数字证书的扩展项读取与上述可信模块对应的第一版本号,上述可信信息还包括上述可信模块所对应的第二版本号,上述微码执行单元还比对上述第一版本号是否新于或等于上述第二版本号,并于上述第一版本号新于或等于上述第二版本号时才执行上述对可信模块的验证。
7.根据权利要求1所述的计算机***,其特征在于,当上述数字证书的证书链长度大于1时,上述存储器还储存上述可信模块的证书链,上述数字证书为上述证书链中的根证书,上述微码执行单元还在上述数字证书验证通过之后执行以下步骤:根据上述根证书对上述证书链中的中级证书进行验证,根据上述中级证书对上述证书链中的叶证书进行验证,以及根据上述叶证书的扩展项中所记录的与上述可信模块对应的第一哈希值来执行上述对可信模块的验证。
8.根据权利要求1所述的计算机***,其特征在于,上述可信模块为关联至基本输入输出***的多个可信固件的第一个,上述微码执行单元还在上述计算机***开机时从执行上述对可信模块的验证开始逐一由上述可信固件的其中一个向下一个进行验证,从而建立静态信任链以验证上述基本输入输出***的可信状态,并于验证通过后允许上述基本输入输出***的执行以完成上述计算机***开机。
9.根据权利要求1所述的计算机***,其特征在于,当上述处理器执行触发指令时,上述微码执行单元执行对多个可信功能区块的第一个的验证,并逐一由上述可信功能区块的其中一个向下一个进行验证,从而建立动态信任链。
10.根据权利要求9所述的计算机***,其特征在于,每一上述多个可信功能区块均为关联至操作***或软件应用的多个功能区块的其中一个,上述微码执行单元还在上述操作***或软件应用被执行时,针对每一上述功能区块分别建立不同的动态信任链。
11.一种安全执行的方法,适用于处理器,其特征在于,包括:
从存储器读取可信模块以及上述可信模块的数字证书;
使用中国商用密码算法并根据由中国商用密码算法所预先产生的可信信息对上述数字证书进行验证,再根据验证通过的上述数字证书对上述可信模块进行验证;以及
于上述可信模块验证通过后允许上述可信模块所关联的基本输入输出***、操作***、或软件应用的执行。
12.根据权利要求11所述的安全执行的方法,其特征在于,上述可信信息包括上述数字证书的公钥所对应的第一哈希值,上述安全执行的方法还包括:
使用中国商用密码算法计算出上述公钥的第二哈希值,并于上述第一哈希值与上述第二哈希值相同时才执行上述对数字证书的验证。
13.根据权利要求11所述的安全执行的方法,其特征在于,上述可信信息包括用户身份信息所对应的第一哈希值,上述安全执行的方法还包括:
从上述存储器读取上述用户身份信息;
使用中国商用密码算法计算出上述用户身份信息的第二哈希值;以及
于上述第一哈希值与上述第二哈希值相同时使用中国商用密码算法并基于上述第一哈希值验证上述数字证书的数字签名。
14.根据权利要求11所述的安全执行的方法,其特征在于,还包括:
当上述数字证书通过验证时,从上述数字证书的扩展项读取与上述可信模块对应的第一哈希值,以执行上述对可信模块的验证。
15.根据权利要求14所述的安全执行的方法,其特征在于,上述对可信模块的验证包括:使用中国商用密码算法计算出上述可信模块的第二哈希值,并于上述第一哈希值与上述第二哈希值相同时比对上述可信模块是否符合上述计算机***的硬件平台规格,若是,则决定上述可信模块通过验证。
16.根据权利要求11所述的安全执行的方法,其特征在于,还包括:
当上述数字证书验证通过时,从上述数字证书的扩展项读取与上述可信模块对应的第一版本号,其中上述可信信息还包括上述可信模块所对应的第二版本号;比对上述第一版本号是否新于或等于上述第二版本号;以及于上述第一版本号新于或等于上述第二版本号时才执行上述对可信模块的验证。
17.根据权利要求11所述的安全执行的方法,其特征在于,还包括,在上述数字证书验证通过之后:
当上述数字证书的证书链长度大于1时,从上述存储器读取上述可信模块的证书链,其中上述数字证书为上述证书链中的根证书;
根据上述根证书对上述证书链中的中级证书进行验证;
根据上述中级证书对上述证书链中的叶证书进行验证;以及
根据上述叶证书的扩展项中所记录的与上述可信固件对应的第一哈希值及第一版本号来执行上述对可信模块的验证。
18.根据权利要求11所述的安全执行的方法,其特征在于,上述可信模块为关联至上述基本输入输出***的多个可信固件的第一个,上述安全执行的方法还包括:
在上述基本输入输出***所属的计算机***开机时,从执行上述对可信模块的验证开始逐一由上述可信固件的其中一个向下一个进行验证,从而建立静态信任链以验证上述基本输入输出***的可信状态。
19.根据权利要求11所述的安全执行的方法,其特征在于,上述可信模块为关联至上述操作***或软件应用的多个可信功能区块的第一个,上述安全执行的方法还包括:
在触发指令被执行时,从执行上述可信功能区块的第一个的验证开始逐一由上述可信功能区块的其中一个向下一个进行验证,从而建立动态信任链以验证上述操作***或软件应用的可信状态。
20.根据权利要求19所述的安全执行的方法,其特征在于,每一上述可信功能区块均为关联至上述操作***或软件应用的多个功能区块的其中一个,上述安全执行的方法还包括:
在上述操作***或软件应用被执行时,针对每一上述功能区块分别建立不同的动态信任链。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610864154.4A CN106656502B (zh) | 2016-09-26 | 2016-09-26 | 计算机***及安全执行的方法 |
CN201610851651.0A CN106452783B (zh) | 2016-09-26 | 2016-09-26 | 计算机***及安全执行的方法 |
US15/348,252 US10341119B2 (en) | 2016-09-26 | 2016-11-10 | Apparatuses and methods for trusted module execution |
US15/348,285 US11038697B2 (en) | 2016-09-26 | 2016-11-10 | Apparatuses and methods for trusted module execution |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610851651.0A CN106452783B (zh) | 2016-09-26 | 2016-09-26 | 计算机***及安全执行的方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610864154.4A Division CN106656502B (zh) | 2016-09-26 | 2016-09-26 | 计算机***及安全执行的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106452783A true CN106452783A (zh) | 2017-02-22 |
CN106452783B CN106452783B (zh) | 2021-02-09 |
Family
ID=58169681
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610851651.0A Active CN106452783B (zh) | 2016-09-26 | 2016-09-26 | 计算机***及安全执行的方法 |
CN201610864154.4A Active CN106656502B (zh) | 2016-09-26 | 2016-09-26 | 计算机***及安全执行的方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610864154.4A Active CN106656502B (zh) | 2016-09-26 | 2016-09-26 | 计算机***及安全执行的方法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US11038697B2 (zh) |
CN (2) | CN106452783B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107169344A (zh) * | 2017-05-10 | 2017-09-15 | 威盛电子股份有限公司 | 阻挡非授权应用程序的方法以及使用该方法的装置 |
CN107204206A (zh) * | 2017-05-25 | 2017-09-26 | 深圳市金立通信设备有限公司 | 一种电子熔丝烧写方法、终端及计算机可读存储介质 |
CN107871090A (zh) * | 2017-09-28 | 2018-04-03 | 努比亚技术有限公司 | 一种终端生产方法、终端及计算机可读存储介质 |
CN108241798A (zh) * | 2017-12-22 | 2018-07-03 | 北京车和家信息技术有限公司 | 防止刷机的方法、装置及*** |
CN110378125A (zh) * | 2019-07-24 | 2019-10-25 | 北京智芯微电子科技有限公司 | 可信计算的验证方法 |
CN111030822A (zh) * | 2018-10-10 | 2020-04-17 | 慧与发展有限责任合伙企业 | 用于保护固件的方法和***,以及计算机可读介质 |
CN112511306A (zh) * | 2020-11-03 | 2021-03-16 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于混合信任模型的安全运行环境构建方法 |
CN114722413A (zh) * | 2022-04-22 | 2022-07-08 | 苏州浪潮智能科技有限公司 | 一种建立安全信任链的方法、装置、服务器及介质 |
CN115208575A (zh) * | 2022-05-27 | 2022-10-18 | 深圳市广和通无线股份有限公司 | 软件安全性的校验方法、设备及存储介质 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10812275B2 (en) * | 2017-11-28 | 2020-10-20 | American Express Travel Related Services Company, Inc. | Decoupling and updating pinned certificates on a mobile device |
CN108399329B (zh) * | 2018-01-23 | 2022-01-21 | 晶晨半导体(上海)股份有限公司 | 一种提高可信应用程序安全的方法 |
KR102086375B1 (ko) * | 2018-06-11 | 2020-03-09 | 남서울대학교 산학협력단 | 악성 소프트웨어에 대한 실시간 예방 및 사후 복구를 위한 보안 시스템 및 그 방법 |
CN110677250B (zh) | 2018-07-02 | 2022-09-02 | 阿里巴巴集团控股有限公司 | 密钥和证书分发方法、身份信息处理方法、设备、介质 |
CN110795774B (zh) | 2018-08-02 | 2023-04-11 | 阿里巴巴集团控股有限公司 | 基于可信高速加密卡的度量方法、设备和*** |
CN110795742B (zh) | 2018-08-02 | 2023-05-02 | 阿里巴巴集团控股有限公司 | 高速密码运算的度量处理方法、装置、存储介质及处理器 |
CN110874478B (zh) | 2018-08-29 | 2023-05-02 | 阿里巴巴集团控股有限公司 | 密钥处理方法及装置、存储介质和处理器 |
US10756908B1 (en) | 2019-02-22 | 2020-08-25 | Beyond Identity Inc. | User authentication with self-signed certificate and identity verification |
US11172362B2 (en) * | 2019-05-09 | 2021-11-09 | Samsung Electronics Co., Ltd. | Method and apparatus for managing and verifying certificate |
DE102019135121A1 (de) * | 2019-12-19 | 2021-06-24 | Infineon Technologies Ag | Verfahren und vorrichtung zum bereitstellen einer zusätzlichen autorisierung für die verarbeitung eines kryptographisch gesicherten datensatzes für eine teilmenge einer gruppe vertrauenswürdiger module |
CN111628873A (zh) * | 2020-07-28 | 2020-09-04 | 四川省数字证书认证管理中心有限公司 | 一种使用数字证书固化数据电文的存证方法 |
EP3989478B1 (en) * | 2020-10-22 | 2023-10-18 | Moxa Inc. | Computing system and device for handling a chain of trust |
TWI773516B (zh) * | 2021-09-06 | 2022-08-01 | 新唐科技股份有限公司 | 進化可信根的方法與使用所述方法的電子裝置 |
US20230239164A1 (en) * | 2022-01-26 | 2023-07-27 | Microsoft Technology Licensing, Llc | Embedding intermediate certificate in digital certificate |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6263431B1 (en) * | 1998-12-31 | 2001-07-17 | Intle Corporation | Operating system bootstrap security mechanism |
US20050289343A1 (en) * | 2004-06-23 | 2005-12-29 | Sun Microsystems, Inc. | Systems and methods for binding a hardware component and a platform |
CN1868189A (zh) * | 2003-08-12 | 2006-11-22 | 英特尔公司 | 在运行时包签名中使用受信的、基于硬件的身份认证以使移动通信和高价值交易执行安全的方法 |
US20100048296A1 (en) * | 2007-01-26 | 2010-02-25 | Wms Gaming Inc. | Resource validation |
CN103138938A (zh) * | 2013-03-22 | 2013-06-05 | 中金金融认证中心有限公司 | 基于csp的sm2证书申请及应用方法 |
CN103596179A (zh) * | 2013-11-29 | 2014-02-19 | 西安电子科技大学昆山创新研究院 | 基于射频标签的无线局域网接入认证抗拒绝服务攻击方法 |
CN103618610A (zh) * | 2013-12-06 | 2014-03-05 | 上海千贯节能科技有限公司 | 一种基于智能电网中能量信息网关的信息安全算法 |
US20160182239A1 (en) * | 2014-12-23 | 2016-06-23 | Banco De Mexico | Method for certifying and authentifying security documents based on a measure of the relative variations of the different processes involved in its manufacture |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3863447B2 (ja) * | 2002-03-08 | 2006-12-27 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 認証システム、ファームウェア装置、電気機器、及び認証方法 |
EP1429224A1 (en) * | 2002-12-10 | 2004-06-16 | Texas Instruments Incorporated | Firmware run-time authentication |
US20040064457A1 (en) * | 2002-09-27 | 2004-04-01 | Zimmer Vincent J. | Mechanism for providing both a secure and attested boot |
US20050132357A1 (en) * | 2003-12-16 | 2005-06-16 | Microsoft Corporation | Ensuring that a software update may be installed or run only on a specific device or class of devices |
US20050138409A1 (en) * | 2003-12-22 | 2005-06-23 | Tayib Sheriff | Securing an electronic device |
JP4447977B2 (ja) * | 2004-06-30 | 2010-04-07 | 富士通マイクロエレクトロニクス株式会社 | セキュアプロセッサ、およびセキュアプロセッサ用プログラム。 |
US20060253702A1 (en) * | 2004-11-30 | 2006-11-09 | Gametech International, Inc. | Secure gaming server |
US8254568B2 (en) * | 2007-01-07 | 2012-08-28 | Apple Inc. | Secure booting a computing device |
US8560823B1 (en) * | 2007-04-24 | 2013-10-15 | Marvell International Ltd. | Trusted modular firmware update using digital certificate |
CN101383707A (zh) * | 2007-09-03 | 2009-03-11 | 郑建德 | 一种轻量级认证***及其关键算法 |
US8683213B2 (en) * | 2007-10-26 | 2014-03-25 | Qualcomm Incorporated | Progressive boot for a wireless device |
US8150039B2 (en) * | 2008-04-15 | 2012-04-03 | Apple Inc. | Single security model in booting a computing device |
US8768843B2 (en) * | 2009-01-15 | 2014-07-01 | Igt | EGM authentication mechanism using multiple key pairs at the BIOS with PKI |
WO2011097482A1 (en) * | 2010-02-05 | 2011-08-11 | Maxlinear, Inc. | Conditional access integration in a soc for mobile tv applications |
US8589667B2 (en) * | 2010-04-19 | 2013-11-19 | Apple Inc. | Booting and configuring a subsystem securely from non-local storage |
CN102413103B (zh) * | 2010-09-20 | 2014-07-30 | 华为技术有限公司 | 一种消息验证方法、***及设备 |
US9122492B2 (en) * | 2010-10-25 | 2015-09-01 | Wms Gaming, Inc. | Bios used in gaming machine supporting pluralaties of modules by utilizing subroutines of the bios code |
US9100188B2 (en) * | 2011-04-18 | 2015-08-04 | Bank Of America Corporation | Hardware-based root of trust for cloud environments |
US9100174B2 (en) * | 2012-08-31 | 2015-08-04 | Freescale Semiconductor, Inc. | Secure provisioning in an untrusted environment |
US9141802B2 (en) * | 2012-09-25 | 2015-09-22 | Intel Corporation | Computing device boot software authentication |
US9165143B1 (en) * | 2013-03-15 | 2015-10-20 | Xilinx, Inc. | Image file generation and loading |
CN104135368B (zh) * | 2014-05-30 | 2017-10-03 | 哈尔滨工程大学 | 一种电子海图的数据保护方法 |
CN104408371B (zh) * | 2014-10-14 | 2017-12-19 | 中国科学院信息工程研究所 | 一种基于可信执行环境高安全应用***的实现方法 |
US9798887B2 (en) * | 2015-08-26 | 2017-10-24 | Qualcomm Incorporated | Computing device to securely activate or revoke a key |
US10025600B2 (en) * | 2015-10-02 | 2018-07-17 | Google Llc | NAND-based verified boot |
US9916453B2 (en) * | 2015-12-22 | 2018-03-13 | Qualcomm Incorporated | Derived keys for execution environments in a boot chain |
US10114949B2 (en) | 2015-12-24 | 2018-10-30 | Mcafee, Llc | Techniques for monitoring integrity of OS security routine |
US10855462B2 (en) * | 2016-06-14 | 2020-12-01 | Honeywell International Inc. | Secure in-band upgrade using key revocation lists and certificate-less asymmetric tertiary key pairs |
-
2016
- 2016-09-26 CN CN201610851651.0A patent/CN106452783B/zh active Active
- 2016-09-26 CN CN201610864154.4A patent/CN106656502B/zh active Active
- 2016-11-10 US US15/348,285 patent/US11038697B2/en active Active
- 2016-11-10 US US15/348,252 patent/US10341119B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6263431B1 (en) * | 1998-12-31 | 2001-07-17 | Intle Corporation | Operating system bootstrap security mechanism |
CN1868189A (zh) * | 2003-08-12 | 2006-11-22 | 英特尔公司 | 在运行时包签名中使用受信的、基于硬件的身份认证以使移动通信和高价值交易执行安全的方法 |
US20050289343A1 (en) * | 2004-06-23 | 2005-12-29 | Sun Microsystems, Inc. | Systems and methods for binding a hardware component and a platform |
US20100048296A1 (en) * | 2007-01-26 | 2010-02-25 | Wms Gaming Inc. | Resource validation |
CN103138938A (zh) * | 2013-03-22 | 2013-06-05 | 中金金融认证中心有限公司 | 基于csp的sm2证书申请及应用方法 |
CN103596179A (zh) * | 2013-11-29 | 2014-02-19 | 西安电子科技大学昆山创新研究院 | 基于射频标签的无线局域网接入认证抗拒绝服务攻击方法 |
CN103618610A (zh) * | 2013-12-06 | 2014-03-05 | 上海千贯节能科技有限公司 | 一种基于智能电网中能量信息网关的信息安全算法 |
US20160182239A1 (en) * | 2014-12-23 | 2016-06-23 | Banco De Mexico | Method for certifying and authentifying security documents based on a measure of the relative variations of the different processes involved in its manufacture |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107169344A (zh) * | 2017-05-10 | 2017-09-15 | 威盛电子股份有限公司 | 阻挡非授权应用程序的方法以及使用该方法的装置 |
US10701061B2 (en) | 2017-05-10 | 2020-06-30 | Via Technologies, Inc. | Methods for blocking unauthorized applications and apparatuses using the same |
CN107204206A (zh) * | 2017-05-25 | 2017-09-26 | 深圳市金立通信设备有限公司 | 一种电子熔丝烧写方法、终端及计算机可读存储介质 |
CN107871090A (zh) * | 2017-09-28 | 2018-04-03 | 努比亚技术有限公司 | 一种终端生产方法、终端及计算机可读存储介质 |
CN107871090B (zh) * | 2017-09-28 | 2020-11-27 | 泾县谷声信息科技有限公司 | 一种终端生产方法、终端及计算机可读存储介质 |
CN108241798A (zh) * | 2017-12-22 | 2018-07-03 | 北京车和家信息技术有限公司 | 防止刷机的方法、装置及*** |
CN111030822A (zh) * | 2018-10-10 | 2020-04-17 | 慧与发展有限责任合伙企业 | 用于保护固件的方法和***,以及计算机可读介质 |
CN110378125A (zh) * | 2019-07-24 | 2019-10-25 | 北京智芯微电子科技有限公司 | 可信计算的验证方法 |
CN112511306A (zh) * | 2020-11-03 | 2021-03-16 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于混合信任模型的安全运行环境构建方法 |
CN114722413A (zh) * | 2022-04-22 | 2022-07-08 | 苏州浪潮智能科技有限公司 | 一种建立安全信任链的方法、装置、服务器及介质 |
CN114722413B (zh) * | 2022-04-22 | 2024-06-25 | 苏州浪潮智能科技有限公司 | 一种建立安全信任链的方法、装置、服务器及介质 |
CN115208575A (zh) * | 2022-05-27 | 2022-10-18 | 深圳市广和通无线股份有限公司 | 软件安全性的校验方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106656502A (zh) | 2017-05-10 |
US20180091313A1 (en) | 2018-03-29 |
CN106452783B (zh) | 2021-02-09 |
US20180091314A1 (en) | 2018-03-29 |
CN106656502B (zh) | 2020-09-01 |
US11038697B2 (en) | 2021-06-15 |
US10341119B2 (en) | 2019-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106452783A (zh) | 计算机***及安全执行的方法 | |
CN109951489B (zh) | 一种数字身份认证方法、设备、装置、***及存储介质 | |
TWI667586B (zh) | 用以核對uefi認證變量變化之系統及方法 | |
JP7086908B2 (ja) | 対象のコンピューティング装置で実施される動作を認証する方法 | |
EP3332347B1 (en) | Peer to peer attestation | |
TWI662432B (zh) | 行動通信裝置及其操作方法 | |
TWI724683B (zh) | 電腦實施的用於管理用戶金鑰對的方法、用於管理用戶金鑰對的系統以及用於管理用戶金鑰對的裝置 | |
CN108476404A (zh) | 安全设备配对 | |
CN105718807B (zh) | 基于软tcm和可信软件栈的安卓***及其可信认证***与方法 | |
EP3308280A2 (en) | Making cryptographic claims about stored data using an anchoring system | |
CN108347332A (zh) | 验证固件签名的方法及装置 | |
CN106716957A (zh) | 高效且可靠的认证 | |
CN110795126A (zh) | 一种固件安全升级*** | |
US11228421B1 (en) | Secure secrets to mitigate against attacks on cryptographic systems | |
CN107194237B (zh) | 应用程序安全认证的方法、装置、计算机设备及存储介质 | |
KR100751428B1 (ko) | 일회용 비밀번호 생성방법과 일회용 비밀번호 인증 시스템 | |
CN104683354A (zh) | 一种基于标识的动态口令*** | |
WO2018166163A1 (zh) | Pos终端控制方法、pos终端、服务器及存储介质 | |
CN102456102A (zh) | 用Usb key技术对信息***特殊操作进行身份再认证的方法 | |
TWI724681B (zh) | 基於身分資訊管理密碼金鑰 | |
WO2019206315A1 (zh) | 一种包括tee的***及其电子签名*** | |
WO2021077504A1 (zh) | 一种连续性场景下保护设备软件完整性的方法 | |
US9398005B1 (en) | Managing seed provisioning | |
CN109359479B (zh) | 证书生成和验证的方法、装置、存储介质及电子设备 | |
KR20100001811A (ko) | 일회용 비밀번호 생성 방법 및 이를 이용한 인증 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: Room 301, 2537 Jinke Road, Zhangjiang High Tech Park, Pudong New Area, Shanghai 201203 Patentee after: Shanghai Zhaoxin Semiconductor Co.,Ltd. Address before: Room 301, 2537 Jinke Road, Zhangjiang High Tech Park, Pudong New Area, Shanghai 201203 Patentee before: VIA ALLIANCE SEMICONDUCTOR Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |