密码安全性的制作方法

文档序号:18744743发布日期:2019-09-21 02:12阅读:173来源:国知局
密码安全性的制作方法

已采用各种不法技术来破坏帐户安全性。通常直到很久之后才发现违规行为,并且利用现有技术很难确定谁应对违规行为负责。

附图说明

附图示出了在本申请中传达的概念的实现方式。通过参考以下结合附图的描述,能够更容易地理解所示出的实现方式的特征。在各个附图中只要可行就使用相似的附图标记来表示相似的元件。此外,每个附图标记最左边的数字表示首次引入该附图标记的附图和相关联的讨论。

图1A-图1B和图5根据一些实现方式示出了可以应用本文的密码重置安全性概念的示例性系统。

图2-图4根据一些实现方式示出了示例性密码重置安全性方法。

具体实施方式

本文的概念涉及帐户安全性。帐户安全性的一个方面涉及重置保护帐户的密码。通常,不保留与密码改变相关联的条件有关的信息。因此,如果不法行为者能够使密码重置,则该不法行为者能够使用新密码来登录帐户并损害该帐户。此外,很少或没有证据可用于识别不法行为者。本文的概念收集并存储与请求密码重置的用户有关的信息。当使用新密码来访问帐户时可以评估该信息以确定用户是合法的还是不法的,并且可以采取适当的动作来保护帐户。

图1A和图1B共同示出了与系统100相关的示例性帐户保护场景。该系统包括帐户102(例如,用户帐户)。该帐户由基于云的资源或云资源104维护,该基于云的资源或云资源104可以包括多个服务器或服务器设备106。该帐户可以受到各种安全性措施的保护,例如需要密码来访问该帐户。本地或客户端设备108可以经由网络110(由闪电表示)与基于云的资源104通信。用户112可以使用客户端设备108来访问帐户102。

出于解释的目的,假设在实例一,用户112想要访问帐户并请求帐户密码重置114。基于云的资源104可以收集与用户112有关的信息作为密码重置过程的一部分。例如,基于云的资源可以请求与用户相关联的信息(例如,请求用户信息116)。此类信息中的一些信息可以从客户端设备获得,例如客户端设备的序列号、客户端设备的互联网协议(IP)地址和/或日期/时间、以及其它信息。此类信息中的一些信息可以直接从用户获得。例如,用户可能在密码重置过程期间提供(或被请求提供)个人标识号(PIN)。此外,用户可以建立(或被请求建立)客户端设备与他/她拥有的另一设备之间的通信。例如,用户可能具有他/她拥有的可认证设备118。可认证设备的示例可以是防篡改设备,该防篡改设备存储加密信息,例如与公钥基础设施(PKI)相关联的私钥和公钥(例如,公钥/私钥对)。可认证设备118可以增加用户信息的可信度。例如,PKI可以用于在从客户端设备获得的用户信息上创建数字签名。

在实例二,基于云的资源104可以在120处收集用户信息并存储该用户信息,例如存储在数据库(DB)122中。基于云的资源可以重置密码并以预先定义的方式向用户112发送新密码124,例如通过将新密码发送到与账户102相关联的电子邮件地址(例如,在账户设置时定义的账户联系人)。

图1B涉及使用新密码来登录帐户102。在实例三,基于云的资源104接收到具有新密码的登录请求126。在该情况下,从与图1A中相同的客户端设备108接收登录请求,但是可以使用不同的客户端设备。在128处,基于云的资源的服务器设备106可以评估与获得新用户密码相关联的所存储用户信息。在评估中可以采用各种技术。例如,简单评估可以确定用户信息的每个字段是否具有值(例如,不为空)。例如,如果IP地址为空,则可能指示密码是用不法方式获得的。例如,可能通过入侵基于云的资源获得了密码重置,以使得生成密码重置而无需存储相关联的用户信息。

在一些实现方式中,评估可以产生所存储的用户信息的置信水平。例如,如果所有用户信息都存在且可信,则置信水平可能相对较高。替代地,可能缺少一些信息,或者信息的信任度(例如,置信水平)可能较低。换句话说,置信水平与密码的“可疑性”成反比(例如,高置信度等于较不可疑,而低置信度等于较可疑)。系统可以采取与评估相称的动作。在实例4到6中示出了示例。

