基于可信计算的解锁方法及装置与流程

文档序号:16812097发布日期:2019-02-10 13:46阅读:264来源:国知局
基于可信计算的解锁方法及装置与流程

本说明书一个或多个实施例涉及可信计算技术领域,尤其涉及一种基于可信计算的解锁方法及装置。



背景技术:

可信计算(trustedcomputing)是在计算和通信系统中广泛使用基于硬件安全模块支持下的可信计算平台,以提高系统整体的安全性。在相关技术中,硬件安全模块通常采用tpm(trustedplatformmodule,可信平台模块)实现,tpm可以根据可信赖计算组织(trustedcomputinggroup,tcg)发布的tpm规范,从跨平台和操作环境的硬件和软件两方面,制定可信赖电脑相关标准和规范,该tpm规范目前的最新版本是tpm2.0。



技术实现要素:

有鉴于此,本说明书一个或多个实施例提供一种基于可信计算的解锁方法及装置。

为实现上述目的,本说明书一个或多个实施例提供技术方案如下:

根据本说明书一个或多个实施例的第一方面,提出了一种基于可信计算的解锁方法,包括:

当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

当所述解锁授权码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

根据本说明书一个或多个实施例的第二方面,提出了一种基于可信计算的解锁装置,包括:

第一获取单元,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

第一解锁单元,当所述解锁授权码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

根据本说明书一个或多个实施例的第三方面,提出了一种基于可信计算的解锁方法,包括:

当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

当所述解锁授权码未通过验证时,确定针对所述解锁授权码的输入次数是否达到第二预设尝试次数;

当所述输入次数未达到所述第二预设尝试次数时,转入对所述解锁授权码的重新输入流程。

根据本说明书一个或多个实施例的第四方面,提出了一种基于可信计算的解锁方法,包括:

当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

当针对所述解锁授权码的输入次数达到第二预设尝试次数,且用户输入的所述解锁授权码均未通过验证时,获取用户输入的所有者特权码;

当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。

根据本说明书一个或多个实施例的第五方面,提出了一种基于可信计算的解锁装置,包括:

获取单元,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

确定单元,当所述解锁授权码未通过验证时,确定针对所述解锁授权码的输入次数是否达到第二预设尝试次数;

输入控制单元,当所述输入次数未达到所述第二预设尝试次数时,转入对所述解锁授权码的重新输入流程。

根据本说明书一个或多个实施例的第六方面,提出了一种基于可信计算的解锁装置,包括:

第一获取单元,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

第二获取单元,当针对所述解锁授权码的输入次数达到第二预设尝试次数,且用户输入的所述解锁授权码均未通过验证时,获取用户输入的所有者特权码;

重置单元,当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。

根据本说明书一个或多个实施例的第七方面,提出了一种基于可信计算的解锁方法,包括:

当目标保护对象被可信平台模块锁定时,获取用户输入的解锁码;

当所述解锁码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

根据本说明书一个或多个实施例的第八方面,提出了一种基于可信计算的解锁装置,包括:

获取单元,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁码;

解锁单元,当所述解锁码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

由以上技术方案可见,本说明书一个或多个实施例通过在解锁授权码通过验证时,向用户开放对目标保护对象的使用权限,而无需用户重新输入对该目标保护对象的使用授权码,不仅可以简化解锁操作,而且在用户确实遗忘使用授权码的情况下,可以确保用户能够基于解锁授权码而获得对目标保护对象的使用权限,有助于保证业务的连续性。同时,由于解锁授权码具有tpm规范中定义的最高解锁权限,因而基于解锁授权码来开放对目标保护对象的使用权限,不会带来相应的安全风险,从而在保证业务连续性的同时,能够确保业务安全性。

附图说明

图1a是一示例性实施例提供的一种基于可信计算的解锁方法的流程图。

图1b是一示例性实施例提供的另一种基于可信计算的解锁方法的流程图。

图1c是一示例性实施例提供的又一种基于可信计算的解锁方法的流程图。

图1d是一示例性实施例提供的又一种基于可信计算的解锁方法的流程图。

图2是一示例性实施例提供的一种tpm触发锁定和解锁过程的流程图。

图3是一示例性实施例提供的一种电子设备的结构示意图。

图4是一示例性实施例的一种tpm芯片的结构示意图。

图5是一示例性实施例提供的一种基于可信计算的解锁装置的框图。

图6是一示例性实施例提供的另一种基于可信计算的解锁装置的框图。

图7是一示例性实施例提供的又一种基于可信计算的解锁装置的框图。

图8是一示例性实施例提供的又一种基于可信计算的解锁装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。

本说明书一个或多个实施例通过在解锁授权码通过验证时,向用户开放对目标保护对象的使用权限,而无需用户重新输入对该目标保护对象的使用授权码,一方面可以简化解锁过程、保证业务连续性,另一方面在用户确实遗忘使用授权码的情况下,可以确保用户能够基于解锁授权码而获得对目标保护对象的使用权限、保证业务的连续性。

