跨系统安全登录的制作方法

文档序号:6497467阅读:172来源:国知局
跨系统安全登录的制作方法
【专利摘要】可提供一种通过使用第一验证系统和第二验证系统在目标系统中进行跨系统安全登录的方法。正确密码可以在所述第一验证系统和所述第二验证系统上有效。所述方法可包括接收输入密码,通过使用所述第一验证系统生成第一散列密钥,和/或通过使用所述第二验证系统生成第二散列密钥,其中每个验证系统使用系统唯一的必有冲突散列算法。所述方法还包括将所述第一散列密钥与所述第一验证系统中存储的所述正确密码的第一预定散列密钥相比较和/或将所述第二散列密钥与所述第二验证中存储的所述正确密码的第二预定散列密钥相比较。此外,所述方法可包括基于所述比较中的至少一个而许可对所述目标系统的访问。
【专利说明】跨系统安全登录
【技术领域】
[0001]本发明一般地涉及用于在目标系统中进行跨系统安全登录的方法以及安全登录系统。
[0002]本发明还涉及操作系统、计算机系统、数据处理程序和计算机程序产品。
【背景技术】
[0003]许多系统需要登录或登入程序才能许可对该系统或该系统上运行的应用的访问。常见的一个登录程序实例可能需要用户输入,即密码,该密码可被散列函数转换为散列密钥。然后可将散列密钥与系统或应用可能已存储的正确密码的散列密钥相比较。如果所生成的散列密钥与已存储的散列密钥匹配,则用户可登录,即,可许可访问。否则登录失败,并且访问可能被拒绝。
[0004]US2002/0087890A1公开一种包括接收输入数据的方法。此方法还包括判定是否存在混淆值(salt value),如果不存在混淆值,则生成混淆值并将该混淆值存储在表项中。所述方法还提供:如果混淆值存在,则从表项中取回该混淆值,并且根据混淆值和输入数据生成散列。此方法还提供:根据散列生成密码并将密码返回到应用以获取应用的进入权限。
[0005]US2008/0120504A1公开一种通过验证设备验证客户机设备的系统和方法。客户机设备用户被分配由验证设备生成的PIN。用户将PIN和密码提供给客户机设备,客户机设备根据这些信息生成对称密钥,并且还生成公钥/私钥对。私钥使用对称密钥加密并仅以加密的形式存储。从PIN生成的公钥和消息验证码被提供给存储公钥的验证设备。接着,当用户寻求验证时,用户在客户机设备处输入密码,该密码用于生成对称密钥以解密经过加密的私钥。使用得到的值对发往验证设备的消息进行签名。验证设备使用公钥来检验消息签名。
[0006]标准的登录程序被视为可信,因为在不存在从散列密钥计算散列函数的引数(argument)(密码)的公式或算法的意义上,所使用的散列函数可以是不可逆的。但是,攻击者可使用穷举搜索技术查找正确密码。这样,他可以根据登录程序探测可能的密码,或者,如果攻击者知道散列密钥,他可以将散列函数应用于可能的密码并将结果与散列密钥相比较。有效密码的数量非常巨大,通常不可能探测形成有效密码的所有字符序列。但实际上,多数用户分配具有某些特殊特征(例如,长度有限、真实语言单词或单词的略微改变)的密码。基于此观察,攻击者可构建包含可能用作密码的数百万单词的词典并且只探测这些单词。一个进一步的问题是,许多用户针对多个系统和应用使用相同的密码。这意味着如果攻击者知道明文密码,他可能尝试使用该密码登录他已经破解的系统或应用之外的系统或应用,并且很可能获得成功。因此,最弱的系统可能控制许多系统的安全性。
[0007]因此,可能需要一种用于在目标系统中进行安全登录的改进方法。

【发明内容】

[0008]可通过根据独立权利要求的用于在目标系统中进行安全登录的方法、安全登录系统、计算机系统、操作系统、数据处理程序和计算机程序产品来满足此需求。
[0009]在一个实施例中,可提供一种通过使用第一验证系统和第二验证系统在目标系统中进行安全登录的方法。正确密码可在所述第一验证系统和所述第二验证系统上有效。所述方法可包括接收输入密码。所述方法可还包括通过使用所述第一验证系统生成第一散列密钥,和/或通过使用所述第二验证系统生成第二散列密钥,其中每个验证系统使用系统唯一的必有冲突(non-collision free)散列算法。此外,所述方法可包括将所述第一散列密钥与所述第一验证系统中存储的所述正确密码的第一预定散列密钥相比较和/或将所述第二散列密钥与所述第二验证中存储的所述正确密码的第二预定散列密钥相比较。此夕卜,所述方法可包括基于所述比较中的至少一个而许可对所述目标系统的访问。
[0010]在另一实施例中,可提供一种通过使用第一验证系统和第二验证系统在目标系统中进行安全登录的安全登录系统。密码可在所述第一验证系统和所述第二验证系统上有效。所述安全登录系统可包括接收单元,其适于接收输入密码。此外地,所述安全登录系统可包括生成单元,其适于通过使用所述第一验证系统生成第一散列密钥,和/或适于使用所述第二验证系统生成第二散列密钥,其中每个验证系统使用系统唯一的必有冲突散列算法。此外,所述安全登录系统可包括比较单元,其适于将所述第一散列密钥与所述第一验证系统中存储的所述密码的第一预定散列密钥相比较和/或适于将所述第二散列密钥与所述第二验证中存储的所述密码的第二预定散列密钥相比较。此外,所述安全登录系统可包括控制单元,其适于基于所述比较中的至少一个而许可对所述目标系统的访问。
[0011]具体而言,基于所述比较中的至少一个而许可对所述目标系统的访问可表示基于所述比较中的一个或两者而许可对所述目标系统的访问。
[0012]详细描沭
[0013]在本申请的上下文中,遵循下面的惯例:
[0014]验证系统一验证系统可以是任何类型的适于接收输入信息(例如,密码),并且能够基于该输入信息对用户进行验证的系统。
[0015]目标系统一目标系统可以是用户希望访问的系统。
[0016]安全登录一安全登录可以是使用验证系统保证安全的登入或登录。
[0017]密码一密码可以是符号,例如字母或数字。密码应能够标识一个用户。
[0018]系统唯一的必有冲突散列函数一散列函数是将较大数据集(在此情况下为密码)映射到较小数据集(称为散列密钥)的算法或子例程。散列函数返回的值被称为散列值、散列码、散列和、校验和或简称为散列。“系统唯一的”可表示用于验证系统的散列函数在全局上是唯一的。“必有冲突(non-collision free) ”可表示当可能将一个以上密码映射到一单个散列密钥时,可能发生至少一次冲突(与无冲突形成对比,其中将一个密码映射到一个散列密钥)。“必有冲突”散列函数的一个特定实施例可以是“必发生冲突(collision-reliable) ”的散列函数,其中可将特定数量的密码映射到单个系统唯一的散列密钥。具体而言,散列函数或散列算法可将给定数量(M个)的引数(密码)映射到同一散列密钥。
[0019]散列密钥一散列密钥可以是散列函数的输出并可以与多个密码相关。
[0020]上述用于在目标系统中进行安全登入(或登录)的方法可提供多个优点。
[0021]具体而言,它可以最小化使用从一个系统或应用盗取的密码对另一系统或应用进行未授权登录的风险。当前登录程序实施方式的一个弱点是所用的散列函数是拟内射的(quasi injective)。仅有极少数(即,在几乎所有情况下,仅有一个)密码可被映射到同一散列密钥。因此,散列密钥可精确地表示一个密码,所以可根据散列密钥推导出密码。
[0022]两个验证系统均具有唯一的散列算法,并且可能不实现同一散列函数。通过使用必有冲突散列算法,攻击者可以通过生成的第一散列密钥推导出第一验证系统的一个密码。但是,攻击者无法推导出第二验证系统的正确密码。例如,第二验证系统实现的唯一且必发生冲突的散列函数可将单词P1映射到散列密钥HB1,该散列密钥一般可以不同于第一验证系统将P1映射到的散列密钥HA115唯一性可以非常重要,以便确保第一系统可映射到HA1的所有其它密码P2、…、Pm不被映射到HB115因此,可能已收集密码P2、…、Pm之一的攻击者无法经由第二验证系统获取访问,因为已存储的第二散列算法的散列密钥的比较不会导致与基于密码P2、…、Pm之一生成的散列密钥的匹配,这样,该系统将拒绝访问。
[0023]在所述方法的一个实施例中,许可对所述目标系统的访问包括基于两个比较而许可访问。
[0024]根据该实施例,可实现级联登录程序。可仅在两个比较均有效的情况下才许可对所述目标系统的访问。这样,可能已收集密码P2、…、Pm之一的攻击者无法获取对所述目标系统的访问,因为已存储的第二散列算法的散列密钥的比较不会导致与基于密码P2、…、Pm之一生成的散列密钥的匹配,这样所述第二验证系统将拒绝访问。
[0025]在所述方法的另一实施例中,许可对目标系统的访问包括基于所述第一散列密钥与所述第一预定散列密钥的比较而许可对第一目标系统的访问,以及基于所述第二散列密钥与所述第二预定 散列密钥的比较而许可对第二目标系统的访问。
[0026]根据该实施例,可能已收集密码P2、…、Pm之一的攻击者可能获取对所述第一目标系统的访问。但是,它无法经由所述第二验证系统获取对所述第二目标系统的访问,因为已存储的第二散列算法的散列密钥的比较不会导致与基于密码p2、…、Pm之一生成的散列密钥的匹配,这样,该系统将拒绝访问。
[0027]在所述方法的一个实施例中,每个系统唯一的必有冲突散列算法可以是必发生冲突的散列算法。如上所述,必发生冲突的散列算法可针对特定数量的密码创建单个系统唯一的散列密钥。
[0028]在所述方法的另一实施例中,所述方法还包括通过使用所述第一验证系统的所述唯一的必有冲突散列算法创建所述第一预定散列密钥,以及通过使用所述第二验证系统的所述唯一的必有冲突散列算法创建所述第二预定散列密钥,以及将所述第一预定散列密钥存储在所述第一验证系统中,并且将所述第二预定散列密钥存储在所述第二验证系统中。
[0029]根据该实施例,可在开始所述验证系统以提供安全登录之前生成所述第一预定散列密钥和所述第二预定散列密钥。
[0030]在所述方法的另一实施例中,所述方法包括经由安全通道接收所述输入密码。
[0031]安全通道可以是适于传输不被拦截或篡改的数据的通道。所述安全通道可用于接收所述密码,并且可以进一步在所述第一与所述第二验证系统之间使用。
[0032]在所述方法的另一实施例中,将所述第一散列密钥与第一预定散列密钥相比较以及将所述第二散列密钥与第二预定散列密钥相比较包括生成每个比较的布尔信息。
[0033]每个比较可导致所比较的值或密钥是否相等的决策。结果可作为布尔信息进行存储和进一步处理,例如,作为真或伪等信息。这些值(即,真或伪)还可以采用O和I的格式。
[0034]在所述安全登录系统的一个实施例中,所述目标系统和所述第一验证系统是一个单一系统的一部分。
[0035]所述目标系统可以是用户希望访问的系统。所述目标系统和所述第一验证系统可以集成在一个单一系统中。所述安全登录系统可将所述输入密码提供给所述第一验证系统和所述第二验证系统。所述第二验证系统可以远离所述目标系统和所述第一验证系统,并可适于经由安全通道通信。
[0036]在所述安全登录系统的另一实施例中,所述安全登录系统包括所述目标系统、所述第一验证系统和所述第二验证系统。
[0037]所述目标系统可与两个验证系统一起实现为一个单一系统。所述安全登录系统可在第一步仅将用于验证用户的通信提供给整个系统的表示这两个验证系统的部分。在肯定验证的情况下,所述安全登录系统可提供对整个系统的表示所述目标系统或应用的部分的访问。
[0038]此外,如上所述,操作系统可被配置为执行根据上述发明方法的方法。此类与操作系统的集成可具有以下优点:即,安全登录方法可在安装之后作为操作系统的新功能而立即执行。在用于安全登录的计算机上不需要安全任何新的附加操作系统程序。
[0039]需要指出,各实施例可采取完全硬件实现、完全软件实施例或同时包含硬件和软件元素的实施例的形式。在一个优选实施例中,本发明可在软件中实现,所述软件包括一但不限于一固件、驻留软件和/或微代码。
[0040]在另一实施例中,可提供用于在联网数据处理系统(与所述第一和所述第二验证系统相关)中执行的一组数据处理程序,所述数据处理程序包括软件代码部分,当所述程序在所述联网数据处理系统上运行时,所述软件代码部分用于执行上述方法。所述数据处理系统可以是计算机或计算机系统。
[0041]此外,各实施例可采取可从计算机可用或计算机可读的介质访问的计算机程序产品的形式,所述计算机可用或可读的介质提供由计算机或任何指令执行系统使用或与其结合使用的程序代码。为了此说明的目的,计算机可用或计算机可读的介质可以是任何可包含用于存储、传送、传播或传输程序的构件的装置,所述程序由指令执行系统、装置或设备,或计算机网络(例如,所述第一和第二验证系统)使用或与其结合。
[0042]所述介质可以是用于传播介质的电、磁、光、电磁、红外线或半导体的系统。计算机可读介质的例子可包括半导体或固态存储器、磁带、可移动计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的当前例子包括紧凑型只读存储器(CD-ROM)、紧凑型读写存储器(CD-R/W)、DVD和蓝光光盘。
[0043]需要指出,已参考不同的主题描述了本发明的各实施例。具体而言,已参考方法型权利要求描述有些实施例,而已参考装置型权利要求描述其它实施例。但是,本领域的技术人员将通过上面以及下面的描述理解一除非另外指出一除了属于一种主题类型的特征的任何组合之外,与不同主题相关的特征之间的任何组合(具体地说,方法型权利要求的特征与装置型权利要求的特征之间的任何组合)也被视为在本文内公开。
[0044]本发明的上述方面以及其他方面通过下面对实施例实例的描述变得显而易见,并且参考这些实施例实例进行介绍,但是本发明并不限于这些实施例实例。
【专利附图】