在实例四,所存储用户信息的置信度相对较高,并且在130处,使用新密码完成对帐户102的登录。换句话说,在该情况下,“用户”很可能是“真实用户”。

在实例五,置信水平不如实例四那么高。在该情况下,如在实例四中那样完成登录,但在132处,还向与账户102相关联的联系人发送警告通知。例如,该警告通知可以是发送到最初设置帐户时提供的电子邮件地址的电子邮件消息。电子邮件消息可以包括一些或所有用户信息。

在实例六,置信水平低于实例四和实例五。换句话说,在该情况下,“用户”很可能是“不法用户”或“不法行为者”。在该情况下,登录未完成,并且替代地在134处,暂时使帐户102不活动以保护帐户。

从一个角度来看,图1A和图1B描述了可以保存与密码改变相关联的信息的实现方式。该信息可以提供细节,例如谁、何时和/或何地接收到密码重置请求。该信息可以用于保护账户102和/或基于云的资源104免受不法利用。还要注意,即使评估不正确(例如,不法行为者未被识别或真实用户被错误描述),也存储与密码重置有关的信息记录并且可以稍后查看。

图2示出了密码重置安全性方法200。在该情况下,该方法由客户端设备108以及第一和第二服务202和204完成。从下面的说明中,第一服务可以被视为密码重置服务,并且第二服务可以被视为密码过滤服务。服务可以由图1A和图1B的基于云的资源104提供。出于解释的目的,以特定顺序来解释该方法,但在其它方法实现方式中可以重新安排顺序和/或元素。

在该示例中,方法200开始于206处,此时用户访问帐户门户并使用客户端设备108请求密码重置。在208处,可以请求用户信息。在该情况下,用户信息包括个人访问号(PIN)和智能卡(或具有防篡改公钥/私钥密钥对的其它安全可认证设备)。在210处,用户提供PIN和智能卡。例如,用户可以在小键盘或键盘上输入PIN并将智能卡放置在读卡器附近。客户端设备可以收集另外的用户信息,例如其自己的IP地址、序列号、日期、时间等等。在212处,客户端设备可以利用PKI来加密用户信息。该加密可以增强用户信息的安全性和可靠性(例如,有助于确保用户信息是准确和可信的)。可以替代地或另外地采用有助于确保用户信息的准确性的其它技术。在214处,客户端设备可以将加密的用户信息和密码重置请求发送到第一服务202。在该示例中,第一服务可以是管理帐户102的应用。例如,该应用可以管理由基于云的资源(104,图1)提供的数据中心的帐户。

在216处,第一服务202可以验证用户信息。例如,第一服务可以通过进行证书链构建来验证用户的智能卡证书是否有效和可信。第一服务还可以利用用户的智能卡证书来加密服务票据,以确保用户具有正确的智能卡和PIN。第一服务还可以收集与用户有关的另外信息。该另外信息可以有助于确定谁(用户)、何时(日期)、何处(第一服务名称和/或用户客户端设备名称)等等。该另外信息可以补充从客户端设备108获得的信息和/或对来自客户端设备的信息是冗余的。在218处,第一服务可以认证用户信息。例如,第一服务可以执行密码散列并利用其自己的证书(例如,利用与第一服务相关联的证书)对信息进行签名。在220处,第一服务可以保存信息。如上面提到的,数据库(例如图1的数据库122)可以用于存储信息。在一个示例中,数据库可以显示为存储在由微软公司提供的活动目录(Active Directory)数据库中的用户帐户活动目录对象。除了该示例之外,还可以使用其它数据库解决方案。

在222处,第一服务202可以改变密码。在224处,第一服务可以将新密码发送到用户(例如,发送到客户端设备108)。

在226处,用户可以访问帐户门户以利用新密码来登录帐户。

第二服务204可以在228处接收具有新密码的登录请求。在230处,第二服务可以取回与新密码相关联的所存储签名用户信息(例如,在220处存储的)。在232处,第二服务可以评估所存储的经签名用户信息。上面相对于图1B描述了可以在评估中应用的各种技术。在一些情况下,可以针对用户信息建立置信水平。

