安全访问受保护资源的方法及系统的制作方法

文档序号:7760736阅读:315来源:国知局
专利名称:安全访问受保护资源的方法及系统的制作方法
技术领域
本发明属于信息安全领域,尤其涉及一种安全访问受保护资源的方法及系统。
背景技术
随着计算机技术的高速发展,越来越多的用户习惯利用网络的便捷和丰富的资源 来完成各项工作。这在一定程度上节约了时间,提高了办事效率,促进了互联网的进一步发 展和完善。但是,随着高科技手段的不断发展,在网络给人们带来便利和娱乐的同时,也存 在着极大的安全隐患。例如,许多用户在互联网上注册的用户名及账号很容易被别人所盗 取,给用户和相关商家带来一定的经济及精神损失。

发明内容
本发明提供了一种安全访问受保护资源的方法,具体技术方案如下一种安全访问受保护资源的方法,所述方法包括第一终端向第二终端发出访问受保护资源的请求,并将用户输入的用户名及第一 数据发送给所述第二终端,所述第一数据由第三终端生成;所述第二终端生成第二数据,并根据所述用户名查找所述第三终端的秘密;所述第二终端根据第一预设处理方法对所述第一数据、第二数据及所述查找得到 的秘密进行处理,得到第一特征值,并将所述第一特征值及第二数据发送给所述第一终端, 所述第一终端将所述第一特征值及第二数据提供给所述用户;所述第三终端接收所述用户输入的所述第二数据,并根据与所述第一预设处理方 法相同的处理方法对所述第一数据、第二数据及所述第三终端预先存储的秘密进行处理, 得到第二特征值,并在接收到所述用户比对所述第一特征值与第二特征值一致的确认信息 后,根据第二预设处理方法对所述第一数据、第二数据及所述第三终端预先存储的秘密进 行处理,得到第三特征值,并将所述第三特征值输出给所述用户;所述第一终端将所述用户输入的所述第三特征值发送给所述第二终端;所述第二终端根据与所述第二预设处理方法相同的处理方法对所述第一数据、第 二数据及所述查找得到的秘密进行处理生成第四特征值,并比对所述第四特征值是否与接 收到的所述第三特征值一致,若一致,则允许访问,否则,拒绝访问。一种安全访问受保护资源的方法,所述方法包括第二终端接收到第一终端发送的访问受保护资源的请求及用户名,根据预设的算 法生成第三数据,并将所述第三数据提供给用户;第三终端根据第三预设处理方法对所述用户输入的所述第三数据、所述第三终端 预先存储的秘密进行处理,得到第五特征值,并将所述第五特征值输出给所述用户;所述第二终端将所述用户输入的所述第五特征值发送给所述第二终端;所述第二终端根据所述用户名查找所述第三终端的秘密,并根据与所述第三预设 处理方法相同的算法对所述第三数据、所述查找得到的秘密进行处理,得到第六特征值,比对所述第六特征值是否与所述第五特征值一致,若一致,则允许访问,否则,拒绝访问。一种安全访问受保护资源的系统,所述系统包括第一终端、第二终端和第三终 端;所述第二终端包括第二存储模块,用于存储生成特征值的关联信息,所述关联信息包括与用户名绑 定的所述第三终端的秘密和预设处理方法;第三接收模块,用于接收所述第一发送模块发送的访问受保护资源的请求、用户 名、第一数据及第三特征值;第二随机数生成模块,用于生成第二数据; 第二特征值生成模块,用于采用第一预设处理方法对所述第一数据、第二数据及 所述第二存储模块存储的秘密进行处理生成第一特征值,采用第二预设处理方法对所述第 一数据、第二数据及所述第二存储模块存储的秘密进行处理生成第四特征值;验证模块,用于验证所述第二特征值生成模块生成的第四特征值与所述第三接收 模块接收到的第三特征值;第二输出模块,用于输出所述第二随机数生成模块生成的第二数据及第二特征值 生成模块生成的第一特征值;所述第三终端包括第一存储模块,用于存储生成特征值的关联信息,所述关联信息包括生成特征值 的秘密和预设处理方法;第一接收模块,用于接收用户输入的第二终端提供给所述用户的所述第二终端第 二随机数生成模块生成的第二数据,及所述用户输入的确认信息;第一随机数生成模块,用于生成第一数据;第一特征值生成模块,采用与所述第二终端第二特征值生成模块采用的第一预设 处理方法相同的方法对所述第一数据、第二数据及所述第一存储模块存储的秘密进行处理 生成第二特征值,在所述第一接收模块接收到用户比对第一特征值与第二特征值一致的确 认信息后,采用与所述第二终端第二特征值生成模块采用的第二预设处理方法相同的方法 对所述第一数据、第二数据及所述第一存储模块存储的秘密进行处理生成第三特征值;第一输出模块,用于将所述第一特征值生成模块生成的第三特征值输出给所述用 户;所述第一终端包括第一发送模块,用于向第二终端发送所述用户输入的访问受保护资源的请求、用 户名、所述第三终端第一随机数生成模块生成的第一数据及第一特征值生成模块生成的第 三特征值;第二接收模块,用于接收所述第二终端第二随机数生成模块生成的第二数据及所 述第二终端第二特征值生成模块生成的第一特征值,并输出给所述用户。一种安全访问受保护资源的系统,所述系统包括第一终端、第二终端和第三终 端;所述第二终端包括存储模块,用于存储生成特征值的关联信息,所述关联信息包括与用户名绑定的所述第三终端的秘密和预设处理方法;接收模块,用于接收所述第一终端发送模块发送的访问受保护资源的请求、用户 名及第五特征值;随机数生成模块,用于生成第三数据;特征值生成模块,用于采用第一预设处理方法对所述第一数据及所述第二终端存 储模块存储的秘密进行处理生成第六特征值;验证模块,用于验证所述第二终端特征值生成模块生成的第六特征值与所述第二 终端接收模块接收到的第五特征值;
所述第三终端包括存储模块,用于存储生成特征值的关联信息,所述关联信息包括生成特征值的秘 密和预设处理方法;接收模块,用于接收用户输入的第二终端提供给所述用户的所述第二终端随机数 生成模块生成的第三数据;特征值生成模块,采用与所述第二终端第二特征值生成模块采用的第三预设处理 方法相同的方法对所述第三数据及所述存储模块存储的秘密进行处理生成第五特征值;输出模块,用于将所述特征值生成模块生成的第五特征值输出给所述用户;所述第一终端包括发送模块,用于向第二终端发送所述用户输入的访问受保护资源的请求、用户名、 所述第三终端特征值生成模块生成的第五特征值;接收模块,用于接收所述第二终端随机数生成模块生成的第三数据,并输出给所 述用户。本发明所提供的方法和系统可以实现数字签名,并可以实现身份认证,防止了中 间人钓鱼网站的攻击,在一定程度了网络中进行交易的安全性。