【附图说明】
[0045]现在将仅通过实例并参考附图描述本发明的优选实施例:
[0046]图1示出用于在目标系统中进行安全登录的发明方法的一个实施例的框图;
[0047]图2示出常见登录程序的框图;
[0048]图3示出根据用于登录第一验证系统的发明方法的一个实施例的登录程序的框图;
[0049]图4示出针对图3的第一验证系统的可能攻击的框图;
[0050]图5示出图4的攻击者执行的根据用于登录第二验证系统的发明方法的一个实施例的登录程序的框图;
[0051]图6示出安全登录系统的框图;
[0052]图7示出图6的安全登录系统的一种实施方式的框图;
[0053]图8示出包括本发明的安全登录系统的计算机系统。
【具体实施方式】
[0054]下文将提供对附图的详细描述。附图中的所有图示均为示意性的。首先,将描述用于安全登录的方法的一个实施例的框图。之后,将描述此方法的各实施例和安全登录系统。
[0055]图1示出通过使用第一验证系统和第二验证系统在目标系统中进行安全登录(登入)的本发明方法100的一个实施例的框图。正确的密码可在第一验证系统和第二验证系统上有效。所述方法可包括接收输入密码102。所述方法可还包括通过使用第一验证系统生成104第一散列密钥,和/或通过使用第二验证系统生成104第二散列密钥,其中每个验证系统使用系统唯一的必有冲突散列算法。此外,所述方法可包括将第一散列密钥与第一验证系统中存储的正确密码的第一预定散列密钥相比较106和/或将第二散列密钥与第二验证中存储的正确密码的第二预定散列密钥相比较106。此外,所述方法可包括基于所述比较中的至少一个而许可108对目标系统的访问。
[0056]图2示出常见登录程序的框图200。该常见登录程序可在几乎所有系统和应用上使用。用户给出的输入PP02可被散列函数204转换为散列密钥氏206。散列密钥H1可与系统或应用已存储的正确密码的散列密钥H208相比较210。如果H1与H匹配,则用户可登录212。否则,登录失败并且可拒绝或否定214对目标系统的访问。
[0057]标准的登录程序被视为可信,因为在不存在从散列密钥计算散列函数的引数(密码)的公式或算法的意义上,所使用的散列函数可以是不可逆的。但是,攻击者可使用穷举搜索技术查找正确密码。这样,他可以根据登录程序探测可能的密码,或者,如果攻击者知道散列密钥,他可以将散列函数应用于可能的密码并将结果与散列密钥相比较。有效密码的数量非常巨大,通常不可能探测形成有效密码的所有字符序列。但实际上,多数用户分配具有某些特殊特征(例如,长度有限、真实语言单词或单词的略微改变)的密码。基于此观察,攻击者可构建包含可能用作密码的数百万单词的词典并且只探测这些单词。
[0058]许多用户针对多个系统和应用使用相同的密码。这意味着如果攻击者知道明文密码,他可能尝试使用该密码登录他已经破解的系统或应用之外的系统或应用,并且可能获得成功。
[0059]可通过图1所述的方法避免此情况的发生,此方法最小化使用从一个系统或应用盗取的密码对另一系统或应用进行未授权登录的风险。
[0060]所描述的常见系统或程序的弱点可以是所用的散列函数是拟内射的。仅有极少数(即,在几乎所有情况下,仅有一个)密码可被映射到同一散列密钥。例如,图2的密码P1被映射到散列密钥H1,其中任何不等于P1的密码Pn被映射到不等于H1的散列密钥Hn。因此,散列密钥可基本精确地表示一个密码,所以可根据散列密钥推导出密码。
[0061]根据所描述的发明方法,可使用将给定数量(M个)引数(密码)映射到同一散列密钥的散列函数。此特征可被称为“必发生冲突”或“必有冲突”。例如,必发生冲突的散列函数可将密码P1映射到散列密钥HA115此外,可存在被映射到同一散列密钥HA1的M-1个单词P2、…、PM,前提是这些单词被用作必发生冲突的散列函数的引数。
[0062]必发生冲突的散列函数的映射到同一散列密钥的引数数量(M个)可被视为至少或平均精确的数字。与通常可在用户被锁定之前输入的最大错误密码数相比,数量M可较大。相对于所有可能密码的数量而言,M可非常小(例如,M的值可能为一百万)。
[0063]本发明的一个实施例实现的散列函数的另一特征可以是针对每个系统或应用的唯一性。换言之,两个不同的系统或应用不能实现相同的散列函数。例如,系统B实现的唯一必发生冲突的散列函数可将单词P1映射到HBLHB1 —般不同于系统八将?1映射到的散列密钥HA115唯一性可用于确保系统A映射到HA1的所有其它密钥P2、…、Pm不被映射到(或者最不可能映射到)HB1。
[0064]图3示出根据用于登录第一验证系统的发明方法的一个实施例的登录程序的框图300。图4示出针对图3的第一验证系统的可能攻击的框图400。图5示出图4的攻击者执行的根据用于登录第二验证系统的发明方法的一个实施例的登录程序的框图500。
[0065]图3至5示出为何从系统I盗取的密码极不可能用于登录系统B。可假设用户已分配同一密码P1以访问这两个系统。正确密HPJOZ可被系统A处的唯一必发生冲突的散列函数304映射到散列密钥!^306。该散列密钥可与已存储的散列密钥308相比较310。该已存储的散列密钥可在登录程序之前生成并可被存储以便在验证程序中进一步使用。由于存在匹配,因此允许系统访问。
[0066]可访问散列密钥!^402或可几乎无限次执行登录程序或利用穷举搜索、彩虹表、基于词典的搜索或其它技术之类的暴力技术的攻击者404可找到被映射到散列密钥HA1的所有单词Pl、…、Pm406。从攻击者的观察,通常所有单词均可能是正确的密码。
[0067]在系统B上,密码Pl可被已实现的唯一必发生冲突的散列函数504映射到散列密钥HB1,该散列密钥匹配已存储的散列密钥508,因此可允许系统访问。但是,攻击者通过入侵系统A找到的任何其它可能的密码P2、…、Pm502不能被系统B映射到HBjlO,因此这些单词均不允许访问系统B。但是,可能存在M个不同的单词PB1 = P1, PB2,…、PBm允许访问系统B。由于M —般远大于在用户被锁定之前失败的登录尝试次数,因此,可能的密码集P1^…、Pm对于攻击者入侵系统B几乎没有任何价值。 [0068]利用必发生冲突的散列函数可加强跨系统保护来抵御暴力攻击,这是因为从一个系统盗取的散列密钥或密码实际上不可用于第二系统。但是,单个系统可能变得不太安全,因为对于每个用户而言,M个不同的单词有可能成为用于系统访问的正确密码。因此,攻击者可能需要M次以下的探测或尝试便可获取单个系统的有效密码。这种单个系统保护与跨系统保护之间的权衡或妥协可以接受,因为成功的暴力攻击一般需要特殊授权(攻击者以合法或非法的途径获取该授权),例如,对审核功能的操纵、对用户的解锁、对散列密钥的访问,或对加密工具的直接访问。
[0069]对于某些系统或应用,通过引入必发生冲突的散列函数导致的安全损失可能无法接受。本发明的一个实施例可通过引入级联登录程序,补偿单个系统的降低的安全性。图6示出此类安全登录系统的框图600。
[0070]通过使用第一验证系统和第二验证系统,安全登录系统600可用于在目标系统中进行安全登录。密码可在第一验证系统和第二验证系统上有效。该安全登录系统可包括接收单元602,其适于接收输入密码。该安全登录系统可还包括生成单元604,其适于通过使用第一验证系统生成第一散列密钥,和/或适于通过使用第二验证系统生成第二散列密钥。每个验证系统可使用上述系统唯一的必有冲突散列算法。
[0071]该安全登录系统可还包括比较单元606,其适于将第一散列密钥与第一验证系统中存储的密码的第一预定散列密钥相比较和/或适于将第二散列密钥与第二验证中存储的密码的第二预定散列密钥相比较。比较的结果可以是布尔值,即真或伪。
[0072]该安全登录系统可还包括控制单元608,其适于基于所述比较中的至少一个而许可对目标系统的访问。这可意味着,如果比较结果为真或肯定,便可许可访问,如果比较结果为伪或否定,则可拒绝访问。可经由第一验证系统许可对第一目标系统的访问,或者经由第二验证系统许可对第二目标系统的访问。
[0073]图7示出图6的安全登录系统的一种实施方式的框图700。其中示出两个系统:系统A704和系统B706。对于每个常规用户,在每个系统上,可存储同一密码作为唯一必发生冲突的散列函数的散列密钥。
[0074]在下文中,正确的密码可以是Pp由于使用必发生冲突的散列函数,因此,无法从两个系统之一上存储的单个散列密钥推导出Pi。用户例如可经由输入终端输入单词P702作为系统A处的密码。此外,用户输入P被发送到系统B。该密码可经由输入终端直接被转发到系统B,或者经由系统A被转发到系统B。可通过包括安全通道的网络708 ( 即,通过安全网络和/或安全网络协议)完成此操作。可在这两个系统中针对P执行唯一必发生冲突的散列函数710。如果结果不匹配系统A上存储的散列密钥,则拒绝系统访问718。否贝U,P是被映射到系统A处存储的散列密钥的单词集{PAp -,PAm}的元素712。该集合包括Pi。在系统B上,还将所生成的散列密钥与系统B上存储的散列密钥相比较。如果不匹配,则拒绝对系统A的系统访问718。否则,P是被映射到系统B处存储的散列密钥的单词集{PB。…、PBm}的元素712。该集合包括P”有关P是否已经通过系统B上的登录程序的信息可被发送回系统A。这样,系统A可判定P是否为{PAp…、PAm}与{PBp…、PBm}的交集的元素714。如果是,则可许可系统访问716。由于系统A和系统B实现不同的散列函数,因此交集{PA。…、PAm} H (PB1,…、ΡΒΜ}最可能仅包含P。因此,只有正确的密码P1可允许系统访问。[0075]使用必发生冲突的散列函数,无法从系统上存储的散列密钥和可能盗取的散列密钥确定明文密码。只能了解明文密码是M个单词构成的集合之外的一个单词的信息。如果所有M个单词均同样可能是明文密码,则明文密码的保护可以是充分的。但实际上,M个单词中的某些单词比其它单词更可能成为明文密码。具体而言,如果明文密码很弱(即,该密码为真实语言文字、这些文字的略微修改形式、简单数字等),则很容易在M个单词构成的集合中找到该密码。此外,与被映射到同一散列密钥的M-1个单词的其它任何单词相比,基于词典的暴力攻击更可能找到弱密码。因此,在进一步的实施例中,可使用仅将弱密码映射到同一散列密钥的必发生冲突的散列函数。包含真实语言文字、这些文字的略微改变形式、数字等的词典可用于将密码分类为弱密码。词典的大小应该适当,例如包含I亿个条目。没必要完全存储该词典。相反,对于每个已存储的真实语言文字,可计算一组修改形式。散列函数可将M个词典单词中的每一个映射到同一散列密钥。M与词典大小相比应该很小,但是与用户被锁定之前一般允许的不成功登录尝试次数相比仍很大。否则,用于所有词典单词的不同散列密钥的数量可能很小,攻击者可能能够简单地猜测允许系统访问的单词。
[0076]所描述的安全登录系统还可包括在计算机系统中。这样,所述计算机系统的安全登录系统可与操作系统协作以便执行上述安全登录方法。
[0077]本发明的各实施例可在几乎任何类型的计算机上实现,与适于存储和/或执行程序代码的平台无关。例如,如图8所示,计算机系统800可包括一个或多个处理器802 (其中每个处理器具有一个或多个核)、关联的存储元件804、内部存储设备806 (例如,硬盘、诸如紧凑型磁盘驱动器或数字视频光盘(DVD)驱动器之类的光盘驱动器、闪存棒等)、当今计算机(未示出)一般具有的多种其它元件和功能。存储元件804可包括主存储器,例如在程序代码的实际执行期间采用的随机存取存储器(RAM)、以及提供至少某些程序代码和/或数据的临时存储以减少必须从长期存储介质或外部大容量存储装置816取回代码和/或数据以执行的次数的高速缓冲存储器。计算机800内部的元件可通过具有对应适配器的总线系统818链接在一起。此外,安全登录系统600可连接到总线系统818。
[0078]计算机系统800还可包括输入部件,如键盘808、诸如鼠标810之类的指点设备,或麦克风(未示出)。此外,计算机800可包括输出部件,如监视器或屏幕812 [例如,液晶显示器(LCD)、等离子显示器、发光二极管显示器(LED)或阴极射线管(CRT)监视器]。计算机系统800可通过网络接口连接814连接到网络(例如,局域网(LAN)、诸如因特网之类的广域网(WAN),或其它任何类似类型网络,其中包括无线网络)。这可允许与其它计算机系统或存储网络或磁带驱动器连接。本领域的技术人员将理解,存在许多不同类型的计算机系统,并且上述输入和输出部件可采取其它形式。一般而言,计算机系统800可包括至少实现本发明实施例所需的最少的处理、输入和/或输出部件。
[0079]此外,本领域的技术人员将理解,上述计算机系统800的一个或多个元件可位于远端位置并且通过网络与其它元件相连。此外,本发明的实施例可在具有多个节点的分布式系统上实现,其中本发明的每个部分可位于分布式系统内的不同节点上。在本发明的一个实施例中,节点对应于计算机系统。备选地,节点可对应于具有关联物理存储器的处理器。节点可备选地对应于具有共享存储器和/或资源的处理器或智能手机。
[0080]此外,用于执行本发明实施例的软件指令可存储在计算机可读介质上,例如光盘(CD)、磁盘、磁带或其它任何计算机可读的存储设备上。
[0081]尽管参考有限数量的实施例描述了本发明,但是从本公开受益的本领域的技术人员将理解,可构想不偏离此处公开的发明范围的其它实施例。因此,本发明的范围应该仅由所附权利要求限定。
[0082] 还应该指出,术语“包括”不排除其它元素或步骤,“一”或“一个”不排除多个。另一方面,术语“包括”还可包括“由…构成”的情况。另外,可组合结合不同的实施例描述的元素。还需要指出,权利要求中的参考标号不应该被理解为限制元素。
【权利要求】
1.一种通过使用第一验证系统和第二验证系统在目标系统中进行跨系统安全登录的方法,其中正确密码在所述第一验证系统和所述第二验证系统上有效, 所述方法包括: -接收输入密码, -通过使用所述第一验证系统生成第一散列密钥,和/或通过使用所述第二验证系统生成第二散列密钥,其中每个验证系统使用系统唯一的必有冲突散列算法, -将所述第一散列密钥与所述第一验证系统中存储的所述正确密码的第一预定散列密钥相比较和/或将所述第二散列密钥与所述第二验证系统中存储的所述正确密码的第二预定散列密钥相比较,以及 -基于所述比较中的至少一个而许可对所述目标系统的访问。
2.根据权利要求1的方法,其中许可对所述目标系统的访问包括基于两个比较而许可访问。
3.根据权利要求1的方法,其中许可对所述目标系统的访问包括基于所述第一散列密钥与所述第一预定散列密钥的比较而许可对第一目标系统的访问,以及基于所述第二散列密钥与所述第二预定散列密钥的比较而许可对第二目标系统的访问。
4.根据任一上述权利 要求的方法,其中每个系统唯一的必有冲突散列算法是必发生冲突的散列算法。
5.根据任一上述权利要求的方法,所述方法还包括: -通过使用所述第一验证系统的所述唯一的必有冲突散列算法创建所述第一预定散列密钥,以及通过使用所述第一验证系统的所述唯一的必有冲突散列算法创建所述第二预定散列密钥,以及 -将所述第一预定散列密钥存储在所述第一验证系统中,并且将所述第二预定散列密钥存储在所述弟验证系统中。
6.根据任一上述权利要求的方法,所述方法包括: -经由安全通道接收所述输入密码。
7.根据任一上述权利要求的方法,其中将所述第一散列密钥与第一预定散列密钥相比较以及将所述第二散列密钥与第二预定散列密钥相比较包括: -生成每个比较的布尔信息。
8.一种通过使用第一验证系统和第二验证系统在目标系统中进行安全登录的安全登录系统,其中密码在所述第一验证系统和所述第二验证系统上有效, 所述安全登录系统包括: -接收单元,其适于接收输入密码, -生成单元,其适于通过使用所述第一验证系统生成第一散列密钥和/或适于通过使用所述第二验证系统生成第二散列密钥,其中每个验证系统使用系统唯一的必有冲突散列算法, -比较单元,其适于将所述第一散列密钥与所述第一验证系统中存储的所述密码的第一预定散列密钥相比较和/或适于将所述第二散列密钥与所述第二验证系统中存储的所述密码的第二预定散列密钥相比较,以及 -控制单元,其适于基于所述比较中的至少一个而许可对所述目标系统的访问。
9.根据权利要求8的安全登录系统,其中所述目标系统和所述第一验证系统是一个单一系统的一部分。
10.根据权利要求8或9中的任一权利要求的安全登录系统,所述安全登录系统包括所述目标系统、所述第一验证系统和所述第二验证系统。
11.一种操作系统,其被配置为执行根据权利要求1至7中的任一权利要求的方法。
12.—种计算机系统,其包括根据权利要求8至10中的任一权利要求的安全登录系统。
13.—组在联网数 据处理系统中执行的数据处理程序,所述数据处理程序包括软件代码部分,当所述程序在所述联网数据处理系统上运行时,所述软件代码部分用于执行根据权利要求1至7中的任一权利要求的方法。
14.一种存储在计算机可用介质上的计算机程序产品,其包括计算机可读程序装置,当所述程序装置的各部分在计算机网络上运行时,所述计算机可读程序装置用于导致所述计算机网络执行根据权利要求1至7中的任一权利要求的方法(100)。
【文档编号】G06F21/31GK103975333SQ201280059054
【公开日】2014年8月6日 申请日期:2012年10月15日 优先权日:2011年12月1日
【发明者】J·雷泽, J·勒里希 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1