为对本说明书一个或多个实施例进行进一步说明,提供下列实施例:

图1a是一示例性实施例提供的一种基于可信计算的解锁方法的流程图。如图1a所示,该方法可以包括以下步骤:

步骤102a,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码。

在一实施例中,可以接收用户输入的针对所述目标保护对象的使用授权码,并当所述使用授权码未通过验证时,触发所述可信平台模块进入锁定(lockout)状态,以对所述目标保护对象进行锁定。在一种情况下,用户仅有一次对使用授权码的输入机会,当输入的使用授权码未通过验证时,将触发tpm进入锁定状态。在另一种情况下,用户可以具有对使用授权码的多次输入机会(该多次输入机会的数值可由tpm规范定义,也可以预先由tpm的管理用户自定义),则每次输入错误的使用授权码后,均可触发tpm在预设恢复时长(如tpm规范定义的恢复时长(recoverytime))内保持为锁定状态,以及在用户通过该多次输入机会输入的使用授权码均未通过验证时触发tpm保持锁定状态。

在一实施例中,若用户针对所述使用授权码的错误输入次数未达到第一预设尝试次数,可以在预设恢复时长内将所述可信平台模块保持为锁定状态,并在所述预设恢复时长后转入对所述使用授权码的重新输入流程,以使得用户可以重新输入使用授权码,以体现对用户输入错误的惩罚。

在一实施例中,若用户针对所述使用授权码的错误输入次数达到所述第一预设尝试次数,可以将所述可信平台模块保持为锁定状态,并转入对所述解锁授权码(lockoutauth)的输入流程,以获取用户输入的所述解锁授权码。在其他实施例中,还可以通过其他方式触发对解锁授权码的输入流程,比如在tpm进入锁定状态时,可供用户主动选取后续处理方式,比如该后续处理方式可以包括:对使用授权码的重新输入流程、对解锁授权码的输入流程、基于所有者特权码(ownerauth)的重置流程等,使得用户可以通过选择对解锁授权码的输入流程而实施对解锁授权码的输入操作、而无需在对使用授权码进行重新输入之前等待上述的预设恢复时长,也避免强制用户输入使用授权码、尤其是当用户确实遗忘使用授权码的情况下,有助于保证业务连续性。

步骤104a,当所述解锁授权码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

在一实施例中,由于用户仅需要输入解锁授权码、无需在输入解锁授权码后再次输入使用授权码,因而可以简化解锁过程、保证业务连续性;并且,在用户确实遗忘使用授权码的情况下,可以确保用户能够基于解锁授权码而获得对目标保护对象的使用权限、保证业务的连续性。同时,由于解锁授权码具有tpm规范中定义的最高解锁权限,因而基于解锁授权码来开放对目标保护对象的使用权限,不会带来相应的安全风险,从而在保证业务连续性的同时,能够确保业务安全性。

在一实施例中,当所述解锁授权码未通过验证,且针对所述解锁授权码的输入次数未达到第二预设尝试次数时,可以转入对所述解锁授权码的重新输入流程,从而在用户首次输入时由于误输入、记忆混淆等原因而导致输入错误的解锁授权码时,可以向用户提供重新输入解锁授权码的机会。其中,该第二预设尝试次数可以为tpm的管理用户预配置的自定义次数,从而使得该第二预设尝试次数符合用户的实际需求。

在一实施例中,在转入对所述解锁授权码的重新输入流程时,可以存在多种实施方式。在一实施方式中,可以无延迟地转入所述重新输入流程,以提升业务连续性;在另一实施方式中,可以在等待预设锁定恢复时长(如tpm规范定义的锁定恢复时长(lockoutrecovery)不为0)后,转入所述重新输入流程,以兼容相关技术中的tpm规范中关于lockoutrecovery的定义;在又一实施方式中,可以在实施重启操作(如上述的lockoutrecovery为0)后,转入所述重新输入流程,以使得重启过程中可以对底层固件的完整性进行验证,可以保障tpm运行环境的安全性。

在一实施例中,当针对所述解锁授权码的输入次数达到第二预设尝试次数,且用户输入的所述解锁授权码均未通过验证时,可以获取用户输入的所有者特权码;当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。通过为ownerauth增加了对使用授权码的重置功能,使得即便用户遗忘使用授权码和解锁授权码,仍然可以基于ownerauth来实现对目标保护对象的使用、保证业务连续性,而避免通过ownerauth对tpm的所有参数进行重置,防止在重置过程中导致tpm中的所有密码、策略等完全丢失而影响业务实现。由于ownerauth具有tpm规范中定义的最高权限,使得基于ownerauth实现对使用授权码的重置操作时,可以在保证业务连续性的同时,避免带来安全性风险。

在一实施例中,当所述所有者特权码通过验证时,可以对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限,从而无需用户重新输入重置后的使用授权码,有助于简化操作、保证业务连续性。

