CN110825401B - 认证固件设定输入文档的方法与装置 - Google Patents
认证固件设定输入文档的方法与装置 Download PDFInfo
- Publication number
- CN110825401B CN110825401B CN201811406816.9A CN201811406816A CN110825401B CN 110825401 B CN110825401 B CN 110825401B CN 201811406816 A CN201811406816 A CN 201811406816A CN 110825401 B CN110825401 B CN 110825401B
- Authority
- CN
- China
- Prior art keywords
- firmware
- input document
- computer system
- setting input
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
Abstract
本公开描述一种允许认证固件设定输入文档的装置及方法。本公开的装置及方法用以接收固件设定输入文档,以及与该固件设定输入文档有关的代码。该固件设定输入文档设置在该计算机***用以更新多个固件设定。该装置及方法还根据该固件设定输入文档产生第一数值,并利用加密密钥解密该代码以从该代码得到第二数值。该装置及方法还比较该第一数值与该第二数值,基于该第一数值与该第二数值是否满足一个或多个条件,以认证该固件设定输入文档。当满足该一个或多个条件时,该计算机***的固件会根据固件更新输入文档进行更新。
Description
技术领域
本发明涉及计算机***内部的更新固件设定,特别是涉及认证固件设定更新。
背景技术
固件使用在计算机***的各式组件。举例来说,固件包括了基本输入输出***(BIOS)固件、基板管理控制器(BMC)固件、快速***组件互连(PCIe)固件、以及类似的固件。
许多工具与方法允许更新固件设定。其中一种常用来更新固件设定的作法,是使用固件提供者或固件来源所提供的设置工具。设置工具使用的固件设定输入文档,可由提供该固件的实体提供,例如固件提供者。该固件设定输入文档能够纪录下那些需要变更的设定,以及跟那些设定值相关的设定。设置工具接收输入文档,且与存储该固件的存储器沟通。设置工具会随着输入文档的变更,套用存储器中的固件所期望的设定。其后,固件根据新的设定来运作。
某些固件的变更可能会伤害硬件,或造成安全问题。此外,虽然固件提供者可以建立固件设定输入文档,但是恶意来源、或是不具有正确地修改该固件设定所需知识的用户,也能建立固件设定输入文档。举例来说,一个恶意来源可以建立一个固件设定输入文档,该固件设置输入文档使BIOS的设定值成为一个会损害与/或降低计算机***安全等级的状态。因此,固件可能会因恶意或不正确的变更而崩溃。
因此,需要一种装置和方法,在从固件设定输入文档把设定写入存储器之前,通过认证该固件设定输入文档,以防止恶意或不正确的固件变更。
发明内容
所公开的方法和装置,使用一个代码以及与固件设定输入文档相关的数值,以认证该固件设定输入文档。该代码和该等数值允许该文档的认证优先于从该文档将设定写入存储器。该代码可以通过原始固件设定输入文档的哈希码和搭配加密密钥进行加密,如此一来,就只有固件提供者,或其他经过验证的该固件设定输入文档的发起人,才能够建立有效的代码。
该代码可以是由固件设定输入文档所决定的独一无二的值。根据接受到的文档与代码,该代码可被解密以得出一个独一无二的值,比方说独特的哈希码。而另外一个数值可由该文档产生,这两个数值是否满足一个或多个条件,可以用来验证固件输入配置文件案的真伪。此一个或多个条件可包括该两个数值,例如两个哈希码的比对。
根据第一实施例的一种计算机实施的方法,用于计算机***的已认证固件设定更新,包括接收固件设定输入文档,以及与该固件设定输入文档有关的代码。该固件设定输入文档设置用以更新该计算机***的多个固件设定。该计算机实施的方法还包括根据该固件设定输入文档产生第一数值。根据设定以及文档内的相关数值,该数值对该固件设定输入文档是独一无二的。该计算机实施的方法也包括利用加密密钥解密该代码以得到第二数值。该计算机实施的方法还包括比较该第一数值与该第二数值,且基于该第一数值与该第二数值是否匹配,以认证该固件设定输入文档。该计算机实施的方法还包括当该第一数值与该第二数值匹配时,根据该固件设定输入文档更新该计算机***的该多个固件设定。
在某些实施中,该第一数值与该第二数值为基于哈希函数产生的多个哈希码,或基于总和检查算法产生的多个总和检查码。在某些实施中,该代码为凭证,附加在该固件设定输入文档。在某些实施中,该计算机实施的方法包括从该计算机***的存储器中取回该加密密钥。在某些实施中,该存储器可以是存储该固件的相同存储器,也可以存储用来产生该第一数值的算法。在某些实施中,该加密密钥可以是非对称加密密钥对的公钥。
根据第二实施例的一种计算机***,包括存储器,存储多个计算机可执行指令,以及处理单元,与该存储器进行通信。该处理单元执行该多个计算机可执行指令,使该计算机***执行多个操作。该多个操作包括接收固件设定输入文档,以及与该固件设定输入文档有关的代码。该固件设定输入文档设置用以更新该计算机***的多个固件设定。该多个操作也包括根据该固件设定输入文档产生第一数值。根据该等设定以及该文档内的相关数值,该数值对该固件设定输入文档是独一无二的。该多个操作也包括利用加密密钥解密该代码,从该代码得到第二数值。该多个操作也包括比较该第一数值与该第二数值,且基于该第一数值与该第二数值是否匹配,以认证该固件设定输入文档。该多个操作也包括当该第一数值与该第二数值匹配时,根据该固件设定输入文档更新该多个固件。
在某些实施中,该第一数值与该第二数值为基于哈希函数产生的多个哈希码,或基于总和检查算法产生的多个总和检查码。在某些实施中,该代码为凭证,附加在该固件设定输入文档。在某些实施中,该计算机实施的方法包括从该计算机***的存储器中取回该加密密钥。在某些实施中,该存储器存储该固件,以及用来产生该第一数值的算法。在某些实施中,该加密密钥可以是非对称加密密钥对的公钥。
根据第三实施例的一种计算机实施的方法,用于产生已认证固件输入文档,包括产生与固件设定输入文档有关的代码。该固件设定输入文档可设置用以更新该计算机***的多个固件设定。该计算机实施的方法还包括利用加密密钥加密该代码以产生加密代码。该计算机实施的方法也包括将该加密代码附加在该固件设定输入文档,以产生该已认证固件设定输入文档。
在某些实施中,该加密密钥为非对称加密密钥对的密钥。在某些实施中,该计算机实施的方法可包括传输已认证更新文档到该计算机***,以更新该计算机***中的该固件设定,以及提供该计算机***解密密钥。在某些实施中,该解密密钥为非对称加密密钥对的公钥,且用来加密该哈希码的该加密密钥为该非对称加密密钥对的该密钥。
根据第四实施例的一种计算机***,包括存储器,存储多个计算机可执行指令,以及处理单元,与该存储器进行通信。该处理单元执行该多个计算机可执行指令,使该计算机***执行多个操作。该多个操作包括产生与固件设定输入文档有关的代码。该固件设定输入文档可设置用以更新该计算机***的多个固件设定。该多个操作也包括利用加密密钥加密该代码以产生加密代码。该多个操作也包括将该加密代码附加在该固件设定输入文档,以产生该已认证更新文档。
在某些实施中,该加密密钥为非对称加密密钥对的密钥。在某些实施中,有一项操作包括传输该已认证更新文档到该计算机***,以更新该固件设定至该计算机***中,以及提供该计算机***解密密钥。在某些实施中,该解密密钥为非对称加密密钥对的公钥,且用来加密该哈希码的该加密密钥为该非对称加密密钥对的该密钥。
附图说明
本公开及其优点以及附图,在参考后述的例示性实施例的说明并配合所附附图后,将能更加明显易懂。后述附图仅为例示性实施例,并非用于限制本发明的各种实施方式或申请专利范围。
图1为本公开更新固件设定的***的实施例的示意图。
图2为本公开更新固件的方法的实施例的流程图。
图3为本公开的计算机***的实施例的示意图。
图4为本公开的计算机***的另一实施例的示意图。
具体实施方式
将参照所附的附图以描述各种实施例,其中所有附图中使用相同的图标标记表示相似或等同的组件。附图并非按照比例绘制,仅用以例示性说明本发明。需了解的是,例示的多个具体细节、组件关系以及方法是为了使本发明可充分理解。然而,本领域技术人员,容易意识到可在没有一个或多个具体细节的情况下或利用各种其他方法来施行各种实施例。在其他情况下,已为公然知悉的结构或操作并未详细列出,以免对各种实施例造成混淆。各种实施例并不受到例示的动作或事件排序的限制,一些动作可以用不同的顺序发生,以及/或是与其他动作或事件同时发生。
若于本案发明摘要,发明内容,以及实施方式等当中所公开的组件与限制条件,而不在申请专利范围所阐明者,不应用隐含、推论或其它方式将其单独或统合纳入申请专利范围之中。本案的实施方式,除非特别声明,否则凡是涉及到单数名词,则应包括复数名词,且反之也然。文中“包括”一词系指“不排除请求项未记载的项目”。另外,“大约”、“几乎”、“大致上”、“近似于”等表示近似的词汇,在此可解释为“于”、“接近”、“差不多”、“在3%-5%的范围内”、“在可接受的制造公差内”或是任何逻辑上的组合。
关于本公开的名词,“计算机设备”、“计算***”、“计算机***”,指任何拥有硬件、软件、与/或固件组件的电力供电设备或电池供电设备,其中软件与/或固件组件可设置在设备上用以操作功能。关于本公开的名词,“作业环境”可指任何允许软件在操作***上运行的操作***或环境。
本公开的方法与装置提供了流程用以认证固件设定输入文档,可用于计算机***中更新固件设定。认证该固件设定输入文档,可以预防或是禁止计算机***中,对固件设定进行恶意或不适切的变更。认证程序允许接收固件设定输入文档以确定固件设定输入文档是来自于信任的来源。因此,认证程序减轻了更新固件设定的安全疑虑。
认证需要处理固件设定输入文档以产生独一无二的值,以允许区别固件设定输入文档和其他文档。举例来说,独一无二的值可以为哈希值,是基于哈希函数处理固件设定输入文档所产生。或者,举例来说,该值可以为总和检查码,是基于总和检查算法处理固件设定输入文档所产生。其他数值以及处理,可用来产生与固件设定输入文档有关的独一无二数值,或其他类型的独一无二认证。
认证还需要将固件设定输入文档产生的值进行加密。加密防止未经授权方决定所产生的值。加密有各种类型可以使用。在一个或多个实施例中,由于认证涉及两方,意即:加密方产生固件设定输入文档,及解密方使用固件设定输入文档以更新计算机***的固件设定,因此,加密可以基于非对称加密密钥对的加密方案。加密实体可持有私钥以加密数值,解密实体可持有公钥以解密数值。解密实体可一并接收固件设定输入文档以及加密后的数值。解密方可以基于与加密方所使用相同的方法(例如:哈希函数、总和检查算法等)以产生数值。解密方也将加密后的数值进行解密。若两个数值满足条件(例如匹配),则固件设定输入文档被认证,而且解密方可以使用固件设定输入文档以更新计算机***的固件设定。若两个数值并不满足条件,则有可能发生错误而得以进一步调查;恶意人士可能正试图修改计算机***的固件设定,或者发生了一些其他问题,反而需要阻止更新固件设定。
本公开的流程通过提供已认证固件输入文档,提供一种改良方式以更新计算机***的固件设定。因此,该流程防止恶意、不正确、或其他不适切产生的固件设定输入文档用于更新固件设定。因此,计算机***的效能将不会被不正确的固件设定输入文档所影响或损害,且计算机***的安全性,不会因为恶意人士试图通过固件设定更新去修改安全性设定,而有所降低。
图1为根据本公开实施例的***100,基于已认证固件设定输入文档以更新固件。***100包括固件提供者102以及计算机***104。固件提供者102为固件设定输入文档的制作者。固件设定输入文档设置用以更新计算机***104的固件设定。将如下面所述,计算机***的一道或多道程序,比方说设置工具106,可处理固件设定输入文档以更新固件设定。
在一个或多个实施例中,固件提供者102可以是固件的制造者,该固件基于固件设定输出文档而被更新。或者,在一个或多个实施例中,固件提供者102可能拥有权限,并基于固件设定输出文档以更新固件设定,若无,则并不是固件的制造者。举例来说,固件提供者102可以是计算机***104的最高权限用户,拥有权限修改计算机***104的固件设定。
固件提供者可体现在计算机***中,固件提供者102可与计算机***104各自分离,但能与计算机***104进行通信,如图中双箭头线所示。固件提供者102和计算机***104可为近距离或远距离。固件提供者102与计算机***104之间的通信可以通过直接联机或远程联机,譬如通过广域网(WAN)(例如因特网),局域网络(LAN)或者诸如此类的网络。
计算机***104可以是任意形式的计算机***,比方说服务器计算机***、个人计算机***、手机计算设备以及诸如此类的计算机***。或者,计算机***104可以是计算机***内的次组件,并拥有自己的固件,例如服务器计算机***里的基板管理控制器(BMC)。
计算机***104包括设置工具106以及固件存储装置108。固件存储装置108为计算机***104的一部分,存储当下的固件设定,以及基于固件设定输入文档去要求更新。在一个或多个实施例中,设置工具106可以是在计算机***104的操作环境下运行的程序。或者,在一个或多个实施例中,设置工具106可以是与计算机***104的操作环境各自独立运行的程序。举例来说,设置工具106甚至可以在计算机***104关机的情况下运行,因为设置工具106可以装设在自己的操作于待机电源的处理器,以读取与/或写入固件存储装置108。
工具106可以被近距离控制,例如被计算机***104的用户所控制,也可以被远距离控制,例如位于计算机***104远程的计算机***的用户(例如固件提供者102端)所控制。在一个或多个实施例中,工具106可以将信息写入固件存储装置108;于固件存储装置108删除与写入数据;或是于固件存储装置108读取、写入与删除数据。工具106更设置为基于固件设定输入文档内的指令以写入数据到固件存储装置108。
在一个或多个实施例中,***100还包括签证工具110。签证工具110可由固件提供者102操作,或由像是第三方签证服务的第三方所操作。如下所述,签证工具110可用以产生代码给已认证更新文档。签证工具110可以是任意的签证机构,上述签证机构发行数字代码去认证设定输入文档的拥有者。
根据图1的配置,计算机***104的固件可以基于认证后的固件设定输入文档进行更新。认证可以防止或禁止计算机***104的固件设定的恶意及/或意外变更,上述变更可能会损害与/或降低计算机***的安全等级。
图2为根据本公开所述特征的计算机实施流程200,用以更新计算机***的固件的流程图。流程200可由一个或多个计算机***内执行的一道或多道流程所执行,例如图1的计算机***104以及计算机***实施的固件提供者102。在一个或多个实施例中,设置工具(如设置工具106)运行在一个或多个计算机***可以实施流程200。有关图2所述的所有编号的***组件的描述,均参照图1编号的组件。
在流程200之前,会先产生固件设定输入文档,用以更新计算机***(例如计算机***104)的固件设定。更具体而言,固件输入配置文件案作为输入,以描述固件内的哪些设定需被更改,还有那些设定所相对应的数值。固件设定输入文档可以由固件提供者102所产生。
流程200从步骤202开始,其中,一个或多个算法处理固件设定输入文档,以产生与固件设定输入文档有关的独一无二的数值。独一无二的数值允许区别此固件设定输入文档和其他固件设定输入文档。独一无二的数值也允许决定此固件设定输入文档是否已有变更。具体来说,若固件设定输入文档有变更,则一个或多个算法在处理固件设定输入文档将产生一个相异的独一无二数值、表示或至少抓到有变更。
只要数值足以区别固件设定输入文档,并提供了充足的间别程度以供识别固件设定输入文档所变更的设定、数值、或以上两者,则数值并不受限于固定格式。举例来说,数值可以是数组,或是由数字、字母、或以上两者构成的多维度矩阵。
一种或多种算法可以是任意能将固件设定输入文档特征化成独一无二数值的算法。举例来说,在一个或多个实施例中,一种或多种算法可以是一种或多种哈希函数。哈希函数基于固件设定输入文档的特定设定与数值,产生固件设定输入文档独一无二的哈希码。在一个或多个额外的实施例中,一种或多种算法可以是一种或多种总和检查算法。总和检查算法基于固件设定输入文档的特定设定与数值,产生固件设定输入文档独一无二的总和检查码。
举例来说,步骤202可经由固件提供者102或签证工具110据以实行。举例来说,在一个或多个实施例中,固件提供者102可以产生固件设定输入文档并传输固件设定输入文档给签证工具110以产生独一无二的数值。
在步骤204,独一无二的数值被加密。任何加密的方案都可用于加密独一无二的数值。在一个实施例中,非对称加密密钥对的加密方案可用于加密独一无二的数值。更具体而言,非对称加密密钥对的私钥用于加密独一无二的数值。私钥必须保密以确保固件设定输入文档的可信赖性。在一个或多个实施例中,被加密的独一无二数值可被存储为例如代码。在一个或多个特定的实施例中,代码可以如凭证。
与步骤202类似,步骤204可经由固件提供者102或签证工具110据以实行。除此之外,步骤204可以被实体所实行,且该实体不同于实行步骤202的实体。例如,固件提供者102能实行步骤202,且签证工具110能实行步骤204。
在步骤206,代码随即附加在固件设定输入文档。在一个或多个实施例中,可以在固件设定输入文档的结尾处加上特定字符,如此一来工具106即能识别代码要加在何处。替代地、或除此之外,头文件案格式可用以描述已认证更新文档的哪部份为固件设定输入文档,以及哪部份为代码。代码与固件设定输入文档组合成已认证更新文档,是因为代码可用以认证固件设定输入文档,如下面所述。与步骤202、204类似,步骤206可经由固件提供者102或签证工具110据以实行。
在步骤208,已认证更新文档被传输到需要固件配置文件案的计算机***,且被需要固件配置文件案的计算机***接收。举例来说,固件提供者102可传输已认证更新文档给计算机***104。在一个或多个特定的实施例中,已认证更新文档可被运行在计算机***的设置工具所接收,例如计算机***104的工具106。
在步骤210,基于已认证更新文档中的固件设定输入文档产生第二数值。接收已认证更新文档的计算机***包括了可以制造第二哈希码的算法。在一个或多个特定的实施例中,这些算法可以和步骤202中制造独一无二数值的算法相同。然而,取而代之的是,例如固件提供者102产生独一无二的数值,计算机***104产生独一无二的数值。或者,一种或多种算法可互为不同的算法,以产生满足一个或多个条件的数值,如更后面所述。计算机***104可存储一种或多种算法至存储器。在一个或多个实施例中,计算机***104可将一种或多种算法,例如一种或多种哈希函数或一种或多种总和检查算法,存储到同样存储固件的存储器中。举例来说,固件存储装置108可存储一种或多种哈希函数。
在步骤212,附加在固件设定输入文档的代码,被解密以得到第三数值。第三数值应与第一数值相同。因此,就本质上,步骤212可从代码还原出第一数值。然而,如果发生错误,或恶意的第三方介入,或其它情形时,第三数值可能不会与第一数值相同,如更后面所述。
代码使用与步骤204相同的加密方案进行解密。在一个或多个实施例中,解密密钥可存储在计算机***的存储器。例如,固件存储装置108可以存储解密密钥。然而,解密密钥可存储在计算机***的任意位置。当非对称加密密钥对的加密方案用在步骤204以产生第一数值时,非对称加密密钥对的公钥可用以产生第三数值。公钥可存储于固件存储装置108。
在步骤214,决定利用一种或多种算法处理固件设定输入文档得到的第二数值与从解密代码而得到的第三数值是否满足一个或多个条件。条件满足即表示固件设定输入文档可以信赖,且固件更新可以进行。
在一个或多个实施例中,一个或多个条件被视为第二数值与第三数值匹配。第二数值与第三数值匹配证明了已认证更新文档来自于固件提供者102。因此,即使上述的这些数值被称作第一、第二以及第三数值,但若固件设定输入文档是根据上述方案所认证的,则第一、第二以及第三数值为相同数值。因此,第一、第二以及第三等词汇仅用于描述用途,而并非加以限制。
在一个或多个额外的实施例中,一个或多个条件被视为第二数值与第三数值的组合满足条件,即使第二数值与第三数值并不匹配。举例来说,第二数值与第三数值可以加总到预先决定的值。或者,第二数值与第三数值可以共组密钥或密码。密钥或密码可被要求满足设置工具里的条件。
在一个或多个替代性实施例中,人体签名的信息可以加进第一数值。人体签名的信息可在解密与产生第三数值之前就先行验证。
在步骤216,如果满足此一个或多个条件,计算机***基于固件设定输入文档的设定去更新固件。在一个或多个实施例中,设置工具基于固件设定输入文档修改固件。若不满足此一个或多个条件,计算机***将不基于固件设定输入文档更新固件。举例来说,后者的情形可能发生在:计算机***收到固件设定输入文档之前,恶意人士或其他实体已事先修改固件设定输入文档;或是恶意人士或其他实体可能已经产生固件设定输入文档。在一个或多个实施例中,除了不更新固件之外,还可以发生一个或多个其他条件。举例来说,不更新固件这起事件可被记录在计算机***以警告用户(如最高权限使用者)有关这起可疑行动。除此之外,若在一段时间内发生了多次条件不符的情形时,还可以在一定时间或无限期拒绝往后变更固件设定的要求,直到使用者去解除,以预防任何关于更新固件设定的额外恶意行为。
虽然图2所示的流程200经上述说明并发生于特定步骤,但可以移除一道或多道步骤,或者可以改变一道或多道步骤的顺序。举例来说,流程200关系到产生已认证更新文档以及更新固件设定。在一个或多个实施例中,仅关系到认证固件设定输入文档的流程可以发生。举例来说,流程200在计算机***接收到已认证更新文档之后,可以从步骤208开始。或者,关系到产生固件设定输入文档的流程可以发生。举例来说,流程200可以从步骤202开始,但至步骤208以及传输已认证文档作结束。因此,本公开的特征,不应受限于具备图2所示及叙述的任一及每一步骤。
图2的流程图,表示可由计算机***或计算机***的次组件所执行的机器可执行指令。在这例子中,机器可执行指令包括算法,用于执行在(a)处理器,(b)控制器,及/或(c)一个或多个其他适当的装置。算法可通过软件据以实施,软件可存储在有形的介质,举例来说像是闪存、CD-ROM、磁盘片、硬盘、DVD、或其他记忆装置。然而,本领域具通常知识者将容易理解到,整个算法与/或其部分可由处理器之外的设备代替执行,及/或以习知方式实施在固件或专门的硬件(例如:可实施在应用特定集成电路(ASIC)、可编程逻辑装置(PLD)、现场可编程逻辑装置(FPLD)、现场可编程门阵列(FPGA)、离散逻辑(discrete logic)…等)。举例来说,接口的任一或所有组件可以用软件、硬件,与/或固件实施。更进一步地,虽然范例的算法是参照图2的流程图所描述,但本领域具通常知识者将容易理解到,其他许多用来实施此范例的机器可执行指令的方法,也可选择性地使用。
图3为计算机***300的范例,其中计算机***300的组件彼此之间使用总线302进行电子通信。计算机***300包括处理单元330(CPU或处理器)以及***总线302,将各种***组件,包括***存储器304(如只读存储器306,以及随机存取存储器308)耦合到处理器330。计算机***300可包括高速存储器的快取,此高速存储器直接连接处理器330,或接近处理器330,或整合成处理器330的其中一部份。***300可以从***存储器304及/存储装置312或复制数据到高速缓存328,以便处理器330快速存取。利用这种方式,高速缓存328在等待数据时,可以提供处理器330高速的效能。这些模块以及其他模块可以(或被设置以)控制处理器330以执行各种动作。其他的***存储器304也可供使用。存储器304可包括多种具有不同效能性质的不同类型的存储器。处理器330可包括任何通用的处理器与硬件模块或软件模块,如嵌入在存储装置312的模块1 314、模块2 316、与模块3 318。硬件模块或软件模块被配置以控制处理器330以及特殊用途的处理器,其中软件指令也合并在实际的处理器设计当中。处理器330可以是完全独立的计算机***,且包含多核或多个处理器、总线、存储器控制器、快取等。多核心处理器可为对称或非对称。
在一个或多个实施例中,为了让用户能与***300进行互动,而提供输入装置320作为输入机制。输入装置320可包含用于发言的麦克风,用以输入手势或图形的触控感应屏幕、键盘、鼠标、动作输入等等。在某些情况,多模型***能让用户提供多种输入形式以便与***300沟通。于本例中,还提供输出装置322。通信接口324可统治与管理用户输入以及***输出。
存储装置312可为非易失性存储器以存储数据,并让计算机得以存取。存储装置312可为录音带、快闪记忆卡、固态记忆装置、数字多功能激光视盘(DVD)、卡匣、随机存取存储器308(RAM)、只读存储器306(ROM)以及组合等等。
控制器310可为***300的专用微控制器或处理器,如基板管理控制器(BMC)。于某些情况,控制器310可为智能平台管理接口(IPMI)的一部份。除此之外,于某些情况,控制器310可嵌入在主板或是***300的主电路板。控制器310可控制***管理软件与平台硬件之间的接口。控制器310也可以与多种***装置与组件进行(内部与/或外部)通信,例如控制器或外部组件,于后面详述。
控制器310可以针对通知、警告、及/或事件产生特定响应,并与远程设备与组件(例如:电子邮件信息、网络信息等)进行通信,以产生指令或命令用于自动回复硬件程序。***管理员也可以和控制器310进行远程通信,以发起或进行特定硬件回复程序或操作,于后面详述。
控制器310也可包括***事件纪录控制器及/或存储装置,以管理及维护控制器310所接收到的事件,警告以及通知。举例来说,控制器310或***事件纪录控制器可以从一个或多个装置和组件收到警告或通知,并对***事件纪录控制器组件的警告或通知进行维护。
闪存332可以为电子非挥发性计算机存储媒介或芯片,供***300以存储数据与/或数据传输。闪存332可以被电子抹除及/或可重新程序化的。举例来说,闪存332可包括可抹除可程序化只读存储器(EPROM)、电子可抹除可程序化只读存储器(EEPROM)、只读存储器(ROM)、非挥发性随机存取存储器(NVRAM)或互补式金属氧化物半导体(CMOS)。闪存332可存储***300第一次开机时所执行的固件334,与一组由固件334指定的设置。闪存332也可存储固件334使用的设置工具。
固件334可包括基本输入输出***(BIOS)或其同等物,例如可扩展固件接口(EFI)或统一可扩展固件接口(UEFI)。每一次***300启动后,固件可作为序列程序而被读取与执行。固件334可基于一系列设置,对在当前计算机***300出现的硬件进行识别、初始化、与测试。固件可执行自我检测,如***300中的开机自我检测(POST)。自我检测可测试各种硬件组件的功能性,如硬件驱动、光学读取装置、冷却装置、存储器模块、及扩充卡等等。固件334可寻址并动态配置存储器304、只读存储器306、随机存取存储器308、与/或存储装置312的空间以存储操作***。固件334可读取启动程序与/或操作***,并将***300的控制权交给操作***。
***300的固件334可包括固件设置,以定义固件334如何控制***300内的各种硬件组件。固件设置可决定***300内各种硬件组件启动的顺序。固件334可提供接口,例如统一可扩展固件接口(UEFI),允许设定各种不同的参数,这些参数可跟固件初始设置的参数不相同。举例来说,用户(如***管理员)可使用固件334去指定频率和总线速度;定义哪些接口设备连接到***300;设定健康监测(如风扇速度与CPU温度限制);与/或提供各种其他影响***300总体性能与使用功率的参数。当固件334如上述被安装在闪存332时,本领域具通常知识者,容易意识到固件334可安装在其他存储器组件,如存储器304或只读存储器306。
***300可包括一个或多个传感器326。举例来说,一个或多个传感器326可包括一个或多个温度传感器、热能传感器、氧气传感器、化学传感器、噪音传感器、热力传感器、电流传感器、电压传感器、气流传感器、流量传感器、红外线测温器、热通量传感器、温度计、与高温计等等。举例来说,这一个或多个传感器326可以通过总线302,与处理器、高速缓存328、闪存332、通信界面324、存储器304、只读存储器306、随机存取存储器308、控制器310以及存储装置312进行通信。一个或多个传感器326也可以通过像是集成电路总线(I2C)与适用型输出(GPO)等一种或多种不同的手段,与***的其他组件进行通信。***300中各种不同型式的传感器,也可对控制器310回报参数,如冷却风扇速度、电源状态、操作***状态、与硬件状态等等。
图4为具有芯片组架构的计算机***400的另一示例,该芯片组架构可用于执行本公开所描述的方法或操作。计算机***400可包括可用于实施所公开的技术的计算机硬件、软件、以及固件。***400可包括处理器410,代表各种物理上与/或逻辑上不相同的资源,其资源能够执行被设置以进行识别计算的软件、固件、以及硬件。处理器410可与芯片组402互相通信,得以控制处理器410的输入及输出。在此范例中,芯片组402将信息输出给输出装置414,如显示器;以及将信息读写至存储装置416,例如磁性介质与固态介质。芯片组402也可以从随机存取存储器418读取数据,以及将数据写入随机存取存储器418。用来和各种用户接口组件406连接的电桥404,也可用来连接芯片组402。用户接口组件406可包括键盘、麦克风、触控检测与处理电路、以及定点装置(如鼠标)等等。一般来说,***400的输入可来自于各种机器产生与/或人工产生的资源。
芯片组402也可和一个或多个拥有不同物理接口的通信接口408连接。这些通信接口可包括使用于有线局域网络、无线局域网络、宽带无线网络以及个人局域网络的接口。更进一步地,机器可以通过用户接口组件406接收用户的输入,并执行适当的功能。
除此之外,芯片组402可与固件412进行通信,该固件412于开机时可被计算机***400所执行。固件412可以基于固件设置,对计算机***400内当下的硬件进行识别、初始化、以及测试。固件412于***400可以执行如开机自我检测(POST)之类的自我检测。此自我检测可以测试各种硬件组件402-410与414-418的功能性。固件412可寻址并动态配置存储器418的区域以存储操作***。固件412可读取启动程序与/或操作***,并将计算机***400的控制权交给操作***。在某些情况下,固件412可与硬件组件402-410与414-418进行通信。此处,固件412可通过芯片组402与/或其他一个或多个组件,与硬件组件402-410与414-418进行通信。在某些情况下,固件412可与硬件组件402-410与414-418直接进行通信。
可以体会的是,例示的***300与400可拥有一个以上的处理器(例如330与410),或身为网接一起的多个计算装置的群组或是丛集,以提供更佳的处理性能。
为了解释明确,本公开将以包括功能区块,如装置、装置组件、以软件实施的步骤或流程、或硬件与软件的组合呈现。
在某些实施例中,计算机可读取存储装置、介质、以及存储器可包括缆线,或是包含位串行的无线信号等。然而,当论及非瞬时计算机可读取存储介质时,明确排除本质上为能量、载波、电磁波、以及信号的介质。
根据上述所例示的方法,可使用存储于计算机可读取介质的计算机可执行指令,或其他可行的指令予以实施。举例来说,这些指令可包括指令与数据,引起或其他设置通用计算机(GPC)、专用计算机(SPC)、或专用处理装置,以执行特定功能或一组功能。所使用的一部份计算机资源,可经由网络存取。举例来说,计算机可执行指令可以为二进制或中阶格式指令,如汇编语言、固件、或原始码。
根据本公开实施方法的装置,可包括硬件、固件、与/或软件,且可采用所有型态要素的任何一种。这些型态要素的典型例子包括了笔记本电脑、智能型手机、轻巧型个人计算机、掌上电脑(PDA)、架上型装置、独立式装置…等等。此处描述的功能性也能于周边装置或扩充卡实施。这些功能性可通过更后面例示的方法,实施在不同芯片之间的电路板,或在单一装置中执行不同的流程。
各种例示还可以实施在更广泛的操作环境,在某些情况中,可以包括一台或多台服务器计算机、用户计算机、或计算装置,以执行一些的应用程序。用户或客户的装置可以包括一些通用个人计算机,例如运行标准操作***的桌面计算机或是笔记本电脑;也如同行动式、无线、及手持装置运行手机软件,并可以支持一些网络与信息传输协议。***也可以包括运行各种商用操作***的一些工作站,以及运行用在如开发与数据库管理等目的的其他习知应用程序。这些装置也包括其他电子装置,如虚拟终端、精简客户端、游戏***、及其他可经由网络进行通信的装置。
例示的范围或其部分在硬件中实施,本公开可通过下列技术的任一或组合而实施:具有逻辑闸,用于数据信号实施逻辑功能的离散逻辑电路;具有适当逻辑闸组合的应用特定集成电路(ASIC);可程序化硬件,如可程序门阵列(PGA);与/或场式可程序门阵列(FPGA)等。
多数范例使用至少一个本领域技术人员习知的网络,以支持用在各种商业可用协议的通信,例如传输控制/因特网协议(TCP/IP)、开放式***互连架构(OSI)、文档传送协议(FTP)、通用即插即用网络协议(UPnP)、网络文件***(NFS)、公用因特网文件***(CIFS)、以及AppleTalk等。举例来说,网络可以为局域网络(LAN)、广域网(WAN)、虚拟专用网络(VPN)、因特网、内部网络、外部网络、公用电话交换网(PSTN)、红外线网络、无线网络、及上述任意组合。
根据这些技术实施方法的装置,可包括硬件、固件、与/或软件,且可采用所有型态要素的任何一种。这些型态要素的典型例子包括了服务器计算机、笔记本电脑、智能型手机、轻巧型个人计算机、掌上电脑(PDA)…等等。此处描述的功能性也能于周边装置或扩充卡实施。这些功能性可通过更后面例示的方法,实施在不同芯片之间的电路板,或在单一装置中执行不同的流程。
虽然本发明的各种实施例已如上所述,但应该理解的是,它们仅以例示的方式呈现,而非加以限制。在不脱离本公开的精神或范围的情况下,可根据公开的实施例进行许多变更。因此,本发明的广度和范围不应受任何上述实施例的限制。相反地,本发明的范围应根据以下申请专利范围及其同等对象来定义。
尽管本发明针对一个或多个实施方式说明及描述,但本领域技术人员在阅读和理解本说明书及图示后,将想到同等的变更和修改。除此之外,尽管可能仅针对若干个实施方式的其中之一公开本发明的特定特征,但若对于任何给定或特定的应用上有所期望或具有优点时,则该特定特征可与其他实施方式的一个或多个其他特征加以组合。
此处所使用的术语,目的仅在于描述特定实施例,而非作为限制。除非前后文特别明确说明,否则单数名词“一”、“该”也包括复数名词。除此之外,在细部说明与/或申请专利范围中使用的语汇“包括了”、“包括”、“拥有”、“具有”、“附有”或其语汇变化,均用来概括与“包含”一词近似的意义。
除非另外定义,否则此处使用的所有术语(包括技术和科学术语)皆具有与本领域技术人员所能理解的相同的含义。除此之外,诸如在常用辞典中定义的那些术语,应被理解为具有与其在相关领域的文章中一致的含义,而且除非在本文中有明确如此定义,否则不应理解为理想化或过于正式的含义。
【符号说明】
100~***;
102~固件提供者;
104~计算机***;
106~设置工具;
108~固件存储装置;
110~签证工具;
200~流程;
202、204、206、208、210、212、214、216~步骤;
300~***;
302~总线;
304~存储器;
306~只读存储器(ROM);
308~随机存取存储器(RAM);
310~控制器;
312~存储装置;
314~模块1;
316~模块2;
318~模块3;
320~输入装置;
322~输出装置;
324~通信接口;
326~传感器;
328~高速缓存;
330~处理器;
332~闪存;
334~固件;
336~显示器;
400~计算机***;
402~芯片组;
404~电桥;
406~用户接口组件;
408~通信接口;
410~处理器;
412~固件;
414~输出装置;
416~存储装置;
418~随机存取存储器。
Claims (10)
1.一种计算机实施的方法,用于计算机***的已认证固件设定更新,包括:
接收固件设定输入文档,以及与该固件设定输入文档有关的代码,该固件设定输入文档设置用以更新该计算机***的多个固件设定;
根据该固件设定输入文档产生第一数值;
利用加密密钥解密该代码以得到第二数值;
将该第一数值与该第二数值组合在一起以形成密钥;
基于该密钥是否满足条件认证该固件设定输入文档;以及
当该密钥满足该条件时,根据该固件设定输入文档更新该计算机***的该多个固件设定。
2.如权利要求1所述的计算机实施的方法,其中,该第一数值与该第二数值为基于哈希函数产生的多个哈希码,或基于总和检查算法产生的多个总和检查码。
3.如权利要求1所述的计算机实施的方法,其中,该代码为凭证,附加在该固件设定输入文档。
4.一种计算机***,包括:
存储器,存储多个计算机可执行指令;以及
处理单元,与该存储器进行通信,其中,该处理单元执行该多个计算机可执行指令,使该计算机***执行下列操作,包括:
接收固件设定输入文档,以及与该固件设定输入文档有关的代码,该固件设定输入文档设置用以更新该计算机***的多个固件设定;
根据该固件设定输入文档产生第一数值;
利用加密密钥解密该代码,从该代码得到第二数值;
将该第一数值与该第二数值组合在一起以形成密钥;
基于该密钥是否满足条件认证该固件设定输入文档;以及
当该密钥满足该条件时,根据该固件设定输入文档更新该计算机***的该多个固件设定。
5.如权利要求4所述的计算机***,其中,该第一数值与该第二数值为基于哈希函数产生的多个哈希码,或基于总和检查算法产生的多个总和检查码。
6.如权利要求4所述的计算机***,其中,该代码为凭证,附加在该固件设定输入文档。
7.如权利要求4所述的计算机***,其中,该处理单元执行该多个计算机可执行指令,使该计算机***执行下列操作,包括:从该计算机***的该存储器中取回该加密密钥。
8.一种计算机实施的方法,用于产生已认证固件设定输入文档,包括:
产生与固件设定输入文档有关的代码,该固件设定输入文档设置用以更新计算机***的多个固件设定;
利用加密密钥加密该代码以产生加密代码;
将该加密代码附加在该固件设定输入文档,以产生该已认证固件设定输入文档,以及
用特殊字符标记该固件设定输入文档以标识该加密代码。
9.如权利要求8所述的计算机实施的方法,还包括:
传输该已认证固件设定输入文档到该计算机***,以更新该计算机***的该多个该固件设定;以及
提供该计算机***解密密钥。
10.如权利要求9所述的计算机实施的方法,其中,该解密密钥为非对称加密密钥对的公钥,且用来加密该代码的该加密密钥为该非对称加密密钥对的密钥。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/058,376 US10867046B2 (en) | 2018-08-08 | 2018-08-08 | Methods and apparatus for authenticating a firmware settings input file |
US16/058,376 | 2018-08-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110825401A CN110825401A (zh) | 2020-02-21 |
CN110825401B true CN110825401B (zh) | 2023-03-31 |
Family
ID=64664210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811406816.9A Active CN110825401B (zh) | 2018-08-08 | 2018-11-23 | 认证固件设定输入文档的方法与装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10867046B2 (zh) |
EP (1) | EP3608821A1 (zh) |
JP (1) | JP2020025243A (zh) |
CN (1) | CN110825401B (zh) |
TW (1) | TW202008206A (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11023586B2 (en) * | 2018-10-26 | 2021-06-01 | American Megatrends International, Llc | Auto detection mechanism of vulnerabilities for security updates |
US20220085982A1 (en) * | 2019-01-28 | 2022-03-17 | Omron Corporation | Safety system and maintenance method |
TWI738243B (zh) * | 2020-03-10 | 2021-09-01 | 神雲科技股份有限公司 | 伺服系統 |
TWI758825B (zh) * | 2020-08-18 | 2022-03-21 | 鴻海精密工業股份有限公司 | 壓縮資料之方法及設備、解壓縮資料之方法及設備 |
CN112216337B (zh) * | 2020-09-11 | 2024-03-29 | 深圳市金泰克半导体有限公司 | 固件参数检测方法、装置及固件设置方法 |
CN113076214B (zh) * | 2021-04-01 | 2022-12-20 | 山东英信计算机技术有限公司 | 一种namelist文件的验证和纠正方法、装置、设备及可读介质 |
US20240231793A9 (en) * | 2022-10-21 | 2024-07-11 | Microsoft Technology Licensing, Llc | Dynamically updating firmware profile configurations on computing devices |
CN116795584B (zh) * | 2023-08-28 | 2023-11-17 | 上海鉴智其迹科技有限公司 | 一种校验方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106325915A (zh) * | 2015-07-01 | 2017-01-11 | 广达电脑股份有限公司 | 更新计算机固件的***、方法与计算机可读取储存媒体 |
CN107251476A (zh) * | 2015-02-13 | 2017-10-13 | 维萨国际服务协会 | 保密通信管理 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NZ329891A (en) * | 1994-01-13 | 2000-01-28 | Certco Llc | Method of upgrading firmware of trusted device using embedded key |
US5859911A (en) * | 1997-04-16 | 1999-01-12 | Compaq Computer Corp. | Method for the secure remote flashing of the BIOS of a computer |
JP4675031B2 (ja) * | 2002-04-23 | 2011-04-20 | パナソニック株式会社 | サーバ装置及びプログラム管理システム |
JP2006185063A (ja) | 2004-12-27 | 2006-07-13 | Kyocera Mita Corp | プログラム書込装置及びプログラム書込プログラム |
US20060143600A1 (en) * | 2004-12-29 | 2006-06-29 | Andrew Cottrell | Secure firmware update |
JP2008234205A (ja) | 2007-03-19 | 2008-10-02 | Ricoh Co Ltd | サーバ装置及びインストール情報作成方法 |
US9053323B2 (en) | 2007-04-13 | 2015-06-09 | Hewlett-Packard Development Company, L.P. | Trusted component update system and method |
US8898477B2 (en) * | 2007-11-12 | 2014-11-25 | Gemalto Inc. | System and method for secure firmware update of a secure token having a flash memory controller and a smart card |
CN101247416A (zh) * | 2008-03-25 | 2008-08-20 | 中兴通讯股份有限公司 | 基于ota的固件下载方法、预处理方法、完整性验证方法 |
WO2011075139A1 (en) * | 2009-12-18 | 2011-06-23 | Hewlett-Packard Development Company, L.P. | Methods and devices for updating firmware of a component using a firmware update application |
US8484474B2 (en) | 2010-07-01 | 2013-07-09 | Rockwell Automation Technologies, Inc. | Methods for firmware signature |
JP6013061B2 (ja) | 2012-07-23 | 2016-10-25 | 株式会社東芝 | 情報処理装置および制御方法 |
TWI518595B (zh) | 2014-03-17 | 2016-01-21 | 廣達電腦股份有限公司 | 軟體更新方法及系統以及行動裝置 |
CN105516967A (zh) | 2014-09-25 | 2016-04-20 | 中兴通讯股份有限公司 | 可信环境创建方法和装置及基站异常恢复方法和装置 |
JP2018056840A (ja) * | 2016-09-29 | 2018-04-05 | セイコーエプソン株式会社 | 印刷装置、印刷装置の制御方法、及びネットワークシステム |
CN106960155A (zh) | 2017-03-28 | 2017-07-18 | 联想(北京)有限公司 | 一种基本输入输出***的更新方法和装置 |
-
2018
- 2018-08-08 US US16/058,376 patent/US10867046B2/en active Active
- 2018-11-02 TW TW107138888A patent/TW202008206A/zh unknown
- 2018-11-23 CN CN201811406816.9A patent/CN110825401B/zh active Active
- 2018-12-10 EP EP18211443.9A patent/EP3608821A1/en not_active Withdrawn
- 2018-12-25 JP JP2018241556A patent/JP2020025243A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107251476A (zh) * | 2015-02-13 | 2017-10-13 | 维萨国际服务协会 | 保密通信管理 |
CN106325915A (zh) * | 2015-07-01 | 2017-01-11 | 广达电脑股份有限公司 | 更新计算机固件的***、方法与计算机可读取储存媒体 |
Also Published As
Publication number | Publication date |
---|---|
US10867046B2 (en) | 2020-12-15 |
EP3608821A1 (en) | 2020-02-12 |
CN110825401A (zh) | 2020-02-21 |
US20200050767A1 (en) | 2020-02-13 |
TW202008206A (zh) | 2020-02-16 |
JP2020025243A (ja) | 2020-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110825401B (zh) | 认证固件设定输入文档的方法与装置 | |
US20210192090A1 (en) | Secure data storage device with security function implemented in a data security bridge | |
JP6701364B2 (ja) | パスワードなしのコンピュータログインのサービス支援モバイルペアリングのためのシステム及び方法 | |
TWI553505B (zh) | 管理機架伺服器系統之安全金鑰的方法與系統 | |
CN110741370A (zh) | 利用用户输入的生物识别认证 | |
CN112425114A (zh) | 受公钥-私钥对保护的密码管理器 | |
US20200036527A1 (en) | User authentication based on password-specific cryptographic keys | |
US20190297075A1 (en) | Repeated secondary user authentication | |
JP6756056B2 (ja) | 身元検証による暗号チップ | |
WO2019103842A1 (en) | Behavioral authentication of universal serial bus (usb) devices | |
US20190306155A1 (en) | Generating cryptographic keys using supplemental authentication data | |
CN111567076B (zh) | 用户终端设备、电子设备、包括它们的***及控制方法 | |
US20220376919A1 (en) | Blockchain-enabled secure messaging system, device, and method using blockchain validation and biometric authentication | |
US11893105B2 (en) | Generating and validating activation codes without data persistence | |
US11991270B2 (en) | Optimized authentication system | |
US12021975B2 (en) | Authentication system for a multiuser device | |
CN111914311B (zh) | 硬盘密码管理方法、装置、电子设备及存储介质 | |
US20130275745A1 (en) | System and Method for Secure Communication | |
US11831759B1 (en) | Optimized authentication system for a multiuser device | |
US11652810B1 (en) | Secure multi-factor authentication system to authenticate a user device for accessing a service | |
CN110659516B (zh) | 检测关于证书库的未授权更改的***和方法 | |
US11528144B1 (en) | Optimized access in a service environment | |
US12052367B2 (en) | Optimized access in a service environment | |
US11943365B2 (en) | Secure cross-device authentication system | |
KR102474901B1 (ko) | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |