CN101145911B - 具有私密保护及口令找回功能的身份认证方法 - Google Patents

具有私密保护及口令找回功能的身份认证方法 Download PDF

Info

Publication number
CN101145911B
CN101145911B CN200710053701A CN200710053701A CN101145911B CN 101145911 B CN101145911 B CN 101145911B CN 200710053701 A CN200710053701 A CN 200710053701A CN 200710053701 A CN200710053701 A CN 200710053701A CN 101145911 B CN101145911 B CN 101145911B
Authority
CN
China
Prior art keywords
data
user
password
account
server
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.)
Expired - Fee Related
Application number
CN200710053701A
Other languages
English (en)
Other versions
CN101145911A (zh
Inventor
程元斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jianghan University
Original Assignee
Jianghan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jianghan University filed Critical Jianghan University
Priority to CN200710053701A priority Critical patent/CN101145911B/zh
Publication of CN101145911A publication Critical patent/CN101145911A/zh
Application granted granted Critical
Publication of CN101145911B publication Critical patent/CN101145911B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种具有私密保护及口令找回功能的身份认证方法。它是在用户进行网络注册和/或登陆时,对用户输入的原始数据进行数据溶合隐去原始数据;再利用单向散列函数对数据溶合所得到的数据进行加密,然后仅将变换结果传输到服务器端,服务器程序在用户注册时存储这些变换结果,在用户登录或找回口令时将此变换结果与注册时所存储的结果进行比对来认证用户身份。该方法利用数据溶合和利用单向散列函数对用户输入的原始“问题”“答案”数据进行加密,大大提高了用户数据的私密性,使得网络管理员不易攻击,大大增加了网络安全,避免用户数据被盗造成用户的损失,适用于各种网络用户进行网络注册和/或登陆。

Description

具有私密保护及口令找回功能的身份认证方法
技术领域
本发明属于计算机网络安全技术,具体涉及一种具有私密保护及口令找回功能的身份认证方法。
背景技术
如今,人们越来越依赖于网络,各种各样的网络服务正在逐步渗透到人们的学习、生活、工作之中。但出于各种各样的原因,人们使用某个网络服务时往往需要先注册一个账号,然后在登录服务网站时要输入此账号及相应的口令。出于安全的考虑,一个人对于不同的服务网站,往往要设计不同的账号口令,例如,你绝不会将你的银行帐号口令用于你的QQ。在网络服务遍地开花的今天,一个人拥有5、6个甚至更多的账号并不稀奇。而且,不少网站规定了独特的账号与口令的设计规则,使得用户不能按自己的习惯设计账号与口令。
同时,一个经常发生且令人头疼的问题也随之而来,这就是口令的遗忘。尤其是那些不经常使用的邮箱或其他账号,其口令更易遗忘。为了使用户不至于因忘了口令而不能继续使用已有的账号,也为了服务器在清除用户长期不用的废弃账号时,尽可能少地连同用户希望继续使用的账号一起清除掉,不少服务器设置了“口令找回”功能。归纳起来,有以下几种方法:
1注册时用户提供某个邮箱地址,“找回口令”时,由服务器将新口令发到此邮箱中。
2注册时设置“问题”与“答案”,欲“找回口令”时,用户根据显示的问题,输入答案,若答案正确,则用户可重新设定口令或由服务器返回口令。
3借助其他通信方式。例如,注册时用户提供手机号,“找回口令”时,由服务器将新口令发到用户手机中。
4同时提供上述各种方法,用户可选择使用。
方法1十分简便,但存在以下问题:首先,其要求用户提供一个邮箱地址,这是一个极大的限制和不便,因为有相当一部分人是不经常使用电子邮件甚至从来不使用电子邮件的。对于不经常使用电子邮件的用户来说,其邮箱的口令更容易被遗忘。其次,发到用户邮箱的口令显然只能是明文或实质上是明文的,这是一个极大的安全隐患。此外,由于一个人的邮箱、QQ等需要与其他人交往的账号是近于公开的,若采用这种方法极易被人搞恶作剧,甚至成为一种新的安全问题。所以,这类网络服务不宜采用这种方法。
方法2目前也存在安全问题。这主要是问题答案以明文存储或者采用对称密钥加密算法加密,易遭受来自品行不端的网络管理员的攻击。
方法3就目前而言,相对比较安全,但不够方便,而且许多人并不愿意向网站提供自己的手机号。
从口令的安全性需求出发,口令安全需要能够抵御各种网络攻击。首先是保密性。对口令而言,保密性应当是除了用户本人外,其他任何人在任何条件下都无法知晓此口令,即口令应当具备个人隐私的特性。其次是具有绝对的认证性,即能够抵御各种主动攻击,保证在服务器端得到的口令信息,是直接来自于用户本人的。
发明内容
本发明的目的在于提供一种在进行网络注册及口令找回时,对用户身份认证的方法。
本发明的技术方案为:具有私密保护及口令找回功能的身份认证方法,它是在用户进行网络注册和/或登陆时,对用户输入的原始数据进行数据溶合隐去原始数据;再利用单向散列函数对数据溶合所得到的数据进行加密,然后仅将变换结果传输到服务器端,服务器程序在用户注册时存储这些变换结果,在用户登录或找回口令时将此变换结果与注册时所存储的结果进行比对来认证用户身份。
所述用户进行网络注册时采用数据溶合技术隐去原始的“问题”与“答案”私密数据;利用单向散列函数对数据溶合所得到的“问题”与“答案”数据进行加密,然后仅将变换结果传输到服务器端然后将变换结果传输到服务器端;服务器程序存储此变换结果到用户账号记录中;
所述由客户端程序实施下列操作:(1)由用户选择一个服务器给出的“问题”并输入“答案”;(2)采用数据溶合方法将“账号”、“问题”与“答案”溶合,隐去原始的“答案”数据;(3)采用单向散列函数加密由“问题”与“答案”等数据溶合所得到的数据,然后将变换结果传输到服务器端;服务器程序存储此变换结果到用户账号记录中。
用户执行找回“口令”程序时,由客户端程序对用户输入的口令找回“问题”“答案”施行与注册时相同算法的处理,然后将变换结果传输到服务器端;服务器程序根据账号及此变换结果与用户账号记录中的数据进行比对,实现用户身份的认证,认证比对结果一致通过,则启动口令重置流程,否则作无效处理
通过上述方法,使找回口令所需的“问题”与“答案”数据成为网络管理员不可见的,从而可抵御来自品行不端的网络管理员或其他可看到“答案”的人士的攻击。同时,本发明也是一套完整的能够满足口令安全性需求的口令认证方法。本发明以上述技术为核心,由相互关联的数据库框架结构、注册方法、登录方法、口令找回方法几部分组成。
A.数据库框架结构
从保密及私密保护角度分,用户信息分为明文与私密信息两大类型。明文信息包括用户必须向网站提供的“真实”信息,如用户真实身份等;私密信息包括用户登录账号、口令、口令找回问题答案等。一般情况下,只需一张表存放这些信息。表结构及各字段属性如下表所示。
  字段名   含义   数据类型   是否在客户端加密   唯一性   必备性
  User   用户实名   字符串   √
  字段名   含义   数据类型   是否在客户端加密   唯一性   必备性
  account   登录账号   二进制串   √   √   √
  sfzh   身份证号   字符串
  password   口令   二进制串   √   √
  ans   找回问题答案   二进制串   √   √
说明:
1用户实名的含义与作用根据服务性质而变。例如,网上银行必是用户的真实姓名,而QQ只是一个化名而已。
2登录账号是否加密可随服务性质而变。加密可进一步加强安全性。
3身份证号不唯一,意味着同一个用户可使用多个账号。
4未设口令找回问题字段。本发明采取在注册及找回口令时,由服务器提供若干标准问题,用户仅选择一个问题给出答案即可。实际上,本系统允许用户给出任意的结果。如此可给攻击者增加难度。
B.数据溶合与单向散列函数“加密”
1.数据溶合的概念
数据溶合指将两组或更多的数据溶合成一组新的数据;欲从新数据推导出原数据是计算上不可行的。针对本发明所描述的口令找回问题的数据溶合模型有以下一般形式:
Y=R(公开数据,共享秘密数据,私密数据)
或者:
Y=R(公开数据,有限集合数据,无限集合数据)
其中,第一个参数(公开数据)至少对网络管理员是公开的,可取用户登录账号;第2个参数(有限集合数据)指从若干个预置数据中取一个数据,本发明中即由服务器提供的标准问题中用户所选择的问题;第3个参数(无限数据集合)即问题的答案。
具体的算法R不限于下列所描述的一种,但须满足以下条件:(1)欲从Y导出参数3在计算上是不可行的;(2)Y总有足够的长度(3)对于不同的参数,出现Y相同的概率极小。
2.数据溶合算法R的描述
设公开数据A=AM-1AM-2.........A2A1A0((数据长度为m字节),参数有限集合数据B=Bn-1Bn-2.........B2B1B0((数据长度为n字节),参数无限集合数据C=Cv-1Cv-2.........C2C1C0((数据长度为v字节)。
设Y=YJ-1YJ-2.........Y2Y1Y0(数据长度为J字节,为描述简单起见,取J为固定值16)
设D=dX-1dX-2.........d2d1d0(数据长度为X比特,X=J×7。此处,X=112。以下均以J=16进行描述))
①若V=1,则扩展C到2字节长,即C=C0b7C0b6C0b5C0b4C0b3C0b2C0b1C0b0C0b0C0b1C0b2C0b3C0b4C0b5C0b6C0b7,其中,C0b7表示C0的第7位,依次类推,同时V变为2;
②若V>=14,则D=C13C12.........C2C1C0否则,扩展到14字节。例如,当V=13时,D=C13C12........C2C1C0C13;又如,当V=3时,D=C2C1C0C2C1C0C2C1C0C2C1C0C2C1
Y K = A KA ⊕ B KB ⊕ C KC
式中
KA=DVK mod m
KB=DVK mod n
KC=DVK  mod  v
其中,DVK是取自D中的7比特无符号整数:
DVK=d7K+6d7K+5d7K+4d7K+3d7K+2d7K+1d7K+0
3.单向散列函数“加密”与SHA-1算法
利用单向散列函数的单向性变换,即可“加密”源数据。当源数据满足一定条件时,即使网络管理员或攻击者获得了变换结果,亦无法导出源数据,从而无法实施攻击。本方案建议采用SHA-1算法或安全性更强的SHA-224或SHA-256算法。
SHA算法由美国国家标准和技术协会(NIST)与美国国家安全局(NSA)设计,并且被美国政府采纳,成为美国国家标准,于1993年颁布。SHA-1是其改进版,于1995年颁布。以下是根据本发明的具体需要经过删减的该算法的处理流程,分为4个步骤:
●步骤1:构造512bit分组。
首先,对输入的数据进行填充,使得数据位长度为448。填充比特串的最高位补一个1,其余位补0。
其次,将64比特加在报文后表示报文的原始长度。
为方便描述,将此分组记为16个32位字的组合(W0,W1,W2,W3,W4,W5,W6,W7,W8,W9,W10,W11,W12,W13,W14,W15)
●步骤2:初始化MD缓存。
一个160位MD缓冲区用以保存中间和最终散列函数的结果。
它可以表示为5个32位的寄存器(A,B,C,D,E)。初始化为:
A=67452301B=EFCDAB89C=98BADCFE
D=10325476E=C3D2E1F0
并按big-endian format(大端格式)存储。
●步骤3:处理分组。
这是此算法的核心,包括4次循环,每次循环又包含20个循环处理步骤。4次循环具有相似的结构,但每次循环使用不同的基本逻辑函数,分别记为f1、f2、f3和f4
第i次循环中每一次小循环的运算逻辑为:
A,B,C,D,E←(E+fi(t,B,C,D)+S5(A)+Ut+Kt),A,S30(B),C,D其中:
fi(t,B,C,D)定义为:
  t   函数名   运算
  0≤t≤19   f<sub>1</sub>   (B∧C)∨(~B∧D)
  20≤t≤39   f<sub>2</sub>   B⊙C⊙D
  40≤t≤59   f<sub>3</sub>   (B∧C)∨(B∧D)∨(C∧D)
  60≤t≤79   f<sub>4</sub>   B⊙C⊙D
表中,∧:与运算;∨:或运算;~:非运算;⊙:异或运算。
SL=32bit参数循环左移L位。
Ut=当t≤15时,取分组的第t个字,即Ut=Wt;当t≥16时,按下式计算:
Ut=S1(Ut-16⊙Ut-14⊙Ut-8⊙Ut-3)
式中:S1:32bit参数循环左移1位;⊙:异或运算。
Kt=一个额外的常数值,如下表所示。
  t   K<sub>t</sub>
  0≤t≤19   5A827939
  20≤t≤39   6ED9EBA1
  40≤t≤59   8F1BBCDC
  60≤t≤79   CA62C1D6
+=模232加法运算。
●步骤4:输出。
输出160位缓冲区MD的值。
该方法利用数据溶合和利用单向散列函数对用户输入的原始“问题”“答案”数据进行加密,大大提高了用户数据的私密性,使得网络管理员不易攻击,大大增加了网络安全,避免用户数据被盗造成用户的损失,适用于各种网络用户进行网络注册和/或登陆,特别是QQ网络注册和/或登陆,及口令找回,这样能有效地避免QQ号及Q币的被盗。
附图说明
图1用动态链接库方式实施本发明时的网络应用系统示意图。
图2用可执行应用程序方式实施本发明时的网络应用系统示意图。
图3用脚本程序方式实施本发明时的网络应用系统示意图。
图4用户注册流程图。
图5用户登录流程图。
图6找回口令流程图。
具体实施方式
1.动态链接库方式(通用方式)
如图1所示,客户机应用进程的cslog子进程与服务器端的一个sslog子进程协同完成本发明所描述的注册、登录、口令找回各个过程。服务器端可同时拥有多个sslog子进程。cslog子进程通过调用cslog.dll库函数生成;sslog子进程通过调用sslog.dll库函数生成。
动态链接库分为2个库文件,不妨命名为cslog.dll与sslog.dll。其中,cslog.dll包括客户端的注册、登录、口令找回3个模块czhuce、cdenglu、cklzh;sslog.dll包括服务器端的4个模块szhuce、sdenglu、sklzh及idatabase。除idatabase外,每个模块被调用时作为一个线程运行,而idatabase提供与用户数据库的接口及相关设置,包括网络参数设置。
用本方式实施时,可在服务器与客户端传递服务器随机产生的隐含附加数据,例如时间戳,以抵御重放攻击、替身攻击;替身攻击指使用伪造的客户端动态链接库模块替代原模块的攻击方式。亦可强制用户使用软键盘输入,以抵御客户端间谍软件盗取用户输入数据。
基于本实施方式的应用系统可以是客户/服务器模式,也可以是浏览器/服务器模式。
若在cslog.dll与sslog.dll各增加一个“设置与协商”模块,则可实现由用户选择具体的加密变换算法及抵御攻击的措施,提升系统的灵活性。
2可执行应用程序方式
如图2所示,客户机应用进程的cslog子进程(或模块)与服务器端的一个sslog子进程协同完成本发明所描述的注册、登录、口令找回各个过程。服务器端可同时拥有多个sslog子进程。
用可执行应用程序方式实施的系统构成见附图2。本实施方式采用客户/服务器模式,分为客户程序与服务器程序2个应用程序。不妨命名为cslog.exe与sslog.exe。其中,cslog.exe程序包括客户端的注册、登录、口令找回3个模块czhuce、cdenglu、cklzh及其它应用模块;sslog.exe程序包括服务器端对应的3个模块szhuce、sdenglu、sklzh及其它应用模块。
用本方式实施时,可在服务器与客户端传递服务器随机产生的隐含附加数据,例如时间戳,以抵御重放攻击、替身攻击;替身攻击指使用伪造的客户端动态链接库模块替代原模块的攻击方式。亦可强制用户使用软键盘输入,以抵御客户端间谍软件盗取用户输入数据。
3脚本程序方式
如图3所示,本实施方式采用浏览器/服务器模式,包括客户端脚本与服务器端脚本。不妨以ASP脚本为例,将与注册、登录、口令找回对应的脚本文件分别命名为zhuce1.asp、zhuce2.asp、denglu.asp、klzh.asp等。其中,注册过程用2个脚本文件,分作两个阶段实现,是为了降低实现难度。
用户注册算法及流程,如图4所示,
1用户进入注册页面第一页。
2用户在客户端填写用户身份数据及用户登录账号。
3用户发出“提交”命令。
4在客户端对用户填写的数据进行完备性、合法性、合理性检测。若有问题,给出相应提示并返回1。
5在客户端使用单向散列函数对用户登录账号进行加密变换。注册到服务器的账号实际上就是这种经过了变换的账号。(若应用服务器需要原始的账号,则取消本步骤)。
6上传用户身份数据及账号数据到服务器端,同时保持客户端原始数据。
7服务器进行账号冲突性检测,若有冲突,给出相应提示并返回2,令用户修改或重新输入数据;若无冲突,则创建新账号。
8服务器发出进入用户注册页面第二页指令。
9呈现用户注册页面第二页。
10用户在客户端继续填写口令、确认口令,选择口令找回问题并填写答案。
11用户发出“提交”命令。
12在客户端对用户填写的口令、确认口令进行有效性及一致性检测,对口令找回问题答案进行有效性检测。若有问题,给出相应提示并返回10。
13在客户端顺序进行数据溶合计算YPW=R(账号,系统常量,口令)、YANS=R(账号,问题,答案),及单向散列函数计算,即ZPW=SHA1(YPW)、ZANS=SHA1(YANS),对口令、口令找回问题答案等进行加密变换。此处的系统常量指应用程序设定的永久性的秘密常量。
14上传ZPW、ZANS等数据到服务器端,存入步骤7所建账号记录中。
注意:对于使用ASP/JSP一类脚本语言的算法实现,第二次上传数据到服务器时,需包含账号数据。一个简单且对用户友好的解决办法是在第二页表单中设置一个隐藏对象,用来存放服务器从第一次上传时获得的账号数据。
用户登录算法及流程,如图5所示
1客户端向服务器端发出服务请求。
2服务器向请求客户发出进入登录页面指令,同时附上校验码图像
(使用校验码技术抵御自动输入攻击)或/和加盖时间戳(抵御重放攻击)。
3用户进入登录页面。
4用户在客户端输入账号及口令。
5用户发出“提交”命令。
6在客户端使用单向散列函数对用户登录账号进行加密变换。(若应用服务器需要原始的账号,则取消本步骤)。
7在客户端顺序进行数据溶合计算YPW=R(账号,系统常量,口令),及单向散列函数计算ZPW=SHA1(YPW),对口令进行加密变换。此处的系统常量指应用程序设定的永久性的秘密常量。
8上传数据到服务器端。
服务器端查找账号与口令均吻合的记录。若有则继续;若没有则给出提示并返回2
口令找回算法及流程如图6所示
1客户端向服务器端发出服务请求。
2服务器向请求客户发出进入口令找回页面指令,同时附上校验码图像(使用校验码技术抵御自动输入攻击)或/和加盖时间戳(抵御重放攻击)。
3用户进入登录页面。
4用户在客户端选择口令找回问题,并输入账号、口令找回问题答案、新口令、确认新口令。
5用户发出“提交”命令。
6客户端系统对新口令、确认新口令进行有效性及一致性检验,若有问题,则给出提示并返回4。
7在客户端使用单向散列函数对用户登录账号进行加密变换。(若应用服务器需要原始的账号,则取消本步骤)。
8在客户端顺序进行数据溶合计算YPW=R(账号,系统常量,口令)、YANS=R(账号,问题,答案),及单向散列函数计算,即ZPW=SHA1(YPW)、ZANS=SHA1(YANS),对口令、口令找回问题答案等进行加密变换。此处的系统常量指应用程序设定的永久性的秘密常量。
9上传数据到服务器端。
10服务器端查找账号与口令找回问题答案均吻合的记录。若有则继续;若没有但输入未达到规定次数者则给出提示并返回2,否则关闭网页。为彻底防止试探性输入攻击可将输入次数存放在数据库中,设置新口令时置0,每次找回输入时加1。
11服务器将新口令存入该账号记录。
本发明并不限于上述描述的内容,具体实现时可进行一定的修改,例如,各图中均未对账号进行加密,具体实现时可根据系统需要取舍。图4、图6中的问题表中的问题是永久性的,只能在表尾添加新问题,而不能删除、修改或插入。图5、图6中的函数参数sysc即发明内容中所述的系统常量,而出错处理应当向客户端返回相应的信息,且一般应给予用户有限次的重试机会。

Claims (6)

1.一种具有私密保护及口令找回功能的身份认证方法,它是在用户进行网络注册和/或登陆时,对用户输入的原始数据进行数据融合隐去原始数据;再利用单向散列函数对数据溶合所得到的数据进行加密,然后仅将变换结果传输到服务器端,服务器程序在用户注册时存储这些变换结果,在用户登录或找回口令时将此变换结果与注册时所存储的结果进行比对来认证用户身份。
2.如权利要求1所述具有私密保护及口令找回功能的身份认证方法,其特征在于所述用户注册时必须输入的数据包括帐号、口令、问题与答案;用户登陆时必须输入的数据包括帐号、口令;用户找回口令时必须输入帐号,并根据问题输入问题答案,其中问题是与用户注册时相同的,它或者由服务器返回,或者由用户从服务器所给出的问题列表中选择。
3.如权利要求1所述具有私密保护及口令找回功能的身份认证方法,其特征在于用户进行网络注册时采用数据溶合技术隐去原始的“问题”与“答案”私密数据;利用单向散列函数对数据溶合所得到的“问题”与“答案”数据进行加密,然后仅将变换结果传输到服务器端;服务器程序存储此变换结果到用户账号记录中;即在客户端进行数据溶合计算YPW=R(账号,系统常量,口令)、YANS=R(账号,问题,答案),及单向散列函数计算ZPW=SHA1(YPW)、ZANS=SHA1(YANS),然后将ZPW和ZANS传输到服务器端并分别存储到该用户账号记录中;
用户执行找回“口令”程序时,由客户端程序对用户输入的口令找回“问题”“答案”施行与注册时相同算法的处理,然后将变换结果传输到服务器端;服务器程序根据账号及此变换结果与用户账号记录中的数据进行比对,实现用户身份的认证,认证比对结果一致通过,则启动口令重置流程,否则作无效处理;即在客户端进行数据溶合计算YANS=R(账号,问题,答案),及单向散列函数计算ZANS=SHA1(YANS),然后将ZANS传输到服务器端;服务器端查找数据库中账号与口令找回问题答案均吻合的记录,若有则将新口令存入该账号记录,口令找回成功,否则做出错处理。
4.如权利要求1所述具有私密保护及口令找回功能的身份认证方法,其特征在于用户注册时,由客户端程序实施下列操作:(1)由用户输入自拟的“问题”及“答案”,并将“问题”数据以明文存入服务器端的数据库中;(2)采用数据溶合方法将“账号”、“问题”与“答案”溶合,隐去原始的“答案”数据;(3)采用单向散列函数加密由“问题”与“答案”等数据溶合所得到的数据,然后将变换结果传输到服务器端;服务器程序存储此变换结果到用户账号记录中;
用户执行找回口令程序时,由服务器提供用户注册时存在数据库中的问题,提示用户输入答案,然后由客户端程序对用户输入的口令找回问题答案施行与注册时相同算法的处理,然后再将变换结果传输到服务器端,服务器程序根据账号及此变换结果与用户账号记录中的数据进行比对,实现用户身份的认证,认证通过比对结果一致,则启动口令重置流程,否则作无效处理。
5.如权利要求1所述具有私密保护及口令找回功能的身份认证方法,其特征在于在用户注册时,由客户端程序实施下列操作:(1)由用户选择一个服务器给出的“问题”并输入“答案”;(2)采用数据溶合方法将“账号”、“问题”与“答案”溶合,隐去原始的“答案”数据;(3)采用单向散列函数“加密”由“问题”与“答案”等数据溶合所得到的数据,然后将变换结果传输到服务器端,服务器程序存储此变换结果到用户账号记录中;
用户执行找回口令程序时,由服务器提供用户注册时存在数据库中的问题,提示用户输入答案;然后由客户端程序对用户输入的口令找回问题答案施行与注册时相同算法的处理,然后将变换结果传输到服务器端;服务器程序根据账号及此变换结果与用户账号记录中的数据进行比对,实现用户身份的认证,认证比对结果一致通过,则启动口令重置流程,否则作无效处理。
6.如权利要求1、3、4、5中的任意项所述具有私密保护及口令找回功能的身份认证方法,其特征在于数据溶合方法为:
Y=R(公开数据,共享秘密数据,私密数据)
或者:
Y=R(公开数据,有限集合数据,无限集合数据)
其中,参数公开数据指至少对网络管理员或系统管理人员是公开的,且一般情况下,其他第三方也是可见的;参数共享秘密数据指只有系统与用户双方可见的数据,有限集合数据指从若干个预置数据中取一个数据;无限数据集合即只有用户一方掌握的私密数据;
其算法是:
设公开数据A=Am-1Am-2.........A2A1A0,数据长度为m字节;共享秘密数据B=Bn-1Bn-2.........B2B1B0,数据长度为n字节;私密数据C=Cv-1Cv-2.........C2C1C0,数据长度为v字节;
设Y=YJ-1YJ-2.........Y2Y1Y0,数据长度为J字节,为描述简单起见,取J为固定值16;
设D=dX-1dX-2.........d2d1d0,数据长度为X比特,X=J×7,此处,X=112;以下均以J=16进行描述;
依次按下列步骤计算:
①处理C:若私密数据C的长度v=1,则按下式扩展C到2字节长,即C=C0b7C0b6C0b5C0b4C0b3C0b2C0b1C0b0C0b0C0b1C0b2C0b3C0b4C0b5C0b6C0b7,其中,C0b7表示C0的第7位,依次类推,同时v变为2;若v>1,则C、v均不变;
②计算D:若v>=14,则D=C13C12.........C2C1C0;否则,从高位字节到低位字节,从C中循环取用所需字节接续到D的低位部分,直到将D扩展到14字节;
例如,当v=13时,D=C13C12.........C2C1C0C13;又如,当v=3时,D=C2C1C0C2C1C0C2C1C0C2C1C0C2C1
③计算Y:YK=AKA  BKB  CKC,k=0,1,2,...,J-1
式中
KA=DVK mod m
KB=DVK mod n
KC=DVK mod v
其中,DVK是取自D中的7比特无符号整数:
DVK=d7K+6d7K+5d7K+4d7K+3d7K+2d7K+1d7K+0
CN200710053701A 2007-10-30 2007-10-30 具有私密保护及口令找回功能的身份认证方法 Expired - Fee Related CN101145911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710053701A CN101145911B (zh) 2007-10-30 2007-10-30 具有私密保护及口令找回功能的身份认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710053701A CN101145911B (zh) 2007-10-30 2007-10-30 具有私密保护及口令找回功能的身份认证方法

Publications (2)

Publication Number Publication Date
CN101145911A CN101145911A (zh) 2008-03-19
CN101145911B true CN101145911B (zh) 2010-05-19

Family

ID=39208228

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710053701A Expired - Fee Related CN101145911B (zh) 2007-10-30 2007-10-30 具有私密保护及口令找回功能的身份认证方法

Country Status (1)

Country Link
CN (1) CN101145911B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103236934B (zh) * 2013-05-17 2016-09-21 天津书生云科技有限公司 一种云存储安全控制的方法
CN103368928B (zh) * 2012-04-11 2018-04-27 富泰华工业(深圳)有限公司 帐号密码重置系统及方法
CN103595699B (zh) * 2012-08-17 2018-02-27 腾讯科技(深圳)有限公司 一种管理账号的方法、系统及装置
CN103107989A (zh) * 2012-11-20 2013-05-15 高剑青 基于多哈希值的密码系统
WO2014079256A1 (zh) * 2012-11-20 2014-05-30 Gao Jianqing 基于多哈希值的密码系统
CN103873442B (zh) * 2012-12-13 2017-12-12 腾讯科技(深圳)有限公司 登录信息的处理方法和装置
US8949960B2 (en) * 2013-03-15 2015-02-03 Google Inc. Privacy preserving knowledge and factor possession tests for persistent authentication
CN104917748B (zh) * 2015-04-14 2019-09-20 百度在线网络技术(北京)有限公司 一种用于对密码信息进行换算和处理的方法和装置
CN104980436B (zh) * 2015-06-11 2018-06-26 努比亚技术有限公司 一种加密传输系统、方法、终端以及中间服务器
CN109587276A (zh) * 2019-01-11 2019-04-05 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种数据备份方法、系统及相关组件
SG10201902395SA (en) * 2019-03-18 2019-11-28 Qrypted Tech Pte Ltd Method and system for a secure transaction

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1787515A (zh) * 2004-12-10 2006-06-14 虞淑瑶 一种基于安全散列函数的强口令双向认证协议

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1787515A (zh) * 2004-12-10 2006-06-14 虞淑瑶 一种基于安全散列函数的强口令双向认证协议

Also Published As

Publication number Publication date
CN101145911A (zh) 2008-03-19

Similar Documents

Publication Publication Date Title
CN101145911B (zh) 具有私密保护及口令找回功能的身份认证方法
US11516201B2 (en) Encryption and decryption techniques using shuffle function
US9419797B2 (en) System, processing device, computer program and method, to transparently encrypt and store data objects such that owners of the data object and permitted viewers are able to view decrypted data objects after entering user selected passwords
CN106506159A (zh) 用于密钥安全的加密方法和设备
EP3814964B1 (en) Apparatus and method for providing authentication, non-repudiation, governed access and twin resolution for data utilizing a data control signature
CN108833117B (zh) 一种私钥存储和读取方法、装置及硬件设备
CN106572076A (zh) 一种Web服务访问方法、一种客户端、一种服务端
Homoliak et al. An air-gapped 2-factor authentication for smart-contract wallets
CN114268447B (zh) 一种文件传输方法、装置、电子设备和计算机可读介质
Singamaneni et al. An Enhanced Dynamic Nonlinear Polynomial Integrity-Based QHCP-ABE Framework for Big Data Privacy and Security
Jones et al. Information Security: A Coordinated Strategy to Guarantee Data Security in Cloud Computing
Haunts Applied Cryptography in .NET and Azure Key Vault
CN115208676B (zh) 一种基于区块链技术的数据加密方法及加密系统
CN104009851A (zh) 一种银行网银一次一密双向认证安全登录技术
Maram Bitcoin generation using Blockchain technology
Akram et al. A usable and secure two-factor authentication scheme
Kaaffah et al. Integrity Assurance System for Document Security Using Keccak and Quick Algorithm Response Code
US11829512B1 (en) Protecting membership in a secure multi-party computation and/or communication
Park et al. A study on the processing and reinforcement of message digest through two-dimensional array masking
Lakshmi et al. Block Chain Technology Implementations for Secured Financial Transactions using Cloud Environment
US20220109455A1 (en) Apparatus and method for providing authentication, non-repudiation, governed access and twin resolution for data utilizing a data control signature
CN109840423B (zh) 一种数据关系的记录方法、装置及设备
Haunts et al. Final Summary
Hahn et al. Enhanced authentication for outsourced educational contents through provable block possession
Zulfikar et al. Integrity assurance system for document security using keccak and quick algorithm response code

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100519

Termination date: 20131030