图1b是一示例性实施例提供的另一种基于可信计算的解锁方法的流程图。如图1b所示,该方法可以包括以下步骤:

步骤102b,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码。

在一实施例中,可以接收用户输入的针对所述目标保护对象的使用授权码,并当所述使用授权码未通过验证时,触发所述可信平台模块进入锁定(lockout)状态,以对所述目标保护对象进行锁定。在一种情况下,用户仅有一次对使用授权码的输入机会,当输入的使用授权码未通过验证时,将触发tpm进入锁定状态。在另一种情况下,用户可以具有对使用授权码的多次输入机会(该多次输入机会的数值可由tpm规范定义,也可以预先由tpm的管理用户自定义),则每次输入错误的使用授权码后,均可触发tpm在预设恢复时长(如tpm规范定义的恢复时长(recoverytime))内保持为锁定状态,以及在用户通过该多次输入机会输入的使用授权码均未通过验证时触发tpm保持锁定状态。

在一实施例中,若用户针对所述使用授权码的错误输入次数未达到第一预设尝试次数,可以在预设恢复时长内将所述可信平台模块保持为锁定状态,并在所述预设恢复时长后转入对所述使用授权码的重新输入流程,以使得用户可以重新输入使用授权码,以体现对用户输入错误的惩罚。

在一实施例中,若用户针对所述使用授权码的错误输入次数达到所述第一预设尝试次数,可以将所述可信平台模块保持为锁定状态,并转入对所述解锁授权码(lockoutauth)的输入流程,以获取用户输入的所述解锁授权码。在其他实施例中,还可以通过其他方式触发对解锁授权码的输入流程,比如在tpm进入锁定状态时,可供用户主动选取后续处理方式,比如该后续处理方式可以包括:对使用授权码的重新输入流程、对解锁授权码的输入流程、基于所有者特权码(ownerauth)的重置流程等,使得用户可以通过选择对解锁授权码的输入流程而实施对解锁授权码的输入操作、而无需在对使用授权码进行重新输入之前等待上述的预设恢复时长,也避免强制用户输入使用授权码、尤其是当用户确实遗忘使用授权码的情况下,有助于保证业务连续性。

步骤104b,当所述解锁授权码未通过验证时,确定针对所述解锁授权码的输入次数是否达到第二预设尝试次数。

步骤106b,当所述输入次数未达到所述第二预设尝试次数时,转入对所述解锁授权码的重新输入流程。

在一实施例中,在用户首次输入时由于误输入、记忆混淆等原因而导致输入错误的解锁授权码时,可以向用户提供重新输入解锁授权码的机会。其中,该第二预设尝试次数可以为tpm的管理用户预配置的自定义次数,从而使得该第二预设尝试次数符合用户的实际需求。

在一实施例中,在转入对所述解锁授权码的重新输入流程时,可以存在多种实施方式。在一实施方式中,可以无延迟地转入所述重新输入流程,以提升业务连续性;在另一实施方式中,可以在等待预设锁定恢复时长(如tpm规范定义的锁定恢复时长(lockoutrecovery)不为0)后,转入所述重新输入流程,以兼容相关技术中的tpm规范中关于lockoutrecovery的定义;在又一实施方式中,可以在实施重启操作(如上述的lockoutrecovery为0)后,转入所述重新输入流程,以使得重启过程中可以对底层固件的完整性进行验证,可以保障tpm运行环境的安全性。

在一实施例中,当针对所述解锁授权码的输入次数达到第二预设尝试次数,且用户输入的所述解锁授权码均未通过验证时,可以获取用户输入的所有者特权码;当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。通过为ownerauth增加了对使用授权码的重置功能,使得即便用户遗忘使用授权码和解锁授权码,仍然可以基于ownerauth来实现对目标保护对象的使用、保证业务连续性,而避免通过ownerauth对tpm的所有参数进行重置,防止在重置过程中导致tpm中的所有密码、策略等完全丢失而影响业务实现。由于ownerauth具有tpm规范中定义的最高权限,使得基于ownerauth实现对使用授权码的重置操作时,可以在保证业务连续性的同时,避免带来安全性风险。

在一实施例中,当所述所有者特权码通过验证时,可以对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限,从而无需用户重新输入重置后的使用授权码,有助于简化操作、保证业务连续性。

图1c是一示例性实施例提供的又一种基于可信计算的解锁方法的流程图。如图1c所示,该方法可以包括以下步骤:

步骤102c,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码。

在一实施例中,可以接收用户输入的针对所述目标保护对象的使用授权码,并当所述使用授权码未通过验证时,触发所述可信平台模块进入锁定(lockout)状态,以对所述目标保护对象进行锁定。在一种情况下,用户仅有一次对使用授权码的输入机会,当输入的使用授权码未通过验证时,将触发tpm进入锁定状态。在另一种情况下,用户可以具有对使用授权码的多次输入机会(该多次输入机会的数值可由tpm规范定义,也可以预先由tpm的管理用户自定义),则每次输入错误的使用授权码后,均可触发tpm在预设恢复时长(如tpm规范定义的恢复时长(recoverytime))内保持为锁定状态,以及在用户通过该多次输入机会输入的使用授权码均未通过验证时触发tpm保持锁定状态。

在一实施例中,若用户针对所述使用授权码的错误输入次数未达到第一预设尝试次数,可以在预设恢复时长内将所述可信平台模块保持为锁定状态,并在所述预设恢复时长后转入对所述使用授权码的重新输入流程,以使得用户可以重新输入使用授权码,以体现对用户输入错误的惩罚。

在一实施例中,若用户针对所述使用授权码的错误输入次数达到所述第一预设尝试次数,可以将所述可信平台模块保持为锁定状态,并转入对所述解锁授权码(lockoutauth)的输入流程,以获取用户输入的所述解锁授权码。在其他实施例中,还可以通过其他方式触发对解锁授权码的输入流程,比如在tpm进入锁定状态时,可供用户主动选取后续处理方式,比如该后续处理方式可以包括:对使用授权码的重新输入流程、对解锁授权码的输入流程、基于所有者特权码(ownerauth)的重置流程等,使得用户可以通过选择对解锁授权码的输入流程而实施对解锁授权码的输入操作、而无需在对使用授权码进行重新输入之前等待上述的预设恢复时长,也避免强制用户输入使用授权码、尤其是当用户确实遗忘使用授权码的情况下,有助于保证业务连续性。

步骤104c,当针对所述解锁授权码的输入次数达到第二预设尝试次数,且用户输入的所述解锁授权码均未通过验证时,获取用户输入的所有者特权码。

在一实施例中,当所述解锁授权码未通过验证,且针对所述解锁授权码的输入次数未达到第二预设尝试次数时,可以转入对所述解锁授权码的重新输入流程,从而在用户首次输入时由于误输入、记忆混淆等原因而导致输入错误的解锁授权码时,可以向用户提供重新输入解锁授权码的机会。其中,该第二预设尝试次数可以为tpm的管理用户预配置的自定义次数,从而使得该第二预设尝试次数符合用户的实际需求。

在一实施例中,在转入对所述解锁授权码的重新输入流程时,可以存在多种实施方式。在一实施方式中,可以无延迟地转入所述重新输入流程,以提升业务连续性;在另一实施方式中,可以在等待预设锁定恢复时长(如tpm规范定义的锁定恢复时长(lockoutrecovery)不为0)后,转入所述重新输入流程,以兼容相关技术中的tpm规范中关于lockoutrecovery的定义;在又一实施方式中,可以在实施重启操作(如上述的lockoutrecovery为0)后,转入所述重新输入流程,以使得重启过程中可以对底层固件的完整性进行验证,可以保障tpm运行环境的安全性。

步骤106c,当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。

在一实施例中,通过为ownerauth增加了对使用授权码的重置功能,使得即便用户遗忘使用授权码和解锁授权码,仍然可以基于ownerauth来实现对目标保护对象的使用、保证业务连续性,而避免通过ownerauth对tpm的所有参数进行重置,防止在重置过程中导致tpm中的所有密码、策略等完全丢失而影响业务实现。由于ownerauth具有tpm规范中定义的最高权限,使得基于ownerauth实现对使用授权码的重置操作时,可以在保证业务连续性的同时,避免带来安全性风险。

在一实施例中,当所述所有者特权码通过验证时,可以对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限,从而无需用户重新输入重置后的使用授权码,有助于简化操作、保证业务连续性。

图1d是一示例性实施例提供的又一种基于可信计算的解锁方法的流程图。如图1d所示,该方法可以包括以下步骤:

步骤102d,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁码。

在一实施例中,可以接收用户输入的针对所述目标保护对象的使用授权码,并当所述使用授权码未通过验证时,触发所述可信平台模块进入锁定(lockout)状态,以对所述目标保护对象进行锁定。在一种情况下,用户仅有一次对使用授权码的输入机会,当输入的使用授权码未通过验证时,将触发tpm进入锁定状态。在另一种情况下,用户可以具有对使用授权码的多次输入机会(该多次输入机会的数值可由tpm规范定义,也可以预先由tpm的管理用户自定义),则每次输入错误的使用授权码后,均可触发tpm在预设恢复时长(如tpm规范定义的恢复时长(recoverytime))内保持为锁定状态,以及在用户通过该多次输入机会输入的使用授权码均未通过验证时触发tpm保持锁定状态。

在一实施例中,若用户针对所述使用授权码的错误输入次数未达到第一预设尝试次数,可以在预设恢复时长内将所述可信平台模块保持为锁定状态,并在所述预设恢复时长后转入对所述使用授权码的重新输入流程,以使得用户可以重新输入使用授权码,以体现对用户输入错误的惩罚。

