CN116670672A - 排他性自托管方法及装置 - Google Patents
排他性自托管方法及装置 Download PDFInfo
- Publication number
- CN116670672A CN116670672A CN202180079937.0A CN202180079937A CN116670672A CN 116670672 A CN116670672 A CN 116670672A CN 202180079937 A CN202180079937 A CN 202180079937A CN 116670672 A CN116670672 A CN 116670672A
- Authority
- CN
- China
- Prior art keywords
- credential
- block
- tpp
- domain
- key
- 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 title claims abstract description 176
- 230000015654 memory Effects 0.000 claims description 65
- AYEKOFBPNLCAJY-UHFFFAOYSA-O thiamine pyrophosphate Chemical compound CC1=C(CCOP(O)(=O)OP(O)(O)=O)SC=[N+]1CC1=CN=C(C)N=C1N AYEKOFBPNLCAJY-UHFFFAOYSA-O 0.000 description 255
- 238000012360 testing method Methods 0.000 description 36
- 230000006870 function Effects 0.000 description 22
- 238000013475 authorization Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 230000002159 abnormal effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 5
- 101100261159 Oryza sativa subsp. japonica TPP10 gene Proteins 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 239000004615 ingredient Substances 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000007620 mathematical function Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000209761 Avena Species 0.000 description 1
- 235000007319 Avena orientalis Nutrition 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 238000002513 implantation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
提供一种用于由希望获得第三方对程序域的特别访问的第三方安全地解锁锁定的程序域的方法和装置。第三方和程序域使用在程序域内生成、披露或存储的凭证的排他性自托管进行相互认证。解锁程序域所需的多个第三方也可以在解锁程序域之前被认证。该方法和装置在不使用后门或使程序域向第三方提供凭证的情况下提供特别访问。
Description
技术领域
本发明总体上涉及保护程序域,更具体地,涉及一种用于通过排他性自托管安全地解锁程序域的方法和装置。
背景技术
电子设备和计算机程序可以通过要求用户提供的凭证来获得访问以限制访问。因此,例如,智能手机可以被锁定并要求用户提供的诸如密码、指纹或面部图像等凭证来解锁电话,以及计算机程序或文件也可以要求用户提供的凭证来获得访问。
偶尔,除了用户之外的其他人要求对电子设备、程序或文件进行异常访问(即没有用户提供的凭证),这些电子设备、程序或文件在此被称为程序域,但不限于此。因此,例如,美国政府当局通过使用搜查令要求访问智能手机的情况很多。如果用户拒绝提供凭证,则必须使用其他方式来提供对智能手机的异常访问。
一种获得对加密数据的特别访问且也可以用于解锁智能手机或其他程序域的现有技术方法是通过使用秘密的后门机制,其中程序域在所有者不知情或不参与的情况下接受由第三方建立的解锁请求。从本质上讲,后门是有问题的,因为未经授权降低了所有者的安全性。它们在程序域内未经授权的植入保证了后门的用户(包括该后门所需的任何密码)及其使用不经所有者授权。此外,由于后门密码或其他操作数据存储在外部数据库中,这种后门容易受到黑客攻击、盗窃和滥用。
另一种提供对程序域的特别访问的现有技术方法是通过“密钥托管”,其中解锁程序域所需的密钥(凭证)由第三方托管,有时称为可信赖第三方。它们被指定为可信赖的,因为域所有者不持有管理第三方的行动的可强制执行的协议以及所持有的凭证。这些第三方可以包括可能希望访问员工的安全业务相关的通信的企业,或者希望能够在不遵守隐私权和正当程序的情况下查看加密通信的内容(也称为异常访问)的政府。
使用密钥托管的一个技术问题是,必须仅向预定接收者和至少一个预定第三方提供对受保护信息的访问。只有在严格受到控制的状况下,例如法院命令,才应允许第三方访问。到目前为止,还没有任何现有技术的系统被证明能满足这一要求。所有拟议的系统还要求某些社会-司法-联系的正确运作,例如,访问请求的过程、对请求者和“合法性”请求的审查(如由法院)以及由负责访问控制的第三方技术和政府当局人员授予访问。从系统设计安全的角度来看,所有这样的链接/控制都有严重的问题。其中单个密钥解锁许多程序域的系统变得特别脆弱,因为密钥的意外泄露将导致许多设备完全受损,从而需要立即更换密钥或更换系统。
在国家层面上,密钥托管在许多国家是有争议的,这至少有两个原因。一个是涉及对结构性托管安排的安全性的不信任。许多国家长期以来对隐私的保护不够充分,各种公共和私人组织对他人信息享有正当程序权利,即使只在保护其免受未经授权的访问的肯定法律义务下这些信息才被持有。另一个是对支持密钥托管操作可能引入的额外漏洞的技术担忧。到目前为止,还没有设计出同时满足这两种反对意见的密钥托管系统,几乎所有的系统都没有满足哪怕一个目标。
密钥托管是主动的,预见到对密钥访问的需求;一种追溯性的替代方法是密钥披露法,即要求用户根据执法部门的要求必须交出密钥/密码,否则将面临法律处罚。密钥披露法避免了密钥托管系统的一些技术问题和风险,但也引入了新的风险,例如密钥丢失和法律问题(例如非自愿自证其罪)。
综上所述,虽然密钥托管系统可以尝试提供足够的安全性,但这种系统存在几个缺陷。首先,密钥托管系统需要使用包含用于数十亿个程序域的数十亿个密码的中央数据库,这可能会被黑客破坏或者被政府当局没收。其次,密钥托管系统要求可信赖的第三方坚守他们的誓言,成为值得信赖的管理者和中介。第三,密钥托管系统不能保证政府当局诚实地管理法律和他们自己的章程,以与可信赖的第三方的可信度独立并分开。
尽管使用现有技术的方法和装置最初呈现为易于使用且相当安全,但是这些益处在实践中已经被证明是难以达到的,并且在本领域中需要提供能提供改进的安全性的方法和系统。具体地,这种系统和方法应该提供,对程序域的特别访问仅由具有授权指示的已授权方进行。这种方法和装置应该易于实现并且稳固,以防止参与者试图非法获得对锁定的程序域的访问。
发明内容
本发明通过一种安全的系统或方法克服了现有技术的缺点,该系统或方法制定了试图解锁程序域的任何第三方都被授权这样做,并且为所有者/财产保留任何解锁的尝试而无论成功与否。
某些实施例提供了一种用于具有第三方(Third Party,TP)域的TP解锁锁定的设备所有者的程序域(Device Owner’S Program Domain,DO-PD)的方法。该方法包括:TP域对DO-PD进行第一认证;DO-PD对TP域进行第二认证;以及在成功的第一认证和成功的第二认证后,解锁锁定的DO-PD。各种实施例提供:第一认证或第二认证包括在DO-PD和TP域之间交换消息,其中,消息是凭证或包括凭证;TP域包括包含在DO-PD内的第一子域(TP-PD)和不在DO-PD内的子域(TP-‘PD);DO-PD是水平程序域;DO-PD在电子设备内,该电子设备可以是智能手机或计算机或平板电脑;DO-PD是垂直程序域;DO-PD包含数据库、文字处理器、电子表格、比特币钱包或移动保险箱;该TP是具有第一TP域的第一TP,其中,该方法还包括具有第二TP域的第二TP;或者,TP域对DO-PD的第一认证和DO-PD对TP域的第二认证是使用排他性自托管的相互认证。
某些其他实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的方法。该方法包括:TP域对DO-PD进行第一认证;DO-PD对TP域进行第二认证;以及在成功的第一认证和成功的第二认证后,解锁锁定的DO-PD。当第一凭证等于第二凭证时,TP域对DO-PD的第一认证成功,当第三凭证等于第四凭证时,第二认证成功,以及在DO-PD中生成、披露或存储四个凭证中的至少一个。各种实施例提供:第一凭证和第三凭证是驻留凭证,第二凭证和第四凭证是质询凭证;第一凭证和第二凭证都在第一认证期间被披露或计算,以及第三凭证和第四凭证都在第二认证期间被披露或计算。
还有其他实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的方法,该方法使用凭证进行认证。该凭证包括密码、随机数、电子设备凭证的设备ID、PD和TP域的共享秘密密钥、加密的密码、加密的随机数、电子设备凭证的加密的设备ID、PD和TP域的加密的共享秘密密钥、密码、随机数、电子设备凭证的设备ID、PD和TP域的共享秘密密钥、哈希密码、哈希随机数、电子设备凭证的哈希设备ID或PD和TP域的哈希共享秘密密钥中的至少一个。
其他某些实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的方法,该方法使用凭证进行认证,其中使用至少一个TP密钥对的密钥、PD密钥对的密钥或共享秘密密钥来披露或生成至少一个凭证。
某些实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的方法,其中,需要额外的第三方的认证来解锁DO-PD。
某些实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的装置,其中DO-PD具有存储器并被编程以执行以下步骤:TP域对DO-PD进行第一认证;DO-PD对TP域进行第二认证;以及在成功的第一认证和成功的第二认证后,解锁锁定的DO-PD。各种实施例提供:第一认证或第二认证包括在DO-PD和TP域之间交换消息,其中,消息是凭证或包括凭证;TP域包括包含在DO-PD内的第一子域(TP-PD)和不在DO-PD内的子域(TP-‘PD);DO-PD是水平程序域;DO-PD在电子设备内,该电子设备可以是智能手机或计算机或平板电脑;DO-PD是垂直程序域;DO-PD包含数据库、文字处理器、电子表格、比特币钱包或移动保险箱;该TP是具有第一TP域的第一TP,其中,该方法还包括具有第二TP域的第二TP;或者,TP域对DO-PD的第一认证和DO-PD对TP域的第二认证是使用排他性自托管的相互认证。
某些实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的装置,其中DO-PD具有存储器并被编程为执行以下步骤:TP域对DO-PD进行第一认证;DO-PD对TP域进行第二认证;以及在成功的第一认证和成功的第二认证后,解锁锁定的DO-PD。当第一凭证等于第二凭证时,TP域对DO-PD的第一认证成功,当第三凭证等于第四凭证时,第二认证成功,以及在DO-PD中生成、披露或存储四个凭证中的至少一个。各种实施例提供:第一凭证和第三凭证是驻留凭证,第二凭证和第四凭证是质询凭证;第一凭证和第二凭证都在第一认证期间被披露或计算,以及第三凭证和第四凭证都在第二认证期间被披露或计算。
还有其他实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的装置,该装置使用凭证进行认证。该凭证包括密码、随机数、电子设备凭证的设备ID、PD和TP域的共享秘密密钥、加密的密码、加密的随机数、电子设备凭证的加密的设备ID、PD和TP域的加密的共享秘密密钥、密码、随机数、电子设备凭证的设备ID、PD和TP域的共享秘密密钥、哈希密码、哈希随机数、电子设备凭证的哈希设备ID或PD和TP域的哈希共享秘密密钥中的至少一个。
其他某些实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的装置,该装置使用凭证进行认证,其中使用至少一个TP密钥对的密钥、PD密钥对的密钥或共享秘密密钥来披露或生成至少一个凭证。
某些实施例提供了一种用于具有第三方(TP)域的TP解锁锁定的设备所有者的程序域(DO-PD)的装置,其中DO-PD具有存储器并被编程以执行步骤:额外的第三方的认证用于解锁DO-PD。
这些特征连同本领域技术人员通过以下详细描述而变得显而易见的各种辅助规定和特征是通过本发明的方法和装置获得,其优选实施例仅以示例的方式参考附图示出,如下。
附图说明
图1是排他性自托管方法的一种实施方式的示意图,其示出了设备所有者的程序域DO-PD和第三方提供商域TPP;
图2和图3是示出用于执行图1的示意图的步骤的系统的一个实施例的示意图;
图4是第一实施例排他性自托管方法的流程图;
图5是第二实施例排他性自托管方法的流程图;
图6是第三实施例排他性自托管方法的流程图;
图7是第四实施例排他性自托管方法的流程图;
图8是第五实施例排他性自托管方法的流程图;
图9是第六实施例排他性自托管方法的流程图;
图10是第七实施例排他性自托管方法的流程图;
图11是第八实施例排他性自托管方法的流程图;
图12是第九实施例排他性自托管方法的流程图;
图13是第十实施例排他性自托管方法的流程图;
图14是第十一实施例排他性自托管方法的流程图;
图15是第十二实施例排他性自托管方法的流程图;
图16是第十三实施例排他性自托管方法的流程图;
图17是第十四实施例排他性自托管方法的流程图;以及
图18是示出十四个实施例的一些特征的表格。
在附图中使用参考符号来指示其中所示的某些组件、方面或特征,多于一个附图共有的参考符号指示其中所示的类似组件、方面或特征。
具体实施方式
在此描述的各种实施例是针对通过使用排他性自托管的相互认证来获得对锁定的程序域的特别访问的第三方。相互认证是指多步认证,其中各方对另一方认证一方。排他性自托管是指使用锁定的程序域内持有的凭证。因此,例如,使用存储在锁定的程序域中的凭证,第三方向锁定的程序域进行自认证且锁定的程序域认证第三方。在相互认证之后,第三方被授权访问先前锁定的程序域。
与使用中央、设备外存储相反,使用排他性自托管的相互认证提供了设备上的托管能力,这确保凭证既不会通过中央数据库黑客攻击被窃取,也不会被与政府当局单独或与任何其他外部方合作的第三方故意误导或者通过胁迫而误导。所描述的方法和系统在每个设备的基础上提供对锁定的程序域的异常访问,并且不提供用于任何形式的大规模监视的机制。作为防止大规模监视的进一步保护,某些实施例提供在安装正常密码时,不向第三方提供关于托管凭证的创建、存在或识别信息的通知且第三方始终不知情,直到第三方被拥有锁定设备的政府机构或其他有地位的调查机构雇用,可能只有这样,才会揭示TPP对该设备执行异常访问的能力。
通常,每个认证都需要比较器步骤,在该步骤中,会比较一对凭证,其中当发现凭证彼此相等时,会进行认证。凭证在此被称为,但不限于,驻留凭证(resident credential)和质询凭证(challenge credential)。术语“驻留凭证”指的是认证方持有的凭证的标准副本,术语“质询凭证”指的是被认证方出示之后,由认证者披露或计算的凭证的工作测量副本。因此,对于每个认证方,比较器步骤确定质询凭证是否与认证方信赖的驻留凭证相同。在某些实施例中,这一对凭证被初始化或计算为初始相同,并经历加密/解密步骤,之后,只有在初始化、计算或加密/解密步骤期间使用了正确的密钥,这一对凭证才会相同。
排他性自托管方法可以利用不同消息(访问数据)和内容、加密方法(非对称和对称)以及单向函数凭证类型的组合,来完成程序域和第三方的认证。公钥加密提供了一种保护对单向函数凭证进行认证的方法,而对称加密提供了用于产生和保护对双向认证的单向函数凭证的方法。每种类型的凭证都表现出独特的功能特征,支持其在认证中的作用,并侧重单向函数性和状态表达。某些设备上的HSA(硬件安全区)可以代替加密消息。
在某些实施例中,排他性自托管可以利用一个或多个加密密钥对或共享秘密密钥,并使用凭证来相互认证各方,所使用的凭证包括但不限于加密消息、哈希密钥和/或随机数、设备ID和时间戳。在此描述的排他性自托管方法可以与水平程序域和垂直程序域一起使用。水平域指定覆盖不同应用程序的内容类别,通常涉及于整个设备、位置或操作系统。水平程序域的一个示例是运行iOS的智能手机。垂直域指定特定于垂直应用程序的内容,例如数据库、文字处理器、电子表格、比特币钱包或移动保险箱。对于在Android OS设备上运行的通讯录应用程序的情况下,垂直域通常是水平域的子域。值得注意的是,除了在包含子域的域上执行的操作之外,还可以在子域上执行安全操作。至关重要的是,子域可能会在其父域从锁定转换为解锁时保持锁定。
作为示例,这并不意味着限制本发明的范围,在此根据第三方提供商(ThirdParty Provider,TPP)获得对具有相关联的域所有者(Domain Owner,DO)的锁定程序域(Program Domain,PD)的访问来描述本发明,该程序域在此被称为DO-PD。DO-PD受程序P的控制,并且还可以包括相关联的硬件,例如但不限于智能手机、平板电脑或其他计算机设备、或者计算机存储器或计算机文件的一部分。TPP是除DO之外的一方,其可以是例如但不限于PD和/或任何相关联的硬件的制造商。TPP有两个相关联的域。一个TPP域与DO-PD分离并在此称为TPP-‘PD(TPP而非PD),另一个TPP域是在DO-PD程序P控制下的DO-PD的加密分区部分,在此称为TPP-PD。TPP-PD内的操作是有限的,包括从DO-PD接收数据、使用可用数据计算附加数据以及向DO-PD发送数据。
某些实施例提供了使用排他性自托管来解锁PD,其中用于解锁PD的凭证是:1)在PD中存储和/或计算;2)在PD内用于认证TPP;以及3)由TPP用于认证PD。在某些其他实施例中,认证步骤包括双向认证过程,其中在第三方提供商和程序域之间交换和比较消息。
图1是排他性自托管方法的一种实施方式的示意图100,其示出了域所有者程序域DO-PD 120、第一第三方提供商域TPP-‘PD 110和第二第三方提供商域TPP-PD 112。DO-PD120通过程序P受DO 20的控制,TPP-‘PD 110受TPP 10的控制,并且在DO-PD中的任何编程之外且对其是安全的,TPP-PD 112是作为DO-PD的加密分区部分的域,并且具有有限的能力,包括从DO-PD接收数据、使用可用数据计算附加数据以及向DO-PD发送数据。因此,例如,图1示出了包括可从DO-PD访问的易失性和非易失性存储器的DO-PD存储器121,以及包括可从TPP-PD 112访问的易失性和非易失性存储器的TPP-PD存储器135。通常,DO-PD 120不能访问存储在TPP-PD存储器135内的信息。因此,例如,TPP 110可以向TPP-PD存储器135提供TPP私钥115的副本。当TPP-PD存储器135在DO-PD 120内时,DO-PD不能访问TPP私钥。
图1示出了通过仅持有存储在DO-PD存储器121中的唯一凭证来使用双向认证。可选地,通过持有和计算凭证来执行认证,其中,从设备程序域最初被锁定的时起,解锁程序域通过比较由各方持有的完全拥有的私钥的持有和计算应用程序所产生的凭证来证明PD和TPP两者的真实身份。在某些实施例中,凭证的计算包括单向数学函数的使用,其排除了在多项式时间内将凭证逆向工程为其先前的值。该计算方法的一个显著优点是哈希值可以在各方之间公开的存储和交换,而不需要隐私保护工作和加密保护。
示意图100示出了用于DO 20设置DO-PD 120的锁定和用于TPP 10解锁锁定的DO-PD的方法。在一个初始步骤中,TPP-‘PD 110获得或生成密钥对,例如TPP公钥111和TPP私钥115。在一个实施例中,密钥111和115可以是例如但不限于本领域已知的公钥对。在替代实施例中,TPP密钥对111/115可以伴随着在对称加密中使用的附加密钥。
为锁定DO-PD 120,在框122中,DO 20与DO-PD 120接合,这建立用于自托管锁定的DO-PD。这可包括生成PD密钥对,其可包括,例如但不限于,包括PD私钥和PD公钥的公钥对以及附加对称密钥对,其用于生成存储在非易失性存储器DO-PD存储器121中的一个或多个共享秘密密钥(在此称为SSK)。或者,在执行框122的步骤之前,DO-PD可以生成并存储PD密钥,或者可以在程序域所有者正在建立用于锁定DO-PD 120的正常密码时执行框122。此外,TPP公钥111被提供给DO-PD 120,并且也被存储在DO-PD存储器121中。在某些其它实施例中,密钥的生成可以在DO-PD 120的解锁期间以及在它们被要求用于认证之前发生。
一旦DO-PD 120被锁定,DO-PD在程序P的控制下运行,如下所述,其控制DO-PD的第三方解锁。此外,DO-PD 120还可以执行编程来正常解锁DO-PD,例如通过密码。
在框123的步骤中,从存储在DO-PD存储器121中的TPP公钥111和PD密钥对生成(也称为“计算”)排他性自托管凭证。如下述详细描述,在框123中生成的排他性自托管凭证可以包括但不限于一个或多个密码、密钥(包括但不限于公共和对称密钥对以及计算的共享秘密密钥)和分配的随机数,包括哈希密钥、哈希随机数、设备ID和时间戳,它们是在解锁过程的关键时刻检查的计算值。在某些实施例中,如下所述,排他性自托管凭证包括驻留凭证和质询凭证两者。在某些其它实施例中,凭证的生成可以在DO-PD 120的解锁期间以及在它们被要求用于认证之前发生。
图1示出了在设置DO-PD 120的锁定期间生成的排他性自托管凭证。然而,一般而言,在凭证被用于解锁之前生成凭证是唯一重要的,因此在各种实施例中,可以在框122的设置之前生成一些或所有凭证,可以如图1所示生成一些或所有凭证,并且可以在DO-PD120被置于框125的托管模式之后生成一些或所有凭证。
最后,如框124中的步骤所提供的,然后锁定DO-PD 120。
为了解锁锁定的DO-PD 120,TPP 10例如通过法院命令获得访问DO-PD 120的许可,该法院命令向TPP提供解锁DO-PD的权限。在获得并验证该访问之后,TPP 10向框113发送电子请求以解锁DO-PD,该电子请求被发送到DO-PD 120中的框125,其将DO-PD置于托管模式(“Emode”)。
将DO-PD 120置于Emode的框113的电子请求可以通过多种方法中的任意一种来产生。因此,例如,框113的电子请求可以是预定的字母数字代码或代替标准密码而输入的字母数字代码的格式,或者对于智能手机的示例,可以是按下电话上的特定按钮组合,类似于电话的重启。
托管模式是当DO-PD 120被锁定时可用的有限交互状态,由此只有指定的第三方TPP可以解锁DO-PD。在解锁DO-PD 120之前,TPP 10必须证明在采取任何动作解锁DO-PD之前已经满足某些条件。当在框125中将DO-PD 120置于托管模式时,DO-PD 120的一部分被留出作为TPP-PD 112。TPP-PD 112通过DO-PD 120的P提供“工作空间受限”操作,其操作限于从DO-PD 120或TPP-‘PD 110接收某些数据,使用可用数据计算某些附加数据,并将某些数据发送到DO-PD或TPP-‘PD。
在某些实施例中,框125执行步骤以确保TPP 10是被授权解锁DO-PD 120的TPP,例如通过确定请求113是格式上的预定凭证还是存储在DO-PD 120中的预定凭证。
如下所述,由域TPP-‘PD 110和域DO-PD 120通过排他的自托管凭证的相互识别来解锁锁定的DO-PD 120。因为在解锁TPP-‘PD 110的过程中受TPP 10的控制,而DO-PD 120先前受DO 20的控制,所以使用排他性自托管凭证来解锁DO-PD 120大概也认证了TPP和DO两者。
一旦DO-PD 120被置于Emode中,则执行框126的认证步骤,具体地,执行框131和133的步骤。如下所述,解锁DO-PD 120要求发生在框131中的经由TPP-‘PD 110对DO-PD进行认证,以及发生在框133中的由DO-PD对TPP-‘PD 110进行认证。框131和133的执行顺序取决于实施例,只要两个框都被执行。
框131和133的步骤具有对TPP-PD存储器135的内容的访问,其还包括DO-PD存储器121和TPP-PD存储器135之间的信息传递。所传递的信息可以包括但不限于某些凭证和某些PD公钥。通常,TPP-PD 112和DO-PD 120之间的通信是安全的,不会受到来自DO-PD的不希望的请求的影响。这允许TPP 110在TPP-‘PD 110或TPP-PD 112中安全地使用TPP私钥115,而不用担心失去对私钥的所需控制。
在框131中,TPP-‘PD 110使用在DO-PD中生成和/或存储的凭证来认证TPP-‘PD110和/或TPP-PD 112中的一个或多个内的DO-PD 120。在某些实施例中,框131的认证通过双向认证过程来完成,其中在DO-PD 120和TPP-‘PD 110和/或TPP-PD 112之间存在消息的交换和比较,其要求例如但不限于使用私有或共享PD或TPP密钥。如下所述,消息是充当在解锁程序域中使用的凭证信息的安全容器的文件。
在框133中,DO-PD 120使用在DO-PD中生成和/或存储的凭证来认证DO-PD内的TPP-‘PD 110。在某些实施例中,框133的认证通过双向认证过程来完成,其中在DO-PD 120和TPP-‘PD 110和/或TPP-PD 112之间交换和比较消息,其要求例如但不限于使用私有或共享DP或TPP密钥。
如在此所讨论的框131和133的认证可以包括但不限于以下步骤中的一个或多个:比较两个凭证,其中凭证可以是驻留凭证(认证者信赖的标准凭证)和质询凭证(由被认证方提供给认证者的工作测量凭证);在DO-PD 120和TTP-‘PD 110或TTP-PD 112或其他第三方域或子域之间交换消息,其中该消息是凭证,包含用于生成(即计算)凭证的信息,该凭证包括但不限于随机数、哈希密码或其他识别码或加密密钥,通过解密揭露凭证,或从诸如文件的安全对象检索用于生成或揭露凭证的凭证或信息,或从安全位置检索凭证或信息。一般而言,例如参考图1所讨论的,除了凭证的比较之外的一个或多个步骤可以在比较步骤之前执行,或者在锁定DO-PD 120之后执行。
在框127中,如果框131或133中的认证失败,则解锁过程终止。如果框131和133中的认证都实现,则在框128中解锁DO-PD 120。
在替代实施例中,需要一个以上第三方的合作来解锁DO-PD 120。因此,作为示例,TPP 10可以是PD的制造商(例如智能手机的制造商),而另外的第三方可以具有与PD的一些其他关系,例如不同的智能手机制造商或者可以是诸如隐私保护组织的一些其他实体。如示意图100所示,TPP 10率先解锁DO-PD120。如在框131中,在TPP被DO-PD 120认证之后,DO-PD以类似于框131的方式为每个其他第三方执行认证。因此,例如,对于其他第三方中的每一个,可以在DO-PD 120之间交换消息,使得DO-PD能够认证其他第三方中的每一个。如在框127中,需要TPP 10和每个其他第三方的认证来完成认证。
虽然示意图100被描述为与智能手机一起使用,但是该方法可以在具有或不具有专用硬件安全区(Hardware Secure Area,HSA)或基于云的安全存储的其他硬件设备上执行,例如平板电脑或计算机。该方法还可以在锁定的子程序域上实施,该锁定的子程序域是另一个程序域内的独立程序域,使得即使子程序域驻留在诸如由在软件存储区域中运行的垂直软件应用程序所控制的未锁定的程序域内,子程序域也可以保持锁定。
锁定的子程序域的一个示例是比特币钱包或其他具有数据的受密码保护的软件程序。除了目前存在的硬件要求之外,没有特殊的硬件要求,该系统可以与诸如iPhone中的安全区域处理器以及其他设备上的类似区域的专用硬件区域一起工作或独立于专用硬件区域工作。在尝试法院命令的异常访问的情况下,设备不能返回到其正常运行状态,以确保识别入侵或入侵企图。排他性自托管凭证始终安全地保存在程序域内,并处于受保护程序的完全控制之下,从而提供能提供的最高级别的安全和隐私,同时使设备可以根据法院命令访问。端到端加密仍然非常完备而没有加密后门,但有一个法院命令的异常访问的可用途径。
图2和图3是示出用于执行示意图100的步骤的系统200的一个实施例的示意图。
图2详细示出了系统200,其包括TPP设备210、包括可锁定的DO-PD 120的DO设备230、以及将TPP设备的程序P连接到DO设备的程序P的通信能力220。TPP设备210包括通信能力211、存储器213和处理器215。在某些实施例中,TPP设备210在存储器213中维护包括TPP私钥的加密密钥,并可选地,维护可锁定的DO-PD和DO-PD公共加密密钥的数据库。
作为水平程序域的示意,DO设备230是例如但不限于智能手机,其包括触摸屏231、通信连接器232、存储器233和处理器234。存储器233包含系统200的运行指令,处理器234将其解释为操作触摸屏231作为输入和输出设备。通信连接器211和232是可以使用适当的通信能力220连接的串行通信连接器。通信连接器211或232的示例包括但不限于USB Type-C端口、微型USB端口、QR码、NFC格式或火线接口(ports)(加利福尼亚州库比蒂诺市苹果电脑股份有限公司)。存储器233包括运行DO设备230所需的编程(例如运行系统或虚拟机指令)。存储器233还可以包括硬件安全区(HSA),包括其自己的专用控制硬件安全区程序(Hardware Secure Area Program,HSAP),并且对iPhone来说,称为安全区域处理器(Secure Enclave Processor,SEP),或者对Android设备来说,称为Titan M或ARM信任区(ARM TrustZone)。
作为垂直程序域的示意,DO设备230是具有可锁定的DO-PD 120的电子设备,诸如计算机或智能手机,可锁定的DO-PD 120可以是例如但不限于数据库、文字处理器、电子表格或比特币钱包。
以下讨论呈现在TPP设备210和DO设备230上运行的系统200的实施例。具体地,存储器215包括所存储的编程指令,处理器234解释该编程指令以在TPP设备210上执行在此所述的方法步骤并通过通信电缆210与DO设备220通信,存储器233包括所存储的编程指令,处理器234解释该编程指令以在DO设备上执行在此所述的方法步骤并通过通信电缆与TPP设备通信。如在此所述,存储器215和233还可以包括存储的加密密钥和用于锁定和解锁DO-PD120的其他信息。
在一个实施例中,存储器213包括用于处理器215执行图1所示的在TPP-‘PD 110和TPP-PD 112中的功能的编程,并且存储器233包括用于处理器234执行图1所示的在DO-PD120中的功能的编程。
加密
在各种实施例中,使用两种不同的加密方法中的一种或多种来实现排他性自托管的安全性,其计算难度被证明且接受。第一种方法是公钥加密。第二种方法是使用密钥交换协议的对称密钥加密,该密钥交换协议可以是例如但不限于迪菲赫尔曼密钥交换协议(Diffie–Hellman Key Exchange Protocol,DHKX)。此外,可以使用包括密钥和随机数的哈希的单向数学函数以及唯一的设备标识符和时间戳。公钥不向任何公钥基础设施(PublicKey Infrastructure,PKI)实体公开,而是通过将它们包含在消息中或从可访问的域位置提供给参与者。
对称加密:排他性自托管可以使用DHKX将计算出的共享秘密密钥用作托管密码,进而该值被用作凭证,或对单向函数访问数据进行加密,该数据稍后在异常访问时被披露。在某些实施例中,TPP 10或DO-PD 20从对称密钥对(2)生成共享秘密密钥,其中一个密钥对的公钥与另一个密钥对的私钥匹配。虽然未通过PKI公开,但公钥仍然以加密方式被视为公钥。
公钥加密:排他性自托管可以使用TPP-‘PD 110或DO-PD 120的非对称公钥加密单向函数访问数据,以使得TPP或PD可以稍后在异常访问时披露该访问数据以进行认证。
认证
在某些实施例中,排他性自托管可以利用用于在DO-PD 120和TPP-‘PD 110之间进行认证的各种凭证中的一个或多个,其包括但不限于密码、共享秘密密钥、随机数、唯一设备ID、时间戳以及每个凭证的哈希版本。
共享秘密密钥认证:在某些实施例中,在发起异常访问时,排他性自托管认证可以利用从DO-PD 120和TPP-‘PD 110的相应公钥和私钥计算出的共享秘密密钥或哈希共享秘密密钥(在此称为“HSSK”)用于随后的认证。
随机数认证:在某些实施例中,排他性自托管认证在解锁建立或启动异常访问或解锁建立以及启动异常访问两者兼而有之时,可以利用随机数、哈希随机数和随机数函数作为用于认证的凭证,随机数、哈希随机数和随机数函数例如但不限于在DO-PD 120或TPP-‘PD 110内计算。在各种实施例中,在异常访问之前,随机数或哈希随机数值被加密并存储为凭证,以在随后的认证中使用。随机数的生成、随机数函数和哈希在本领域是已知的。
在某些实施例中,用于认证的随机数(在此称为“特殊随机数”)选自预定的随机数池或以特定格式存储。如果所提供的特殊随机数在预定的随机数池内或具有预定的格式,则进行认证。
唯一设备标识符(Identifier,ID)和时间戳:在某些实施例中,排他性自托管认证可以利用唯一设备ID单向函数凭证和/或时间戳单向函数凭证。
消息
在某些实施例中,排他性自托管可以利用消息进行认证。消息是信息的安全对象,其例如可以被加密且可以在DO-PD 120和TPP-PD 112或TPP-‘PD 110之间交换,并且可以包含用于生成凭证的项,例如加密密钥或加密的凭证,或者其本身可以是凭证。
通常,如在此进一步详细所述,消息可以包括但不限于包括凭证、密码、随机数、设备ID、设备时间、加密密钥或这些中任何一个的哈希版本。消息也可以被加密。
在某些实施例中,消息可以包含一个以上的项,例如加密密钥和诸如密码的凭证,或者一个以上的加密密钥。对于一些实施例,具有多于一个项的消息对于有效地提供用于认证各方所需的多个项方面是有用的实施细节和假设
本发明的排他性自托管方法和装置的某些实施例包括在DO-PD 120、TPP-‘PD 110或TPP-PD 112中的一个或多个中运行的程序(P)、至少一个加密容器“消息”对象和包括诸如DO 20的DO、TPP 10和研调政府机构(Government Authority,GA)的三个参与者。TPP 10是第三方,可选地也是程序域的提供商(即设备制造商)。应当理解的是,TPP 10可以是履行TPP角色的第三方,而实际上没有向DO 20提供DO-PD 120。TPP10总是具有由存储在TPP-‘PD110中的它们的私钥和公钥组成的公钥对。在几个实施例中,DO-PD 120可以具有至少一个公钥对。虽然密钥对的公钥不是秘密的,但它们不被公开,而是在没有安全性的情况下以管理方式可用。私钥是秘密的,并且被安全地保存和管理。单向函数访问数据是用于计算密码、密钥、随机数值、随机数函数、唯一设备标识、时间戳、哈希版本等时使用的任何数据。
在某些实施例中,在每一方已经通过比较驻留凭证和质询凭证认证了另一方之后,使用P解锁DO-PD 120。在异常访问时,这些凭证(例如托管密码)会相互比较以有效匹配,从而验证TPP和DO-PD的真实性。因此,例如,当在DO-PD中存储、披露或计算的驻留凭证等于从TPP-‘PD 110或TPP-PD 112提供给DO-PD的质询凭证时,DO-PD 120认证TPP-‘PD110。此外,例如,当在TPP-‘PD或TPP-PD 112中存储、披露或计算的驻留凭证等于从DO-PD提供给TPP-‘PD或TPP-PD的质询凭证时,TPP-‘PD 110认证DO-PD 120。在某些其它实施例中,在解锁过程期间生成质询凭证。在某些实施例中,程序P在TPP认证DO-PD 120之前在TPP-‘PD 110上运行,然后在TPP认证DO-PD之后在TPP-PD 112上运行。
每个托管密码副本都处于披露或未披露状态。如所披露的,每个密码副本都是字母数字序列。如未披露的,每个密码副本是不同于(不等于)其披露状态的字母数字序列的字母数字序列。当密码副本被加密时,它被P从披露状态转换到未披露状态。当密码副本无论存储在PD或硬件安全区(HSA)中时,其状态不会因PD的P而改变。由DO-PD的P披露驻留托管密码,以及经由TPP-PD的P通过真实TPP的操作披露或计算质询托管密码。HSAP总是将存储的信息以从P收到的状态返回给PD的P。无论是未披露、已披露还是处于计算状态的驻留托管密码都是DO-PD独有的。无论是未披露的、披露的还是处于计算状态的质询托管密码也只存在于TPP-PD中。
在某些实施例中,当扩展为哈希值时,可以在加密消息的内部和外部传递和比较托管密码,因为持有受到对非哈希托管密码的访问的限制。因此,例如,哈希的托管密码的源可以被安全地存储,以确保其哈希形式的质询托管密码只能由真实的TPP披露。
在某些实施例中,在异常访问期间,当设置正常密码和创建托管密码凭证时,可以创建并安全地存储哈希密钥凭证,然后用于认证设备程序域和第三方以防止冒名顶替者。在某些实施例中,在异常访问时创建哈希密钥质询凭证。
在某些实施例中,诸如托管密码的凭证被生成为对称加密的产品,并且这些相同的作为密码的密钥也可以用于加密访问数据。托管密码可以直接基于从密钥对组合生成的P或访问数据的哈希值生成。包括来自随机数的哈希值的哈希值用于认证第三方和DO-PD。
某些实施例可以包括可以在认证过程中使用多个不同的密钥对的多个第三方。因此,消息可以支持使用不同公钥的凭证的多个唯一安全容器,其中DO-PD 120经由P使用n个唯一公钥将托管质询凭证加密到单个消息中n次,使得要求n个第三方经由P披露它们各自的有效质询凭证,以便与驻留凭证进行比较。额外的第三方参与降低了TPP 10可能无意或有意选择在不满足条件的情况下解锁设备的风险。领先的第三方候选人来自TPP集团,因为他们是完全参与的利益相关者。可以匹配完整的驻留凭证,从而P解锁DO-PD 120。也可以将质询凭证的每个副本置于自己的消息中。利用托管密码的实施例最适合于多个第三方,其中需要在解锁过程开始时进行认证,以确认DO-PD 120和TPP 10,并且由于多个第三方和时间延迟,再次在认证过程完成时进行认证,其中,随后DO-PD由TPP解锁。
根据框125,各种实施例没有表示用于失败解锁尝试的内置时间延迟函数,或者用于在一旦PD被置于托管模式时由P分配给解锁DO-PD 120的时间的TPP 10和其他潜在第三方的时间约束函数。时间延迟和时间约束函数是对实施例的可行补充。合理的是,在将程序域置于Emode和在接收到有效质询凭证之间可能允许经过有限的时间。这样的时间限制将严格限制“中间人”密码攻击。同样合理的是,披露有效质询凭证的失败尝试可能会触发延迟周期,在允许再次尝试之前必须经过该延迟周期。该延迟周期将进一步限制暴力解锁程序域的尝试。同样合理的是,特别是在多个第三方实施的情况下,时间限制可能会强制时间量允许提交解锁程序域所需的所有指定第三方的认证。这一限制进一步降低了单一第三方提供商转换其约定角色的风险。
在此提出的排他性自托管方法假设PD独立于系统的两种安全状态。第一种也是最高的状态是诸如iPhone的安全区域处理器(SEP)的硬件安全区(HSA)和类似的硬件设备经由普通密码与系统加密锁定结合的状态。第二安全状态在没有HSA等益处的情况下运行,由此经由正常的密码安装通过系统加密的锁定来管理安全性。第三种状态是不安装正常密码也没有活动的安全系统的未锁定状态。虽然从局外人的角度来看,OS加密的第一和第二状态客观上是安全的,但是依赖于这些防御的任何凭证系统都容易受到这些系统的任何已知或未知弱点的攻击。通过提供包含和不包含HSA和/或系统加密的方法,本演示文稿侧重于集成了当前最高安全级别的交付,但也完全独立于操作系统。
某些其他实施例包括在DO-PD的解锁期间由DO-PD 120认证的附加第三方。因此,例如但不限于DO-PD 120可以通过上述方法认证每个附加第三方。
多个第三方
本发明通常被描述为包括作为TPP的单个第三方。然而,通常不只一个第三方可能参与程序域的解锁。在此描述的消息支持使用不同公钥的凭证的多个唯一安全容器,其中DO经由P使用N个唯一公钥将托管质询凭证加密到单个消息中N次,使得要求N个第三方经由P披露它们各自的有效质询凭证,以便与驻留凭证进行比较。额外的第三方参与降低了TPP可能无意或有意选择在不满足条件的情况下解锁设备的风险。领先的第三方(TP)候选人来自TPP集团,因为他们是完全参与的利益相关者。可以匹配完整的驻留凭证,从而P解锁PD。也可以将质询凭证的每个副本置于自己的消息中。在某些实施例中,托管密码非常适合于多个第三方,其中需要在解锁过程开始时进行认证,以确认PD和TPP,并且由于多个第三方(TP)和时间延迟,再次适合于在认证过程完成时进行认证,其中,随后PD由TPP解锁。
通常,在此描述的任何实施例可以适于支持任何数量的第三方,例如但不限于第二实施例中所示。
实施例
在此呈现的排他性自托管方法的每个实施例利用不同消息(访问数据)和内容、加密方法(非对称和对称)以及单向函数凭证类型的某些组合,来完成程序域和第三方的认证。公钥加密提供了一种保护对单向函数凭证进行认证的方法,而对称加密提供了用于产生和保护用于双向认证的单向函数凭证的方法。每种类型的凭证都表现出独特的功能特征,支持其在认证中的作用,并侧重单向函数性和状态表达。某些设备上的HSA(硬件安全区)可以代替加密消息。
现在更详细地示出在示意图100中所示的方法的几个实施例。下面的讨论参考了DO-PD 120、TPP-‘PD 110和TPP-PD 112之间的操作。应当理解的是,诸如程序P的DO-PD 120的编程存储在存储器233中并在处理器234中执行,DO-PD存储器121和TPP-PD存储器135都在存储器233内,并且DO-PD和TPP-‘PD 110经由通信电缆220通信。
在下面的讨论中应该理解的是,关于发生在DO-PD 120、TPP-‘PD 110和TPP-PD112内的操作的陈述具有以下含义:DO-PD 120“创建”、“形成”、“加密”、或“解密”消息(例如)意味着该消息是使用处理器234计算并被存储在存储器233中;DO-PD 120“哈希”值(例如)意味着该值被提交给使用处理器234产生哈希值的哈希算法并被存储在非易失性存储器233中;DO-PD 120“使用”消息(例如)意味着从存储器233检索整体消息或部分内容,以便在处理器234中进行计算;DO-PD 120“复制”或“重命名”消息或变量(例如)意味着消息或变量的副本被复制为另一个消息或变量,因为它存储在存储器233中;DO-PD 120“存储”消息(例如)意味着消息或变量的副本存储在DO-PD存储器121中;DO-PD 120“销毁”或“删除”消息(例如)意味着从存储器233中擦除该消息;DO-PD 120“提供”、“释放”或“披露”消息(例如)到TPP-PD 112”意味着该消息从存储器233复制到TPP-PD存储器135;TPP-‘PD 110“创建”、“形成”、“披露”、“加密”或“解密”消息(例如)意味着使用处理器215计算该消息并被存储在存储器213中;TPP-‘PD 110“哈希”数字(例如)意味着使用处理器215哈希该数字并将被存储在存储器213中;TPP-‘PD 110“使用”消息(例如)意味着从存储器213检索该消息用于处理器215中进行计算;TPP-‘PD 110“复制”或“重命名”消息(例如)意味着消息的副本存储在存储器213中;TPP-‘PD 110向DO-PD 120或TPP-PD 112“提供”、“释放”或“披露”消息(例如)意味着消息分别从存储器213复制到DO-PD存储器121或TPP-PD存储器135;TPP-PD112“创建”、“形成”、“披露”、“加密”或“解密”消息(例如)意味着使用DO-PD 120的处理器215使用P来计算该消息,并且将该其存储在TPP-PD存储器135中;TPP-PD 112“哈希”数字(例如)意味着该数字使用P利用DO-PD 120的处理器215进行哈希并被存储在TPP-PD存储器135中;TPP-PD 112“使用”消息(例如)意味着使用P从TPP-PD存储器135检索该消息,用于在处理器215中利用DO-PD 120的处理器215进行计算;TPP-PD 112“复制”消息(例如)意味着消息的副本存储在TPP-PD存储器135中;TPP-PD 112“提供”、“释放”或“披露”消息(例如)到DO-PD 120或TPP-‘PD 110意味着该消息分别从TPP-PD存储器135复制到DO-PD存储器121或存储器213;以及TPP-PD 112“存储”消息(例如)意味着消息的副本存储在TPP-PD存储器135中。
如上所述,现在呈现了几个实施例,其示出了排他性自托管方法和系统的各种特征,且图18包括表1800,该表1800在顶行中示出了实施例特征,在右列中示出了每个实施例以及在表的主体中示出了每个实施例的每个特征的使用。这些特征包括安全HSA存储的使用、DO-PD 120和TTP-‘PD 110或TPP-PD 112之间交换的消息数量、例如公钥加密、对称密钥加密的方法和使用的加密总数的方法,以及包括密码和哈希密码的“A”凭证类型的使用以及包括共享秘密密钥或哈希共享秘密密钥、随机数、哈希随机数或随机数函数、设备标识号和时间戳的“B”凭证类型的使用。
通常,每个实施例利用至少一个消息、一种加密方法和两种类型的凭证。并且它们都使用至少一种“B”凭证类型。除了实施例9之外,所有实施例都使用至少一个公共加密密钥对。实施例1和3都使用HSA(硬件安全区),以及托管密码和随机数作为认证凭证。实施例1和10至14仅使用公钥加密方法。实施例2至8利用公钥和对称加密方法。实施例6、7、8和14不使用“A”凭证类型。
第一实施例
第一实施例排他性自托管方法在图4中示为流程图401和流程图402,其中流程图401包括用于在框411-419中锁定DO-PD 120的步骤,以及其中流程图402包括用于随后在框421-437中解锁根据流程图401的步骤被锁定的DO-PD的步骤。为了帮助说明图4中的每个框在哪些域中执行,这些框块沿着标记为TPP-‘PD 110、TPP-PD 112和DO-PD 120的垂直虚线域对齐。
按照框122、123和124所示,可以根据流程图401的步骤锁定DO-PD 120,如下所示。
在框411中,TPP 10创建TPP密钥对作为TPP私钥和TPP公钥。TPP私钥存储在TPP-’PD 110中,TPP公钥被提供给DO-PD存储器121并存储在DO-PD存储器121中。
在框412中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建PD密钥对作为存储在DO-PD存储器121中的PD私钥和PD公钥。
在框413中,DO-PD 120使用P创建并存储托管密码。
在框414中,DO-PD 120使用P将托管密码的副本存储为托管密码#1(escrowpasscode#1)和托管密码#2(escrow passcode#2)。
在框415中,如上文标题为加密的部分所述,DO-PD 120使用P将托管密码#2使用TPP公钥加密到消息#1(message#1)。
在框416中,如上文标题为加密的部分所述,DO-PD 120使用P将PD公钥和消息#1使用TPP公钥加密到消息#2(message#2)。
在框417中,DO-PD 120使用P将消息#2和TPP公钥存储在DO-PD存储器121中。
在框418中,如上所述,DO-PD 120使用P将托管密码#1和PD私钥传送到硬件安全区(HSA)。
在框419中,DO-PD 120使用P删除托管密码和PD公钥。
在执行框419之后,根据第一实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图401的步骤锁定的DO-PD 120可以根据流程图402的步骤解锁,如下所示:
在框421中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框422中,按照框125所示,TPP-‘PD 110使用P将DO-PD 120置于托管模式,并将消息#2从DO-PD 120释放到TPP-PD 112。
在框423中,TPP-‘PD 110使用P使用TPP私钥解密消息#2,从而披露PD公钥和消息#1。
在框424中,TPP-‘PD 110使用P创建临时(Temp)TPP密钥对作为临时TPP私钥和临时TPP公钥,并创建随机数RND#1。
在框425中,TPP-‘PD 110使用P将临时TPP公钥和RND#1使用PD公钥加密到消息#3(message#3),并将消息#3释放给DO-PD 120。
在框426中,DO-PD 120使用PD私钥解密消息#3,从而披露临时TPP公钥和RND#1。
在框427中,DO-PD 120使用P将来自框426的RND#1复制到RND#2。
在框428中,DO-PD 120使用P将RND#2使用临时TPP公钥加密到消息#4(message#4),并将消息#4提供给TPP-‘PD 110。
在框429中,TPP-‘PD 110使用P使用临时TPP私钥解密消息#4,从而披露RND#2。
然后,框430执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框424的驻留凭证RND#1和来自框429的质询凭证RND#2。如果在确定凭证时使用了正确的密钥,则在框430中,RND#1和RND#2是相同的。因此,在框430中,TPP-‘PD 110使用P比较RND#1和RND#2。如果RND#1等于RND#2,则DO-PD 120被TPP-‘PD 110认证且框430的结果是“Y”,而如果RND#1不等于RND#2,则认证失败且框430的结果是“N”。
如果框430的结果是“N”,则认证失败且DO-PD 120的解锁的执行在框431停止。
如果框430的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证且解锁进行到框432,其中TPP-PD 112使用P使用TPP私钥解密消息#1,从而披露托管密码#2。
在框433中,TPP-PD 112使用P将托管密码#2使用PD公钥加密到消息#5(message#5),并将消息#5提供给DO-PD 120。
在框434中,DO-PD 120使用P使用PD私钥解密消息#5,以披露托管密码#2。
然后,框435执行测试,由此DO-PD 120认证TPP-‘PD 110。具体地,DO-PD 120使用P来比较来自框418的驻留凭证托管密码#1和来自框434的质询凭证托管密码#2。如果在确定凭证时使用了正确的密钥,则在框435中,托管密码#1和托管密码#2是相同的。因此,在框435中,DO-PD 120使用P将托管密码#1与托管密码#2进行比较。如果托管密码#1等于托管密码#2,则TPP-‘PD 110被DO-PD 120认证且框435的结果是“Y”,而如果托管密码#1不等于托管密码#2,则框435的结果是“N”。
如果框435的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框436处停止。
如果框435的结果是“Y”,则所有认证都已通过,并且解锁进行到框437,其中DO-PD120使用P解锁DO-PD。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第二实施例
第二实施例排他性自托管方法在图5中示出为流程图501和流程图502,其中流程图401包括用于在框511-526中锁定DO-PD 120的步骤,以及其中流程图402包括用于随后在框527-549中解锁根据流程图501的步骤被锁定的DO-PD的步骤。除了明确说明之外,第二实施例排他性自托管方法通常类似于前面实施例的排他性自托管方法。
该实施例示出了第二第三方,表示为“TP”,其具有与TPP-‘PD分区类似的TP-‘DP分区的设备。
按照框122、123和124所示,可以根据流程图501的步骤锁定DO-PD 120,如下所示。
在框511中,TPP-‘PD 110创建TPP密钥对作为TPP私钥和TPP公钥,并创建对称TPP密钥对作为对称TPP私钥和对称TPP公钥,并且将TPP公钥和对称TPP公钥提供给DO-PD 120。
在框512中,TP-PD创建对称TP密钥对作为对称TP私钥和对称TP公钥,并将对称TP公钥提供给DO-PD 120。
在框513中,DO-PD 120使用P创建对称PD密钥对#1(symmetric PD key pair#1)作为对称PD私钥#1(symmetric PD private key#1)和对称PD公钥#1(symmetric PD publickey#1),创建对称PD密钥对#2(symmetric PD key pair#2)作为对称PD私钥#2(symmetricPD private key#2)和对称PD公钥#2(symmetric PD public key#2),创建对称PD密钥对#3(symmetric PD key pair#3)作为对称PD私钥#3(symmetric PD private key#3)和对称PD公钥#3(symmetric PD public key#3),并创建PD密钥对作为PD公钥和PD私钥。
在框514中,DO-PD 120使用P从生成的随机数创建托管密码。
在框515中,DO-PD 120使用P复制托管密码以形成托管密码#1和托管密码#2。
在框516中,DO-PD 120使用P创建使用对称PD私钥#1和对称TPP公钥的共享秘密密钥SSK#1。
在框517中,DO-PD 120使用P创建共享使用对称PD私钥#2和对称TPP公钥的秘密密钥SSK#2。
在框518中,DO-PD 120使用P创建使用对称PD私钥#3和对称TP公钥的共享秘密密钥SSK#3。
在框519中,DO-PD 120使用P将SSK#2哈希为HSSK#2。
在框520中,DO-PD 120使用P将SSK#3哈希为HSSK#3。
在框521中,DO-PD 120使用P将托管密码#1使用PD公钥加密到消息#1。
在框522中,DO-PD 120使用P将托管密码#2和PD私钥使用SSK#1加密到消息#2。
在框523中,DO-PD 120使用P将设备ID#1(device ID#1)、对称PD公钥#1和对称PD公钥#2使用TPP公钥加密到消息#3。
在框524中,DO-PD 120使用P将SSK#1使用SSK#2加密到消息#4。
在框525中,DO-PD 120使用P将消息#1、消息#2、消息#3、消息#4、HSSK#2和HSSK#3存储在DO-PD存储器121中。
在框526中,DO-PD 120使用P销毁托管密码、对称PD私钥#1、对称PD私钥#2、对称PD私钥#3、对称PD公钥#2、对称PD公钥#3、SSK#1、SSK#2和SSK#3。
在执行框526之后,根据第二实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图501的步骤被锁定的DO-PD 120可以根据流程图502的步骤解锁,如下所示。
在框527中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框528中,按照框125所示,TPP-‘PD 110使用P将DO-PD 120置于托管模式,并向DO-PD 120释放消息#3。
在框529中,DO-PD 120使用P将设备ID#2和DO-PD的当前设备时间(时间#1,Time#1)使用TPP公钥加密到消息#5中,并将消息#5和消息#3释放到TPP-PD 112。
在框530中,TPP-PD 112使用P使用TPP私钥解密消息#5,披露设备ID#2和时间#1。
然后,框531执行测试以确定从解锁开始未经过预设时间限制。具体地,TPP-PD112使用P来比较驻留凭证时间#1和当前设备时间,即质询凭证实际时间。如果没有超过预设的时间量,则解锁将继续进行。因此,在框531中,TPP-PD 112使用P将时间#1与实际时间进行比较。如果|时间#1-实际时间|≤预设时间,则框531的结果是“Y”,则解锁是及时的,而如果|时间#1-T|>M,则已经过了太多时间,并且框531的结果是“N”。
如果框531的结果是“N”,则认证失败且DO-PD 120的解锁的执行在框532停止。
如果框531的结果是“Y”,那么DO-PD 120解锁进行到框533,TPP-‘PD使用P解密使用TPP私钥的消息#3,披露设备ID#1、对称PD公钥#1和对称PD公钥#2。
然后,框534执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框533的驻留凭证设备ID#1和来自框530的质询凭证设备ID#2。如果在确定凭证时使用了正确的密钥,则在框534中,设备ID#1和设备ID#2是相同的。因此,在框534中,TPP-‘PD 110使用P将设备ID#1与设备ID#2进行比较。如果设备ID#1等于设备ID#2,则DO-PD120被TPP-‘PD认证110且框534的结果是“Y”,而如果设备ID#1不等于设备ID#2,则认证失败且框534的结果是“N”。
如果框534的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框535处停止
如果框534的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框536,其中TPP-PD 112使用P创建使用对称TPP私钥和非对称公钥#2(asymmetric publickey#2)的共享秘密密钥SSK#4。
在框537中,TPP-PD 112将SSK#4哈希为HSSK#4,并将两者提供给DO-PD。
然后,框538执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实的提供商。具体地,DO-PD 120使用P来比较来自框615的驻留凭证HSSK#2和来自框633的质询凭证HSSK#4。如果在确定凭证时使用了正确的密钥,则在框538中,HSSK#2和HSSK#4是相同的。因此,在框538中,DO-PD 120使用P将HSSK#2与HSSK#4进行比较。如果HSSK#2等于HSSK#4,则TPP-‘PD 110被DO-PD 120认证且框538的结果是“Y”,而如果HSSK#2不等于HSSK#4,则框538的结果是“N”。
如果框538的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框539处停止。
如果框538的结果是“Y”,则TPP已经被认证且解锁进行到框540以开始TP的认证,并且其中TP-PD使用P使用对称TP私钥和对称PD公钥#3创建共享秘密密钥SK#5。
在框541中,TP-PD使用P将SSK#5哈希为HSSK#5,其被提供给DO-PD120。
在框542中,DO-PD 120使用P比较HSSK#3和HSSK#5,其中匹配认证TP。
然后,框542执行测试,由此DO-PD 120认证第二第三方TP。具体地,DO-PD 120使用P来比较来自框525的驻留凭证HSSK#3和来自框541的质询凭证HSSK#5。如果在确定凭证时使用了正确的密钥,则在框542中,HSSK#3和HSSK#5是相同的。因此,在框538中,DO-PD 120使用P将HSSK#3与HSSK#5进行比较。如果HSSK#3等于HSSK#5,则TPP-‘PD 110被DO-PD 120认证且框542的结果是“Y”,而如果HSSK#3不等于HSSK#5,则框542的结果是“N”。
如果框542的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框543处停止。
如果框542的结果是“Y”,则DO和第三方认证已经通过,并且解锁进行到框544,其中DO-PD 120使用P使用SSK#4解密消息#4,披露SSK#1。
在框545中,DO-PD 120使用P使用SSK#1解密消息#2,披露托管密码#2和PD私钥。
在框546中,DO-PD 120使用P使用PD私钥解密消息#1,披露托管密码#1。
然后,框547执行第二测试,由此DO-PD 120认证TPP-‘PD 110。执行TPP的第二次认证以说明额外的第三方认证的额外时间和活动。具体地,DO-PD 120使用P来比较来自框546的驻留凭证托管密码#1和来自框545的质询凭证托管密码#2。如果在确定凭证时使用了正确的密钥,那么在框547中,托管密码#1和托管密码#2是相同的。因此,在框742中,DO-PD120使用P将托管密码#1与托管密码#2进行比较。如果托管密码#1等于托管密码#2,则TPP-‘PD 110被DO-PD 120认证且框547的结果是“Y”,而如果托管密码#1不等于托管密码#2,则框547的结果是“N”。
如果框547的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框548处停止。
如果框547的结果是“Y”,则认证步骤都已成功,并且解锁进行到框744,其中DO-PD120使用P解锁DO-PD。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第三实施例
第三实施例排他性自托管方法在图6中示出为流程图601和流程图602,其中流程图601包括用于在框611-618中锁定DO-PD 120的步骤,以及其中流程图602包括用于随后在框620-636中解锁根据流程图601的步骤被锁定的DO-PD的步骤。除了明确说明之外,第三实施例排他性自托管方法通常类似于前述实施例的排他性自托管方法。
按照框122、123和124所示,可以根据流程图601的步骤锁定DO-PD 120,如下所示:
在框611中,TPP-‘PD 110创建TPP密钥对作为TPP私钥和TPP公钥,创建对称TPP密钥对作为对称TPP私钥和对称TPP公钥,并且TPP-‘PD 110向DO-PD 120提供TPP公钥和对称TPP公钥。
在框612中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建PD密钥对作为PD私钥和PD公钥,并且创建对称PD密钥对作为对称PD私钥和对称PD公钥。
在框613中,DO-PD 120使用P使用对称PD私钥和对称TPP公钥创建第一托管共享秘密密钥(ESSK#1)。
在框614中,DO-PD 120使用P哈希ESSK#1以形成凭证托管密码#1。
在框615中,DO-PD 120将托管密码#1存储到存储器233内的硬件安全区(HSA)。
在框616中,DO-PD 120使用TPP公钥加密对称PD公钥以形成消息#1。
在框617中,DO-PD 120将消息#1、PD私钥、PD公钥和TPP公钥存储在DO-PD 120中。
在框618中,DO-PD 120从DO-PD 120删除对称PD密钥对、ESSK#1和托管密码#1。
在执行框618之后,根据第三实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图601的步骤被锁定的DO-PD 120可以根据流程图602的步骤解锁,如下所示。
在框620中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框621中,按照框125所示,TPP-’PD 110使用P将程序域置于托管模式,并从DO-PD 120检索消息#1和PD公钥。
在框622中,TPP-‘PD 110使用P创建临时TPP私钥和临时TPP公钥以及RND#1。
在框623中,TPP-’PD 110使用P使用PD公钥加密临时TPP公钥和RND#1以形成消息#2,并将消息#2释放给DO-PD 120。
在框624中,DO-PD 120使用P使用PD私钥解密消息#2,以披露临时TPP公钥和RND#1。
在框625中,DO-PD 120使用P将来自框624的RND#1重命名为RND#2。
在框626中,DO-PD 120使用P使用临时TPP公钥加密RND#2以形成消息#3,并将消息#3释放到TPP-‘PD 110。
在框627中,TPP-’PD 110使用P使用临时TPP私钥解密消息#3,以披露RND#2。
然后,框628执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框622的驻留凭证RND#1和来自框627的质询凭证RND#2。如果在确定凭证时使用了正确的密钥,则在框628中,RND#1和RND#2是相同的。因此,在框628中,TPP-‘PD 110使用P将RND#1与RND#2进行比较。如果RND#1等于RND#2,则DO-PD 120被TPP-‘PD 110认证且框628的结果是“Y”,而如果RND#1不等于RND#2,则认证失败且框628的结果是“N”。
如果框628的结果是“N”,则认证失败,并且DO-PD 120的解锁的执行在框629处停止。
如果框628的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框630,其中TPP-PD 112使用P使用TPP私钥解密消息#1,以披露对称PD公钥。
在框631中,TPP-PD 112使用P从对称PD公钥和对称TPP私钥计算ESSK#2。
在框632中,TPP-PD 112使用P哈希ESSK#2以形成托管密码#2。
在框633中,TPP-PD 112使用P向DO-PD 120提供托管密码#2。
然后,框634执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实的提供商。具体地,DO-PD 120使用P来比较来自框615的驻留凭证托管密码#1和来自框633的质询凭证托管密码#2。如果在确定凭证时使用了正确的密钥,则在框634中,托管密码#1和托管密码#2是相同的。因此,在框634中,DO-PD 120使用P将托管密码#1与托管密码#2进行比较。如果托管密码#1等于托管密码#2,则TPP-‘PD 110被DO-PD 120认证且框634的结果是“Y”,而如果托管密码#1不等于托管密码#2,则框634的结果是“N”。
如果框634的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框635处停止。
如果框634的结果是“Y”,则所有认证都已通过,并且解锁进行到框636,其中DO-PD120使用P解锁DO-PD。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第四实施例
第四实施例排他性自托管方法在图7中示出为流程图701和流程图702,其中流程图601包括用于在框711-721中锁定DO-PD 120的步骤,以及其中流程图702包括用于随后在框723-744中解锁根据流程图701的步骤锁定的DO-PD的步骤。除了明确说明之外,第四实施例排他性自托管方法通常类似于前述实施例的排他性自托管方法。
按照框122、123和124所示,可以根据流程图701的步骤锁定DO-PD 120,如下所示。
在框711中,TPP-‘PD 110创建TPP密钥对作为TPP私钥和TPP公钥,创建对称TPP密钥对作为对称TPP私钥和对称TPP公钥,并将TPP公钥和对称TPP公钥提供给DO-PD 120。
在框712中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建对称PD域密钥对#1(symmetric PD domain key pair#1)作为对称PD私钥#1和对称PD公钥#1,创建对称PD密钥对#2作为对称PD私钥#2和对称PD公钥#2,并且创建对称PD密钥对#3作为对称PD私钥#3和对称PD公钥#3。
在框713中,DO-PD 120使用P使用对称PD私钥#1和对称TPP公钥创建共享秘密密钥ESSK#1。
在框714中,DO-PD 120使用P哈希ESSK#1以形成托管密码#1。
在框715中,DO-PD 120使用P使用对称PD私钥#2和TPP公钥创建第一共享秘密密钥SSK#1。
在框716中,DO-PD 120使用P使用对称PD私钥#3和TPP公钥创建第二共享秘密密钥SSK#2。
在框717中,DO-PD 120使用P哈希SSK#1以形成HSSK#1,并且哈希SSK#2以形成HSSK#2。
在框718中,DO-PD 120使用P使用SSK#1加密托管密码#1,以形成消息#1。
在框719中,DO-PD 120使用P对来自消息#2的对称PD公钥#1、对称PD公钥#2、对称PD公钥#3和HSSK#1进行加密。
在框720中,DO-PD 120使用P将消息#1、消息#2和HSSK#2存储在DO-PD 120的存储器233中。
在框721中,DO-PD 120使用P删除托管密码#1、对称PD私钥#1、对称PD私钥#2、对称PD私钥#3、对称PD公钥#1、对称PD公钥#2、对称PD公钥#3、SSK#1、SSK#2和HSSK#1。
在执行框721之后,根据第四实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图701的步骤被锁定的DO-PD120可以根据流程图702的步骤解锁,如下所示:
在框723中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框724中,按照框125所示,TPP-’PD 110使用P将DO-PD 120置于托管模式。
在框725中,DO-PD 120使用P创建PD密钥对作为PD私钥和PD公钥。
在框726中,DO-PD 120使用P存储DO-PD的标识码ID#1,并使用TPP公钥加密ID#1和PD公钥以形成消息#3,并将TPP公钥和消息#3释放到TPP-PD 112。
在框727中,TPP-PD 112使用使用TPP私钥P解密消息#3,披露被重命名为ID#2的ID#1和PD公钥。
在框728中,TPP-PD 112使用P使用PD公钥加密ID#2以形成消息#4,并将消息#4释放给DO-PD 120。
在框729中,DO-PD 120使用PD私钥解密消息#4,以披露ID#2。
然后,框730执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实的提供商。具体地,DO-PD 120使用P来比较来自框726的驻留凭证ID#1和来自框729的质询凭证ID#2。如果在确定凭证时使用了正确的密钥,则在框730中,ID#1和ID#2是相同的。因此,在框730中,DO-PD 120使用P将ID#1与ID#2进行比较。如果ID#1等于ID#2,则TPP-‘PD110被DO-PD 120认证且框730的结果是“Y”,而如果ID#1不等于ID#2,则框730的结果是“N”。
如果框730的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框731处停止。
如果框730的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且解锁进行到框733,其中TPP-‘PD 110使用P解密使用TPP私钥的消息#2,以披露对称PD公钥#1、对称PD公钥#2、对称PD公钥#3和HSSK#1。
在框734中,TPP-’PD 110使用P使用TPP私钥和对称PD公钥#2创建SSK#3。
在框735中,TPP-’PD 110使用P哈希SSK#3以形成HSSK#3。
然后,框736执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框733的驻留凭证HSSK#1和来自框735的质询凭证HSSK#3。如果在确定凭证时使用了正确的密钥,则在框736中,HSSK#1和HSSK#3是相同的。因此,在框736中,TPP-‘PD110使用P将HSSK#1与HSSK#3进行比较。如果HSSK#1等于HSSK#3,则DO-PD 120被TPP-‘PD110认证且框736的结果是“Y”,而如果HSSK#1不等于HSSK#3,则认证失败且框736的结果是“N”。
如果框736的结果是“N”,则认证失败,并且DO-PD 120的解锁的执行在框737处停止。
如果框736的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框738,其中TPP-PD 112使用对称PD公钥#1和对称TPP私钥计算共享秘密密钥ESSK#2。
在框739中,TPP-PD 112使用P哈希ESSK#2以形成托管密码#2。
在框740中,TPP-PD 112向DO-PD 120释放SSK#3和托管密码#2。
在框741中,DO-PD 120使用P使用SSK#3解密消息#1,以披露托管密码#1。
然后,框742执行第二测试,由此DO-PD 120认证TPP-‘PD 110。执行TPP的第二次认证以说明额外第三方认证的额外时间和活动。具体地,DO-PD 120使用P来比较来自框741的驻留凭证托管密码#1和来自框740的质询凭证托管密码#2。如果在确定凭证时使用了正确的密钥,那么在框742中,托管密码#1和托管密码#2是相同的。因此,在框742中,DO-PD 120使用P将托管密码#1与托管密码#2进行比较。如果托管密码#1等于托管密码#2,则TPP-‘PD110被DO-PD 120认证且框742的结果是“Y”,而如果托管密码#1不等于托管密码#2,则框742的结果是“N”。
如果框742的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框743处停止。
如果框742的结果是“Y”,则认证步骤都已成功,并且解锁进行到框744,其中DO-PD120使用P解锁DO-PD。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第五实施例
第五实施例排他性自托管方法在图8中示出为流程图801和流程图802,其中流程图801包括用于在框811-826中锁定DO-PD 120的步骤,以及其中流程图802包括用于随后在框828-852中解锁根据流程图801的步骤锁定的DO-PD的步骤。除了明确说明之外,第五实施例排他性自托管方法通常类似于前述实施例的排他性自托管方法。
按照框122、123和124所示,可以根据流程图801的步骤锁定DO-PD 120,如下所示。
在框811中,TPP-‘PD 110创建TPP密钥对作为TPP私钥和TPP公钥,创建对称TPP密钥对作为对称TPP私钥和对称TPP公钥,并将TPP公钥和对称TPP公钥提供给DO-PD 120。
在框812中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建对称PD密钥对#1作为对称PD私钥#1和对称PD公钥#1,创建对称密钥对#2作为对称PD私钥#2和对称PD公钥#2,创建对称密钥对#3作为对称PD私钥#3和对称PD公钥#3,并且创建对称密钥对#4(symmetric key pair#4)作为对称PD私钥#4(symmetric PD private key#4)和对称PD公钥#4(symmetric PD public key#4)。
在框813中,DO-PD 120使用P从对称PD私钥#1和对称TPP公钥创建托管共享秘密密钥ESSK#1。
在框814中,DO-PD 120使用P哈希ESSK#1以形成托管密码。
在框815中,DO-PD 120使用P将托管密码复制到托管密码#1副本#1(escrowpasscode#1copy#1)。
在框816中,DO-PD 120使用P使用对称PD私钥#3和对称TPP公钥创建共享秘密密钥SSK#3。
在框817中,DO-PD 120使用P使用对称PD私钥#4和对称TPP公钥创建共享秘密密钥SSK#4。
在框818中,DO-PD 120使用P哈希SSK#3以形成HSSK#1,并且哈希SSK#4以形成HSSK#2。
在框819中,DO-PD 120使用P将对称PD私钥#2复制到对称PD私钥#2副本#1(symmetric PD private key#2copy#1)。
在框820中,DO-PD 120使用P使用ESSK#1加密对称PD私钥#2副本#1,以形成消息#2。
在框821中,DO-PD 120使用P使用对称PD私钥#2和对称PD公钥#2创建共享秘密密钥SSK#2。
在框822中,DO-PD 120使用P加密对称PD公钥#2、对称PD公钥#3、对称PD公钥#4和使用TPP公钥的HSSK#1,以形成消息#4。
在框823中,DO-PD 120使用P使用TPP公钥加密对称PD私钥#1,以形成消息#5。
在框824中,DO-PO 120使用P使用SSK#2加密托管密码#1副本#1,以形成消息#1。
在框825中,DO-PD 120使用P删除对称PD私钥#1、对称PD私钥#2、对称PD私钥#3、对称PD私钥#4、对称PD公钥#1、对称PD公钥#2、对称PD公钥#3、对称PD公钥#4、ESSK#1、SSK#2和托管密码。
在框826中,DO-PO 120使用P将消息#1、消息#2、消息#4、消息#5和HSSK#2存储在DO-PD 120中。
在执行框826之后,根据第五实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图801的步骤被锁定的DO-PD 120可以根据流程图802的步骤解锁,如下所示。
在框828中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框829中,按照框125所示,TPP-’PD 110使用P将DO-PD 120置于托管模式。
在框830中,DO-PD 120使用P创建PD密钥对作为PD私钥和PD公钥。
在框831中,DO-PD 120使用P创建随机数RND#1,利用TPP公钥加密RND#1和PD公钥以形成消息#6(message#6),并将TPP公钥和消息#6释放到TPP-’PD 110。
在框832中,TPP-’PD 110使用P使用TPP公钥解密消息#6,以披露存储为RND#2的RND#1和PD公钥。
在框833中,TPP-’PD 110使用P使用PD公钥加密RND#2以形成消息#7(message#7),并将消息#7释放到DO-PD 120。
在框834中,DO-PD 120使用PD私钥解密消息#7,以披露RND#2。
然后,框835执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框831的驻留凭证RND#1和来自框834的质询凭证RND#2。如果在确定凭证时使用了正确的密钥,则在框835中,RND#1和RND#2是相同的。因此,在框835中,DO-PD 120使用P将RND#1与RND#2进行比较。如果RND#1等于RND#2,则TPP-‘PD 110被DO-PD 120认证且框835的结果是“Y”,而如果RND#1不等于RND#2,则框835的结果是“N”。
如果框836的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框836处停止。
如果框836的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且解锁进行到框837,其中DO-PD 120使用P将消息#4和消息#5释放到TPP-‘PD 110。
在框838中,TPP-’PD 110使用P使用TPP私钥解密消息#4,以披露对称PD公钥#2、对称PD公钥#3、对称PD公钥#4和HSSK#1,并且还使用对称TPP私钥和对称PD公钥#3创建共享秘密密钥SSK#5。
在框839中,TPP-’PD 110使用P哈希SSK#5以形成HSSK#3。
然后,框840执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框838的驻留凭证HSSK#1和来自框839的质询凭证HSSK#3。如果在确定凭证时使用了正确的密钥,则在框840中,HSSK#1和HSSK#3是相同的。因此,在框840中,TPP-‘PD110使用P将HSSK#1与HSSK#3进行比较。如果HSSK#1等于HSSK#3,则DO-PD 120被TPP-‘PD110认证且框840的结果是“Y”,而如果HSSK#1不等于HSSK#2,则认证失败且框840的结果是“N”。
如果框840的结果是“N”,则认证失败,并且DO-PD 120的解锁的执行在框841处停止。
如果框840的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框842,其中TPP-PD 112使用TPP私钥解密消息#5,以披露对称PD私钥#1。
在框843中,TPP-PD 112使用P使用TPP私钥和对称PD公钥#4创建共享秘密密钥SSK#6。
在框844中,TPP-PD 112使用P使用TPP私钥和对称PD公钥#1创建共享秘密密钥ESSK#3。
在框845中,TPP-PD 112使用P使用SSK#6加密对称PD私钥#1和ESSK#3形成消息#3,并将SSK#6和消息#3释放到DO-PD 120。
在框846中,DO-PD 120使用P使用SSK#6解密消息#3,以披露对称PD私钥#1和ESSK#3。
在框847中,DO-PD 120哈希ESSK#3以形成托管密码#2。
在框848中,DO-PD 120使用P使用ESSK#3解密消息#2,以披露对称PD私钥#2副本#1。
在框849中,DO-PD 120使用P从对称PD私钥#2副本#1和对称PD公钥#2创建共享秘密密钥SSK#2。
在框850中,DO-PD 120使用P使用SSK#2解密消息#1,以披露存储为托管密码#1的托管密码#1副本#1。
然后,框851执行第二测试,由此DO-PD 120认证TPP-‘PD 110以说明额外第三方认证的额外时间和活动。具体地,DO-PD 120使用P来比较来自框850的驻留凭证托管密码#1和来自框847的质询凭证托管密码#2。如果在确定凭证时使用了正确的密钥,那么在框851中,托管密码#1和托管密码#2是相同的。因此,在框851中,DO-PD 120使用P将托管密码#1与托管密码#2进行比较。如果托管密码#1等于托管密码#2,则TPP-‘PD 110被DO-PD 120认证且框851的结果是“Y”,而如果托管密码#1不等于托管密码#2,则框851的结果是“N”。
如果框851的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框853处停止。
如果框851的结果是“Y”,则所有认证都已通过,并且解锁进行到框852,其中DO-PD120使用P解锁DO-PD。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第六实施例
第六实施例排他性自托管方法在图9中示出为流程图901和流程图902,其中流程图901包括用于在框911-918中锁定DO-PD 120的步骤,以及其中流程图902包括用于随后在框920-940中解锁根据流程图901的步骤锁定的DO-PD的步骤。除了明确说明之外,第六实施例排他性自托管方法通常类似于前述实施例排他性自托管方法。
按照框122、123和124所示,可以根据流程图901的步骤锁定DO-PD 120,如下所示。
在框911中,TPP-‘PD 110创建TPP密钥对作为TPP私钥和TPP公钥,创建对称TPP密钥对作为对称TPP私钥和对称TPP公钥,并将TPP公钥和对称TPP公钥提供给DO-PD 120。
在框912中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建对称PD密钥对#1作为对称PD私钥#1和对称PD公钥#1,并且创建对称PD密钥对#2作为对称PD私钥#2和对称PD公钥#2。
在框913中,DO-PD 120使用P创建使用对称PD私钥#1和对称TPP公钥的共享秘密密钥SSK#1。
在框914中,DO-PD 120使用P使用对称PD私钥#2和对称TPP公钥创建共享秘密密钥SSK#2。
在框915中,DO-PD 120使用P哈希SSK#1以形成HSSK#1,并且哈希SSK#2以形成HSSK#2。
在框916中,DO-PD 120使用P将对称PD公钥#1、对称PD公钥#2和HSSK#1使用TPP公钥加密到消息#1。
在框917中,DO-PD 120使用P存储消息#1和HSSK#2。
在框918中,DO-PD 120使用P删除对称PD密钥对#1、对称PD密钥对#2、SSK#1、SSK#2和HSSK#1。
在执行框918之后,根据第六实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图901的步骤被锁定的DO-PD 120可以根据流程图902的步骤解锁,如下所示。
在框920中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框921中,按照框125所示,TPP-‘PD 110使用P将DO-PD 120置于托管模式。
在框922中,DO-PD 120创建对称PD密钥对#3作为对称PD私钥#3和对称PD公钥#3,并且创建PD密钥对作为PD私钥和PD公钥。
在框923中,DO-PD 120使用P使用对称PD私钥#3和对称TPP公钥创建共享秘密密钥SSK#5。
在框924中,DO-PD 120使用P将对称TPP公钥、PD公钥和对称PD公钥#3释放到TPP-’PD 110。
在框925中,TPP-’PD 110使用P使用对称PD公钥#3和对称TPP私钥创建共享秘密密钥SSK#6。
在框926中,TPP-’PD 110使用P使用PD公钥加密SSK#6以形成消息#2,并将消息#2释放到DO-PD 120。
在框927中,DO-PD 120用PD私钥解密使消息#2,以披露SSK#6。
然后,框928执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框923的驻留凭证SSK#5和来自框927的质询凭证SSK#6。如果在确定凭证时使用了正确的密钥,则在框928中,SSK#5和SSK#6是相同的。因此,在框928中,DO-PD 120使用P将SSK#5与SSK#6进行比较。如果SSK#5等于SSK#6,则TPP-‘PD 110被DO-PD 120认证且框928的结果是“Y”,而如果托管密码#1不等于托管密码#2,则框928的结果是“N”。
如果框928的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框931处停止。
如果框928的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且解锁进行到框929,其中DO-PD 120使用P将消息#1释放到TPP-’PD 110。
在框930中,TPP-’PD 110使用P使用TPP私钥解密消息#1,以披露对称PD公钥#1、对称PD公钥#2和HSSK#1。
在框932中,TPP-’PD 110使用P使用对称TPP私钥和对称PD公钥#1创建共享秘密密钥SSK#3。
在框933中,TPP-’PD 110使用P哈希SSK#3以形成HSSK#3。
然后,框934执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框930的驻留凭证HSSK#1和来自框933的质询凭证HSSK#3。如果在确定凭证时使用了正确的密钥,则在框934中,HSSK#1和HSSK#3是相同的。因此,在框934中,TPP-‘PD110使用P将HSSK#1与HSSK#3进行比较。如果HSSK#1等于HSSK#3,则DO-PD 120被TPP-‘PD110认证且框934的结果是“Y”,而如果HSSK#1不等于HSSK#3,则认证失败且框934的结果是“N”。
如果框934的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框935处停止。
如果框934的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框936,其中TPP-PD 112使用TPP私钥解密消息#5,以披露对称PD私钥#1。
在框937中,DO-PD 120使用P哈希SSK#4以形成HSSK#4。
然后,框938执行第二测试,由此DO-PD 120认证TPP-‘PD 110。执行TPP的第二次认证是为了说明认证额外第三方的额外时间和活动。具体地,DO-PD 120使用P来比较来自框917的驻留凭证HSSK#2和来自框937的质询凭证HSSK#4。如果在确定凭证时使用了正确的密钥,则在框938中,HSSK#2和HSSK#4是相同的。因此,在框938中,DO-PD 120使用P将HSSK#2与HSSK#4进行比较。如果HSSK#2等于HSSK#4,则TPP-‘PD 110被DO-PD 120认证且框938的结果是“Y”,而如果HSSK#2不等于HSSK#4,则框938的结果是“N”。
如果框938的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框939处停止。
如果框938的结果是“Y”,则所有认证都已通过,并且解锁进行到框940,其中DO-PD120使用P解锁DO-PD。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第七实施例
第七实施例排他性自托管方法在图10中示出为流程图1001和流程图1002,其中流程图1001包括用于在框1101-1018中锁定DO-PD 120的步骤,以及其中流程图1002包括用于随后在框1020-1039中解锁根据流程图1001的步骤被锁定的DO-PD的步骤。除了明确说明之外,第七实施例排他性自托管方法通常类似于前述实施例排他性自托管方法。
按照框122、123和124所示,可以根据流程图1001的步骤锁定DO-PD 120,如下所示。
在框1011中,TPP-‘PD 110创建TPP密钥对作为TPP私钥和TPP公钥,创建对称TPP密钥对作为对称TPP私钥和对称TPP公钥,并将TPP公钥和对称TPP公钥提供给DO-PD 120。
在框1012中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建对称PD密钥对作为对称PD私钥和对称PD公钥。
在框1013中,DO-PD 120使用P使用对称PD私钥和对称TPP公钥创建SSK#1。
在框1014中,DO-PD 120使用P创建随机数RND#1。
在框1015中,DO-PD 120使用P将SSK#1哈希为HSSK#1,并将RND#1哈希为HRND#2。
在框1016中,DO-PD 120使用P将HSSK#1、RND#1和对称PD公钥加密到使用TPP公钥的消息#1中。
在框1017中,DO-PD 120使用P将消息#1和HRND#2存储到DO-PD 120。
在框1018中,DO-PD 120使用P销毁对称PD密钥对SSK#1、HSSK#1和RND#1。
在执行框1018之后,根据第七实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图1001的步骤被锁定的DO-PD 120可以根据流程图1002的步骤解锁,如下所示。
在框1020中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框1021中,按照框125所示,TPP-‘PD 110使用P将PD置于托管模式。
在框1022中,DO-PD 120使用P创建PD密钥对作为PD私钥和PD公钥,并将PD私钥哈希为PD私钥哈希#1(PD private key Hash#1)。
在框1023中,DO-PD 120使用P将PD公钥和PD私钥哈希#1使用TPP公钥加密到消息#2中,并将TPP公钥和消息#2释放到TPP-‘PD 110。
在框1024中,TPP-‘PD 110使用P使用TPP私钥解密消息#2,以披露PD公钥和被重命名为PD私钥哈希#2(PD private key Hash#2)的PD私钥哈希#1。
在框1025中,TPP-‘PD 110使用P将PD私钥哈希#2使用PD公钥加密到消息#3,并将消息#3释放到DO-PD 120。
在框1026中,DO-PD 120使用PD私钥解密消息#3,披露PD私钥哈希#2。
然后,框1027执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框1022的驻留凭证PD私钥哈希#1和来自框1026的质询凭证PD私钥哈希#2。如果在确定凭证时使用了正确的密钥,则在框1027中,PD私钥哈希#1和PD私钥哈希#2是相同的。因此,在框1027中,DO-PD 120使用P将PD私钥哈希#1与PD私钥哈希#2进行比较。如果PD私钥哈希#1等于PD私钥哈希#2,则TPP-‘PD 110被DO-PD120认证且框1027的结果是“Y”,而如果PD私钥哈希#1不等于PD私钥哈希#2,则框1027的结果是“N”。
如果框1027的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1028处停止。
如果框1027的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且解锁进行到框1029,其中DO-PD 120使用P将消息#1释放到TPP-’PD 110。
在框1030中,TPP-‘PD 110使用P使用TPP私钥解密消息#1,以披露HSSK#1、RND#1和对称PD公钥。
在框1031中,TPP‘PD使用P使用对称TPP私钥和对称PD公钥创建SSK#2。
在框1032中,TPP-PD使用P将SSK#2哈希为HSSK#2。
然后,框1033执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框1030的驻留凭证HSSK#1和来自框1032的质询凭证HSSK#2。如果在确定凭证时使用了正确的密钥,则在框1033中,HSSK#1和HSSK#2是相同的。因此,在框1033中,TPP-‘PD 110使用P将HSSK#1与HSSK#2进行比较。如果HSSK#1等于HSSK#2,则DO-PD 120被TPP-‘PD 110认证且框1033的结果是“Y”,而如果HSSK#1不等于HSSK#2,则认证失败且框1033的结果是“N”。
如果框1033的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框1034处停止。
如果框1033的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框1035,其中TPP-‘PD 110使用P将RND#1释放到PD。
在框1036中,DO-PD 120使用P将RND#1哈希为HRND#1。
然后,框1037执行第二测试,由此DO-PD 120认证TPP-‘PD 110。具体地,DO-PD 120使用P来比较来自框1036的驻留凭证HRND#1和来自框1015的质询凭证HRND#2。如果在确定凭证时使用了正确的密钥,则在框1037中,HRND#1和HRND#2是相同的。因此,在框1037中,DO-PD 120使用P将HRND#1与HRND#2进行比较。如果HRND#1等于HRND#2,则TPP-‘PD 110被DO-PD 120认证且框1037的结果是“Y”,而如果HRND#1不等于HRND#2,则框1037的结果是“N”。
如果框1037的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1038处停止。
如果框1037的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且解锁进行到框1039,其中DO-PD 120使用P解锁DO-PD。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第八实施例
第八实施例排他性自托管方法在图11中示出为流程图1101和流程图1102,其中流程图1101包括用于在框1111-1119中锁定DO-PD 120的步骤,以及其中流程图1102包括用于随后在框1121-1138中解锁根据流程图1101的步骤被锁定的DO-PD的步骤。除了明确说明之外,第八实施例排他性自托管方法通常类似于前述实施例的排他性自托管方法。
按照框122、123和124所示,可以根据流程图1101的步骤锁定DO-PD 120,如下所示:
在框1111中,TPP-PD 110使用P创建TPP密钥对作为TPP私钥和TPP公钥,创建对称TPP密钥对作为对称TPP私钥和对称TPP公钥,并将TPP公钥和对称TPP公钥提供给DO-PD120。
在框1112中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建对称PD密钥对#1作为对称PD私钥#1和对称PD公钥#1,创建对称PD密钥对#2作为对称PD私钥#2和对称PD公钥#2,并且创建PD密钥对作为PD私钥和PD公钥。
在框1113中,DO-PD 120使用P创建使用对称PD私钥#1和对称TPP公钥的SSK#1。
在框1114中,DO-PD 120使用P创建使用对称PD私钥#2和对称TPP公钥的SSK#2。
在框1115中,DO-PD 120使用P将SSK#1哈希为HSSK#1,并将SSK#2哈希为HSSK#2。
在框1116中,DO-PD 120使用P将对称PD公钥#1和对称PD公钥#2使用TPP公钥加密到消息#1。
在框1117中,DO-PD 120使用P将密码创建时间存储在时间#1中。
在框1118中,DO-PD 120使用P将时间#1、PD私钥和PD公钥使用TPP公钥加密到消息#2中。
在框1119中,DO-PD 120使用P将HSSK#1、HSSK#2、消息#1、消息#2和时间#1存储在DO-PD 120中。
在框1120中,DO-PD 120使用P销毁对称PD密钥对#1、对称PD密钥对#2、SSK#1、SSK#2和PD私钥。
在执行框1120之后,根据第八实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图1101的步骤被锁定的DO-PD 120可以根据流程图1102的步骤解锁,如下所示。
在框1122中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框1123中,按照框125所示,TPP-‘PD 110使用P将PD置于托管模式,并将消息#2释放到DO-PD 120。
在框1124中,TPP-‘PD 110使用P使用TPP私钥解密消息#2,以披露被重命名为时间#2(TIME#2)的时间#1、PD私钥和PD公钥。
在框1125中,TPP-‘PD 110使用P使用PD公钥将时间#2加密到消息#3,并将消息#3和PD私钥释放到DO-PD 120。
在框1126中,DO-PD 120使用P使用PD私钥解密消息#3,以披露时间#2。
然后,框1127执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框1117的驻留凭证时间#1和来自框1126的质询凭证时间#2。如果在确定凭证时使用了正确的密钥,则在框1127中,时间#1和时间#2是相同的。因此,在框1127中,DO-PD 120使用P将时间#1与时间#2进行比较。如果时间#1等于时间#2,则TPP-‘PD 110被DO-PD 120认证且框1127的结果是“Y”,而如果时间#1不等于时间#2,则框1127的结果是“N”。
如果框1127的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1128处停止。
如果框1127的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且解锁进行到框1129,其中DO-PD 120使用P将消息#1释放到TPP-PD 112。
在框1130中,TPP-PD使用P使用TPP私钥解密消息#1,以披露对称PD公钥#1和对称PD公钥#2。
在框1131中,TPP-‘PD 110使用P使用对称TPP私钥和对称PD公钥#1创建SSK#3。
在框1132中,TPP-‘PD 110使用P将SSK#3哈希为HSSK#3。
然后,框1133执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框1119的驻留凭证HSSK#1和来自框1132的质询凭证HSSK#3。如果在确定凭证时使用了正确的密钥,则在框1133中,HSSK#1和HSSK#3是相同的。因此,在框1133中,TPP-‘PD 110使用P将HSSK#1与HSSK#3进行比较。如果HSSK#1等于HSSK#3,则DO-PD 120被TPP-‘PD 110认证且框1133的结果是“Y”,而如果HSSK#1不等于HSSK#3,则认证失败且框1133的结果是“N”。
如果框1133的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框1134处停止。
如果框1133的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框1135,其中TPP-PD 112使用P使用对称TPP私钥和对称PD公钥#2创建SSK#4,并且将SSK#4释放到DO-PD 120。
在框1136中,DO-PD 120使用P将SSK#4哈希为HSSK#4。
然后,框1137执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框1119的驻留凭证HSSK#2和来自框1136的质询凭证HSSK#4。如果在确定凭证时使用了正确的密钥,则在框1137中,HSSK#2和HSSK#4是相同的。因此,在框1137中,DO-PD 120使用P来比较HSSK#2和HSSK#4。如果HSSK#2等于HSSK#4,则TPP-‘PD 110被DO-PD 120认证且框1137的结果是“Y”,而如果HSSK#2不等于HSSK#4,则框1137的结果是“N”。
如果框1137的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1139处停止。
如果框1137的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且解锁进行到框1138,其中DO-PD 120使用P解锁DO-PD。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第九实施例
第九实施例排他性自托管方法在图12中示出为流程图1201和流程图1202,其中流程图1201包括用于在框1211-1221中锁定DO-PD 120的步骤,以及其中流程图1202包括用于随后在框1222-1236中解锁根据流程图1201的步骤被锁定的DO-PD的步骤。除了明确说明之外,第九实施例排他性自托管方法通常类似于前述实施例的排他性自托管方法。
按照框122、123和124所示,可以根据流程图1201的步骤锁定DO-PD 120,如下所示。
在框1211中,TPP-PD使用P创建对称TPP密钥对作为对称TPP公钥和对称TPP私钥,并将对称TPP公钥提供给DO-PD 120。
在框1212中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建对称PD密钥对作为对称PD私钥和对称PD公钥。
在框1213中,DO-PD 120使用P使用对称TPP公钥和对称PD私钥计算SSK#1。
在框1214中,DO-PD 120使用P创建随机数RND#1。
在框1215中,DO-PD 120使用P将RND#1使用SSK#1加密到消息#1。
在框1216中,DO-PD 120使用P生成随机数并将该随机数存储为托管密码。
在框1217中,DO-PD 120使用P将托管密码使用SSK#1加密到消息#2。
在框1218中,DO-PD 120使用P将消息#2复制到消息#2副本。
在框1219中,DO-PD 120使用P将RND#1和消息#2副本使用SSK#1加密到消息#3。
在框1220中,DO-PD 120使用P删除对称PD私钥、SSK、RND#1和托管密码。
在框1221中,DO-PD 120使用P将消息#1和消息#2保存在DO-PD 120中。
在执行框1221之后,根据第九实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图1201的步骤被锁定的DO-PD 120可以根据流程图1202的步骤解锁,如下所示。
在框1222中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框1223中,TPP-PD 110使用P创建特殊随机数SPLRND#并将其释放到DO-PD 120。
在框1224中,如果SPLRND#以预定格式格式化,DO-PD 120使用P来验证SPLRND#,并且按照框125所示,将DO-PD 120置于托管模式。
在框1225中,DO-PD 120使用P将对称TPP公钥、对称PD公钥和消息#3释放到TPP-PD112。
在框1226中,TPP-‘PD 110使用P使用对称PD公钥和对称TPP私钥计算共享秘密密钥SSK#2。需要注意的是,如果使用了正确的密钥,那么SSK#1和SSK#2是相同的。
在框1227中,TPP-‘PD 110使用P使用SSK#2解密消息#3,以披露RND#1和消息#2副本。
在框1228中,TPP-‘PD 110使用P向DO-PD 120发送SSK#2。
在框1229中,DO-PD 120使用P使用SSK#2解密消息#1,以披露RND#2。
在框1230中,DO-PD 120使用P将RND#2发送到TPP-‘PD 110。
然后,框1231执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框1227的驻留凭证RND#1和来自框1230的质询凭证RND#2。如果在确定凭证时使用了正确的密钥,则在框1231中,RND#1和RND#2是相同的。因此,在框1231中,TPP-‘PD110使用P将RND#1与RND#2进行比较。如果RND#1等于RND#2,则DO-PD 120被TPP-‘PD 110认证且框1231的结果是“Y”,为如果RND#1不等于RND#2,则认证失败且框1231的结果是“N”。
如果框1231的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框1232处停止。
如果框1231的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框1233,其中TPP-PD 112使用P向DO-PD 120发送消息#2副本。
然后,框1234执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框1217的驻留凭证消息#2和来自框1231的质询凭证消息#2副本。如果在确定凭证时使用了正确的密钥,则在框1137中,消息#2和消息#2副本是相同的。因此,在框1137中,DO-PD 120使用P将消息#2与消息#2副本进行比较。如果消息#2等于消息#2副本,则TPP-‘PD 110被DO-PD 120认证且框1137的结果是“Y”,而如果消息#2不等于消息#2副本,则框1137的结果是“N”。
如果框1234的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1235处停止。
如果框1234的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且DO-PD在框1236处解锁。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第十实施例
第十实施例排他性自托管方法在图13中示出为流程图1301和流程图1302,其中流程图1301包括用于在框1311-1319中锁定DO-PD 120的步骤,以及其中流程图1302包括用于随后在框1321-1333中解锁根据流程图1301的步骤被锁定的DO-PD的步骤。除了明确说明之外,第十实施例排他性自托管方法通常类似于前述实施例排他性自托管方法。
按照框122、123和124所示,可以根据流程图1301的步骤锁定DO-PD 120,如下所示。
在框1311中,TPP-‘PD 110使用P创建TPP密钥对作为TPP私钥和TPP公钥,并将TPP公钥提供给DO-PD 120。
在框1312中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建PD密钥对#1作为PD私钥#1和PD公钥#1,并且创建PD密钥对#2作为PD私钥#2和PD公钥#2。
在框1313中,DO-PD 120创建随机数RND#1。
在框1314中,DO-PD 120使用P将RND#1使用PD公钥#1加密到消息#1。
在框1315中,DO-PD 120创建随机数并将该随机数存储为托管密码#1。
在框1316中,DO-PD 120使用P将托管密码#1使用PD公钥#2加密到消息#2。
在框1317中,DO-PD 120使用P将RND#1、托管密码#1、消息#2、PD私钥#1和PD私钥#2使用TPP公钥加密到消息#3。
在框1318中,DO-PD 120使用P删除PD私钥#1、PD私钥#2、RND#1和托管密码#1。
在框1319中,DO-PD 120使用P将消息#1、消息#2和消息#3保存在DO-PD 120中。
在执行框1319之后,根据第十实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图1301的步骤被锁定的DO-PD 120可以根据流程图1302的步骤解锁,如下所示。
在框1321中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框1322中,按照框125所示,TPP-‘PD 110使用P将PD置于托管模式,并且DO-PD120将消息#3释放到TPP-PD 112。
在框1323中,TPP-‘PD 110使用P使用TPP私钥解密消息#3,以披露RND#1、托管密码#1、消息#2、PD私钥#1和PD私钥#2。
在框1324中,TPP-‘PD 110使用P向DO-PD 120发送PD私钥#1。
在框1325中,DO-PD 120使用P使用PD私钥#1解密消息#1,以披露被存储为RND#2的RND#1。
在框1326中,DO-PD 120使用P将RND#2发送到TPP-‘PD 110。
然后,框1327执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框1323的驻留凭证RND#1和来自框1326的质询凭证RND#2。如果在确定凭证时使用了正确的密钥,则在框1231中,RND#1和RND#2是相同的。因此,在框1327中,TPP-‘PD110使用P将RND#1与RND#2进行比较。如果RND#1等于RND#2,则DO-PD 120被TPP-‘PD 110认证且框1327的结果是“Y”,而如果RND#1不等于RND#2,则认证失败且框1327的结果是“N”。
如果框1327的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框1328处停止。
如果框1327的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框1329,其中TPP-PD使用P向DO-PD 120发送PD私钥#2和托管密码#1。
在框1330中,DO-PD 120使用P使用PD私钥#2解密消息#2,以披露被重命名为托管密码#2的托管密码#1。
然后,框1331执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框1329的驻留凭证托管密码#1和来自框1330的质询凭证托管密码#2。如果在确定凭证时使用了正确的密钥,那么在框1331中,托管密码#1和托管密码#2是相同的。因此,在框1331中,DO-PD 120使用P将托管密码#1与托管密码#2进行比较。如果托管密码#1等于托管密码#2,则TPP-‘PD 110被DO-PD 120认证且框1331的结果是“Y”,而如果托管密码#1不等于托管密码#2,则框1331的结果是“N”。
如果框1331的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1332处停止。
如果框1331的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且DO-PD在框1333处解锁。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第十一实施例
第十一实施例排他性自托管方法在图14中示出为流程图1401和流程图1402,其中流程图1401包括用于在框1411-1417中锁定DO-PD 120的步骤,以及其中流程图1402包括用于随后在框1419-1432中解锁根据流程图1401的步骤锁定的DO-PD的步骤。除了明确说明之外,第十一实施例排他性自托管方法通常类似于前述实施例排他性自托管方法。
按照框122、123和124所示,可以根据流程图1401的步骤锁定DO-PD 120,如下所示。
在框1411中,TPP-PD使用P创建TPP密钥对作为TPP私钥和TPP公钥,并将TPP公钥提供给DO-PD 120。
在框1412中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建PD密钥对作为PD私钥和PD公钥。
在框1413中,DO-PD 120使用P创建随机数作为托管密码#1。
在框1414中,DO-PD 120使用P将托管密码#1使用PD公钥加密到消息#1。
在框1415中,DO-PD 120使用P将托管密码#1和PD私钥使用TPP公钥加密到消息#2。
在框1416中,DO-PD 120删除PD密钥对和托管密码#1。
在框1417中,DO-PD 120将消息#1和消息#2保存在DO-PD 120中。
在执行框1417之后,根据第十一实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图1401的步骤锁定的DO-PD 120可以根据流程图1402的步骤被解锁,如下所示。
在框1419中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框1420中,TPP-‘PD 110使用P,TPP 10创建被提交给DO-PD 120的特殊随机数SPLRND#1。
在框1421中,如果SPLRND#1以预定格式格式化,DO-PD 120验证SPLRND#1,并且按照框125所示,将DO-PD 120置于托管模式。
在框1422中,DO-PD 120将SPLRND#1和消息#2使用TPP公钥加密到消息#3。
在框1423中,TPP-‘PD 110从DO-PD 120接收消息#3。
在框1424中,TPP-‘PD 110使用TPP私钥解密消息#3,以披露被重命名为SPLRND#2的SPLRND#1和消息#2。
然后,框1425执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框1420的驻留凭证SPLRND#1和来自框1424的质询凭证SPLRND#2。如果在确定凭证时使用了正确的密钥,则在框1425中,SPLRND#1和SPLRND#2是相同的。因此,在框1425中,TPP-‘PD 110使用P将SPLRND#1与SPLRND#2进行比较。如果SPLRND#1等于SPLRND#2,则DO-PD 120被TPP-‘PD 110认证且框1425的结果是“Y”,而如果SPLRND#1不等于SPLRND#2,则认证失败且框1425的结果是“N”。
如果框1425的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框1426处停止。
如果框1425的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框1427,其中TPP-PD 112解密消息#2,以披露托管密码#1和PD私钥。
在框1428中,TPP-PD 112向DO-PD 120发送PD私钥和托管密码#1。
在框1429中,DO-PD 120使用PD私钥解密消息#1,以披露被重命名为托管密码#2的托管密码#1。
然后,框1430执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框1428的驻留凭证托管密码#1和来自框1429的质询凭证托管密码#2。如果在确定凭证时使用了正确的密钥,则在框1331中,托管密码#1和托管密码#2。因此,在框1430中,DO-PD 120使用P将托管密码#1与托管密码#2进行比较。如果托管密码#1等于托管密码#2,则TPP-‘PD 110被DO-PD 120认证且框1430的结果是“Y”,而如果托管密码#1不等于托管密码#2,则框1430的结果是“N”。
如果框1430的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1431处停止。
如果框1430的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且DO-PD在框1432处解锁。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第十二实施例
第十二实施例排他性自托管方法在图15中示出为流程图1501和流程图1502,其中流程图1501包括用于在框1511-1516中锁定DO-PD 120的步骤,以及其中流程图1502包括用于随后在框1518-1530中解锁根据流程图1501的步骤锁定的DO-PD的步骤。除了明确说明之外,第十三实施例排他性自托管方法通常类似于前述实施例排他性自托管方法。
按照框122、123和124所示,可以根据流程图1501的步骤锁定DO-PD 120,如下所示。
在框1511中,TPP-PD使用P创建TPP密钥对作为TPP私钥和TPP公钥,并将TPP公钥提供给DO-PD 120。
在框1512中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建被存储为托管密码的随机数。
在框1513中,DO-PD 120使用P将托管密码哈希为EPasscodeHash#1。
在框1514中,DO-PD 120使用P将EPasscodeHash#1使用TPP公钥加密到消息#1。
在框1515中,DO-PD 120使用P将EPasscodeHash#1和消息#1保存在DO-PD 120中。
在框1516中,DO-PD 120使用P删除托管密码。
在执行框1516之后,根据第十二实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图1501的步骤被锁定的DO-PD 120可以根据流程图1502的步骤解锁,如下所示。
在框1518中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框1519中,TPP-‘PD 110使用P创建特殊随机数SPLRND#1,并将其释放到DO-PD120。
在框1520中,如果SPLRND#1是预定的随机数池中的一个,DO-PD 120使用P验证SPLRND#1,并且按照框125所示,将DO-PD 120置于托管模式。
在框1521中,DO-PD 120使用P将SPLRND#1和消息#1使用TPP公钥加密到消息#2。
在框1522中,DO-PD 120使用P将TPP公钥和消息#2释放到TPP-PD 112。
在框1523中,TPP-PD 112使用P使用TPP私钥解密消息#2,以披露被重命名为SPLRND#2的SPLRND#1和消息#1。
然后,框1524执行测试,由此TPP-PD 112认证DO-PD 120。具体地,TPP-PD 112使用P来比较来自框1519的驻留凭证SPLRND#1和来自框1523的质询凭证SPLRND#2。如果在确定凭证时使用了正确的密钥,则在框1524中,SPLRND#1和SPLRND#2是相同的。因此,在框1524中,TPP-‘PD 110使用P将SPLRND#1与SPLRND#2进行比较。如果SPLRND#1等于SPLRND#2,则DO-PD 120被TPP-‘PD 110认证且框1524的结果是“Y”,而如果SPLRND#1不等于SPLRND#2,则认证失败且框1524的结果是“N”。
如果框1524的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框1525处停止。
如果框1524的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框1526,其中TPP-PD 112使用P使用TPP私钥解密消息#1,以披露被重命名为EPasscodeHash#2的EPasscodeHash#1。
在框1527中,TPP-PD 112使用P向DO-PD 120发送EPasscodeHash#2。
然后,框1528执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框1515的驻留凭证EPasscodeHash#1和来自框1527的质询凭证EPasscodeHash#2。如果在确定凭证时使用了正确的密钥,则在框1528中,EPasscodeHash#1等于EPasscodeHash#2。因此,在框1528中,DO-PD 120使用P将EPasscodeHash#1与EPasscodeHash#2进行比较。如果EPasscodeHash#1等于EPasscodeHash#2,则TPP-‘PD 110被DO-PD 120认证且框1528的结果是“Y”,而如果EPasscodeHash#1不等于EPasscodeHash#2,则框1528的结果是“N”。
如果框1528的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1529处停止。
如果框1528的结果是“Y”,则TPP-‘PD 110被认证到DO-PD 120,并且DO-PD在框1530处解锁。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第十三实施例
第十三实施例排他性自托管方法在图16中示出为流程图1601和流程图1602,其中流程图1601包括用于在框1611-1614中锁定DO-PD 120的步骤,以及其中流程图1602包括用于随后在框1603和1615-1625中解锁根据流程图1601的步骤锁定的DO-PD的步骤。除了明确说明之外,第十三实施例排他性自托管方法通常类似于前述实施例排他性自托管方法。
按照框122、123和124所示,可以根据流程图1601的步骤锁定DO-PD 120,如下所示。
在框1611中,TPP-‘PD 110使用P创建TPP密钥对作为TPP私钥和TPP公钥,并将TPP公钥提供给DO-PD 120。
在框1612中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P创建被存储为托管密码的随机数。
在框1613中,DO-PD 120使用P将托管密码使用TPP公钥加密到消息#1。
在框1614中,DO-PD 120使用P删除托管密码。
在执行框1614之后,根据第十三实施例排他性自托管方法锁定DO-PD 120。
按照框125、126、127和128所示,根据流程图1601的步骤被锁定的DO-PD 120可以根据流程图1602的步骤解锁,如下所示。
在框1603中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框1615中,TPP-‘PD 110使用P从随机数的子集创建随机数RND#1,并将RND#1释放到DO-PD 120。
在框1616中,按照框125所示,DO-PD 120使用P来验证RND#1是子集的成员并将PD置于托管模式。
在框1617中,DO-PD 120使用P将RND#1和消息#1使用TPP公钥加密到消息#2。
在框1618中,DO-PD 120使用P向TPP-PD 112释放TPP公钥和消息#2。
在框1619中,TPP-PD 112使用P使用TPP私钥解密消息#2,以披露被重命名为RND#2的RND#1和被重命名为消息#4的消息#1。
然后,框1620执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-‘PD 110使用P来比较来自框1615的驻留凭证RND#1和来自框1619的质询凭证RND#2。如果在确定凭证时使用了正确的密钥,则在框1620中,RND#1和RND#2是相同的。因此,在框1620中,TPP-‘PD110使用P将RND#1与RND#2进行比较。如果RND#1等于RND#2,则DO-PD 120被TPP-‘PD 110认证且框1620的结果是“Y”,而如果RND#1不等于RND#2,则认证失败且框1620的结果是“N”。
如果框1621的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框1525处停止。
如果框1622的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且解锁进行到框1526,其中TPP-PD 112使用P向DO-PD 120发送消息#4。
然后,框1623执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实提供商。具体地,DO-PD 120使用P来比较来自框1613的驻留凭证消息#1和来自框1622的质询凭证消息#4。如果在确定凭证时使用了正确的密钥,则在框1623中,消息#1等于消息#4。因此,在框1623中,DO-PD 120使用P将消息#1与消息#4进行比较。如果消息#1等于消息#4,则TPP-‘PD 110被DO-PD 120认证且框1623的结果是“Y”,而如果消息#1不等于消息#4,则框1623的结果是“N”。
如果框1623的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1624处停止。
如果框1623的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且DO-PD在框1625处解锁。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
第十四实施例
第十四实施例排他性自托管方法在图17中示出为流程图1701和流程图1702,其中流程图1701包括用于在框1711中锁定DO-PD 120的步骤,以及其中流程图1702包括用于随后在框1703和1712-1723中解锁根据流程图1701的步骤锁定的DO-PD的步骤。除了明确说明之外,第十四实施例排他性自托管方法通常类似于前述实施例排他性自托管方法。
按照框122和124所示,可以根据流程图1701的步骤锁定DO-PD 120,如下所示。
在框1711中,TPP-‘PD 110使用P创建TPP密钥对作为TPP私钥和TPP公钥,并将TPP公钥提供给DO-PD 120。
在框1712中,在DO 20与DO-PD 120接合之后,DO-PD 120使用P保存TPP公钥。
在执行框1712之后,根据第七实施例排他性自托管方法锁定DO-PD 120。该实施例与实施例1至13的不同之处在于,凭证是在DO-PD 120的解锁期间生成的。
按照框125、126、127和128所示,根据流程图1701的步骤被锁定的DO-PD 120可以根据流程图1002的步骤解锁,如下所示:
在框1713中,按照框113所示,TPP-‘PD 110接收经验证的解锁请求。
在框1714中,TPP-‘PD 110使用P从随机数的小的子集创建随机数RND#1,并将其释放到DO-PD 120。
在框1715中,按照框122所示,DO 20与DO-PD 120接合之后,DO-PD 120使用P验证RND#1,按照框125所示,将PD置于托管模式。
在框1716中,DO-PD 120使用P创建随机数RND#2。
在框1717中,DO-PD 120使用P将RND#1和RND#2使用TPP公钥加密到消息#1。
在框1718中,DO-PD 120使用P将消息#1释放到TPP-PD 112。
在框1719中,TPP-PD 112解密使用TPP私钥的消息#1,以披露RND#1、被重命名为RND#3的RND#2以及RND#4。
然后,框1720执行测试,由此TPP-‘PD 110认证DO-PD 120。具体地,TPP-PD 112使用P来比较来自框1712的驻留凭证RND#1和来自框1717的质询凭证RND#3。如果在确定凭证时使用了正确的密钥,则在框1718中,RND#1和RND#3是相同的。因此,在框1720中,TPP-‘PD110使用P将RND#1与RND#3进行比较。如果RND#1等于RND#3,则DO-PD 120被TPP-‘PD 110认证且框1720的结果是“Y”,而如果RND#1不等于RND#3,则认证失败且框1720的结果是“N”。
如果框1720的结果是“N”,则认证已经失败,并且DO-PD 120的解锁的执行在框1721处停止。
如果框1720的结果是“Y”,那么DO-PD 120被TPP-‘PD 110认证,并且DO-PD 120的解锁进行到框1722,其中TPP-PD 112使用P向DO-PD 120发送RND#4。
然后,框1723执行测试,由此DO-PD 120将TPP-‘PD 110认证为DO-PD 120的可信、真实的提供商。具体地,DO-PD 120使用P来比较来自框1714的驻留凭证RND#2和来自框1718的质询凭证RND#4。如果在确定凭证时使用了正确的密钥,则在框1723中,RND#2等于RND#4。因此,在框1723中,DO-PD 120使用P将RND#2与RND#4进行比较。如果RND#2等于RND#4,则TPP-‘PD 110被DO-PD 120认证且框1723的结果是“Y”,而如果RND#2不等于RND#4,则框1721的结果是“N”。
如果框1723的结果是“N”,则认证的步骤已经失败,并且DO-PD 120的解锁的执行在框1724处停止。
如果框1723的结果是“Y”,则TPP-‘PD 110被DO-PD 120认证,并且DO-PD在框1725处解锁。
随着DO-PD 120解锁,GA现在可以根据设备的授权访问DO-PD。
在此描述的每个方法的一个实施例是在处理系统上执行的计算机程序的形式。因此,如本领域技术人员将理解的是,本发明的实施例可以体现为方法、诸如专用装置的装置、诸如数据处理系统的装置或诸如计算机程序产品的载体介质。载体介质携带用于控制处理系统实现方法的一个或多个计算机可读代码段。因此,本发明的各方面可以采取方法、完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。此外,本发明可以采用携带包含在介质中的计算机可读程序代码段的载体介质(例如,计算机可读存储介质上的计算机程序产品)的形式。可以使用包括诸如软盘或硬盘的磁存储设备或者诸如CD-ROM的光存储设备的任何适当的计算机可读介质。
应当理解的是,在一个实施例中,所讨论的方法的步骤由执行存储在存储器中的指令(代码段)的处理系统(即,计算机)的适当处理器(或多个处理器)来执行。还应当理解的是,本发明不限于任何特定的实施方式或编程技术,并且本发明可以使用用于实施在此描述的功能的任何适当技术来实施。本发明不限于任何特定的编程语言或操作系统。
在说明书全文中,对“一个实施例”或“一实施例”的引用意味着结合该实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在本说明书的各个地方的出现的短语“在一个实施例中”或“在一实施例中”不一定都指同一实施例。此外,在一个或多个实施例中,特定特征、结构或特性可以以任何合适的方式组合,这对于本公开的领域的普通技术人员来说是显而易见的。
应当理解的是,本发明包括在此体现的所有不同组合。在说明书全文中,术语“包括”应是“包含”、“由……组成”或“其特征在于”的同义词,是包容性或开放性的,且不排除额外的、未列举元素或方法步骤。“包括”是专用术语,其意味着所命名的元素是必要的,但可以添加其他元素并仍然形成声明的范围内的构造。“包括”允许包含未指明的成分(即使是大量的成分)。
类似地,应当理解的是,在本发明的示例性实施例的上述描述中,出于简化公开并有助于理解各种发明方面中的一个或多个的目的,本发明的各种特征有时被组合在单个实施例、附图或其描述中。然而,本公开的方法不应被解释为反映所要求保护的发明需要比在每个权利要求中明确记载的更多特征的意图。相反,如下述权利要求所反映的,创造性方面在于少于单个前述公开的实施例的所有特征。因此,在详细描述之后的权利要求在此明确地并入到该详细描述中,每个权利要求作为本发明的单独实施例独立存在。
因此,尽管已经描述了被认为是本发明的优选实施例,但本领域技术人员将意识到,在不背离本发明的精神的情况下,可以对其进行其他和进一步的修改,并且旨在要求落入本发明范围内的所有这些改变和修改。例如,上述给出的任何公式仅仅是可以使用的程序的代表。可以从框图中添加、删除或组合功能,并且可以在功能块之间交换操作。对于在本发明范围内描述的方法,可以添加或删除步骤。
Claims (40)
1.一种用于具有第三方(third party,TP)域的TP解锁锁定的设备所有者的程序域(device owner’s program domain,DO-PD)的方法,所述方法包括:
所述TP域对所述DO-PD进行第一认证;
所述DO-PD对所述TP域进行第二认证;以及
在成功的第一认证和成功的第二认证后,解锁所述锁定的DO-PD。
2.根据权利要求1所述的方法,
其中,当第一凭证等于第二凭证时,所述TP域对所述DO-PD的第一认证成功,
其中,当第三凭证等于第四凭证时,所述第二认证成功,以及
其中,在所述DO-PD中生成、披露或存储所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证。
3.根据权利要求2所述的方法,其中,所述第一凭证和所述第三凭证是驻留凭证,以及其中,所述第二凭证和所述第四凭证是质询凭证。
4.根据权利要求2所述的方法,其中,所述第一凭证和所述第二凭证都在所述第一认证期间被披露或计算,以及其中,所述第三凭证和所述第四凭证都在所述第二认证期间被披露或计算。
5.根据权利要求2所述的方法,其中,所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证是密码、随机数、电子设备凭证的设备ID、所述PD和所述TP域的共享秘密密钥、加密的密码、加密的随机数、所述电子设备凭证的加密的设备ID、所述PD和所述TP域的加密的共享秘密密钥、密码、随机数、电子设备凭证的设备ID、所述PD和所述TP域的共享秘密密钥、哈希密码、哈希随机数、所述电子设备凭证的哈希设备ID或所述PD和所述TP域的哈希共享秘密密钥。
6.根据权利要求2所述的方法,其中,所述TP域具有包括TP公钥和TP私钥的相关联的TP密钥对,其中,使用所述TP密钥对的至少一个密钥披露或生成所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证。
7.根据权利要求2所述的方法,其中,所述DO-PD具有包括PD公钥和PD私钥的相关联的PD密钥对,其中,使用所述PD密钥对的至少一个密钥披露或生成所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证。
8.根据权利要求2所述的方法,其中,所述DO-PD和所述TP域具有共享秘密密钥,以及其中,使用所述共享秘密密钥披露或生成所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证。
9.根据权利要求1所述的方法,其中,所述第一认证或所述第二认证包括在所述DO-PD和所述TP域之间交换消息,其中,所述消息是凭证或所述消息包括凭证。
10.根据权利要求9所述的方法,其中,所述至少一个消息包括用于生成或披露凭证的密钥。
11.根据权利要求1所述的方法,其中,所述TP域包括包含在所述DO-PD内的第一子域TP-PD和不在所述DO-PD内的子域TP-‘PD。
12.根据权利要求1所述的方法,其中,所述DO-PD是水平程序域。
13.根据权利要求1所述的方法,其中,所述DO-PD在电子设备内。
14.根据权利要求13所述的方法,其中,所述电子设备是智能手机或计算机或平板电脑。
15.根据权利要求1所述的方法,其中,所述DO-PD是垂直程序域。
16.根据权利要求1所述的方法,其中,所述DO-PD包含数据库、文字处理器、电子表格、比特币钱包或移动保险箱。
17.根据权利要求2所述的方法,其中,所述TP是具有第一TP域的第一TP,其中,所述方法还包括具有第二TP域的第二TP,其中,所述方法还包括:
所述DO-PD对所述第二TP域进行第三认证,其中,当第五凭证等于第六凭证时,所述第三认证成功,以及其中,在所述DO-PD中生成、披露或存储所述第五凭证或所述第六凭证中的至少一个凭证;以及
其中,仅在成功的第三认证后,解锁所述锁定的DO-PD。
18.根据权利要求1所述的方法,其中,所述TP域对所述DO-PD进行的第一认证和所述DO-PD对所述TP域进行的第二认证是使用排他性自托管的相互认证。
19.根据权利要求1所述的方法,所述方法包括提供DO-PD中的TP子域TP-PD作为在所述第一认证或所述第二认证期间访问的工作空间。
20.一种用于具有第三方(third party,TP)域的TP解锁锁定的设备所有者的程序域(device owner’s program domain,DO-PD)的装置,其中,所述DO-PD具有存储器并被编程以执行以下步骤:
所述TP域对所述DO-PD进行第一认证;
所述DO-PD对所述TP域进行第二认证;以及
在成功的第一认证和成功的第二认证后,解锁所述锁定的DO-PD。
21.根据权利要求20所述的装置,
其中,当第一凭证等于第二凭证时,所述TP域对所述DO-PD的第一认证成功,
其中,当第三凭证等于第四凭证时,所述第二认证成功,以及
其中,在所述DO-PD中生成、披露或存储所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证。
22.根据权利要求21所述的装置,其中,所述第一凭证和所述第三凭证是驻留凭证,以及其中,所述第二凭证和所述第四凭证是质询凭证。
23.根据权利要求21所述的装置,其中,所述第一凭证和所述第二凭证都在所述第一认证期间被披露或计算,以及其中,所述第三凭证和所述第四凭证都在所述第二认证期间被披露或计算。
24.根据权利要求21所述的装置,其中,所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证是密码、随机数、电子设备凭证的设备ID、所述PD和所述TP域的共享秘密密钥、加密的密码、加密的随机数、所述电子设备凭证的加密的设备ID、所述PD和所述TP域的加密的共享秘密密钥、密码、随机数、电子设备凭证的设备ID、所述PD和所述TP域的共享秘密密钥、哈希密码、哈希随机数、所述电子设备凭证的哈希设备ID或所述PD和所述TP域的哈希共享秘密密钥。
25.根据权利要求21所述的装置,其中,所述TP域具有包括TP公钥和TP私钥的相关联的TP密钥对,其中,使用所述TP密钥对的至少一个密钥披露或生成所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证。
26.根据权利要求21所述的装置,其中,所述DO-PD具有包括PD公钥和PD私钥的相关联的PD密钥对,其中,使用所述PD密钥对的至少一个密钥披露或生成所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证。
27.根据权利要求21所述的装置,其中,所述DO-PD和所述TP域具有共享秘密密钥,以及其中,使用所述共享秘密密钥披露或生成所述第一凭证、所述第二凭证、所述第三凭证或所述第四凭证中的至少一个凭证。
28.根据权利要求20所述的装置,其中,所述第一认证或所述第二认证包括在所述DO-PD和所述TP域之间交换消息,其中,所述消息是凭证或所述消息包括凭证。
29.根据权利要求28所述的装置,其中,所述至少一个消息包括用于生成或披露凭证的密钥。
30.根据权利要求20所述的装置,其中,所述TP域包括包含在所述DO-PD内的第一子域TP-PD和不在所述DO-PD内的子域TP-‘PD。
31.根据权利要求20所述的装置,其中,所述DO-PD是水平程序域。
32.根据权利要求20所述的装置,其中,所述DO-PD在电子设备内。
33.根据权利要求32所述的装置,其中,所述电子设备是智能手机或计算机或平板电脑。
34.根据权利要求20所述的装置,其中,所述DO-PD是垂直程序域。
35.根据权利要求20所述的装置,其中,所述DO-PD包含数据库、文字处理器、电子表格、比特币钱包或移动保险箱。
36.根据权利要求20所述的装置,其中,所述TP是具有第一TP域的第一TP,其中,所述方法还包括具有第二TP域的第二TP,其中,所述方法还包括:
所述DO-PD对所述第二TP域进行第三认证,其中,当第五凭证等于第六凭证时,所述第三认证成功,以及其中,在所述DO-PD中生成、披露或存储所述第五凭证或所述第六凭证中的至少一个凭证;以及
其中,仅在成功的第三认证后,解锁所述锁定的DO-PD。
37.根据权利要求20所述的装置,其中,所述DO-PD并被编程以使用排他性自托管通过相互认证执行步骤:所述TP域对所述DO-PD进行的第一认证和所述DO-PD对所述TP域进行的第二认证的。
38.根据权利要求20所述的装置,其中所述DO-PD被编程以执行步骤:提供DO-PD中的TP子域TP-PD作为在所述第一认证或所述第二认证期间访问的工作空间。
39.所述方法基本上如图所示和描述。
40.所述装置基本上如图所示和描述。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63/086,373 | 2020-10-01 | ||
US202163167974P | 2021-03-30 | 2021-03-30 | |
US63/167,974 | 2021-03-30 | ||
PCT/US2021/052802 WO2022072595A1 (en) | 2020-10-01 | 2021-09-30 | Exclusive self-escrow method and apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116670672A true CN116670672A (zh) | 2023-08-29 |
Family
ID=87715805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180079937.0A Pending CN116670672A (zh) | 2020-10-01 | 2021-09-30 | 排他性自托管方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116670672A (zh) |
-
2021
- 2021-09-30 CN CN202180079937.0A patent/CN116670672A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10439811B2 (en) | Method for securing a private key on a mobile device | |
US7178025B2 (en) | Access system utilizing multiple factor identification and authentication | |
US6230272B1 (en) | System and method for protecting a multipurpose data string used for both decrypting data and for authenticating a user | |
US9049010B2 (en) | Portable data encryption device with configurable security functionality and method for file encryption | |
US20180034810A1 (en) | A system and methods for protecting keys in computerized devices operating versus a server | |
US10771467B1 (en) | External accessibility for computing devices | |
US10498712B2 (en) | Balancing public and personal security needs | |
US11115208B2 (en) | Protecting sensitive information from an authorized device unlock | |
US20180324158A1 (en) | Assuring external accessibility for devices on a network | |
JP2006120168A (ja) | 無許可の人によるパーソナル・コンピュータの使用を防止するためのセキュリティ方法 | |
EP2339777A2 (en) | Method of authenticating a user to use a system | |
CN116670672A (zh) | 排他性自托管方法及装置 | |
Nishimura et al. | Secure authentication key sharing between personal mobile devices based on owner identity | |
JP7431382B2 (ja) | 排他的自己エスクロー方法及び機器 | |
AU2020204174B2 (en) | Assuring external accessibility for devices on a network | |
AU2016429414B2 (en) | Balancing public and personal security needs |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40100709 Country of ref document: HK |