CN113841147A - 密钥认证 - Google Patents
密钥认证 Download PDFInfo
- Publication number
- CN113841147A CN113841147A CN201980096543.9A CN201980096543A CN113841147A CN 113841147 A CN113841147 A CN 113841147A CN 201980096543 A CN201980096543 A CN 201980096543A CN 113841147 A CN113841147 A CN 113841147A
- Authority
- CN
- China
- Prior art keywords
- key
- computing device
- cryptographic
- identifier
- processor
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 74
- 238000004891 communication Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 230000007774 longterm Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/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
- 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
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06037—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation 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
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation 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]
-
- 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/3215—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 a plurality of channels
-
- 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/3271—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 challenge-response
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/006—Identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
在示例中,提供了一种验证加密密钥的方法。该方法包括访问存储在计算设备上的安全位置处的标识符,根据密钥生成过程生成加密密钥,以及基于标识符来验证在计算设备的启动过程期间真实生成了加密密钥。
Description
背景技术
加密协议用于在不受信任的环境中保护通信和认证用户。公钥密码系统使用密钥对:在网络中广泛传播的公钥,以及所有者而不是其他人所知道的私钥。单独的公钥密码系统不足以让用户在网络中相互信任。公钥基础设施可用于认证用户。在公钥基础设施中,每个用户向证书颁发机构申请数字证书,该数字证书作为用户身份的不可篡改的认证为其他用户服务。证书颁发机构充当网络中每个人都信任的可信第三方。
附图说明
某些示例的各种特征将从以下结合附图的详细描述中变得明显,附图一起通过示例的方式示出了多个特征,其中:
图1示出了根据示例的用于生成加密密钥的装置。
图2示出了根据示例的用于生成加密密钥的方法的框图。
图3示出了根据示例的质询和响应协议的示意图。
图4示出了根据示例的与存储器相关联并且包括用于认证计算设备上的加密密钥的指令的处理器。
具体实施方式
在以下描述中,为了解释的目的,阐述了某些示例的许多具体细节。说明书中对“示例”或类似用语的引用意味着结合示例描述的特定特征、结构或特性被包括在至少一个示例中,但不一定被包括在其他示例中。
密码术已广泛应用于移动和网络通信系统等现代通信技术中。密码协议被用于保护各方之间的通信通道,并相互认证用户。加密协议提供数据安全性,并且数字签名被用于认证各方之间发送的消息。
现代密码系统的安全性依赖于密钥的保密性。早期的密码系统采用对称密钥算法,其中发送方和接收方使用相同的密钥。在对称密码系统中,在亲自或通过安全通道使用系统之前,必须以某种安全方式在通信双方之间交换密钥。当安全通道不可用于密钥交换或密钥频繁更改时,大量参与方使用对称密钥加密变得难以管理。密钥的数量随着用户数量呈指数增长。
公钥密码术是对称密钥密码术的替代方案,其中用户生成公钥和私钥。公钥可以通过不安全的通道传送给任何一方。在公钥加密中,公钥允许任何拥有公钥的人使用公钥加密数据。对应私钥的拥有者可以对用公钥加密的密文进行解密。任何其他参与方都无法解密数据。
安全通信中使用的另一个原语是密钥交换算法。Diffie-Hellman密钥交换算法是一种允许彼此没有先验知识的两方通过不安全的通道共同建立共享密钥的公钥算法。这允许在以前使用安全通道的情况下使用有效的对称密钥密码术。
Diffie-Hellman密钥交换在单独使用时容易受到所谓的中间人攻击。这是因为Diffie-Hellman是一种未经认证的协议。它不向消息的发送者或接收者提供消息分别源自真实的接收者或发送者的加密保证。充当中间人的一方可以拦截各方之间的通信,来回转发消息,并可能在发送方和接收方之间篡改或注入消息。
为了克服这个问题,可以使用密钥交换算法中使用的公钥/私钥对源自密钥的真正所有者的保证。例如,证书颁发机构可验证某方已生成加密密钥。证书颁发机构可以颁发公钥证书,也称为数字证书或身份证书,是用于证明公钥所有权的电子文件。证书包括有关密钥的信息、有关其所有者身份的信息以及已验证证书内容的实体——也称为颁发者——的数字签名。
在某些情况下,实体可能不具备安全存储长期静态私钥的能力。在这种情况下,可以使用临时密钥交换。临时密钥是短期使用的密钥。这可能是每个会话一次或多次。但是,临时密钥不会长期存储。
在密钥交换协议诸如Diffie Hellman密钥交换中使用临时密钥时,可能难以在每次生成新的临时密钥时使用证书颁发机构对密钥进行认证。例如,在其中生成密钥的设备无权访问联网功能的启动过程期间生成密钥的情况下。
根据示例,本公开描述的方法和系统可用于通过使用长期、安全存储、静态且经认证的基于硬件的设备标识符以与物理设备相关联的秘密密钥的形式来认证临时密钥。在示例中,基于硬件的设备身份可用于在密钥协商期间验证临时密钥,例如,使用加密签名。这将临时密钥绑定到设备的物理身份。然后在带外接收与基于硬件的设备标识符/秘密密钥对应的公钥,允许用户验证硬件的身份并将临时密钥链接到物理设备的信任根。设备使用设备的信任根有效地证明其自己的密钥。
可以将长期基于硬件的设备标识符存储在某些可能不存储静态密钥的设备上。例如,一些计算设备具有嵌入式硬件组件,例如可信平台模块。这些模块可以以受控和受限的方式存储标识符。在密钥交换会话中重新使用实际密钥会带来安全风险,因此建议不要这样做。因此,在示例中,可以存储标识符并签署临时密钥,而不是在密钥交换协议本身中重复使用相同的长期存储密钥。
这里描述的方法和系统不同于基于与证书颁发机构通信的系统。在许多情况下,证书颁发机构可能无法验证临时密钥。在此描述的系统断言在计算设备的启动过程期间是否在物理设备上真正生成了临时密钥。该功能可以通过基于硬件的设备标识符来提供。
此外,如果存在不一定像管理设备的用户那样与设备具有物理关系的企业实体,基于硬件的设备标识符使企业能够将标识符与实际物理设备相关联。如果没有基于硬件的设备标识符,企业将不得不相信用户,因为他们看到的临时密钥与用户面前的物理设备相关联。没有什么可以阻止用户自己生成不同的密钥对并将此信息发送给声称它与他们的设备相关联的企业。
图1示出了根据示例的用于生成加密密钥的装置100。在此处描述的示例中,图1中所示的装置100是诸如个人计算机、笔记本电脑或移动设备之类的计算设备。
装置100与本公开所述的其他方法和系统结合使用。特别地,装置100被布置为生成用于诸如Diffie Hellman密钥交换协议之类的密钥交换协议中的诸如临时密钥之类的加密密钥。这些密钥可用于生成在对称密钥加密协议中使用的其他密钥,这些密钥可用于各方之间的安全通信。
图1所示的装置100包括防篡改模块(TPM)110,例如可信平台模块。在装置100的示例中,假设TPM 110包括安全数据存储器(未示出)。可以控制或限制对存储在安全存储装置中的部分或全部数据的访问。例如,在一些情况下,保存在TPM上的数据是装置100的一些或所有其他组件的只读数据。
在一些示例中,TPM 110或装置100的制造商将数据写入TPM。在其他情况下,对TPM110上保存的数据具有访问权限的各方可能能够执行读写操作进出TPM 110。
TPM具有不同的功能和特性。在某些情况下,TPM 110具有加密处理能力。例如,TPM110可能能够使用存储在安全存储装置中的一个或多个密钥来加密数据。在其他示例中,TPM 110能够对存储在设备100上别处的数据生成加密签名。在其他示例中,TPM 110能够使用散列函数安全地计算数据的散列值。
装置100包括通信耦接到TPM 110的处理器120。处理器120是通用处理器,被布置为对存储在装置100上的数据执行操作。例如,处理器120可以被布置为检索或读取安全存储在TPM 110上的数据。
在这里描述的示例中,处理器120被布置为当装置100被通电时执行启动过程。在此,启动过程是由装置100执行以加载操作系统的过程。在一些示例中,启动过程可以由存储在装置100的只读存储器(未示出)中的小型启动加载程序发起。
在此处描述的示例中,处理器120结合TPM 110执行可信启动过程。可信启动过程是这样的启动过程,其中用户可以确保在启动周期期间执行的操作序列的完整性。也就是说,由处理器120结合TPM 110执行的操作被可验证地执行,并且在某些情况下,例如以输入和输出的散列值的形式,可以向用户提供以下保证:操作顺序没有被改变或篡改。特别地,装置120在启动周期中的给定点的状态是可信状态。
装置100还包括加密密钥生成模块130。加密密钥生成模块130通信耦接到处理器120和TPM 110。在这里描述的示例中,加密密钥生成模块130与处理器120和TPM110分离。然而,在TPM的一些示例中,可以执行某些加密功能,包括密钥生成。类似地,密钥生成可以由诸如处理器120之类的通用处理器执行。在这种情况下,装置100可以包括TPM 110和处理器120而不包括加密密钥生成模块130。
处理器120被布置为控制加密密钥生成模块130。特别地,处理器120向密码密钥生成模块130传送指令以执行加密密钥生成过程。根据在此描述的方法的示例,处理器120被布置为在可信启动过程期间发起密钥生成。以这种方式,处理器120可以结合加密密钥生成模块130在可信启动过程期间控制临时加密密钥的生成。设备100的用户可以确信从加密密钥生成模块130输出的临时密钥是以可信的操作序列创建的。
即使用户可以信任操作顺序本身,但将操作顺序与设备联系起来是不够的。加密密钥生成模块130输出的临时密钥也应该被认证。
在启动期间,装置100和处理器120执行装置在其完全操作时能够执行的那些功能的某个功能子集。特别地,例如,当装置100在受信任状态下操作时,可能无法通过证书颁发机构以通常的方式生成和认证加密密钥。
在此处描述的示例中,处理器120还被布置为基于安全地存储在TPM 110上的标识符,在可信启动过程期间认证由加密密钥生成模块130生成的加密密钥。根据这里描述的示例,处理器120访问TPM 110。如果TPM 110具有执行那些操作的功能,则执行认证以验证临时密钥的实际操作序列可以在TPM 110内部发生。在其他情况下,临时密钥的加密认证发生在处理器120上。
根据一个示例,处理器120可以使用存储在TPM中的标识符来执行加密签名操作以在临时密钥上生成加密签名。加密签名将临时密钥与设备联系起来。该签名可由外部实体独立验证。
图2示出了根据示例的在计算设备的启动过程期间生成加密密钥的方法200的方法。图2所示的方法200可以在图1所示的装置100上实施。
在块210,访问存储在计算设备上的安全位置处的标识符。根据这里描述的示例,当方法200在图1所示的装置100上实施时,安全存储装置由TPM 110提供。在其他示例中,安全存储装置可以提供在主存储器的区域中,或计算设备的硬盘空间中。
在块220,根据密钥生成过程生成加密密钥。密钥生成过程可以由图1中所示的加密密钥生成模块130发起。这样的密钥生成过程可以在软件中或由专用硬件组件来执行。
任何种类的非对称加密密钥生成算法都可以与这里描述的方法结合使用。例如,可以实施使用RSA、椭圆曲线或基于晶格的密钥生成算法生成的密钥。可以使用任何大小的密钥,例如,1024位的RSA密钥提供80位的安全级别。对于基于椭圆曲线点的密钥,使用160位的密钥可以达到类似80位的安全级别。因此,椭圆曲线密码术可用于内存受限或轻量级应用,或用于计算效率的目的。
在块230,加密密钥被验证以证明它是在计算设备的启动过程期间真实地生成的。加密密钥的认证是根据标识符进行的。根据这里描述的示例,验证加密密钥包括基于标识符在加密密钥上生成加密签名。
由于方法200中的操作是在启动过程期间执行的,如果启动过程是可信启动过程,则根据方法200的密钥认证也是可信的,因为假设标识符与计算设备的信任根相关联。
在图2所示的方法200的替代方案中,可以在发起启动过程之前执行块210。特别地,可以在任何启动加载器已经被加载到计算设备的存储器中之前从安全位置访问身份。但是,如果实施了这样的替代方案,则应采取额外的预防措施以确保读取操作是可信的。
方法200还可以包括验证密码是由计算设备真实生成的密钥。在某些情况下,在计算设备上执行密钥验证。例如,希望与另一用户执行安全通信的用户可能希望验证计算设备上的临时密钥是由计算设备在可信启动过程期间生成的。用户可以根据这里描述的方法200来验证密钥。例如,在密钥的验证包括在密钥上提供加密签名的情况下,用户可以使用对应的公钥来验证加密签名。
如果设备的用户不是制造商,则他们不能简单地相信标识符与计算设备相关联。因此,这应该是用户可以独立验证的。
描述了一种方法,通过该方法用户可以验证标识符链接到计算设备。根据示例,实施方法200的计算设备可以基于计算设备的序列号生成加密签名,其中使用据称链接到计算设备的标识符生成签名。该签名可以发送给设备制造商。
响应于接收到签名,设备制造商基于序列号在带外提供经认证的公钥,其中经认证的公钥是与标识符相关联的对应公钥。在这种情况下,标识符本身可以用作秘密密钥,也可以用于生成密钥以对序列号进行签名。然后,用户可以使用经过认证的公钥来验证序列号上的签名。
如果企业实体正在管理系统,则可以使企业知道序列号和基于硬件的身份证书。例如,企业可以在将设备部署到用户之前与制造商进行通信,然后将证书存储并传递给用户。如果/当企业与设备通信时(可能通过用户),企业可以确保与其通信的临时密钥关联到物理设备,如果用户从企业引出输入进行认证,企业学习用户正在向哪个设备进行认证。
在另一个示例中,用户可以如下方式验证标识符:可以在计算设备上预先安装序列号上的加密签名。当用户希望将标识符链接到计算设备时,用户可以从设备制造商处接收带外公钥。然后用户可以验证加密签名。
此处描述了允许授权用户以无密码方式向计算设备的基本输入/输出系统(BIOS)认证的协议的示例。例如,该协议可用于允许经过认证的用户执行低级别BIOS管理操作。
在一个示例中,用户从设备接收公钥/私钥对。在认证阶段,可以在设备的屏幕上向用户呈现机器可读的光学代码,例如矩阵条形码,例如快速响应(QR)代码,这是加密的质询。如果用户能够使用之前收到的私钥解密质询,并将质询(或质询的指纹)输入设备,则用户能够成功被认证。
计算设备上的恶意应用可能会向用户显示伪装成BIOS的屏幕,并向用户提供用户错误地认为属于该设备的公钥。然后,用户将与恶意应用而不是BIOS计算共享密钥,正如他们所期望的那样。这种对抗性应用可以进行“拒绝”式攻击,防止用户在没有意识到的情况下修改BIOS设置。
额外的攻击可能涉及中间人攻击,即设备上的恶意应用将用户输入的信息通信给控制用户有权修改的设备的对手,但对手不是。通过这种方式,攻击者可以访问他们无权进入的设备的BIOS。
图3示出了可以结合在此描述的系统来实施的质询和响应协议300的示例。在图3的示例中,协议300在计算设备310和用户设备320之间执行,用户设备320例如可以是智能电话,并且可以包括显示器321和诸如相机的成像装置323。该协议可用于认证用户以使得他们能够在计算设备310上安全地执行启动管理操作,而独立于授权加密密钥的任何认证机构。计算设备310和用户设备320之间的通信在启动阶段受到限制。计算设备310可以使用设备310的显示设备321来显示代码。如上所述,这样的代码可以是例如QR代码。用户设备320可以用设备320读取代码,例如。使用设备320的成像装置323。在启动阶段,从用户到设备310的BIOS的通信通道是使用键盘。
在图3所示的示例中,用户设备320最初持有私钥Pri1,计算设备310持有相应的公钥Pub1,其中(Pub1,Pri1)是根据密钥生成算法KeyGen()生成的。根据示例,设备310、320可以被配置为在协议300的初始注册阶段持有公钥和私钥。注册阶段可以由例如生成相应密钥并将其传送到设备的可信管理系统发起。
在协议的质询和响应阶段,计算设备310生成另一个密钥对(Pub1,Pri1)301。计算设备310基于Pub2和Pri2的组合生成种子(seed)302。种子302用作密钥推导函数KDF()的输入以生成对称密钥Sym 303。质询chal是随机生成的并且使用密钥Sym加密,以生成传送到用户设备320的加密C。
用户设备320可以与计算设备310密钥的公共部分Pub2一起接收质询。用户设备320使用Pub2和他们的私钥Pri1计算相同的种子。然后使用种子302来计算对称密钥Sym303,用户可以使用该对称密钥来解密质询密文C。响应Resp 304被输入到计算设备310上。例如,用户可以使用键盘将响应键入到设备中310。接收到的质询由计算设备310验证。
当方法200与协议300结合使用以验证与用户设备共享的密钥时,可以确保用户在其启动过程期间与计算设备交互而不是与某些其他恶意应用交互。结合协议300使用方法200还保护用户免受先前描述的中间人攻击情形。
在此描述的方法和系统提供了一种用于以可信赖的方式来验证在计算设备上的进一步加密协议中使用临时加密密钥的方法。所描述的方法可以用在证书颁发机构不可用于验证密钥的情况下,例如在计算设备的可信启动阶段。有利地,这里描述的方法和系统允许用户从设备通电的那一刻起信任在他们的设备上即时生成的密钥。以在此描述的方式使用基于硬件的设备标识符允许企业用户对其设备的身份有信心并安全地建立用于安全通信的共享秘密。企业用户还可以更多地控制他们的设备,这意味着他们将不得不减少对用户的信任。
本公开中的示例可以作为方法、系统或机器可读指令提供。这样的机器可读指令可以被包括在其中或其上具有计算机可读程序代码的计算机可读存储介质(包括但不限于盘存储器、CD-ROM、光存储器等)上。
参照根据本公开示例的方法、设备和系统的流程图和/或框图来描述本公开。尽管上述流程图显示了特定的执行顺序,但执行顺序可能与所描绘的不同。
关于一个流程图描述的块可以与另一流程图的块组合。在一些示例中,流程图的一些块可能不是必需的和/或可以添加的额外的块。应当理解,流程图和/或框图中的每个流程和/或块,以及流程图和/或框图中的流程和/或框图的组合,都可以通过机器可读指令来实现。
机器可读指令例如可以由通用计算机、专用计算机、嵌入式处理器或其他可编程数据处理设备的处理器执行以实现说明书和图中描述的功能。特别地,处理器或处理装置可以执行机器可读指令。因此,装置的模块可以由执行存储在存储器中的机器可读指令的处理器或根据嵌入在逻辑电路中的指令操作的处理器来实施。
术语“处理器”应广义地解释为包括CPU、处理单元、ASIC、逻辑单元或可编程门组等。方法和模块都可以由单个处理器执行或在多个处理器之间进行划分。
这种机器可读指令也可以存储在计算机可读存储器中,该计算机可读存储器可以指导计算机或其他可编程数据处理设备以特定模式操作。
例如,指令可以在用指令编码的非暂态计算机可读存储介质上提供,可由处理器执行。
图4示出了与存储器420相关联的处理器410的示例。存储器420包括可由处理器410执行的计算机可读指令430。指令430包括从计算设备上的安全存储装置检索基于硬件的数字签名密钥的指令;在计算设备的启动过程期间,根据基于硬件的数字签名密钥对根据加密密钥生成算法生成的加密密钥进行认证。
这种机器可读的指令也可以加载到计算机或其他可编程数据处理设备上,使计算机或其他可编程数据处理设备执行一系列操作以产生计算机实施的处理,从而在计算机或其他可编程数据处理设备上执行指令,提供用于实现由流程图中的流程和/或框图中的块指定的功能的操作。
此外,这里的教导可以以计算机软件产品的形式实施,该计算机软件产品存储在存储介质中并且包括用于使计算机设备实施在本公开的示例中陈述的方法的多个指令。
词语“包括”不排除权利要求中列出的元件以外的元件的存在,“一(a/an)”不排除多个,并且单个处理器或其他单元可以实现权利要求中列举的多个单元的功能。
任何从属权利要求的特征可以与任何独立权利要求或其他从属权利要求的特征组合。
Claims (15)
1.一种用于生成加密密钥的方法,包括在计算设备的启动过程期间:
访问存储在所述计算设备上的安全位置处的标识符;
根据密钥生成过程生成加密密钥;以及
基于所述标识符,验证所述加密密钥是在所述计算设备的所述启动过程期间真实生成的。
2.根据权利要求1所述的方法,其中验证所述加密密钥包括:
基于所述标识符在所述加密密钥上生成加密签名。
3.根据权利要求1所述的方法,包括:
验证加密密钥是由所述计算设备真实生成的。
4.根据权利要求3所述的方法,其中验证所述密钥对包括:
基于所述标识符验证所述加密密钥上的加密签名。
5.根据权利要求1所述的方法,包括确定所述标识符是否链接到所述计算设备。
6.根据权利要求5所述的方法,其中确定所述标识符是否链接到所述计算设备包括:
生成所述计算设备的序列号的加密签名;
将所述计算设备的所述序列号通信给所述设备制造商;
基于所述序列号接收经过验证的公钥;以及
使用所述经过验证的公钥验证所述加密签名。
7.根据权利要求5所述的方法,其中确定所述标识符链接到所述计算设备包括:
从所述设备制造商接收公钥;
访问预先安装在所述计算设备上的所述公钥和序列号的加密签名;以及
使用所述公钥验证所述加密签名。
8.根据权利要求6所述的方法,包括经由带外通信通道从所述设备制造商接收所述公钥。
9.根据权利要求1所述的方法,包括:
至少基于所述加密密钥,在所述计算设备和另一设备之间的质询和响应协议中生成质询;
将所述质询通信给所述另一设备;以及
基于在所述计算设备处接收到的响应来认证所述另一设备的用户。
10.根据权利要求9所述的方法,其中,所述质询通过所述计算设备显示的快速响应(QR)码来通信。
11.根据权利要求8所述的方法,其中,响应于用户成功地向所述计算设备认证,用户被认证以在所述计算设备上执行基本输入/输出(BIOS)管理操作。
12.一种装置,包括:
可信平台模块;
加密密钥生成模块,所述加密密钥生成模块通信地耦接到所述可信平台模块,以生成加密密钥;以及
处理器,所述处理器与所述可信平台模块通信地耦接,所述处理器用于与所述可信平台模块协作以执行可信启动过程,
其中,所述处理器基于安全存储在可信平台模块上的标识符,认证在所述可信启动过程期间由所述加密密钥生成模块生成的加密密钥。
13.根据权利要求12所述的装置,其中,所述可信平台模块被布置为验证在所述可信启动过程期间由所述处理器执行的操作的完整性。
14.根据权利要求12所述的装置,包括通信地耦接到所述处理器的基本输入/输出系统(BIOS)管理模块。
15.一种用处理器可执行的指令编码的非暂态机器可读存储介质,用于:
从计算设备上的安全存储装置中检索基于硬件的数字签名密钥;以及
根据所述基于硬件的数字签名密钥对在所述计算设备的启动过程期间根据加密密钥生成算法生成的加密密钥进行认证。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2019/035213 WO2020246956A1 (en) | 2019-06-03 | 2019-06-03 | Key authentication |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113841147A true CN113841147A (zh) | 2021-12-24 |
Family
ID=73652053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980096543.9A Pending CN113841147A (zh) | 2019-06-03 | 2019-06-03 | 密钥认证 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220083666A1 (zh) |
EP (1) | EP3931733A4 (zh) |
CN (1) | CN113841147A (zh) |
WO (1) | WO2020246956A1 (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130129087A1 (en) * | 2011-11-21 | 2013-05-23 | Zheng Qi | Secure Key Generation |
US20130191622A1 (en) * | 2012-01-20 | 2013-07-25 | Lenovo (Singapore) Pte, Ltd. | Method for booting computer and computer |
CN103518348A (zh) * | 2012-02-28 | 2014-01-15 | 谷歌公司 | 便携式安全元件 |
US20160134424A1 (en) * | 2013-06-12 | 2016-05-12 | Cryptomathic Ltd | System and method for encryption |
CN105915486A (zh) * | 2015-02-19 | 2016-08-31 | 瞻博网络公司 | 使用公共密钥基础设施用于自动设备配置 |
WO2017155967A1 (en) * | 2016-03-08 | 2017-09-14 | Diamond Nanotechnologies, Inc. | Generating a unique code from orientation information |
GB2549546A (en) * | 2016-04-20 | 2017-10-25 | Sophos Ltd | Boot security |
AU2016271094A1 (en) * | 2015-06-05 | 2017-11-09 | Qualcomm Incorporated | Distributed configurator entity |
US20180039795A1 (en) * | 2016-08-08 | 2018-02-08 | Data I/O Corporation | Embedding foundational root of trust using security algorithms |
CN110392888A (zh) * | 2017-01-16 | 2019-10-29 | E·马伊姆 | 用于在安全环境中执行智能合约的方法和系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8095799B2 (en) * | 2008-07-28 | 2012-01-10 | Apple Inc. | Ticket authorized secure installation and boot |
US9853974B2 (en) * | 2014-01-27 | 2017-12-26 | Cryptography Research, Inc. | Implementing access control by system-on-chip |
GB2531848B (en) * | 2014-10-31 | 2017-12-13 | Hewlett Packard Entpr Dev Lp | Management of cryptographic keys |
US10129223B1 (en) * | 2016-11-23 | 2018-11-13 | Amazon Technologies, Inc. | Lightweight encrypted communication protocol |
US10742421B1 (en) * | 2019-03-08 | 2020-08-11 | Ares Technologies, Inc. | Methods and systems for anonymous hardware attestation |
-
2019
- 2019-06-03 US US17/414,836 patent/US20220083666A1/en not_active Abandoned
- 2019-06-03 EP EP19931713.2A patent/EP3931733A4/en not_active Withdrawn
- 2019-06-03 WO PCT/US2019/035213 patent/WO2020246956A1/en unknown
- 2019-06-03 CN CN201980096543.9A patent/CN113841147A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130129087A1 (en) * | 2011-11-21 | 2013-05-23 | Zheng Qi | Secure Key Generation |
US20130191622A1 (en) * | 2012-01-20 | 2013-07-25 | Lenovo (Singapore) Pte, Ltd. | Method for booting computer and computer |
CN103518348A (zh) * | 2012-02-28 | 2014-01-15 | 谷歌公司 | 便携式安全元件 |
US20160134424A1 (en) * | 2013-06-12 | 2016-05-12 | Cryptomathic Ltd | System and method for encryption |
CN105915486A (zh) * | 2015-02-19 | 2016-08-31 | 瞻博网络公司 | 使用公共密钥基础设施用于自动设备配置 |
AU2016271094A1 (en) * | 2015-06-05 | 2017-11-09 | Qualcomm Incorporated | Distributed configurator entity |
CN107667554A (zh) * | 2015-06-05 | 2018-02-06 | 高通股份有限公司 | 分散式配置器实体 |
CN109475327A (zh) * | 2016-03-08 | 2019-03-15 | 达斯特致有限责任公司 | 根据取向信息生成唯一码 |
WO2017155967A1 (en) * | 2016-03-08 | 2017-09-14 | Diamond Nanotechnologies, Inc. | Generating a unique code from orientation information |
GB2549546A (en) * | 2016-04-20 | 2017-10-25 | Sophos Ltd | Boot security |
US20180039795A1 (en) * | 2016-08-08 | 2018-02-08 | Data I/O Corporation | Embedding foundational root of trust using security algorithms |
CN110392888A (zh) * | 2017-01-16 | 2019-10-29 | E·马伊姆 | 用于在安全环境中执行智能合约的方法和系统 |
US20200387893A1 (en) * | 2017-01-16 | 2020-12-10 | Enrico Maim | Methods and systems for executing smart contracts in secure environments |
Also Published As
Publication number | Publication date |
---|---|
EP3931733A1 (en) | 2022-01-05 |
US20220083666A1 (en) | 2022-03-17 |
WO2020246956A1 (en) | 2020-12-10 |
EP3931733A4 (en) | 2022-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11757662B2 (en) | Confidential authentication and provisioning | |
US11533297B2 (en) | Secure communication channel with token renewal mechanism | |
US9779224B2 (en) | Methods and systems for client-enhanced challenge-response authentication | |
US10142107B2 (en) | Token binding using trust module protected keys | |
JP7024563B2 (ja) | 秘密かつ相互認証される鍵交換 | |
CN109510708B (zh) | 一种基于Intel SGX机制的公钥密码计算方法和系统 | |
US9467430B2 (en) | Device, method, and system for secure trust anchor provisioning and protection using tamper-resistant hardware | |
JP2023099091A (ja) | セキュア・ダイナミック閾値署名スキームのための方法、記憶媒体及び電子デバイス | |
US20190052622A1 (en) | Device and method certificate generation | |
KR102469979B1 (ko) | 제1 애플리케이션과 제2 애플리케이션 사이의 상호 대칭 인증을 위한 방법 | |
WO2015094326A1 (en) | Secure import and export of keying material | |
AU2021271512A1 (en) | Constructing a distributed ledger transaction on a cold hardware wallet | |
US11438316B2 (en) | Sharing encrypted items with participants verification | |
US9215069B2 (en) | Methods and apparatus for device authentication with one-time credentials | |
US9800410B1 (en) | Data encryption system and method | |
JP4937921B2 (ja) | 汎用鍵導出関数サポートのための安全インタフェース | |
US20220083666A1 (en) | Key authentication | |
Lu et al. | Communication security between a computer and a hardware token | |
Surya et al. | Single sign on mechanism using attribute based encryption in distributed computer networks | |
Fiske | Visual Image Authentication | |
JP2020205577A (ja) | 一群の特定目的用ローカルデバイスに基づくデジタル署名システム | |
WO2023183383A1 (en) | Systems and methods for demonstrating identity to a trusted platform module | |
Hsieh et al. | An Improved Mutual Authentication Mechanism for Securing Smart Phones | |
Daswani et al. | Key Management and Exchange |
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 |