在一实施例中,若用户针对所述使用授权码的错误输入次数达到所述第一预设尝试次数,可以将所述可信平台模块保持为锁定状态,并转入对解锁码的输入流程,以获取用户输入的解锁码。例如,该解锁码可以为tpm规范定义的解锁授权码(lockoutauth),当然本说明书并不对此限制。在其他实施例中,还可以通过其他方式触发对解锁码的输入流程,比如在tpm进入锁定状态时,可供用户主动选取后续处理方式,比如该后续处理方式可以包括:对使用授权码的重新输入流程、对解锁码的输入流程、基于所有者特权码(ownerauth)的重置流程等,使得用户可以通过选择对解锁码的输入流程而实施对解锁码的输入操作、而无需在对使用授权码进行重新输入之前等待上述的预设恢复时长,也避免强制用户输入使用授权码、尤其是当用户确实遗忘使用授权码的情况下,有助于保证业务连续性。

步骤104d,当所述解锁码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

在一实施例中,由于用户仅需要输入解锁码、无需在输入解锁码后再次输入使用授权码,因而可以简化解锁过程、保证业务连续性;并且,在用户确实遗忘使用授权码的情况下,可以确保用户能够基于解锁码而获得对目标保护对象的使用权限、保证业务的连续性。

在一实施例中,当所述解锁码未通过验证,且针对所述解锁码的输入次数未达到第二预设尝试次数时,可以转入对所述解锁码的重新输入流程,从而在用户首次输入时由于误输入、记忆混淆等原因而导致输入错误的解锁码时,可以向用户提供重新输入解锁码的机会。其中,该第二预设尝试次数可以为tpm的管理用户预配置的自定义次数,从而使得该第二预设尝试次数符合用户的实际需求。

在一实施例中,在转入对所述解锁码的重新输入流程时,可以存在多种实施方式。在一实施方式中,可以无延迟地转入所述重新输入流程,以提升业务连续性;在另一实施方式中,可以在等待预设锁定恢复时长(如tpm规范定义的锁定恢复时长(lockoutrecovery)不为0)后,转入所述重新输入流程,以兼容相关技术中的tpm规范中关于lockoutrecovery的定义;在又一实施方式中,可以在实施重启操作(如上述的lockoutrecovery为0)后,转入所述重新输入流程,以使得重启过程中可以对底层固件的完整性进行验证,可以保障tpm运行环境的安全性。

在一实施例中,当针对所述解锁码的输入次数达到第二预设尝试次数,且用户输入的所述解锁码均未通过验证时,可以获取用户输入的所有者特权码;当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。通过为ownerauth增加了对使用授权码的重置功能,使得即便用户遗忘使用授权码和解锁码,仍然可以基于ownerauth来实现对目标保护对象的使用、保证业务连续性,而避免通过ownerauth对tpm的所有参数进行重置,防止在重置过程中导致tpm中的所有密码、策略等完全丢失而影响业务实现。由于ownerauth具有tpm规范中定义的最高权限,使得基于ownerauth实现对使用授权码的重置操作时,可以在保证业务连续性的同时,避免带来安全性风险。

在一实施例中,当所述所有者特权码通过验证时,可以对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限,从而无需用户重新输入重置后的使用授权码,有助于简化操作、保证业务连续性。

通过上述实施例,在一定程度上兼容现有tpm规范的情况下,可以通过对部分策略的改进,在确保安全性的前提下,保证业务连续性,尽可能地降低对业务实现的影响。

图2是一示例性实施例提供的一种tpm触发锁定和解锁过程的流程图。如图2所示,该方法可以包括以下步骤:

步骤202,收到对象使用请求。

在一实施例中,对象使用请求可以由用户直接发起,或者由用户通过设备上运行的软件程序或硬件模块而发起,以用于尝试获得对任一对象的使用权限。其中,当对象使用请求的请求对象为tpm配置的目标保护对象时,可以通过本实施例的技术方案来实施对该目标保护对象的安全保护。

步骤204,获取使用授权码。

在一实施例中,使用授权码被配置为用于获取目标保护对象的使用权限;换言之,tpm通过验证用户输入的针对该目标保护对象的使用授权码是否正确,以确定该用户是否能够获得针对该目标保护对象的使用权限。

步骤206,当使用授权码正确时,转入步骤208a;当使用授权码错误时,转入步骤208b。

步骤208a,向用户授权使用该目标保护对象。

在一实施例中,当步骤206中判定用户输入的使用授权码正确时,可以向该用户授权使用该目标保护对象,即使得该用户获得针对该目标保护对象的使用权限。

在一实施例中,当步骤206中判定用户输入的使用授权码错误时,tpm触发锁定状态,使得针对该目标保护对象进行锁定,但用户仍然可以通过下文中的其他步骤予以解锁,并在解锁成功后,转入步骤208a获得对该目标保护对象的使用权限。下文将对该解锁过程进行详述。

步骤208b,对目标保护对象进行锁定。

