适用于分布式存储的认证方法

文档序号:7822567阅读:176来源:国知局
适用于分布式存储的认证方法
【专利摘要】本发明提供一种适用于分布式存储的认证方法。所述方法包括:认证模块接收登陆模块发送的登陆请求。认证模块根据登陆请求查找存储节点,并从中获取分片信息,向登陆模块发送分片信息中的认证问题信息。所述分片信息包含认证问题信息和认证答案信息。认证模块接收登陆模块用登陆密钥对认证问题信息进行计算得到的认证计算结果。认证模块对认证计算结果和认证答案信息进行对比,得到认证结果,并发送至所述登陆模块。本发明将独立性强的分片信息分布存放在不同节点,各模块间仅进行最低限度的信息交流,具有安全性高和容错性强的优点。
【专利说明】适用于分布式存储的认证方法

【技术领域】
[0001]本发明涉及网络安全【技术领域】,尤其涉及一种适用于分布式存储的认证方法。

【背景技术】
[0002]目前,基于口令的认证是用来解决系统的保密性和安全性问题最流行的认证方法之一。在传统的基于口令认证方案的模型中,为了申请资源,用户首先向远程服务器发出请求消息,其中包括用户的身份ID和经过哈希运算的口令值。收到请求后,远程服务器在本地的数据库中的访问列表中搜寻是否存在和用户提交的请求匹配的对,若存在,服务器将授予用户ID访问权限,否则拒绝访问。
[0003]现有的认证方法和系统多采用集中式存储的解决方案,通常将用户的认证信息(通常为密码)进行哈希后集中存放在服务器端,在进行认证时将用户给出的认证信息再次进行哈希后,与服务器端的认证信息进行比较。有的方案通过“加盐”等加密方式一定程度上可防御“撞库”等攻击手段,但并未解决一旦服务器端的哈希值被获取就会造成泄密的弊端。


【发明内容】

[0004]在下文中给出关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
[0005]本发明提供一种适用于分布式存储的认证方法,用以将密钥的特征分散在不同节点进行存储,避免少数节点上数据丢失导致泄密,充分发挥分布式存储的优势,降低安全风险。
[0006]本发明提供一种适用于分布式存储的认证方法,所述方法包括:
[0007]登陆模块向认证模块发送登陆请求。
[0008]所述登陆模块接收所述认证模块根据所述登陆请求查找存储模块中的存储节点并从所述存储节点获取的分片信息中的认证问题信息。所述分片信息包含认证问题信息和认证答案信息。
[0009]所述登陆模块用所持有的登陆密钥对所述接收的认证问题信息进行计算,得到认证计算结果,并将所述认证计算结果发送至所述认证模块。
[0010]所述登陆模块接收所述认证模块发送的通过对所述认证计算结果和所述获取的分片信息中所包含的认证答案信息进行对比所得到的认证结果。
[0011]本发明还提供一种适用于分布式存储的认证方法,所述方法包括:
[0012]认证模块接收登陆模块所发送的登陆请求。
[0013]所述认证模块根据所述登陆请求查找存储模块中的存储节点,从所述存储节点中获取分片信息,并向所述登陆模块发送所述分片信息中的认证问题信息。所述分片信息包含认证问题信息和认证答案信息。
[0014]所述认证模块接收所述登陆模块用所持有的登陆密钥对所述认证模块发送的认证问题信息进行计算所得到的认证计算结果。
[0015]所述认证模块对所述接收的认证计算结果和所述获取的分片信息中所包含的认证答案信息进行对比,得到的认证结果,并将所述认证结果发送至所述登陆模块。
[0016]本发明提供的适用于分布式存储的认证方法具有以下有益效果:本发明将密钥生成的分片信息分布存放在不同节点,避免了存储在单一节点时被盗取存储信息的高风险。本发明将认证过程的计算分布在登陆模块、注册模块/认证模块、存储模块中,注册时注册模块发送至存储模块的各分片信息仅与密钥各部分相关,登陆时登陆模块只需将用户名发送至认证模块,各模块间仅进行最低限度的信息交流,有效地提高了系统的安全性。本发明的各分片信息仅使用部分密钥特征生成,保护了多份分片信息间的独立性,部分分片信息的丢失不影响其余分片信息进行认证,具备较强的容错性,对于恶劣网络环境有很强的适应能力。本发明的分片方式和算法由用户端的登陆模块决定,降低了被逆向解析的风险。