在234处,第二服务204可以以在设置帐户时确立的方式来发送与密码重置有关的通知。例如,用户在帐户设置时可能已经选择并定义了联系人电子邮件地址。可以将通知发送到该电子邮件地址。通知可以包括与密码重置请求有关的信息,例如谁/何时/何处信息(例如,与用户和/或智能卡有关的信息、客户端设备标识信息、客户端设备IP地址、日期/时间、第一服务标识信息、基于云的资源标识信息等等)。如果尝试登录的用户不是“真实”用户,则真实用户在收到通知时具有与该用户有关的信息记录,并且现在可以采取动作以保护帐户。

在236处,第二服务204可以将用户信息的置信水平与阈值进行比较。例如,如果用户信息中的任何字段为空,则置信水平可能不满足阈值。例如,如果客户端设备108的IP地址缺失(例如,空),则置信水平可以低于阈值。在另一示例中,如果任何信息与预期值不匹配,则置信水平可以低于阈值。例如,如果智能卡PKI信息与来自可信签发实体的信息不匹配,则置信水平可以低于阈值。替代地,如果第一服务202的签名和/或证书与预期值不匹配,则置信水平可能不满足阈值。换句话说,如果帐户密码改变信息不存在和/或未正确签名,则这可能指示密码改变操作不是由可信第一服务和/或可信用户执行的,而是帐户密码由另一工具或某些可疑的人为操作改变。

在用户信息的置信水平满足阈值的实例中(例如,在236处为是),第二服务204可以在238处完成用户的登录过程。在用户信息的置信水平不满足阈值的替代实例中(例如,在236处为否),第二服务可以采取动作以在240处保护账户免受不法行为者。例如,该动作可能需要使帐户不活动和/或限制可以对帐户执行的动作。

在所示出的配置中,第二服务204可以与第一服务202分离并且不同,以使得第二服务可以评估在客户端侧和第一服务侧两者的动作。例如,如果不法行为者违反了第一服务并执行了密码重置,则第二服务可以检测到不一致并确定第一服务未以可信方式起作用。

从一个角度来看,一些实现方式可以提供与谁/何时/何处(3W)改变帐户密码有关的可信信息。利用该3W信息,可以增强基于云的资源104和/或账户安全性。可以利用证书对3W信息进行签名并进行验证以防止篡改。密码证明信息可以包含用户的智能卡证书信息和服务器信息(服务器设备106标识信息和/或虚拟机信息)。密码证明信息也可以利用服务器证书来进行签名。该信息可以用于跟踪谁/何时/何处做出了具有防篡改的改变。先前的解决方案不能检测到操作是由特定用户和/或服务完成的、和/或这些先前的解决方案不能防止信息篡改。

图3示出了与本文概念的至少一些实现方式一致的密码安全性技术或方法300的流程图。

在框302处,该方法可以接收针对属于用户(例如,真实用户)的基于云的用户帐户的密码重置请求。

在框304处,该方法可以获得与密码重置请求相关联的用户信息。在一种情况下,可以利用密码重置请求来获得用户信息。在另一种情况下,可以在接收到密码重置请求时请求用户信息。用户信息可以包括各种字段,例如请求密码重置的日期和时间的日期和时间字段。其它信息字段可以涉及可认证设备、在其上生成密码重置请求的计算设备的序列号、计算设备的互联网协议(IP)地址、与密码重置请求一起输入的个人标识号、和/或与密码重置请求一起输入的用户名。可以采用各种可认证设备。可认证设备可以具有保护公钥/私钥对的防篡改硬件组件。示例性的可认证设备可以包括智能卡和加密的USB加密狗(dongle)等等。可以获得利用客户端设备处的公钥来加密的用户信息。

在框306处,该方法可以认证用户信息。例如,用户信息可以利用数字签名进行认证。在接收到用户信息时该用户信息已经加密的实例中,可以通过将公钥与签发公钥/私钥对的可信签发实体的预期值进行比较来认证该用户信息。

在框308处,该方法可以生成用于基于云的用户帐户的新密码。

在框310处,该方法可以向用户发送新密码。

在框312处,该方法可以将经认证的用户信息存储在数据库中。

图4示出了与本文概念的至少一些实现方式一致的密码安全性技术或方法400的流程图。

在框402处,该方法可以接收基于云的用户帐户的登录请求和密码。

在框404处,该方法可以取回与密码相关联的所存储的经认证用户信息。

在框406处,该方法可以将登录请求的通知发送到与基于云的用户帐户相关联的联系地址。通知可以包含至少一些所存储的经认证用户信息。