在本实施例中,提供了针对锁定状况的多种解锁方式,比如下文将会详述的方式①、方式②、方式③等,可以根据实际情况选择采用的解锁方式,本说明书并不对此进行限制。在一些场景中,用户可能习惯于依次尝试方式①、方式②、方式③,但本说明书并不对此进行限制。

假定用户选择方式①,可以转入步骤210。

步骤210,将使用授权码尝试次数自减一(即“-1”)。

步骤212,当使用授权码尝试次数降至0时,转入步骤216;当使用授权码尝试次数不为0(大于0)时,转入步骤214。

在一实施例中,在tpm规范中定义了表示“最大尝试次数”的参数maxtries,该参数maxtries包含一预定义数值,用于表征上述的“最大尝试次数”。该参数maxtries可以采用tpm规范中定义的默认数值,或者tpm的管理用户配置的自定义数值。

同时,tpm规范中定义了表示“使用授权码尝试次数”的参数failedtries,该参数failedtries包含一预定义数值,用于表征上述的“使用授权码尝试次数”。当本实施例中在步骤210-212中采用“递减”的处理方式时,参数failedtries的初始值可以为上述参数maxtries的取值。例如,假定参数failedtries的初始值=参数maxtries的取值=5,那么经过步骤210-212后该参数failedtries的取值自减一、使得参数failedtries的取值由5变为4,此时转入步骤214;而当经过若干次步骤210-212之后,如果参数failedtries的取值在某一次由1变为0,此时转入步骤216。

在其他实施例中,在步骤210-212中还可以采用“递增”的处理方式,那么当使用授权码尝试次数升至参数maxtries的取值时,转入步骤216;当使用授权码尝试次数不为参数maxtries的取值(小于参数maxtries的取值)时,转入步骤214。例如,假定参数maxtries的取值=5,而参数failedtries的初始值为0,那么经过步骤210-212后该参数failedtries的取值自加一、使得参数failedtries的取值由0变为1≠5,此时转入步骤214;而当经过若干次步骤210-212之后,如果参数failedtries的取值在某一次由4变为5,此时转入步骤216。

步骤214,等待恢复时长后,返回步骤204。

在一实施例中,在tpm规范中定义了表示“恢复时长”的参数recoverytime,该参数recoverytime也可以理解为是参数failedtries的变化速率(当采用递减处理方式时,即递减速率;当采用递增处理方式时,即递增速率)。在该参数recoverytime超时之前,tpm保持对目标保护对象的锁定状态,使得用户无法实施对使用授权码的输入操作;直至参数recoverytime超时后,通过返回步骤204,使得用户可以重新输入新的使用授权码。

可见,在上述方式①中,由于必须等待该参数recoverytime定义的时长,可能无法满足用户的业务连续性需求。为此,可以通过上述的其他方式进行处理。

假定用户选择方式②,可以转入步骤216。

步骤216,获取用户输入的解锁授权码。

在一实施例中,当用户直至使用授权码尝试次数=0、仍然未能够输入正确的使用授权码,可以从步骤212转入步骤216,以通过方式②继续进行解锁。

在一实施例中,如果用户存在较强的业务连续性需求、不希望等待步骤214中的恢复时长超时,可以在步骤208b之后选择直接转入步骤216、而避免转入步骤210,从而尽快通过解锁授权码来获得对目标保护对象的使用授权。

步骤218,当解锁授权码正确时,可以转入步骤208a;当解锁授权码错误时,可以转入步骤220。

在一实施例中,通过在解锁授权码正确的情况下,直接转入步骤208a而获得对目标保护对象的使用授权,使得在用户由于误输入等原因导致输入的使用授权码存在错误的情况下,可以通过输入解锁授权码来快速获得针对目标保护对象的使用授权,有助于提升业务连续性、满足用户的业务连续性需求。同时,当用户确实遗忘了使用授权码时,可以通过解锁授权码来获得对目标保护对象的使用授权,而避免对使用授权码的强制输入;其中,由于解锁授权码在tpm规范中具有最高解锁权限,因而在根据解锁授权码而向用户赋予对目标保护对象的使用授权时,并不会带来安全风险、具有足够的安全性保证。

步骤220,解锁授权码尝试次数自减一(即“-1”)。

步骤222,当解锁授权码尝试次数降至0时,转入步骤224;当解锁授权码尝试次数不为0(大于0)时,返回步骤216。

在一实施例中,在tpm规范中定义了表示“解锁授权码最大尝试次数”的参数lockoutauthtries,该参数lockoutauthtries包含一预定义数值,用于表征上述的“解锁授权码最大尝试次数”。该参数lockoutauthtries可以采用tpm规范中定义的默认数值,或者tpm的管理用户配置的自定义数值。

当本实施例中在步骤220-222中采用“递减”的处理方式时,假定参数lockoutauthtries的初始值=5,那么经过步骤220-222后该参数lockoutauthtries的取值自减一、使得参数lockoutauthtries的取值由5变为4,此时转入步骤216;而当经过若干次步骤220-222之后,如果参数lockoutauthtries的取值在某一次由1变为0,此时转入步骤224。