【专利附图】

【附图说明】
[0017]参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。
[0018]图1为本发明的适用于分布式存储的认证方法一种实施方式的流程图;
[0019]图2为本发明的适用于分布式存储的认证方法另一种实施方式的流程图;
[0020]图3为本发明的适用于分布式存储的认证方法一种实施方式所适用的系统的结构示意图。

【具体实施方式】
[0021]下面参照附图来说明本发明的实施例。在本发明的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。应当注意,为了清楚的目的,附图和说明中省略了与本发明无关的、本领域普通技术人员已知的部件和处理的表示和描述。
[0022]图1为本发明适用于分布式存储的认证方法一种实施方式的流程图。
[0023]如图1所示,本实施方式中,适用于分布式存储的认证方法包括:
[0024]SlO:登陆模块向认证模块发送登陆请求。具体地,登陆模块向认证模块发送了包含登录用户名的登陆请求。
[0025]S20:登陆模块接收认证模块根据登陆请求查找存储模块中的存储节点并从中获取的分片信息中的认证问题信息。具体地,登陆模块向认证模块发送登陆请求后,认证模块根据所述登陆请求查找相关的存储节点,并向查找到的存储节点请求分片信息。存储节点接收到请求后向认证模块发送分片信息。分片信息中包含认证问题信息QjP认证答案信息A1登陆模块接收认证模块所发送的从存储节点所获取的分片信息中包含的认证问题信息
Q1
[0026]S30:登陆模块用所持有的登陆密钥对接收的认证问题信息进行计算,得到认证计算结果,并发送至认证模块。具体地,登陆模块结合所持有的登陆密钥K’和所接收的认证问题信息%进行计算,得到认证计算结果A/,将认证计算结果A/发送至认证模块。
[0027]S40:登陆模块接收认证模块发送的通过对认证计算结果和获取的分片信息中所包含的认证答案信息进行对比所得到的认证结果。具体地,登陆模块接收认证模块所发送的通过对接收的认证计算结果A/与获取的分片信息中的认证结果信息化进行对比所得到的认证结果。
[0028]在一种优选实施方式中,登陆模块向注册模块发送注册请求,所述注册请求包含的注册密钥通过所述注册模块所进行的计算生成分片信息,所述生成的分片信息分别存储在所述存储模块的存储节点中。具体地,所述注册请求包括注册用户名和注册密钥,登陆模块将注册用户名和注册密钥发送至注册模块请求注册,注册模块检验注册用户名是否被占用,若被占用则返回提示信息,若未被占用,则对所述注册密钥进行计算,生成N个分片信息,并将所述分片信息分别存储在存储模块的N个存储节点中。分片信息数量N通常设置为8或16。在本实施方式中,N设置为8。所述分片信息包含认证问题信息Qi (i = I,…8)和认证答案信息Ai (i = 1,…8)。
[0029]本发明将密钥生成的分片信息分布存放在不同节点,避免了存储在单一节点时被盗取存储信息的高风险。
[0030]在一种优选实施方式中,所述生成的分片信息包括第一认证问题信息和第一认证答案信息,所述第一认证问题信息由所述注册模块通过第一随机数和随机盐生成,所述第一认证答案信息由所述注册模块通过加密算法对所述注册密钥、所述第一随机数和所述随机盐进行计算生成。具体地,注册模块通过第一随机数Pi α = 1,…8)和随机盐Si α = I,…8)生成第一认证问题信息QiQ = I, ---8) ,Qi= (P i, Si), (i = 1,…8)。登陆模块通过加密算法对注册密钥、第一随机数Pi (i = I,…8)和随机盐SiQ = I,…8)进行计算生成第一认证答案信息Ai (i = 1,…8)。
[0031]在一种优选实施方式中,所述注册密钥通过扩展算法扩展为密钥序列,所述密钥序列中以所述第一随机数为序号的值为认证答案,所述第一认证答案信息通过所述加密算法对所述认证答案和所述随机盐进行计算生成。具体地,注册模块通过扩展算法E O将注册密钥K扩展为密钥序列E (K),取密钥序列E (K)中以所述第一随机数Pi (i = 1,…8)为序号的值为认证答案Ki= E(K) [Pi], (i = I,…8),通过加密算法H O对所述认证答案Ki (i=I,…8)和所述随机盐SiQ = I,…8)进行计算生成所述第一认证答案信息AiQ = I,…8) ο Ai= H(SilKi), (i = I,…8) ο
[0032]在一种优选实施方式中,所述登陆模块指定选择所述注册模块所支持的所述扩展算法种类和所述加密算法种类。具体地,登陆模块指定选择所述注册模块所支持的所述扩展算法EO和加密算法HO。分片方式和算法由用户端的登陆模块决定,降低了被逆向解析的风险,提高了安全性。
[0033]在一种优选实施方式中,所述登陆模块所接收的认证问题信息为第二认证问题信息,所述第二认证问题信息由所述存储节点在所存储的分片信息中加入第二随机数,通过所述第二随机数和所述第一认证问题信息生成;与所述第二认证问题信息相对应的第二认证答案信息由所述第二随机数和所述第一认证答案信息生成。具体地,存储模块在所存储的分片信息中加入第二随机数Ri α = 1,…8),通过第二随机数Ri (i = 1,…8)和第一认证问题信息Qi (i = 1,…8)生成第二认证问题信息qi (i = I, ---8), Qi= (P i; Si, Ri), (i =1,-8);通过所述第二随机数Ri (i = 1,…8)和所述第一认证答案信息Ai (i = 1,-8)生成第二认证答案信息ai (i = 1,…8),Bi=H(RpAi), (i = 1,...8)。所述登陆模块接收第二认证问题信息 Qi= (P i, Si, Ri),(i = 1,…8) ο
[0034]在一种优选实施方式中,所述登陆模块通过所述登陆密钥、所述第一随机数、所述随机盐、所述第二随机数生成所述认证计算结果。具体地,登陆模块通过登陆密钥K’、第一随机数PiQ = I,…8)、随机盐SiQ = I,…8)、第二随机数RiQ = I,…8)生成认证计算结果a/ α = 1,...8)。通过扩展算法EO将登陆密钥K’扩展为密钥序列E (K’),K/ =E(K’ ) [Pi], (i = I,…8),Α/ = H(SilK/ ),(i = 1,.K = H(RilA/ ),(i = 1,…8)。
[0035]在一种优选实施方式中,所述登陆模块所接收的认证结果由所述认证模块对所述认证计算结果与所述第二认证答案信息一一对比而得出;对比结果为相同的数量不小于系统预设常量值时,认证结果为通过;对比结果为相同的数量小于系统预设常量值时,认证结果为不通过。具体地,认证模块将认证计算结果%’(i = 1,…8)与第二认证答案信息aji=1,…8) —一对比,对比结果为相同的数量不小于系统预设常量值M时,认证结果为通过;对比结果为相同的数量小于系统预设常量值M时,认证结果为不通过。分片信息数量N通常设置为8或16,系统预设常量值M通常根据系统易受到的攻击类型设置在1-4之间。在本实施方式中,M设置为2。本发明的各分片信息仅使用部分密钥特征生成,保护了多份分片信息间的独立性,部分分片信息的丢失不影响其余分片信息进行认证,在本实施方式中,只需有两个分片信息所进行的验证通过即可完成认证,因而本发明具备较强的容错性,对于恶劣网络环境有很强的适应能力。
[0036]在一种优选实施方式中,所述登陆模块向注册模块发送的注册请求还包括注册用户名,所述注册用户名通过所述注册模块计算生成存储地址,所述分片信息存储在所述存储地址在所述存储模块的分布式哈希表中所对应的存储节点中。具体地,存储模块通过分布式哈希表(DHT)管理所述存储节点,由注册用户名UID的高位与i进行异或,生成第i片分片信息的存储地址WDi,将第i片分片信息存储于存储地址WDi在分布式哈希表(DHT)中所对应的存储节点中。
[0037]在一种优选实施方式中,所述登陆模块向认证模块发送的登陆请求包括登陆用户名,所述登陆用户名通过所述认证模块计算生成查询地址,所述登陆模块所接收的认证问题信息由所述认证模块从所述查询地址在所述存储模块的分布式哈希表中所对应的存储节点中获取。具体地,所述登陆请求仅包括登陆用户名UID’,认证模块通过登陆用户名UID?生成查询地址nDi’,查找查询地址UIDi’在分布式哈希表(DHT)中所对应的存储节点,向所查找到的存储节点获取分片信息。登陆时登陆模块只需将用户名发送至认证模块,有效地提尚了安全性。
[0038]图2为本发明的适用于分布式存储的认证方法另一种实施方式的流程图。
[0039]如图2所示,本实施方式中,适用于分布式存储的认证方法包括:
[0040]S60:认证模块接收登陆模块所发送的登陆请求。具体地,认证模块接收了登陆模块所发送的包含登录用户名的登陆请求。
[0041]S70:认证模块根据登陆请求查找存储模块中的存储节点,并从中获取分片信息,向登陆模块发送分片信息中的认证问题信息。具体地,认证模块接收登陆请求后,根据所述登陆请求查找相关的存储节点,并向查找到的存储节点请求分片信息。存储节点接收到请求后向认证模块发送分片信息。分片信息中包含认证问题信息%和认证答案信息A i。认证模块向登陆模块发送从存储节点所获取的分片信息中的认证问题信息%。
[0042]S80:认证模块接收登陆模块用所持有的登陆密钥对认证模块发送的认证问题信息进行计算所得到的认证计算结果。具体地,认证模块接收登陆模块所发送的结合所持有的登陆密钥K’和所接收的认证问题信息Qi进行计算所得到的认证计算结果A /。
[0043]S90:认证模块对接收的认证计算结果和获取的分片信息中所包含的认证答案信息进行对比,得到认证结果,并发送至登陆模块。具体地,认证模块将接收的认证计算结果A/与获取的分片信息中的认证结果信息^进行对比,得到认证结果,并发送至登陆模块。
[0044]在一种优选实施方式中,注册模块接收到所述登陆模块发送的注册请求,对所述注册请求包含的注册密钥进行计算生成分片信息,所述生成的分片信息分别存储在所述存储模块的存储节点中。具体地,所述注册请求包括注册用户名和注册密钥,登陆模块将注册用户名和注册密钥发送至注册模块请求注册,注册模块检验注册用户名是否被占用,若被占用则返回提示信息,若未被占用,则对所述注册密钥进行计算,生成N个分片信息,并将所述分片信息分别存储在存储模块的N个存储节点中。分片信息数量N通常设置为8或16。在本实施方式中,N设置为16。所述分片信息包含认证问题信息Qi (i = 1,-16)和认证答案信息Ai (i = I,-16) ο
[0045]本发明将密钥生成的分片信息分布存放在不同节点,避免了存储在单一节点时被盗取存储信息的高风险。
[0046]在一种优选实施方式中,所述生成的分片信息包括第一认证问题信息和第一认证答案信息,所述第一认证问题信息由所述注册模块通过第一随机数和随机盐生成,所述第一认证答案信息由所述注册模块通过加密算法对所述注册密钥、所述第一随机数和所述随机盐进行计算生成。具体地,注册模块通过第一随机数Piα = 1,-16)和随机盐Siα =I,...16)生成第一认证问题信息 Qi (i = I,...16), Qi= (P ” Si),(i = 1,...16)。登陆模块通过加密算法对注册密钥、第一随机数Pi (i = I,…16)和随机盐SiQ = I,…16)进行计算生成第一认证答案信息Ai (i = I,...16) ο
[0047]在一种优选实施方式中,所述注册密钥通过扩展算法扩展为密钥序列,所述密钥序列中以所述第一随机数为序号的值为认证答案,所述第一认证答案信息通过所述加密算法对所述认证答案和所述随机盐进行计算生成。具体地,注册模块通过扩展算法E O将注册密钥K扩展为密钥序列E (K),取密钥序列E (K)中以所述第一随机数Pi (i = I, -16)为序号的值为认证答案Ki= E(K) [Pi], (i = 1,…16),通过加密算法HO对所述认证答案KiQ = I,…16)和所述随机盐SiQ = I,…16)进行计算生成所述第一认证答案信息Ai (i=I,…16)。Ai= H(S i, Ki),(i = 1,…16)。
[0048]在一种优选实施方式中,所述注册模块所使用的所述扩展算法种类和所述加密算法种类由所述登陆模块指定选择。具体地,所述注册模块所使用的所述扩展算法E O和加密算法HO由登陆模块指定选择。分片方式和算法由用户端的登陆模块决定,降低了被逆向解析的风险,提高了安全性。
[0049]在一种优选实施方式中,所述存储节点在所存储的分片信息中加入第二随机数,通过所述第二随机数和所述第一认证问题信息生成第二认证问题信息,由所述第二随机数和所述第一认证答案信息生成第二认证答案信息;所述认证模块从所述存储节点获取的分片信息包括所述第二认证问题信息和所述第二认证答案信息,所述认证模块向所述登陆模块发送所述第二认证问题信息。具体地,存储模块在所存储的分片信息中加入第二随机数Ri (i = I,...16),通过第二随机数Ri (i = I,...16)和第一认证问题信息Qi (i = I,...16)生成第二认证问题信息qi (i = I,…16),qi= (P i; Si, Ri),(i = 1,…16);通过所述第二随机数Ri α = I,...16)和所述第一认证答案信息Ai α = I,...16)生成第二认证答案信息a, α=Iruiehai=H(RpAi)Ji = 1,…16)。所述认证模块向所述登陆模块发送第二认证问题信息 Qi= (P i, Si, Ri),(i = 1,...16) O
[0050]在一种优选实施方式中,所述认证模块所接收的认证计算结果由所述登陆模块通过所述登陆密钥、所述第一随机数、所述随机盐和所述第二随机数计算生成。具体地,登陆模块通过登陆密钥K’、第一随机数Pi (i = 1,…16)、随机盐Si (i = 1,…16)、第二随机数Ri (i = 1,-16)生成认证计算结果a/(i = 1,...16)。通过扩展算法E O将登陆密钥K’扩展为密钥序列 E(K,),K/ =E(K,) [Pi], (i = 1,...16),Α/ = H(SilKZ), (i = 1,…16),a/ = H (Ri, A/ ),(i = 1,…16)。认证模块接收登陆模块所发送的认证计算结果a/ (i =
I,…16) ο
[0051]在一种优选实施方式中,所述认证模块对所述认证计算结果与所述第二认证答案信息一一对比得出认证结果;对比结果为相同的数量不小于系统预设常量值时,认证结果为通过;对比结果为相同的数量小于系统预设常量值时,认证结果为不通过。具体地,认证模块将认证计算结果a/ (i = I,...16)与第二认证答案信息aji = I,…16)--对比,对比结果为相同的数量不小于系统预设常量值M时,认证结果为通过;对比结果为相同的数量小于系统预设常量值M时,认证结果为不通过。分片信息数量N通常设置为8或16,系统预设常量值M通常根据系统易受到的攻击类型设置在1-4之间。在本实施方式中,M设置为4。本发明的各分片信息仅使用部分密钥特征生成,保护了多份分片信息间的独立性,部分分片信息的丢失不影响其余分片信息进行认证,在本实施方式中,只需有四个分片信息所进行的验证通过即可完成认证,因而本发明具备较强的容错性,对于恶劣网络环境有很强的适应能力。
[0052]在一种优选实施方式中,所述注册模块接收的注册请求还包括注册用户名,所述注册模块对所述注册用户名进行计算生成存储地址,将所述分片信息存储在所述存储地址在所述存储模块的分布式哈希表中所对应的存储节点中;所述存储模块通过分布式哈希表管理存储节点。具体地,存储模块通过分布式哈希表(DHT)管理所述存储节点,由注册用户名UID的高位与i进行异或,生成第i片分片信息的存储地址WDi,将第i片分片信息存储于存储地址WDi在分布式哈希表(DHT)中所对应的存储节点中。
[0053]在一种优选实施方式中,所述认证模块接收的登陆请求包括登陆用户名,所述认证模块对所述登陆用户名进行计算生成查询地址,从所述查询地址在所述存储模块的分布式哈希表中所对应的存储节点中获取分片信息。具体地,所述登陆请求仅包括登陆用户名UID?,认证模块通过登陆用户名WD’生成查询地址HDi ’,查找查询地址UIDi ’在分布式哈希表(DHT)中所对应的存储节点,向所查找到的存储节点获取分片信息。登陆时登陆模块只需将用户名发送至认证模块,有效地提高了安全性。
[0054]图3为本发明的适用于分布式存储的认证方法一种实施方式所适用的系统的结构示意图。
[0055]如图3所示,本实施方式中,适用于分布式存储的认证方法所适用的系统包括--认证模块10、注册模块20、认证模块30、存储模块40。
[0056]登陆模块10,用于发送注册请求、登陆请求,用所持有的登陆密钥对认证模块30发送的认证问题信息进行计算,得到认证计算结果。在本实施方式中,登陆模块10设置在客户端中。
[0057]注册模块20,设置在注册服务器中,用于接收登陆模块10的注册请求、检测用户UID是否存在、将密钥K生成分片信息并分布存储在存储模块40的存储节点中。所述分片信息包括认证问题信息QjP认证答案信息A -
[0058]认证模块30,设置在认证服务器中,用于接收登陆模块10的登陆请求,查找存储与所述登陆请求相关的分片信息的存储节点并获取分片信息,向登陆模块10发送所获取的分片信息包含的认证问题信息Qi,接收登陆模块10所发送的认证计算结果Ai,并与所获取的分片信息包含的认证结果信息化进行对比,得到认证结果,并将所述认证结果发送给登陆模块10。
[0059]存储模块40,设置在对等网络中,用于存储所述分片信息,并向认证模块30返回分片信息。
[0060]本发明将认证过程的计算分布在登陆模块、注册模块/认证模块、存储模块中,注册时注册模块发送至存储模块的各分片信息仅与密钥各部分相关,各模块间仅进行最低限度的信息交流,有效地提高了系统的安全性。
[0061]在一种优选实施方式中,所述登陆模块按实际需求设置在认证服务器中。
[0062]在一种优选实施方式中,所述注册服务器、所述认证服务器是所述对等网络中的节点。
[0063]在一种优选实施方式中,存储模块40还用于对所述分片信息进一步加密。具体地,存储模块40在所存储的分片信息中加入第二随机数民。
[0064]综上所述,本发明充分利用了分布式存储的优点,具备了较高的安全性和较强的容错性。
[0065]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【权利要求】
1.一种适用于分布式存储的认证方法,其特征在于,所述方法包括: 登陆模块向认证模块发送登陆请求; 所述登陆模块接收所述认证模块根据所述登陆请求查找存储模块中的存储节点并从所述存储节点获取的分片信息中的认证问题信息;所述分片信息包含认证问题信息和认证答案信息; 所述登陆模块用所持有的登陆密钥对所述接收的认证问题信息进行计算,得到认证计算结果,并将所述认证计算结果发送至所述认证模块; 所述登陆模块接收所述认证模块发送的通过对所述认证计算结果和所述获取的分片信息中所包含的认证答案信息进行对比所得到的认证结果。
2.根据权利要求1所述的适用于分布式存储的认证方法,其特征在于,所述登陆模块向注册模块发送注册请求,所述注册请求包含的注册密钥通过所述注册模块所进行的计算生成分片信息,所述生成的分片信息分别存储在所述存储模块的存储节点中。
3.根据权利要求2所述的适用于分布式存储的认证方法,其特征在于,所述生成的分片信息包括第一认证问题信息和第一认证答案信息,所述第一认证问题信息由所述注册模块通过第一随机数和随机盐生成,所述第一认证答案信息由所述注册模块通过加密算法对所述注册密钥、所述第一随机数和所述随机盐进行计算生成。
4.根据权利要求3所述的适用于分布式存储的认证方法,其特征在于,所述注册密钥通过扩展算法扩展为密钥序列,所述密钥序列中以所述第一随机数为序号的值为认证答案,所述第一认证答案信息通过所述加密算法对所述认证答案和所述随机盐进行计算生成。
5.根据权利要求4所述的适用于分布式存储的认证方法,其特征在于,所述登陆模块指定选择所述注册模块所支持的所述扩展算法种类和所述加密算法种类。
6.根据权利要求4所述的适用于分布式存储的认证方法,其特征在于,所述登陆模块所接收的认证问题信息为第二认证问题信息,所述第二认证问题信息由所述存储节点在所存储的分片信息中加入第二随机数,通过所述第二随机数和所述第一认证问题信息生成;与所述第二认证问题信息相对应的第二认证答案信息由所述第二随机数和所述第一认证答案彳目息生成。
7.根据权利要求6所述的适用于分布式存储的认证方法,其特征在于,所述登陆模块通过所述登陆密钥、所述第一随机数、所述随机盐、所述第二随机数生成所述认证计算结果。
8.根据权利要求7所述的适用于分布式存储的认证方法,其特征在于,所述登陆模块所接收的认证结果由所述认证模块对所述认证计算结果与所述第二认证答案信息一一对比而得出;对比结果为相同的数量不小于系统预设常量值时,认证结果为通过;对比结果为相同的数量小于系统预设常量值时,认证结果为不通过。
9.根据权利要求8所述的适用于分布式存储的认证方法,其特征在于,所述注册密钥计算生成的分片信息数量为8或16,所述系统预设常量值根据系统易受到的攻击类型设置在1-4之间。
10.根据权利要求2至9中任意一项权利要求所述的适用于分布式存储的认证方法,其特征在于,所述登陆模块向注册模块发送的注册请求还包括注册用户名,所述注册用户名通过所述注册模块计算生成存储地址,所述分片信息存储在所述存储地址在所述存储模块的分布式哈希表中所对应的存储节点中。
11.根据权利要求10所述的适用于分布式存储的认证方法,其特征在于,所述登陆模块向认证模块发送的登陆请求包括登陆用户名,所述登陆用户名通过所述认证模块计算生成查询地址,所述登陆模块所接收的认证问题信息由所述认证模块从所述查询地址在所述存储模块的分布式哈希表中所对应的存储节点中获取。
12.一种适用于分布式存储的认证方法,其特征在于,所述方法包括: 认证模块接收登陆模块所发送的登陆请求; 所述认证模块根据所述登陆请求查找存储模块中的存储节点,从所述存储节点中获取分片信息,并向所述登陆模块发送所述分片信息中的认证问题信息;所述分片信息包含认证问题信息和认证答案信息; 所述认证模块接收所述登陆模块用所持有的登陆密钥对所述认证模块发送的认证问题信息进行计算所得到的认证计算结果; 所述认证模块对所述接收的认证计算结果和所述获取的分片信息中所包含的认证答案信息进行对比,得到认证结果,并将所述认证结果发送至所述登陆模块。
13.根据权利要求12所述的适用于分布式存储的认证方法,其特征在于,注册模块接收到所述登陆模块发送的注册请求,对所述注册请求包含的注册密钥进行计算生成分片信息,所述生成的分片信息分别存储在所述存储模块的存储节点中。
14.根据权利要求13所述的适用于分布式存储的认证方法,其特征在于,所述生成的分片信息包括第一认证问题信息和第一认证答案信息,所述第一认证问题信息由所述注册模块通过第一随机数和随机盐生成,所述第一认证答案信息由所述注册模块通过加密算法对所述注册密钥、所述第一随机数和所述随机盐进行计算生成。
15.根据权利要求14所述的适用于分布式存储的认证方法,其特征在于,所述注册密钥通过扩展算法扩展为密钥序列,所述密钥序列中以所述第一随机数为序号的值为认证答案,所述第一认证答案信息通过所述加密算法对所述认证答案和所述随机盐进行计算生成。
16.根据权利要求15所述的适用于分布式存储的认证方法,其特征在于,所述注册模块所使用的所述扩展算法种类和所述加密算法种类由所述登陆模块指定选择。
17.根据权利要求15所述的适用于分布式存储的认证方法,其特征在于,所述存储节点在所存储的分片信息中加入第二随机数,通过所述第二随机数和所述第一认证问题信息生成第二认证问题信息,由所述第二随机数和所述第一认证答案信息生成第二认证答案信息;所述认证模块从所述存储节点获取的分片信息包括所述第二认证问题信息和所述第二认证答案信息,所述认证模块向所述登陆模块发送所述第二认证问题信息。
18.根据权利要求17所述的适用于分布式存储的认证方法,其特征在于,所述认证模块所接收的认证计算结果由所述登陆模块通过所述登陆密钥、所述第一随机数、所述随机盐和所述第二随机数计算生成。
19.根据权利要求18所述的适用于分布式存储的认证方法,其特征在于,所述认证模块对所述认证计算结果与所述第二认证答案信息一一对比得出认证结果;对比结果为相同的数量不小于系统预设常量值时,认证结果为通过;对比结果为相同的数量小于系统预设常量值时,认证结果为不通过。
20.根据权利要求19所述的适用于分布式存储的认证方法,其特征在于,所述注册密钥计算生成的分片信息数量为8或16,所述系统预设常量值根据系统易受到的攻击类型设置在1-4之间。
21.根据权利要求13至20中任意一项权利要求所述的适用于分布式存储的认证方法,其特征在于,所述注册模块接收的注册请求还包括注册用户名,所述注册模块对所述注册用户名进行计算生成存储地址,将所述分片信息存储在所述存储地址在所述存储模块的分布式哈希表中所对应的存储节点中;所述存储模块通过分布式哈希表管理存储节点。
22.根据权利要求21所述的适用于分布式存储的认证方法,其特征在于,所述认证模块接收的登陆请求包括登陆用户名,所述认证模块对所述登陆用户名进行计算生成查询地址,从所述查询地址在所述存储模块的分布式哈希表中所对应的存储节点中获取分片信息。
【文档编号】H04L29/08GK104468580SQ201410757487
【公开日】2015年3月25日 申请日期:2014年12月10日 优先权日:2014年12月10日
【发明者】吴自立 申请人:北京众享比特科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1