在一些实现方式中,可以在每次接收到登录请求时执行取回和发送。在其它实现方式中,仅当接收到登录请求并且密码是新的(例如,在重置之后初始使用新密码)时执行取回和发送。

一些实现方式还可以评估所存储的经认证用户信息。例如,评估可能需要向所存储的经认证用户信息分配置信水平。置信水平可以反映所存储的经认证用户信息的字段的完整性和/或所存储的经认证用户信息的值的可信度。

描述上文提到的方法的顺序并非旨在被解释为限制,并且可以用任何顺序来组合所描述框的任何数量以实现该方法或替代方法。此外,方法可以在任何合适的硬件、软件、固件或其组合中实现,以使得计算设备可以实现该方法。在一种情况下,方法作为一组指令存储在计算机可读存储介质上,以使得计算设备的执行使得该计算设备执行该方法。

图5示出了与图1A和图1B的系统100类似的系统100(1)。系统100(1)包括具有台式计算机形式的客户端设备108和具有移动设备形式的客户端设备108(1),例如平板设备或智能电话。客户端设备108和服务器设备106可以采用各种设备配置,其中两种配置被示为设备配置510(1)和510(2)。各个服务器设备106和/或客户端设备108可以采用配置510(1)或510(2)中的任一个,或者替代配置。(由于绘图页面上的空间限制,示出了每个配置的一个实例,而未示出相对于每个设备的设备配置)。简而言之,设备配置510(1)表示以操作系统(OS)为中心的配置。配置510(2)表示片上系统(SOC)配置。配置510(1)被组织成一个或多个应用512、操作系统514和/或硬件516。配置510(2)被组织成共享资源518、专用资源520以及两者之间的接口522。

在任一配置510中,服务器设备106和/或客户端设备108可以包括存储装置/存储器524、处理器526、电池(或其它电源)528、通信组件530、密码重置组件532和/或密码过滤组件534。在客户端设备108或108(1)上,密码重置组件可以提供图形用户界面(GUI)以使用户输入其PIN并请求密码重置。它还可以收集用户信息并与用户的智能卡交互(例如,读取智能卡和/或利用智能卡的PKI来加密用户信息)。在服务器设备106上,密码重置组件532可以提供图2的第一服务202,并且密码过滤组件534可以提供图2的第二服务204。

如本文所使用的术语“设备”、“计算机”或“计算设备”可以表示具有一定量的处理能力和/或存储能力的任何类型的设备。处理能力可以由一个或多个处理器提供,这些处理器可以执行具有计算机可读指令形式的数据以提供功能。数据(例如计算机可读指令和/或用户相关数据)可以存储在存储装置上,例如可以在设备内部或外部的存储装置。存储装置可以包括以下各项中的任何一项或多项:易失性或非易失性存储器、硬盘驱动器、闪存设备和/或光学存储设备(例如,CD、DVD等等)、远程存储装置(例如,基于云的存储装置)等等。如本文所使用的,术语“计算机可读介质”可以包括信号。相比之下,术语“计算机可读存储介质”排除信号。计算机可读存储介质包括“计算机可读存储设备”。计算机可读存储设备的示例包括易失性存储介质(例如RAM)和非易失性存储介质(例如硬盘驱动器、光盘和闪存等等)。

如上面提到的,配置510(2)可以被认为是片上系统(SOC)类型设计。在这种情况下,由服务器设备106和/或客户端设备108提供的功能可以集成在单个SOC或多个耦合的SOC上。一个或多个处理器526可以被配置为:与共享资源518(例如存储装置/存储器524等等)和/或一个或多个专用资源520(例如被配置为执行某种特定功能的硬件块)协调。因此,如本文使用的术语“处理器”还可以指中央处理单元(CPU)、图形处理单元(GPU)、控制器、微控制器、处理器核或其它类型的处理设备。

通常,本文所描述的任何功能可以使用软件、固件、硬件(例如,固定逻辑电路)或这些实现方式的组合来实现。如本文使用的术语“组件”通常表示软件、固件、硬件、整个设备或网络、或其组合。例如,在软件实现方式的情况下,这些可以表示当在处理器(例如,CPU或CPU)上执行时执行指定任务的程序代码。程序代码可以存储在一个或多个计算机可读存储器设备中,例如计算机可读存储介质(例如,存储装置524)。组件的特征和技术是独立于平台的,这意味着这些特征和技术可以在具有各种处理配置的各种商业计算平台上实现。