在其他实施例中,在步骤220-222中还可以采用“递增”的处理方式,那么当解锁授权码尝试次数升至参数lockoutauthtries的取值时,转入步骤224;当使用授权码尝试次数不为参数lockoutauthtries的取值(小于参数lockoutauthtries的取值)时,返回步骤216。此处不再赘述。

在一实施例中,以递减处理方式为例。当解锁授权码尝试次数不为0(大于0)时,可以无延迟地返回步骤216,以使得用户能够无延迟地重新输入解锁授权码、无需等待,有助于提升用户对解锁授权码的输入效率,从而提升业务连续性。

在一实施例中,以递减处理方式为例。在tpm规范中定义了表示“锁定恢复时长”的参数lockoutrecovery。当解锁授权码尝试次数不为0(大于0)时,如果该参数lockoutrecovery不为0,比如10s,那么在该参数lockoutrecovery超时之前,tpm保持对目标保护对象的锁定状态,使得用户无法实施对解锁授权码的输入操作;直至参数lockoutrecovery超时后,通过返回步骤216,使得用户可以重新输入新的解锁授权码。

在一实施例中,以递减处理方式为例。当解锁授权码尝试次数不为0(大于0)时,如果该参数lockoutrecovery为0,可以触发系统重启,以在重启后返回步骤216实施对解锁授权码的重新输入。

在一实施例中,可以根据实际情况确定由步骤222返回步骤216时,是否无延迟地返回、等待lockoutrecovery超时后返回或系统重启后返回;例如,当安全风险较低时,可以选择无延迟地返回步骤216,当风险较高时可以选择等待lockoutrecovery超时后返回步骤216,当风险极高时可以选择系统重启后返回步骤216。当然,还可以通过其他方式进行选择和配置,本说明书并不对此进行限制。

步骤224,获取用户输入的所有者特权码。

步骤226,当所有者特权码通过验证时,重置使用授权码,以使得用户获得对目标保护对象的使用授权。

在一实施例中,当用户未能够正确输入解锁授权码时,可以通过所有者特权码对使用授权码进行重置;那么,可以基于该解锁授权码向用户直接赋予对目标保护对象的使用授权,或者可以由用户输入重置后的使用授权码、以获得对目标保护对象的使用授权。

在一实施例中,tpm规范中定义了lockoutauthreset指令,用于对锁定参数进行重置,而本实施例中可以为该lockoutauthreset指令添加对使用授权码的重置功能,从而在所有者特权码通过验证时,可以基于该lockoutauthreset指令对使用授权码进行重置,以便用户快速获得目标保护对象的使用授权、保证业务连续性。在其他实施例中,可以通过其他指令实现对使用授权码的重置功能,本说明书并不对此进行限制。

在一实施例中,由于所有者特权码在tpm规范中具有最高操作权限,因而基于所有者特权码对使用授权码进行重置操作,可以在确保安全性的前提下,便于用户快速获得目标保护对象的使用授权、保证业务连续性。

假定用户选择方式③,可以转入步骤228。

步骤228,通过用户输入的所有者特权码进行系统重置。

在一实施例中,当用户输入的所有者特权码通过验证时,可以通过bios(basicinputoutputsystem,基本输入输出系统)执行tpm_clear指令,以将tpm系统重置为初始化状态,使得tpm中定义的密码、策略等数据均被清空,用户可以通过重置使用授权码等方式,获得目标保护对象的使用授权。

在本说明书的一个或多个实施例中,涉及到使用授权码、解锁授权码、所有者特权码等,这些授权码或特权码可以采用相关技术中的任意方式予以表征,例如在一实施例中,可以采用口令(password)形式,再例如在另一实施例中,可以采用特定信息的数字摘要,比如硬盘编号的哈希值等,本说明书并不对此进行限制。

图3是一示例性实施例的一种电子设备的结构示意图。请参考图3,在硬件层面,该电子设备包括处理器302、内部总线304、网络接口306、内存308、非易失性存储器310以及tpm芯片312,当然还可能包括其他业务所需要的硬件。图4是一示例性实施例的一种tpm芯片的结构示意图。请参考图4,在硬件层面,该tpm芯片312包括主处理器312a、加密模块312b、接口模块312c、内存312d以及非易失性存储器312e,当然还可能包括其他业务所需要的硬件。

在一实施例中,tpm芯片312在实现可信计算的过程中,主处理器312a完成对整个tpm芯片312的控制,加密模块312b完成对称密码算法、杂凑算法等密码算法,接口模块312c用于与上述电子设备中的内部总线304进行连接,内存312d用于存储中间结果,非易失性存储器312e用于存储芯片操作系统。其中,处理器312a可以从非易失性存储器312e中读取芯片操作系统的程序数据到内存312d中然后运行,在逻辑层面上形成基于可信计算的解锁装置。