图1是本发明实施例1提供的一种安全访问受保护资源的方法流程图;图2是本发明实施例2提供的另一种安全访问受保护资源的方法流程图;图3是本发明实施例3提供的一种安全访问受保护资源的系统结构示意图;图4是本发明实施例4提供的一种安全访问受保护资源的系统结构示意图
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方 式作进一步地详细描述。实施例1本实施例提供了一种安全访问受保护资源的方法,参见图1,所述方法如下101、第二终端接收第一终端发送的访问受保护资源的请求,根据预设的算法生成 第三数据并保存;具体地,生成的第三数据可以是一个2到8位的随机数,但不局限于2到8位,也 不局限于数字形式,还可以是字母、字母+数字等。
102、第二终端将生成的第三数据发送给第一终端,第一终端显示输出该第三数 据;103、第三终端对第三数据、特征因子及存储的秘密进行处理,生成第五特征值;需要说明的是,在此之前,用户将第一终端显示输出的第三数据输入第三终端。具体地,特征因子是第三终端获取的当前时间值或计数值。具体地,1)、第三终端将第三数据、特征因子进行组合,生成中间值,其中,将第三 数据及特征因子进行组合包括但不限于串行连接;2)、采用预设的密码算法根据存储的秘 密对中间值进行加密,得到密文;3)、采用预设的截短方法对2)中计算得到的密文进行截 短处理,得到第五特征值。其中,预设的密码算法包括但不限于SHA1、SHA256、SHA512 ;其中,预设的截短方法包括但不限于掩码压缩和自定义压缩中的至少一种。
具体地,本步骤还包括第三终端生成第五特征值后更新特征因子。104、第一终端将用户名及第五特征值发送给第二终端;具体的,在此之前,用户将用户名及第三终端生成并显示的第五特征值输入到第 一终端;105、第二终端根据用户名查找第三终端的设备编号、秘密;在本实施例中,第三终端具有唯一的编号,并且每个第三终端中都存储有秘密,该 秘密为第三终端利用特征值算法生成特征值时所需的静态参数,每个第三终端中存储的秘 密不重复,用户将用户名(例如,账号)和第三终端绑定后,第二终端上将会存储与用户账 号对应的第三终端的编号和秘密,并存储有与第三终端相同的特征值算法,用以生成特征 值;第二终端根据用户名查找用户所持的第三终端的秘密包括第二终端根据用户 名查找与该用户的用户名绑定的第三终端的编号,根据第三终端的编号查找第三终端的秘 密;第二终端根据用户名查找用户所持的第三终端的秘密还可以为在用户将第三终 端与用户名绑定时,第二终端建立用户名与第三终端的秘密的对应关系,在第二终端查找 秘密时,根据用户名直接就可以找到对应的第三终端的秘密。106、第二终端根据第三数据、特征因子、查找得到的秘密生成第六特征值;具体地,第二终端采用与第三终端生成第五特征值相同的算法生成第六特征值, 此处就不再赘述。本实施例中,第二终端按照与第三终端相同的方式更新特征因子,从而保证第三 终端与第二终端同步。无论是第三终端还是第二终端,更新特征因子均采用如下方式获取当前国际标准时间,将当前国际标准时间加或减指定值后的结果,作为更新 后的时间因子,该指定的值可以根据需要进行设置及修改,如设置为30秒、60秒等等;或者,获取当前计数值,将当前计数值加或减指定值后的结果,作为更新后的特征 因子,该指定的值可以根据需要进行设置及修改,如设置为1次、2次等。需要说明的是,当第三终端与第二终端均采用当前获取的时间值作为特征因子生 成第五特征值或第六特征值时,第三终端与第二终端的时钟频率应当保持同步。
107、第二终端对比接收到的第五特征值是否与第六特征值一致,如果一致,执行108;如果不一致,执行109;108、允许访问受保护资源;109、拒绝访问受保护资源; 在本发明实施例中,当生成特征值时有当前计数值的参与时,需要对第二终端的 特征因子进行修正,修正过程如下在生成特征值时将设备(第三终端或第二终端)生成特征值的次数作为特征因 子,第一次生成特征值时特征因子为计数值1、第二次生成特征值时特征因子为计数值2, 以此类推,每生成一次特征值计数值增加1,也可以为增加一个预设步长。由于第三终端和 第二终端是单独计次的,而且,第三终端在每次生成特征值后,计数器就自增,第二终端则 是在认证成功后,计数器才自增,很容易产生计数不一致的现象,因此需要对第二终端所存 储的计数值进行修正;设定在第三终端生成第五特征值时使用的特征因子为计数值218,此时在第二终 端中保存的特征因子为计数值210,在第二终端计算第六特征值时设定计数值浮动范围为 10,计算210作为特征因子对应的特征值,并将计数值逐渐增加到210+10,并同时进行第六 特征值的计算,每计算出一个第六特征值,即与第五特征值进行比对,如不相同则增加计算 值继续进行第六特征值的计算。由上可知,第二终端生成第六特征值时,分别以计数值210、 211……219、220作为特征因子,生成一组最多11个特征值,第二终端将接收到的第五特征 值与上述11个特征值进行比对,当第二终端以计数值218作为特征因子生成的特征值时比 对成功,则认为第五特征值正确,并停止第六特征值的计算,这时还要对第二终端存储的计 数值进行修正,将218作为正确的计数值,使得第三终端与第二终端的计数值保持同步,同 时第二终端将计数值218增加1 (或预定的步长)保存,作为下次计算特征值的特征因子, 如果上述一组11个第一认证码中没有与第五特征值相同的,则认为第五特征值不正确。当参与运算的特征因子是当前获取的时间值时,为了防止由于操作上的延时而导 致第三终端进行了特征因子的更新,而不与第二终端中的特征因子同步,还可以提供一个 容错的范围,具体如下第二终端用与第三终端生成第五特征值相同的方法生成多个第六特征值作为窗 口,通过比对窗口内是否有与第五特征值相同的第六特征值来进行验证,如果窗口内有一 个第六特征值与第五特征值相同,则验证成功,如果窗口了所有的第六特征值均与第五特 征值不同,则验证失败;相应地,当比对窗口内有与第五特征值相同的第六特征值时,第二终端将比对成 功的第六特征值对应的特征因子作为当前的特征因子,按照与第三终端相同的方式更新该 当前特征因子。例如,在第三终端内部中每60秒产生一个6位的第五特征值,当前时间 为“10:57:00”,生成的第五特征值为“708902”,则下一个第五特征值的生成时间是 “10:58:00”。第二终端的当前时间为“10:57:00”,在该时间的基础上分别减少以及增 加指定的值,如60秒,则得到其他6个特征因子“10:24:00”、“10:25:00”、“10:26:00”、 “10:58:00”、“10:59:00”、“11:00:00”,第二终端根据当前特征因子和其他6个特征因子分别生成7个第六特征值,按照时间的顺序分别为:“718002”、“540065”、“540786”、 “708902”、“005468”、“654009”、“075400”,第二终端将收到的第五特征值与该7个第六特 征值进行对比,如果该第五特征值与上述7个第六特征值中的某一个特征值相同,则本次 验证通过,允许访问,且根据当前匹配的特征值确定对应的特征因子,更新该特征因子,用 于下次验证,如当前匹配的认证码是“708902”,对应的特征因子是“10:57:00”,则将其更 新为“10:58:00” ;如果7个第六特征值中没有与第五特征值相同的特征值,则本次验证失 败,不允许访问。需要说明的是,在计算特征值或认证码时,参与运算的除了必须的第三数据及秘 密外,特征因子是可选的,参与运算的还可以包括其他可选项,如会话信息(会话信息等)、 PIN码或PIN码哈希值等,参与运算的可选项是认证双方事先约定好的。还需要说明的是,当第二终端产生的第三数据为待签名数据或待签名数据的哈希 值时,上述基于特征值的访问流程还可以实现数字签名(明文签名)的功能,即第三终端将 用于签名 的第三数据运用于上面介绍的生成第五特征值的算法计算签名,即第五特征值, 并发送签名给第二终端,第二终端采用上述所说的验证方法(生成第一认证码,对比第一 认证码是否与第五特征值相同)对该签名进行验证,这样在实现对第一终端验证的同时, 达到了数字签名的目的。在实际运用中,上述实施例中的第三数据是由待签名数据或待签名数据的哈希值 转换得到的。实施例2本实施例提供了一种安全访问受保护资源的方法,参见图2,所述方法如下201 第三终端生成第一数据并保存,其中,该第一数据具体为随机数;需要说明的是,使第三终端生成随机数的方法有多种,例如,第三终端带有按键, 用户第一次按下按键后,第三终端根据内置的算法生成一个随机数,其中,该随机数可以是 一个2到8位数字的随机数,但不局限于2-8位,也不局限于数字形式,可以是字母、字母+ 数字等。202 第一终端将第一数据、用户名、PIN码及访问受保护资源的请求发送给第二 终端;在此之前,用户将第三终端生成显示的第一数据、用户名及PIN码输入第一终端。203 第二终端根据预设的算法生成第二数据,并保存该生成的第二数据;其中,第二数据具体为随机数,该值可以是任意2到8位数字的随机数,但不限于 2到8位,也不局限于数字形式,可以是字母、字母+数字等。204、第二终端根据接收到的用户名查找第三终端的编号、秘密;在本实施例中,第三终端具有唯一的编号,并且每个第三终端中都存储有秘密,该 秘密为第三终端利用特征值算法生成特征值时所需的静态参数,每个第三终端中存储的秘 密不重复,用户将用户名(例如,账号)和第三终端绑定后,第二终端上将会存储与用户账 号对应的第三终端的编号和秘密,并存储有与第三终端相同的特征值算法,用以生成特征 值;第二终端根据用户名查找用户所持的第三终端的秘密包括第二终端根据用户 名查找与该用户的用户名绑定的第三终端的编号,根据第三终端的编号查找第三终端的秘密;第二终端根据用户名查找用户所持的第三终端的秘密还可以为在用户将第三终 端与用户名绑定时,第二终端建立用户名与第三终端的秘密的对应关系,在第二终端查找 秘密时,根据用户名直接就可以找到对应的第三终端的秘密。;205、第二终端对秘密、第一数据、第二数据及PIN码进行处理,生成第一特征值, 并保存该生成的第一特征值;具体地1)、第二终端将第一数据、第二数据、PIN码进行组合,生成中间值,其中, 将第一数据、第二数据、PIN码进行组合包括但不限于串行连接;2)、根据预设的密码算法 根据查找得到的秘密对中间值进行加密,得到密文;3)、采用预设的截短方法对2)中计算 得到的密文进行截短处理,生成第一特征值;其中,预设的密码算法包括但不限于SHA1、SHA256、SHA256 ;其中,预设的截短方法包括但限于掩码压缩或自定义压缩中的至少一种。
206、第二终端将第一特征值及第二数据发送给第一终端,第一终端显示输出第一 特征值及第二数据;207、第三终端根据存储的秘密、第一数据、第二数据及PIN码生成第二特征值,并 显示输出;在此之前,用户将PIN码及第一终端显示输出的第二数据输入第三终端;在本实施例中,第三终端在用户的第二次触发下生成第二特征值,生成第二特征 值的特征值算法与步骤205中第二终端生成第一特征值的算法相同,此处就不再赘述;208、用户将第三终端输出的第二特征值与第一终端显示的第一特征值进行对比,如果相同,则认为第二终端是合法的,执行209 ;如果不相同,则认为第二终端不合法,执行214 ;209、第三终端根据存储的秘密、第二数据、第一数据及PIN码生成第三特征值,并 显示输出;在本实施例中,第三终端在用户的第三次触发下生成第三特征值;具体地1)、将第二数据、第一数据、PIN码进行组合,生成中间值,其中,将第二数 据、第一数据、PIN码进行组合包括但不限于串行连接;2)、根据预设的密码算法根据存储 的秘密对中间值进行加密,得到密文;3)、采用预设的截短方法对2)中计算得到的密文进 行截短处理,生成第三特征值;其中,预设的密码算法包括但不限于SHA1、SHA256、SHA256 ;其中,预设的截短方法包括但限于掩码压缩或自定义压缩中的至少一种。210、第一终端将第三特征值发送给第二终端;在此之前,用户将第三终端生成的第三特征值输入到第一终端。211、第二终端根据查找得到的秘密、第二数据、第一数据及PIN码生成第四特征 值;具体地,第二终端根据秘密、第二数据、第一数据及PIN码采用与第三终端生成第 三特征值时相同的算法来生成第四特征值;212、第二终端比较生成的第四特征值是否与接收到的第三特征值相同,如果相同,则认为第一终端是合法的,执行213 ;
如果不相同,则认为第一终端不合法执行214 ;213、允许访问受保护的资源;214、拒绝访问受保护的资源。需要说明的是,特征值生成时采用的参数中除了第一数据、第二数据、秘密外,其 他的参数是可选项,例如实施例1中参中参与运算的特征因子、本实施例中的PIN码,可选 的因子还可以包括第一及第二终端间的会话信息,如会话信息等,参与运算的可选项是事 先预定好的。需要说明的是,在生成第一特征值与第三特征值时,参与运 算的第一数据与第二 数据的组合方式是不同的;需要说明是,当第二终端产生的第二数据为待签名数据或待签名数据的哈希值 时,上述基于特征值的访问方法的流程还可以实现数字签名(明文签名)的功能,流程如 下第一终端向第二终端发送一个随机的第一数据,第二终端计算该第一数据的应答(即 第一特征值),并和用于签名的第二数据发送到第一终端,第一终端首先会验证第二终端的 应答(即第三终端是生成第二特征值,并比较是否与第一特征值相同),然后,计算该用于 签名的随机数的签名(即生成第三特征值,),并发送给第二终端,第二终端对该签名进行 验证(即生成第四特征值,并比较是否与第三特征值相同),这样在实现对第一终端身份认 证的同时,达到了数字签名的目的。在实际运用中,上述实施例中的随机数是由待签名数据或待签名数据的哈希值转 换得来的。实施例3本实施例提供了一种安全访问受保护资源的系统,参见图3,该系统包括第三终 端301、第一终端302和第二终端303,其中,各设备功能如下第三终端301包括存储模块3011,用于存储生成特征值的关联信息,该关联信息包括生成特征值的 秘密和预设处理方法;其中,预设处理方法包括预设密码算法和截短处理方法;接收模块3012,用于接收用户输入的确认信息(例如,按键等部件)及第三数据, 所述第三数据为随机数;接收模块3012还用于接收用户输入的PIN码及第一终端与第二终端间的会话信 息;特征值生成模块3013,用于当接收模块3012接收到用户输入的确认信息后,根据 接收模块3012接收到的第三数据、存储模块3011存储的秘密,采用存储模块3011存储的 第三预设处理方法生成第五特征值;具体地,特征值生成模块3013包括加密单元3013A,用于根据存储模块3011存储的秘密采用第三预设密码算法对接 收模块3012接收到的第三数据进行加密处理;生成单元3013B,用于对加密单元的加密结果采用第三预设截短处理方法进行截 短处理,生成第五特征值。输出模块3014,用于当接收模块3012接收到用户输入的确认信息后,输出特征值生成模块3013生成的第五特征值;本实施例中的 接收模块3012还可以接收用户输入的PIN码、会话信息等;本实施例中的存储模块3011还可以存储生成特征值的次数;第一终端302包括发送模块3021,用于向所述第二终端发送用户输入的访问受 保护资源的请求、用户名、第三终端特征值生成模块3013生成的特征值;接收模块3022,用于接收第二终端随机数生成模块3033生成的第三数据,该第三 数据为随机数,并输出给所述用户;该第一终端302与第二终端303通过互联网连接,其上有输入装置和输出装置,输 入装置用于接收用户输入的信息,并同网络将该信息发送给第二终端,该输入装置可以是 键盘等;输入装置用于将从第二终端303接收的信息输出给用户,该输出装置可以是一个 显示器,也可以是音频播放器等;第二终端303包括存储模块3031,用于存储生成特征值的关联信息,该关联信息包括与用户名绑定 的第三终端的秘密及预设处理方法;其中,预设处理方法包括预设密码算法和截短处理方法;接收模块3032,用于接收第一终端302的发送模块3021发送的访问受保护资源的 请求、用户名和第五特征值;随机数生成模块3033,用于生成随机数,本实施例中为第三数据;特征值生成模块3034,用于生成第六特征值;具体地,特征值生成模块3034包括查找单元3034A,用于根据接收模块3032接 收到的用户名在存储模块3031中查找第三终端的秘密和预设处理方法;加密单元3034B,用于根据查找单元3034A查找得到的第三终端301的秘密采用第 三预设密码算法对随机数生成单元3033生成的第三数据进行加密处理;生成单元3034C,用于对加密单元3034B的加密结果采用第三预设截短处理方法 进行截短处理,生成第六特征值。验证模块3035,用于验证特征值生成模块3034生成的第六特征值与接收模块 3032接收到的第五特征值;具体地,验证模块3035包括比对单元3035A,用于比对特征值生成模块3034生 成的第六特征值是否与接收到的第五特征值一致;执行单元3035B,用于当所述比对单元比对特征值生成模块3034生成的第六特 征值与接收到的第五特征值的结果是一致的,则允许访问受保护资源;当特征值生成模块 3034生成的第六特征值与接收到的第五特征值的结果不一致的,则拒绝访问受保护资源。本实施例中,接收模块3032还用于第一终端302返回的PIN码、会话信息等;输出模块3036,用于第二生成模块3034生成第三数据后,输出第三数据给第一终 端 302。本实施例中,第三预设密码算法包括指纹算法或加密用散列算法;本实施例中,第三预设截短处理方法包括掩码压缩或自定义压缩方法。本实施例中,特征值生成模块3013和特征值生成模块3034在生成特征值时,还可 以根据可选参数,包括特征因子和/或PIN码和/或会话信息,来生成特征值,其中,特征因子包括时间值或特征值生成次数,具体如实施例1中所述,此处就不再赘述;具体地,将第三数据及可选参数进行组合,该组合包括但不限于串行连接;采用第 三预设密码算法对组合后数据进行加密;采用第三预设截短处理方法将加密结果进行截短 处理,得到特征值。具体地,在可选参数包括特征因子时,第二终端303还包括,更新模块,用于在生 成第六特征值后,对特征因子进行更新。实施例4本实施例提供了一种认证系统,参见图4,该系统包括第三终端401、第一终端 402和第二终端403,其中,各设备功能如下第三终端401包括存储模块4011,用于存储生成特征值的关联信息,该关联信息包括生成特征值的 秘密和预设处理方法;其中,预设处理方法包括预设密码算法和截短处理方法; 接收模块4012,用于接收用户输入的确认信息(例如,按键等部件)及第二终端随 机数生成模块4033生成的第二数据;随机数生成模块4013,用于生成第一数据,该第一数据为随机数;特征值生成模块4014,用于采用与所述第二终端特征值生成模块4033采用的第 一预设处理方法相同的方法对第一数据、第二数据及存储模块4011存储的秘密进行处理 生成第二特征值,在第一接收模块4012接收到用户的确认信息后,采用与第二终端特征 值生成模块4033采用的第二预设处理方法相同的方法对第一数据、第二数据及存储模块 4011存储的秘密进行处理生成第三特征值;具体地,特征值生成模块4014包括组合单元4014A,用于将随机数生成模块4013生成的第一数据与接收模块4012接 收到的第二数据进行串行连接;加密单元4014B,用于根据存储模块4011存储的秘密采用第一预设密码算法对组 合单元4014A的连接结果进行加密处理;生成单元4014C,用于采用第一预设截短处理方法对所述加密单元4014B的加密 结果进行处理,生成第二特征值。和组合单元4014A',用于将第二数据及第一数据进行串行连接;加密单元4014B',用于根据存储模块4011存储的秘密采用第二预设密码算法对 组合单元4014A'的连接结果进行加密处理;生成单元4014C',用于采用第二预设截短处理方法对加密单元4014B'的加密 结果进行处理,生成第三特征值。输出模块4015,用于当接收模块4012接收到用户输入确认信息后,输出第二特征 值及第三特征值;其中,输出模块4015输出第二特征值后,用户对比第二特征值与第二终 端生成的第一特征值是否一致,一致,确认第二终端合法;本实施例中的接收模块4012还可以接收用户输入的PIN码、会话信息等;第一终端402包括
发送模块4021,用于向所述第二终端发送用户输入的访问受保护资源的请求、用 户名、第三终端随机数生成模块4013生成的第一数据及特征值生成模块4014生成的第三 特征值;接收模块4022,用于接收所述第二终端随机数生成模块4033生成的第二数据及 第二终端特征值生成模块4013生成的第一特征值,并输出给所述用户;该第一终端402与第二终端403通过互联网连接,其上有输入装置和输出装置,输 入装置用于接收用户输入的信息,并同网络将该信息发送给第二终端,该输入装置可以是 键盘等;输入装置用于将从第二终端403接收的信息输出给用户,该输出装置可以是一个 显示器,也可以是音频播放器等;
第二终端403包括存储模块4031,用于存储生成特征值的关联信息,该关联信息包括与用户名绑定 的第三终端的秘密和预设处理方法;接收模块4032,用于接收第一终端402发送模块4021发送的访问受保护资源的请 求、用户名、第一数据和第三特征值;随机数生成模块4033,用于生成随机数,本实例中,生成的随机数为第二数据;特征值生成模块4034,用于当接收模块4032接收到第一数据后,采用第一预设处 理方法对第一数据、第二数据及存储模块4031存储的秘密进行处理生成第一特征值;当接 收模块4032接收到第三特征值时,采用第二预设处理方法对第一数据、第二数据及存储模 块存储4013的秘密进行处理生成第四特征值;具体地,特征值生成模块4034包括查找单元4034A,用于根据接收模块4032接收到的用户名在存储模块4031中查找 第三终端401的秘密和预设处理方法;组合单元4034B,用于将第一数据与第二数据进行串行连接;;加密单元4034C,用于根据查找得到的秘密采用第一预设密码算法对组合单元 4034B的连接结果进行加密处理;生成单元4034D,用于采用第一预设截短处理方法对加密单元4034C的加密结果 进行处理,生成第一特征值;和组合单元4034B',用于将第二数据及第一数据进行串行连接;加密单元4034C',用于根据查找得到的秘密采用第二预设密码算法对组合单元 4034B'的连接结果进行加密处理;生成单元4034D',用于采用第二预设截短处理方法对加密单元4034C'的加密 结果进行处理,生成第四特征值。验证模块4035,用于判断特征值生成模块4034生成的第四特征值是否与接收模 块4032接收到的第三特征值一致,一致,认为第一终端合法;具体地,验证模块4035包括比对单元4035A,用于比对特征值生成模块4034生成的第四特征值是否与接收到
的第三特征值一致;执行单元4035B,用于当所述比对单元4035A比对特征值生成模块4034生成的第四特征值与接收到的第三特征值的 结果是一致的,则允许访问受保护资源;当特征值生 成模块4034生成的第四特征值与接收到的第三特征值的结果不一致的,则拒绝访问受保 护资源。输出模块4036,用于特征值生成模块4034生成第二数据、第一特征值后,输出第 二数据、第一特征值给第一终端402 ;本实施例中,接收模块4032还用于第一终端402返回的PIN码、会话信息等;本实施例中,第一及第二预设密码算法包括指纹算法或加密用散列算法;本实施例中,第一及第二预设截短处理方法包括掩码压缩或自定义压缩方法。本实施例中,特征值生成模块4013和特征值生成模块4034在生成特征值时,还可 以根据可选参数,包括特征因子和/或PIN码和/或会话信息,来生成特征值,其中,特征 因子包括时间值或特征值生成次数;具体地,将第一数据、第二数据及可选参数进行组合,该组合包括但不限于串行连 接;采用预设密码算法对组合后数据进行加密;采用预设截短处理方法将加密结果进行截 短处理,得到特征值,如实施例2中相应部分所述,此处就不再赘述。具体地,在可选参数包括特征因子时,第二终端403还包括更新模块,用于在生 成第一及第四特征值后,对特征因子进行更新。本发明实施例所提供的方法和系统可以实现数字签名,并可以实现身份认证,防 止了中间人钓鱼网站的攻击,在一定程度了网络中进行交易的安全性。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何 熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应 涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为 准。
权利要求
一种安全访问受保护资源的方法,其特征在于,所述方法包括第一终端向第二终端发出访问受保护资源的请求,并将用户输入的用户名及第一数据发送给所述第二终端,所述第一数据由第三终端生成;所述第二终端生成第二数据,并根据所述用户名查找所述第三终端的秘密;所述第二终端根据第一预设处理方法对所述第一数据、第二数据及所述查找得到的秘密进行处理,得到第一特征值,并将所述第一特征值及第二数据发送给所述第一终端,所述第一终端将所述第一特征值及第二数据提供给所述用户;所述第三终端接收所述用户输入的所述第二数据,并根据与所述第一预设处理方法相同的处理方法对所述第一数据、第二数据及所述第三终端预先存储的秘密进行处理,得到第二特征值,并在接收到所述用户比对所述第一特征值与第二特征值一致的确认信息后,根据第二预设处理方法对所述第一数据、第二数据及所述第三终端预先存储的秘密进行处理,得到第三特征值,并将所述第三特征值输出给所述用户;所述第一终端将所述用户输入的所述第三特征值发送给所述第二终端;所述第二终端根据与所述第二预设处理方法相同的处理方法对所述第一数据、第二数据及所述查找得到的秘密进行处理生成第四特征值,并比对所述第四特征值是否与接收到的所述第三特征值一致,若一致,则允许访问,否则,拒绝访问。
2.根据权利要求1所述的方法,其特征在于,所述第二终端根据第一预设处理方法对 所述第一数据、第二数据及所述查找得到的秘密进行处理,得到第一特征值包括将所述第一数据、第二数据进行串行连接,得到第一中间值;采用第一预设密码算法根据所述查找得到的秘密对所述第一中间值进行处理,得到密 文信息;采用第一预设截短方法对所述密文信息进行截短处理,得到第一特征值。
3.根据权利要求2所述的方法,其特征在于,所述第一预设密码算法包括指纹算法或 安全散列算法;所述第一预设截短方法包括掩码压缩或自定义压缩。
4.根据权利要求1所述的方法,其特征在于,所述第三终端根据第二预设处理方法 对所述第一数据、第二数据及所述第三终端预先存储的秘密进行处理,得到第三特征值包 括将所述第二中间值、第一中间值进行串行连接,得到第二中间值; 采用第二预设密码算法根据所述第三终端预先存储的秘密对所述第二中间值进行加 密处理,得到密文信息;采用第二预设截短方法对所述密文信息进行截短处理,得到第三特征值。
5.根据权利要求4所述的方法,其特征在于,所述第二预设密码算法包括指纹算法或 安全散列算法;所述第二预设截短方法包括掩码压缩或自定义压缩方法。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括所述第三终端与第二终 端在生成特征值时,处理的数据除了所述第一数据、第二数据和秘密外,还包括特征因子 和/或PIN码和/或会话信息;其中,所述特征因子包括时间值或特征值生成次数。
7.根据权利要求6所述的方法,其特征在于,所述第三终端与第二终端在生成特征值 后,对所述特征因子进行更新。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括所述第二终端根据第一 预设处理方法对所述第一数据、第二数据、特征因子和/或PIN码和/或会话信息、及所述 查找得到的秘密进行处理,得到第一特征值。
9.根据权利要求8所述的方法,其特征在于,所述第二终端根据第一预设处理方法对 所述第一数据、第二数据、特征因子和/或PIN码和/或会话信息、及所述查找得到的秘密 进行处理,得到第一特征值包括将所述第一数据、第二数据进行串行连接,得到第一中间值; 将所述第一中间值、特征因子和/或PIN码和/或会话信息进行组合; 采用第一预设密码算法根据所述查找得到的秘密对所述组合后得到的数据进行加密 处理,得到密文信息;采用第一预设截短方法对所述密文信息进行截短处理,得到第一特征值。
10.根据权利要求6所述的方法,其特征在于,所述方法还包括所述第三终端根据第 二预设处理方法对所述第一数据、第二数据、特征因子和/或PIN码和/或会话信息、及所 述第三终端预先存储的秘密进行处理,得到第三特征值。
11.根据权利要求10所述的方法,其特征在于,所述第三终端根据第二预设处理方法 对所述第一数据、第二数据、特征因子和/或PIN码和/或会话信息、及所述第三终端预先 存储的秘密进行处理,得到第三特征值包括将所述第二中间值、第一中间值进行串行连接,得到第二中间值; 将所述第二中间值、特征因子和/或PIN码和/或会话信息进行组合; 采用第二预设密码算法根据所述第三终端预先存储的秘密对所述组合后得到的数据 进行加密处理,得到密文信息;采用第二预设截短方法对所述密文信息进行截短处理,得到第三特征值。
12.—种安全访问受保护资源的方法,其特征在于,所述方法包括第二终端接收到第一终端发送的访问受保护资源的请求及用户名,根据预设的算法生 成第三数据,并将所述第三数据提供给用户;第三终端根据第三预设处理方法对所述用户输入的所述第三数据、所述第三终端预先 存储的秘密进行处理,得到第五特征值,并将所述第五特征值输出给所述用户; 所述第二终端将所述用户输入的所述第五特征值发送给所述第二终端; 所述第二终端根据所述用户名查找所述第三终端的秘密,并根据与所述第三预设处理 方法相同的算法对所述第三数据、所述查找得到的秘密进行处理,得到第六特征值,比对所 述第六特征值是否与所述第五特征值一致,若一致,则允许访问,否则,拒绝访问。
13.根据权利要求12所述的方法,其特征在于,所述第三终端根据第三预设处理方法 对所述用户输入的所述第三数据、所述第三终端预先存储的秘密进行处理包括采用第三预设密码算法根据所述第三终端预先存储的秘密对所述第三数据进行加密, 得到密文信息;采用第四预设截短方法对所述密文信息进行截短处理,得到第五特征值。
14.根据权利要求13所述的方法,其特征在于,所述第三预设密码算法包括指纹算法或安全散列算法;所述第三预设截短方法包括掩码压缩或自定义压缩方法。
15.根据权利要求12所述的方法,其特征在于,所述方法还包括所述第三终端与第 二终端在生成特征值时,参与运算的除了所述第三数据和秘密外,还包括特征因子和/或 PIN码和/或会话信息;其中,所述特征因子包括时间值或特征值生成次数。
16.根据权利要求15所述的方法,其特征在于,所述第三终端与第二终端在生成特征 值后,对所述特征因子进行更新。
17.根据权利要求15所述的方法,其特征在于,所述方法还包括第三终端根据第三预 设处理方法对所述用户输入的所述第三数据、特征因子和/或PIN码和/或会话信息、所述 第三终端预先存储的秘密进行处理,得到第五特征值。
18.根据权利要求17所述的方法,其特征在于,第三终端根据第三预设处理方法对所 述用户输入的所述第三数据、特征因子和/或PIN码和/或会话信息、所述第三终端预先存 储的秘密进行处理,得到第五特征值包括将所述第三数据、特征因子和/或PIN码和/或会话信息进行组合; 采用第三预设密码算法根据所述第三终端预先存储的秘密对所述组合后得到的数据 进行加密,得到密文信息;采用第四预设截短方法对所述密文信息进行截短处理,得到第五特征值。
19.一种安全访问受保护资源的系统,其特征在于,所述系统包括第一终端、第二终 端和第三终端;所述第二终端包括第二存储模块,用于存储生成特征值的关联信息,所述关联信息包括与用户名绑定的 所述第三终端的秘密和预设处理方法;第三接收模块,用于接收所述第一发送模块发送的访问受保护资源的请求、用户名、第 一数据及第三特征值;第二随机数生成模块,用于生成第二数据;第二特征值生成模块,用于采用第一预设处理方法对所述第一数据、第二数据及所述 第二存储模块存储的秘密进行处理生成第一特征值,采用第二预设处理方法对所述第一数 据、第二数据及所述第二存储模块存储的秘密进行处理生成第四特征值;验证模块,用于验证所述第二特征值生成模块生成的第四特征值与所述第三接收模块 接收到的第三特征值;第二输出模块,用于输出所述第二随机数生成模块生成的第二数据及第二特征值生成 模块生成的第一特征值; 所述第三终端包括第一存储模块,用于存储生成特征值的关联信息,所述关联信息包括生成特征值的秘 密和预设处理方法;第一接收模块,用于接收用户输入的第二终端提供给所述用户的所述第二终端第二随 机数生成模块生成的第二数据,及所述用户输入的确认信息; 第一随机数生成模块,用于生成第一数据;第一特征值生成模块,采用与所述第二终端第二特征值生成模块采用的第一预设处理 方法相同的方法对所述第一数据、第二数据及所述第一存储模块存储的秘密进行处理生成 第二特征值,在所述第一接收模块接收到用户比对第一特征值与第二特征值一致的确认信 息后,采用与所述第二终端第二特征值生成模块采用的第二预设处理方法相同的方法对所 述第一数据、第二数据及所述第一存储模块存储的秘密进行处理生成第三特征值;第一输出模块,用于将所述第一特征值生成模块生成的第三特征值输出给所述用户; 所述第一终端包括第一发送模块,用于向第二终端发送所述用户输入的访问受保护资源的请求、用户名、 所述第三终端第一随机数生成模块生成的第一数据及第一特征值生成模块生成的第三特 征值; 第二接收模块,用于接收所述第二终端第二随机数生成模块生成的第二数据及所述第 二终端第二特征值生成模块生成的第一特征值,并输出给所述用户。
20.根据权利要求19所述的系统,其特征在于,所述第一特征值生成模块包括 第一组合单元,用于将所述第一数据与所述第二数据进行串行连接;第一加密单元,用于根据所述第一存储模块存储的秘密采用第一预设密码算法对所述 第一组合单元的连接结果进行加密处理;第一生成单元,用于采用第一预设截短处理方法对所述第一加密单元的加密结果进行 处理,生成第二特征值;
21.根据权利要求19所述的系统,其特征在于,所述第一特征值生成模块包括 第二组合单元,用于将所述第二数据及所述第一数据进行串行连接;第二加密单元,用于根据所述第一存储模块存储的秘密采用第二预设密码算法对所述 第二组合单元的连接结果进行加密处理;第二生成单元,用于采用第二预设截短处理方法对所述第二加密单元的加密结果进行 处理,生成第三特征值。
22.根据权利要求19所述的系统,其特征在于,所述第二特征值生成模块包括查找单元,用于根据所述第三接收模块接收到的用户名在所述第二存储模块中查找所 述第三终端的秘密和预设处理方法;第三组合单元,用于将所述第一数据与所述第二数据进行串行连接; 第三加密单元,用于根据所述查找得到的秘密采用第一预设密码算法对所述第三组合 单元的连接结果进行加密处理;第三生成单元,用于采用第一预设截短处理方法对所述第三加密单元的加密结果进行 处理,生成第一特征值;
23.根据权利要求19所述的系统,其特征在于,所述第一特征值生成模块包括 第四组合单元,用于将所述第二数据及所述第一数据进行串行连接;第四加密单元,用于根据所述查找得到的秘密采用第二预设密码算法对所述第四组合 单元的连接结果进行加密处理;第四生成单元,用于采用第二预设截短处理方法对所述第四加密单元的加密结果进行 处理,生成第四特征值。
24.根据权利要求20至23所述的系统,其特征在于,所述第一预设密码算法包括指纹算法或安全散列算法;所述第一预设截短方法包括掩码压缩或自定义压缩。
25.根据权利要求20至23所述的方法,其特征在于,所述第二预设密码算法包括指纹 算法或安全散列算法;所述第二预设截短方法包括掩码压缩或自定义压缩。
26.根据权利要求19所述的系统,其特征在于,所述第一特征值生成模块与所述第二 特征值生成模块生成特征值时,处理的数据除了所述第一数据、第二数据和秘密外,还包 括特征因子和/或PIN码和/或会话信息;其中,所述特征因子包括时间值或特征值生成次数。
27.根据权利要求26所述的系统,其特征在于,所述第二终端还包括更新模块,用于在所述第二特征值生成模块生成第一特征值及第四特征值后,对所述 特征因子进行更新。
28.根据权利要求19所述的系统,其特征在于,所述第二终端验证模块包括比对单元,用于比对所述第二特征值生成模块生成的特征值是否与所述第三接收单元 接收到的特征值一致;执行单元,用于当所述比对单元比对所述第二特征值生成模块生成的特征值与所述 第三接收单元接收到的特征值的结果是一致的,则允许访问受保护资源;当所述第二特征 值生成模块生成的特征值与所述第三接收单元接收到的特征值的结果不一致的,则拒绝访 问受保护资源。
29.一种安全访问受保护资源的系统,其特征在于,所述系统包括第一终端、第二终 端和第三终端;所述第二终端包括存储模块,用于存储生成特征值的关联信息,所述关联信息包括与用户名绑定的所述 第三终端的秘密和预设处理方法;接收模块,用于接收所述第一终端发送模块发送的访问受保护资源的请求、用户名及 第五特征值;随机数生成模块,用于生成第三数据;特征值生成模块,用于采用第一预设处理方法对所述第一数据及所述第二终端存储模 块存储的秘密进行处理生成第六特征值;验证模块,用于验证所述第二终端特征值生成模块生成的第六特征值与所述第二终端 接收模块接收到的第五特征值; 所述第三终端包括存储模块,用于存储生成特征值的关联信息,所述关联信息包括生成特征值的秘密和 预设处理方法;接收模块,用于接收用户输入的第二终端提供给所述用户的所述第二终端随机数生成 模块生成的第三数据;特征值生成模块,采用与所述第二终端第二特征值生成模块采用的第三预设处理方法 相同的方法对所述第三数据及所述存储模块存储的秘密进行处理生成第五特征值; 输出模块,用于将所述特征值生成模块生成的第五特征值输出给所述用户;所述第一终端包括发送模块,用于向第二终端发送所述用户输入的访问受保护资源的请求、用户名、所述 第三终端特征值生成模块生成的第五特征值;接收模块,用于接收所述第二终端随机数生成模块生成的第三数据,并输出给所述用户。
30.根据权利要求29所述的系统,其特征在于,所述第三终端特征值生成模块包括 加密单元,用于根据所述第三终端存储模块存储的秘密采用第三预设密码算法对所述第三终端接收模块接收到的第三数据进行加密处理;生成单元,用于对所述加密单元的加密结果采用第三预设截短处理方法进行截短处 理,生成第五特征值。
31.根据权利要求29所述的系统,其特征在于,所述第二终端特征值生成模块包括 查找单元,用于根据所述第二终端接收模块收到的用户名在所述第二终端存储模块中查找所述第三终端的秘密和预设处理方法;加密单元,用于根据所述查找单元查找得到的所述秘密采用第三预设密码算法对所述 第二终端接收模块接收到的第三数据进行加密处理;生成单元,用于对所述加密单元的加密结果采用第三预设截短处理方法进行截短处 理,生成第六特征值。
32.根据权利要求30和31所述的系统,其特征在于,所述第三预设密码算法包括指纹 算法或安全散列算法;所述第三预设截短方法包括掩码压缩或自定义压缩。
33.根据权利要求29所述的系统,其特征在于,所述第三终端特征值生成模块与所述 第二终端特征值生成模块生成特征值时,处理的数据除了所述第三数据和秘密外,还包括 特征因子和/或PIN码和/或会话信息;其中,所述特征因子包括时间值或特征值生成次数。
34.根据权利要求33所述的系统,其特征在于,所述第二终端还包括更新模块,用于在所述第二终端特征值生成模块生成第六特征值后,对所述特征因子 进行更新。
35.根据权利要求29所述的系统,其特征在于,所述第二终端验证模块包括比对单元,用于比对所述第二终端特征值生成模块生成的第六特征值是否与所述第二 终端接收单元接收到的第五特征值一致;执行单元,用于当所述第二终端特征值生成模块生成的第六特征值是否与所述第二 终端接收单元接收到的第五特征值的结果是一致的,则允许访问受保护资源;当所述第二 终端特征值生成模块生成的第六特征值是否与所述第二终端接收单元接收到的第五特征 值的结果不一致的,则拒绝访问受保护资源。全文摘要
本发明提供了一种安全访问受保护资源的方法及系统,属于信息安全领域。第一终端向第二终端发出访问受保护资源的请求,并将用户名及第一数据发送给第二终端;第二终端生成第二数据,并查找第三终端的秘密;第二终端对所述第一数据、第二数据及秘密进行处理,得到第一特征值;第三终端对所述第一数据、第二数据及秘密进行处理,得到第二特征值,并在接收到确认信息后,对所述第一数据、第二数据及所述第三终端预先存储的秘密进行处理,得到第三特征值;第一终端将第三特征值发送给第二终端;第二终端对所述第一数据、第二数据及秘密进行处理生成第四特征值,并比对第四特征值是否与第三特征值一致,若一致,则允许访问,否则,拒绝访问。
文档编号H04L9/32GK101964789SQ20101029203
公开日2011年2月2日 申请日期2010年9月26日 优先权日2010年9月26日
发明者于华章, 陆舟 申请人:北京飞天诚信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1