上面描述了各种示例。下面描述另外的示例。一个示例包括一种其上存储有指令的计算机可读存储介质,所述指令在由计算设备执行时使得所述计算设备执行包括以下各项的动作:接收针对属于用户的基于云的用户账户的密码重置请求,以及获得与所述密码重置请求相关联的用户信息。所述计算设备还认证所述用户信息,生成用于所述基于云的用户账户的新密码,向所述用户发送所述新密码,以及将所述经认证的用户信息存储在数据库中。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述获得包括:利用所述密码重置请求来获得所述用户信息。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述获得包括:在接收到所述密码重置请求时请求所述用户信息。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述获得包括获得包含以下各项的用户信息:所述密码重置请求的日期和时间、来自可认证设备的信息、在其上生成所述密码重置请求的计算设备的序列号、所述计算设备的互联网协议(IP)地址、与所述密码重置请求一起输入的个人标识号和/或与所述密码重置请求一起输入的用户名。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述可认证设备包括智能卡,所述智能卡包括包含公钥/私钥对的防篡改硬件组件。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述获得包括:获得利用所述公钥来加密的所述用户信息。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述计算机可读存储介质还包括:通过将所述公钥与来自签发所述公钥-私钥对的可信签发实体的预期值进行比较来验证所获得的用户信息。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述计算机可读存储介质还包括:通过将所述公钥与来自签发所述公钥/私钥对的可信签发实体的预期值进行比较来验证所获得的用户信息。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述认证包括:利用数字签名来认证所获得的用户信息。

另一示例可以包括上文和/或下文示例中的任何示例,其中在接收到利用所述新密码来登录所述账户的请求时,所述示例评估所存储的经认证用户信息,并基于所述评估来采取与所述账户相关的动作。

另一示例可以包括一种方法,包括:接收针对基于云的用户帐户的登录请求和密码,取回与所述密码相关联的所存储的经认证用户信息,以及向与所述基于云的用户账户相关联的联系地址发送对所述登录请求的通知,所述通知包含所存储的经认证用户信息中的至少一些用户信息。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述取回和发送是在每次接收到所述登录请求时执行的。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述取回和发送仅在接收到所述登录请求并且所述密码是新的时才执行。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述方法还包括:评估所存储的经认证用户信息。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述评估包括:向所存储的经认证用户信息分配置信水平。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述置信水平反映所存储的经认证用户信息的字段的完整性和/或所存储的经认证用户信息的值的可信度。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述方法由密码过滤服务执行。

另一示例可以包括一种系统,所述系统包括存储计算机可读指令的存储装置,以及读取所述计算机可读指令以执行动作的处理器。所述动作包括:接收针对账户的登录请求以及用于所述账户的密码,访问与获得用于所述账户的密码相关联的所存储用户信息,以及向与所述账户相关联的预先定义的联系人发送包括所述用户信息中的至少一些用户信息的通知。所述动作还包括:评估与获得用于所述账户的密码相关联的所存储用户信息,并且当所述用户信息表现为可疑时保护所述用户账户,否则完成所述登录。

另一示例可以包括上文和/或下文示例中的任何示例,其中所述处理器执行密码过滤器,所述密码过滤器执行所述方法/动作。

另一示例可以包括上文和/或下文示例中的任何示例,其中当所述用户信息的字段缺失时,所述用户信息表现为可疑。

另一示例可以包括上文和/或下文示例中的任何示例,其中当所述用户信息未被签名时,所述用户信息表现为可疑。

另一示例可以包括上文和/或下文示例中的任何示例,其中当所述用户信息上的签名与预期签名不匹配时,所述用户信息表现为可疑。

另一示例可以包括上文和/或下文示例中的任何示例,其中,与用于所述账户的密码相关的所存储用户信息包括与谁请求密码重置、从什么计算机请求所述密码重置、和/或何时请求所述密码重置相关的信息。

虽然以特定于结构特征和/或方法动作的语言描述了与密码安全性有关的各技术、方法、设备、系统等等,但要理解,所附权利要求中定义的主题内容并不一定限于所描述的特定特征或动作。相反,特定特征和动作被公开为实现所要求保护的方法、设备、系统等等的示例性形式。

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