在另一实施例中,可由tpm芯片312与电子设备中的其他功能部件之间配合,比如处理器312a可以从非易失性存储器312e中读取芯片操作系统的程序数据到内存312d中并运行,以及处理器302从非易失性存储器310中读取对应的计算机程序到内存308中并运行,从而共同在逻辑层面上形成基于可信计算的解锁装置。

当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。

请参考图5,在软件实施方式中,该基于可信计算的解锁装置可以包括:

第一获取单元51,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

第一解锁单元52,当所述解锁授权码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

可选的,还包括:

接收单元53,接收用户输入的针对所述目标保护对象的使用授权码;

触发单元54,当所述使用授权码未通过验证时,触发所述可信平台模块进入锁定状态,以对所述目标保护对象进行锁定。

可选的,所述触发单元54具体用于:

若用户针对所述使用授权码的错误输入次数未达到第一预设尝试次数,在预设恢复时长内将所述可信平台模块保持为锁定状态,并在所述预设恢复时长后转入对所述使用授权码的重新输入流程;

若用户针对所述使用授权码的错误输入次数达到所述第一预设尝试次数,将所述可信平台模块保持为锁定状态,并转入对所述解锁授权码的输入流程,以获取用户输入的所述解锁授权码。

可选的,还包括:

输入控制单元55,当所述解锁授权码未通过验证,且针对所述解锁授权码的输入次数未达到第二预设尝试次数时,转入对所述解锁授权码的重新输入流程。

可选的,所述输入控制单元55通过下述任一方式,转入对所述解锁授权码的重新输入流程:

无延迟地转入所述重新输入流程;

在等待预设锁定恢复时长后,转入所述重新输入流程;

在实施重启操作后,转入所述重新输入流程。

可选的,还包括:

第二获取单元56,当针对所述解锁授权码的输入次数达到第二预设尝试次数,且用户输入的所述解锁授权码均未通过验证时,获取用户输入的所有者特权码;

重置单元57,当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。

可选的,还包括:

第二解锁单元58,当所述所有者特权码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

可选的,所述第二预设尝试次数包括所述可信平台模块的管理用户预配置的自定义次数。

请参考图6,在软件实施方式中,该基于可信计算的解锁装置可以包括:

获取单元61,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

确定单元62,当所述解锁授权码未通过验证时,确定针对所述解锁授权码的输入次数是否达到第二预设尝试次数;

输入控制单元63,当所述输入次数未达到所述第二预设尝试次数时,转入对所述解锁授权码的重新输入流程。

可选的,所述第二预设尝试次数包括所述可信平台模块的管理用户预配置的自定义次数。

请参考图7,在软件实施方式中,该基于可信计算的解锁装置可以包括:

第一获取单元71,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁授权码;

第二获取单元72,当针对所述解锁授权码的输入次数达到第二预设尝试次数,且用户输入的所述解锁授权码均未通过验证时,获取用户输入的所有者特权码;

重置单元73,当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。

请参考图8,在软件实施方式中,该基于可信计算的解锁装置可以包括:

第一获取单元81,当目标保护对象被可信平台模块锁定时,获取用户输入的解锁码;

第一解锁单元82,当所述解锁码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

可选的,还包括:

接收单元83,接收用户输入的针对所述目标保护对象的使用授权码;

触发单元84,当所述使用授权码未通过验证时,触发所述可信平台模块进入锁定状态,以对所述目标保护对象进行锁定。

可选的,所述触发单元84具体用于:

若用户针对所述使用授权码的错误输入次数未达到第一预设尝试次数,在预设恢复时长内将所述可信平台模块保持为锁定状态,并在所述预设恢复时长后转入对所述使用授权码的重新输入流程;

若用户针对所述使用授权码的错误输入次数达到所述第一预设尝试次数,将所述可信平台模块保持为锁定状态,并转入对所述解锁码的输入流程,以获取用户输入的所述解锁码。

可选的,还包括:

输入控制单元85,当所述解锁码未通过验证,且针对所述解锁码的输入次数未达到第二预设尝试次数时,转入对所述解锁码的重新输入流程。

可选的,所述输入控制单元85通过下述任一方式,转入对所述解锁码的重新输入流程:

无延迟地转入所述重新输入流程;

在等待预设锁定恢复时长后,转入所述重新输入流程;

在实施重启操作后,转入所述重新输入流程。

可选的,还包括:

第二获取单元86,当针对所述解锁码的输入次数达到第二预设尝试次数,且用户输入的所述解锁码均未通过验证时,获取用户输入的所有者特权码;

重置单元87,当所述所有者特权码通过验证时,转入对所述目标保护对象的使用授权码的重置流程。

可选的,还包括:

第二解锁单元88,当所述所有者特权码通过验证时,对所述目标保护对象进行解锁,以开放用户对所述目标保护对象的使用权限。

可选的,所述第二预设尝试次数包括所述可信平台模块的管理用户预配置的自定义次数。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

在一个典型的配置中,计算机包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1