CN100589390C - 一种认证方法和认证系统 - Google Patents

一种认证方法和认证系统 Download PDF

Info

Publication number
CN100589390C
CN100589390C CN200710303740A CN200710303740A CN100589390C CN 100589390 C CN100589390 C CN 100589390C CN 200710303740 A CN200710303740 A CN 200710303740A CN 200710303740 A CN200710303740 A CN 200710303740A CN 100589390 C CN100589390 C CN 100589390C
Authority
CN
China
Prior art keywords
information
key message
operation information
client
authorization information
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.)
Active
Application number
CN200710303740A
Other languages
English (en)
Other versions
CN101232377A (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.)
Feitian Technologies Co Ltd
Original Assignee
Beijing Feitian Technologies Co Ltd
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 Beijing Feitian Technologies Co Ltd filed Critical Beijing Feitian Technologies Co Ltd
Priority to CN200710303740A priority Critical patent/CN100589390C/zh
Publication of CN101232377A publication Critical patent/CN101232377A/zh
Application granted granted Critical
Publication of CN100589390C publication Critical patent/CN100589390C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

能够确保网络操作信息都能得到合法用户的确认,从而大大提高网络交易的安全性的认证方法和认证系统。技术方案是:认证方法包括如下步骤:客户端对操作信息运算得到验证信息,并将验证信息发送至认证设备;认证设备判断验证信息中是否有关键信息,如果验证信息中有关键信息,则输出关键信息并等待确认;如果验证信息中无关键信息,则对所述验证信息加密后将密文信息发送回所述客户端;认证设备接收到客户端对关键信息的确认信息后,利用加密算法处理所述验证信息,并将加密后的验证信息发送回所述客户端;客户端将操作信息和加密后的验证信息发送至服务端;服务端利用操作信息和加密后的验证信息完成认证。另外,还提供了一种认证系统。

Description

一种认证方法和认证系统
技术领域
本发明涉及信息安全领域,特别涉及一种认证方法和认证系统。
背景技术
近几年,网络的快速发展及其提供的极大便利,使人们越来越多的依赖网络手段进行各种活动,包括身份识别、网上银行和VPN(Virtual Private Network,虚拟专用网络,又称为虚拟私人网络)等。
相应地,网络信息安全也越来越引起人们的重视,近些年来出现了一种信息安全产品,即一种便携式的可移动使用的硬件设备,一般称为认证设备,是一种带有微处理器的小型硬件设备。认证设备通过主机的数据通讯接口与主机建立连接,设备内的处理器一般采用安全设计芯片,利用其内置的安全机制,实现密钥生成、密钥安全存储和预置加密算法等功能,与密钥相关的运算完全在认证设备内部执行,所以认证设备安全性很高。由于认证设备的上述优点,故可以将其应用在身份认证、网上银行和VPN等领域。
目前,通过客户端对用户的身份进行合法性认证的技术主要有基于认证设备(包括智能卡、电子装置等)的口令验证技术,利用这些技术进行交易合法性认证的一般流程为:客户端将操作信息传输到认证设备中进行签名,客户端再将经认证设备签名后的操作信息通过网络传输给服务端进行认证。
但是,由于客户端一般都是用户个人计算机,安全级别一般很低,非常容易被黑客攻击或中木马病毒等,所以如果客户端计算机被黑客或木马病毒等远程控制,很容易通过统一标准的访问接口(比如CryptoAPI接口标准或PKCS#11接口标准等)将交易信息传输至认证设备进行签名后发送到服务端验证,从而冒用合法用户的身份信息进行交易,而整个过程常常是不能被用户所查知的,给合法用户的正常交易带来极大的安全隐患。
发明内容
为了解决上述冒用合法用户身份进行交易的安全隐患,本发明提供了一种认证方法和系统,有效避免合法用户身份被冒用的问题。
一种认证方法,包括如下步骤:
客户端判断操作信息的类型,当操作信息的类型为交易信息类型时,客户端将操作信息处理为含有关键信息的验证信息;当操作信息的类型不是交易信息类型时,客户端将操作信息处理为不含有关键信息的验证信息;并将所述验证信息发送至认证设备;
认证设备判断所述验证信息中是否有关键信息,如果验证信息中有关键信息,则输出关键信息并等待确认,认证设备接收到对关键信息的确认信息后,利用加密算法处理所述验证信息得到密文信息,并将所述密文信息发送回所述客户端;如果验证信息中无关键信息,则利用加密算法处理所述验证信息得到密文信息,并将所述密文信息发送回所述客户端;
客户端将所述操作信息和所述密文信息发送至服务端;
服务端判断所述操作信息的类型,当操作信息的类型为交易信息类型时,解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成操作;当操作信息的类型不是交易信息类型时,通过认证所述密文信息的合法性完成操作。
当操作信息的类型为交易信息类型时,客户端对操作信息进行变换得到关键信息,对操作信息进行运算得到特征信息,将所述关键信息和特征信息组合生成验证信息;当操作信息的类型不是交易信息类型时,客户端对操作信息进行运算生成验证信息。
当操作信息的类型为交易信息类型时,客户端直接将所述操作信息作为验证信息或提取所述操作信息中的一部分作为验证信息;当操作信息的类型不是交易信息类型时,客户端对操作信息进行运算生成验证信息。
所述认证设备判断所述验证信息中是否有关键信息方法的具体步骤为:所述认证设备利用预存的所述关键信息的标识符判断客户端发送来的验证信息中是否有关键信息;所述关键信息标识符为所述关键信息中用于表示标识作用的字符。
所述认证设备利用预存的所述关键信息的标识符判断客户端发送来的验证信息中是否有关键信息方法的具体步骤为:
所述认证设备利用预先存储的关键信息标识符与所述验证信息比较,判断验证信息中是否含有所述关键信息标识符,如果含有所述关键信息标识符则所述验证信息中有关键信息,如果不含所述关键信息标识符,则所述验证信息中无关键信息。
解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成认证的具体步骤为:服务端对所述接收到的操作信息进行所述变换得到关键码;对所述接收到的操作信息进行所述运算得到特征码;利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息得到验证信息,利用所述组合的反变换处理所述验证信息,得到关键信息和特征信息;分别比较所述关键码和关键信息是否一致,以及特征码和特征信息是否一致,如果两种比较结果均为一致则操作成功,否则操作失败。
解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成认证的具体步骤为:服务端对所述接收到的操作信息进行所述变换得到关键码;对所述接收到的操作信息进行所述运算得到特征码,利用所述组合规则组合所述关键码和特征码,得到验证码;利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息得到验证信息;比较所述验证码和验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成认证的具体步骤为:服务端将所述接收到的操作信息直接作为验证码,或利用所述提取方法提取所述操作信息中的一部分作为验证码;利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息得到验证信息;比较所述验证码和验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
通过认证所述密文信息的合法性完成认证的具体步骤为:对所述接收到的操作信息进行所述运算得到验证值,利用所述加密算法相对应的解密算法处理所述接收到的密文信息得到验证信息,比较所述验证值和所述验证信息是否一致,如果比较结果为一致则操作成功,否则认证失败。
所述客户端对操作信息进行变换得到关键信息的方法为所述客户端直接将操作信息作为关键信息;或所述客户端提取操作信息的一部分作为关键信息。
所述客户端对操作信息进行变换得到关键信息的方法还包括所述客户端按照预设的规则对操作信息进行位置调换和/或数值变换的步骤。
所述关键信息和特征信息组合的方式为拼接和/或插入。
所述对操作信息进行运算的方法包括直接作为、提取、拼接、插入、Hash运算或CRC运算。
所述认证设备输出关键信息方法的具体步骤为:利用认证设备上的显示装置输出,或利用认证设备上的发声装置输出,或利用认证设备的通信接口上传到客户端输出。
所述认证设备接收确认信息方法的具体步骤为:利用认证设备上的输入装置确认,或利用认证设备的通信接口接收从客户端下传的所述确认信息。
所述认证设备兼容CryptoAPI接口标准和/或PKCS#11接口标准。
所述加密算法为基于PKI的加密算法。
所述加密算法为事先协商对称密钥加密算法。
所述协商方法为:利用SSL握手协商会话标准协议或D-H协议进行协商。
一种认证系统,包括客户端、认证设备和服务端:
所述客户端包括:
操作信息生成模块,用于生成操作信息;
验证信息生成模块,用于判断操作信息的类型,并在操作信息的类型为交易信息类型时,将操作信息处理为含有关键信息的验证信息,在操作信息的类型不是交易信息类型时,将操作信息处理为不含有关键信息的验证信息;
验证信息发送模块,用于将所述验证信息生成模块生成的验证信息发送至认证设备;
传输模块,用于将所述操作信息生成模块生成的操作信息和所述认证设备返回的密文信息传送至服务端;
所述认证设备包括:
关键信息判断模块,用于判断客户端发送的所述验证信息中是否有关键信息,有关键信息则启动关键信息输出模块输出,无关键信息则启动加密模块加密;
关键信息输出模块,用于输出所述关键信息;
确认模块,用于等待并接收确认操作,并启动所述加密模块加密;
加密模块,用于加密处理所述验证信息,得到密文信息;
返回模块,用于将所述加密模块得到的密文信息发送回所述客户端;
所述服务端包括:
判断模块,用于判断接收到的操作信息的类型,当操作信息的类型为交易信息类型时,启动解析认证模块,当操作信息的类型不是交易信息类型时,启动密文认证模块;
解析认证模块,用于解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成操作;
密文认证模块,用于通过认证所述密文信息的合法性完成操作。
所述验证信息生成模块包括:
类型判断单元,用于判断操作信息的类型,当操作信息的类型为交易信息类型时,启动关键验证信息生成单元,当操作信息的类型不是交易信息类型时,启动密文验证信息生成单元;
关键验证信息生成单元,用于将操作信息处理为含有关键信息的验证信息;
密文验证信息生成单元,用于将操作信息处理为不含有关键信息的验证信息。
所述关键验证信息生成单元,具体用于对所述操作信息进行变换得到关键信息,对所述操作信息进行运算得到特征信息,并将所述关键信息和特征信息组合,生成验证信息。
所述关键验证信息生成单元,具体用于直接将所述操作信息作为验证信息或提取所述操作信息中的一部分作为验证信息。
所述密文验证信息生成单元,具体用于对操作信息进行运算生成验证信息。
所述关键信息判断模块具体用于:利用预先存储的关键信息标识符与所述验证信息比较,判断其中是否有所述关键信息标识符,如果含所述关键信息标识符则所述验证信息中有关键信息,如果不含所述关键信息标识符,则所述验证信息中无关键信息。
所述关键信息标识符为所述关键信息中用于表示标识作用的字符。
所述解析认证模块具体包括:
关键码生成单元,用于对所述接收到的操作信息进行所述变换得到关键码;
特征码生成单元,用于对所述接收到的操作信息进行所述运算得到特征码;
解密单元,用于利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息,得到验证信息;
还原单元,用于利用所述组合的反变换处理所述验证信息,得到关键信息和特征信息;
比较单元,用于分别比较所述关键码和关键信息是否一致,及特征码和特征信息是否一致,如果均一致则操作成功,否则操作失败。
所述解析认证模块具体包括:
关键码生成单元,用于对所述接收到的操作信息进行所述变换得到关键码;
特征码生成单元,用于对所述接收到的操作信息进行所述运算得到特征码;
验证码生成单元,用于利用所述组合方法组合所述关键码生成单元得到的关键码和所述特征码生成单元得到的特征码,得到验证码;
解密单元,用于利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息,得到验证信息;
比较单元,用于比较所述验证码和验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
所述解析认证模块具体包括:
验证码生成单元,用于将所述接收到的操作信息直接作为验证码,或利用所述提取方法提取所述操作信息中的一部分作为验证码;
解密单元,用于利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息,得到验证信息;
比较单元,用于比较所述验证码和验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
所述密文认证模块具体包括:
验证值生成单元,用于对所述接收到的操作信息进行所述运算得到验证值;
解密单元,用于利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息得到验证信息;
比较单元,用于比较所述验证值和所述验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
所述关键信息输出模块为显示装置或发声装置。
所述关键信息输出模块具体用于利用认证设备的通信接口上传关键信息到客户端输出。
所述确认模块为输入装置,包括按键、触摸键、微型开关、光电开关或感应式开关。
所述确认模块具体用于利用认证设备的通信接口接收从客户端下传的确认信息。
所述认证设备兼容CryptoAPI接口标准和/或PKCS#11接口标准。
所述加密算法为基于PKI的加密算法,或事先协商对称密钥加密算法。
本发明的有益效果是:本发明提供的认证方法和认证系统,通过在认证设备中实现对关键信息的判断,并且提供了利用认证设备实现确认的环节,有效解决了合法用户身份被冒用的安全问题,进一步的避免了由于客户端计算机被黑客或木马病毒等劫持而导致的远程冒用合法用户身份进行交易或窜改交易信息的问题,能够确保网络交易信息都能得到合法用户的确认,从而大大提高网络交易的安全性。
附图说明
图1为本发明实施例1提供的认证方法的流程图;
图2为本发明实施例2提供的认证方法的流程图;
图3为本发明实施例3提供的认证方法的流程图;
图4为本发明实施例4提供的认证系统的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图和实施例对本发明实施方式做进一步地详细描述。
网络交易过程中,一般会涉及到关键操作和非关键操作两种类型,一般涉及到交易信息的操作被认为是关键操作,而其它的操作一般被认为是非关键操作,比如建立SSL连接等,目前通用的做法是在客户端主机中通过判断验证信息中是否含有关键信息来区分是关键操作还是非关键操作。
但是如果客户端主机被黑客等劫持后,黑客便很容易伪造交易信息,在合法用户不觉察的情况下,冒用认证设备进行加密,从而给合法用户造成非常严重的经济损失。所以,本发明实施例中提供的认证设备及认证方法,将关键操作的判断环节放在认证设备中完成,并增加利用认证设备实现用户确认的步骤,即使在黑客劫持客户端主机的情况下,也无法冒用合法用户身份伪造网络交易,从而提升网络交易的安全性,同时保证合法用户的利益。
实施例1:
参见图1,本发明实施例提供了一种认证方法,本实施例采用基于PKI加解密方法实现。预先在认证设备中存储与合法用户的帐号相对应的私钥,在服务端存储与该合法用户的帐号相对应的公钥,其中一个合法用户的帐号可以是一个,也可以是多个,但一般情况下一个帐号对应一个私钥和一个公钥。然后执行如下步骤:
步骤101:客户端生成操作信息;
操作信息包括关键信息和非关键信息,比如建立SSL连接等,一般涉及到交易信息的操作被认为是关键操作,而其它的操作一般被认为是非关键操作。
交易信息可以是多种形式,比如一般情况下交易信息可以是
Data=2007.12.07.15.49;Account=1234;Money=500;或
D=2007.12.07A=1234$=500;
也可以只是上述信息中的一部分,还可以是上面信息中的全部或部分与其它必要信息一起组成,比如帐户名称等;
步骤102:判断上述操作信息的类型,当操作信息的类型为交易信息类型时,执行步骤103,当操作信息的类型不是交易信息类型时,执行步骤106;
判断操作信息的类型的方法很多,比如当访问的是特定的URL(超级链接)或特定资源时,就认定操作信息的类型为交易信息类型,其中特定的URL或特定资源一般是提前预定好的。
步骤103:客户端对上述操作信息进行变换,得到关键信息;
变换的方式有多种,如可以是将操作信息直接作为关键信息,或提取操作信息中的一部分重要信息作为关键信息,和/或按照预设的规则进行位置调换和/或数值变换等方法。其中,比如操作信息为上述D=2007.12.07A=1234$=500,则如将操作信息直接作为关键信息则关键信息为D=2007.12.07A=1234$=500;如提取操作信息中的一部分重要信息作为关键信息,则关键信息是A=1234$=500,当然提取除了可以连续提取其中一部分外,还可以不连续的进行提取;还可以将操作信息进行位置调换和/或数值变换等操作后再将其直接作为关键信息或提取其中一部分作为关键信息,比如操作信息为T=2007A=1234$=500,对该信息做位置调换和/或数值变换后得到关键信息的方法为:其中,位置调换是指按照预设的规则调换上述信息中部分位或全部位的位置,假设位置调换规则为将上述信息进行位置倒置,则为005=$4321=A7002=T;其中,数值变换是指按照预设的规则替换上述信息中相应位置的值,假设预先设定的规则为将1替换成9,2替换成8,3替换成7,4替换成6,其它不变,则为T=8007A=9876$=500,此时可以将处理后的值直接作为关键信息,也可以提取其中一部分重要信息作为关键信息,比如提取005=$4321=A或A=9876$=500作为关键信息。另外,还可以同时使用位置调换和数值变换两种方式,当然,在实际应用中,可以依据需要自己设计具体的变换方法,只要是可逆的变换即可。
步骤104:客户端对上述操作信息进行运算,得到特征信息;
运算的方法也有很多,比如Hash运算、CRC运算等均可,此处可以使用可逆运算,也可以使用不可逆运算,当然,优选的是使用不可逆运算,比如hash运算,相对更加安全;例如此处使用的是hash运算,则特征信息为H=×××,其中×××代表运算结果;
步骤105:客户端将关键信息和特征信息做组合,得到验证信息后,执行步骤107;
进行组合的方式有多种,如可以采用拼接和/或插入的方式。其中,拼接是指将关键信息拼接在特征信息的最前面或最后面得到验证信息,例如,特征信息为H=×××,关键信息为A=1234$=500,可以将关键信息拼接在特征信息的最前面,得到验证信息为A=1234$=500H=×××;或是将关键信息拼接在特征信息的最后面,得到验证信息为H=×××A=1234$=500。其中,插入是指将关键信息插入到特征信息的某一位的后面得到验证信息,比如,特征信息为H=×××,关键信息为A=1234$=500,可以将关键信息插入到特征信息的第二位的后面,得到验证信息为H=A=1234$=500×××;或是将关键信息插入到特征信息的其它位的前面得到验证信息等等。另外,还可以同时使用拼接和插入两种方式。
步骤106:客户端对操作信息进行运算生成验证信息;
运算的方法也有很多,比如Hash运算、CRC运算等均可,此处可以使用可逆运算,也可以使用不可逆运算,当然,优选的是使用不可逆运算,比如hash运算,相对更加安全。
步骤107:客户端将验证信息发送至认证设备,并向其发送对验证信息加密的指令;
客户端向认证设备发送对验证信息加密的指令的方法有多种,其中优选的的方法是通过调用认证设备兼容的CryptoAPI接口标准或PKCS#11接口标准自带的加密指令实现,比如CryptoAPI接口标准自带的CryptEncryptMessage()函数等。
步骤108:认证设备利用预存的关键信息标识符判断客户端发送来的验证信息中是否有关键信息,如果有关键信息则执行步骤109,否则执行步骤111;
其中,关键信息标识符为关键信息中用于表示标识作用的字符,比如关键信息为A=1234$=500,则常用A=和$=作为关键信息标识符。
比如认证设备预先存储的关键消息标识符为A=和$=,则通过将该关键消息标识符与上述验证信息进行比较,如果上述验证信息中含有预先存储的关键消息标识符A=和$=,则说明客户端发送来的验证信息中含有关键信息,即为关键操作,并且A=1234$=500便为客户端发送来到的验证信息中的关键信息,继续执行步骤109;
如果认证设备通过将该关键消息标识符与上述验证信息进行比较,未发现其中含有预先存储的关键信息标识符A=和$=,则说明客户端向认证设备发送的验证信息中没有关键信息,说明其为非关键操作,此时执行步骤111;
当然,在上述比较之前还可以认证设备利用步骤105中组合的反变换处理该验证信息;
比如客户端发送来的验证信息为A=1234$=500H=×××,则利用步骤105中组合的反变换处理该验证信息得到A=1234$=500和H=×××两个值;再分别比较这两个值中是否含有预先存储的关键消息标识符A=和$=来实现。
步骤109:显示上述关键信息,并等待用户确认;
即在认证设备的显示装置中显示关键信息A=1234$=500,当然实际操作中也可以显示含有该关键信息的其它重要信息,比如可以显示A=1234$=500H=,其中H=是预先约定好要显示的字符,预先存储在认证设备中,或由客户端通知均可;
本实施例以显示输出为例说明,当然实际应用中还可以采用发声装置播报输出,或将关键信息标识符上传到客户端输出等。
步骤110:用户按动认证设备上的确认按键确认步骤109中显示的关键信息是否正确;
当然按键还可以等同替换成触摸键、微型开关、光电开关或感应式开关等,本实施例以物理装置为例,在实际应用中还可以采用将确认信息由客户端下传到认证设备中等方式实现。
当然,在实际应用中,如果用户不想继续或输出的关键信息是错误的,也可以通过按动认证设备上的取消按键取消上述操作,同样的,取消用的按键还可以等同替换成触摸键、微型开关、光电开关或感应式开关等,还可以将取消信息由客户端下传到认证设备中等方式实现;或预先设定等待确认的时间,当超出该预设的等待时间,自动产生取消信号,结束此次操作。
步骤111:认证设备利用基于PKI加密算法及其内预先存储的私钥加密处理该验证信息,得到密文信息,并将该密文信息传送回客户端;
步骤112:客户端将步骤101中生成的操作信息及步骤111中认证设备返回的密文信息通过网络传送至服务端;
步骤113:服务端判断接收到的操作信息的类型,当操作信息的类型为交易信息类型时,执行步骤114,当操作信息的类型不是交易信息类型时,执行步骤119;
步骤114:服务端对接收到的操作信息做与步骤103相同的变换,得到关键码;
步骤115:服务端对接收到的操作信息做与步骤104相同的运算,得到特征码;
步骤116:服务端利用与步骤111中的基于PKI加密算法相对应的解密算法及服务端预先存储的公钥解密处理接收到的密文信息,得到验证信息;
步骤117:利用与步骤105中组合的反变换处理步骤116中得到的验证信息,得到关键信息和特征信息;
步骤118:比较步骤114中得到的关键码与步骤117中得到的关键信息是否一致,及步骤115中得到的特征码和步骤117中得到的特征信息是否一致,如果均一致,则递交交易的操作成功,服务端便会针对递交的交易继续执行相应操作;否则递交交易操作失败,本次操作结束。
步骤119:服务端对接收到的操作信息做与步骤106相同的运算,得到验证值;
步骤120:服务端利用与步骤111中的基于PKI加密算法相对应的解密算法及服务端预先存储的公钥解密处理接收到的密文信息,得到验证信息;
步骤121:比较步骤119中得到的验证值和步骤120中得到的验证信息是否一致,如果一致则递交交易的操作成功,服务端便会针对递交的交易继续执行相应操作;否则递交交易操作失败,结束。
本实施例中是先执行步骤103,后执行步骤104,但在实际应用中,还可以先执行步骤104,再执行步骤103,也可以同时进行;同样的,步骤114、115也没有严格的顺序要求,可以调整先后顺序进行操作,当然也可以同时进行操作。
本实施例中的步骤114~步骤118还可以是:
服务端对接收到的操作信息进行与步骤103相同的变换得到关键码;对接收到的操作信息进行与步骤104相同的运算得到特征码,利用与步骤105中组合,组合关键码和特征码得到验证码;利用与步骤111中加密算法相对应的解密算法解密处理接收到的密文信息得到验证信息;比较验证码和验证信息是否一致,如果一致则操作成功,否则操作失败。
实施例2:
参见图2,本发明实施例提供了一种认证方法,本实施例采用事先协商对称密钥加密算法的方法,其中,事先协商对称密钥加密算法是两端使用的会话密钥一样,加密算法和解密算法一样,包括如下步骤:
步骤201:客户端生成操作信息;
操作信息包括关键信息和其它非关键信息,比如建立SSL连接等,一般涉及到交易信息的操作被认为是关键操作,而其它的操作一般被认为是非关键操作。
交易信息可以是多种形式,比如一般情况下交易信息可以是
Data=2007.12.07.15.49;Account=1234;Money=500;或
D=2007.12.07A=1234$=500;
也可以是其中的一部分,还可以是上面信息中的全部或部分与其它必要信息一起组成;
步骤202:客户端与服务端协商本次会话密钥,并将协商好的会话密钥存储在服务端,并发送至认证设备存储;
客户端与服务端协商本次会话密钥的方法有多种,比如SSL握手协商会话标准协议或D-H协议等。
当然,在实际应用中,也可以是认证设备与服务端之间协商本次的会话密钥,同样具体的协商方法也可以是SSL握手协商会话标准协议或D-H协议等,简单举例说明如下:在认证设备内部生成本次会话密钥,再在认证设备内利用公钥将该会话密钥加密,将该加密后的会话密钥通过客户端发送至服务端,服务端利用私钥将其解密,得到本次的会话密钥。协商的方法很多,可以在具体应用中依据项目的需要在上述实施例的基础上自行设计。
步骤203:判断上述操作信息的类型,当操作信息的类型为交易信息类型时,执行步骤204,当操作信息的类型不是交易信息类型时,执行步骤207;
步骤204:客户端对上述操作信息进行变换,得到关键信息;
变换的方式在实施例1中已经详细描述过,此处不再赘述;比如本实施例中是提取操作信息中的一部分重要信息作为关键信息,即关键信息为A=1234$=500;
步骤205:客户端对上述操作信息进行运算,得到特征信息;
运算的方法也有很多,比如Hash运算、CRC运算等均可,此处可以使用可逆运算,也可以使用不可逆运算,当然,优选的是使用不可逆运算,比如hash运算,相对更加安全;例如此处使用的是hash运算,则特征信息为H=×××,其中×××代表运算结果;
步骤206:客户端将关键信息和特征信息做组合,得到验证信息后,执行步骤208;
进行组合的方式有多种,如可以采用拼接和/或插入的方式等,实施例1中也已经做了详细描述,此处不再赘述,本实施例中以验证信息为将关键信息拼接在特征信息的最前面,即验证信息为A=1234$=500H=×××为例;
步骤207:客户端对上述操作信息进行运算生成验证信息;
运算的方法也有很多,比如Hash运算、CRC运算等均可,此处可以使用可逆运算,也可以使用不可逆运算,当然,优选的是使用不可逆运算,比如hash运算,相对更加安全。
步骤208:客户端将验证信息发送至认证设备,并向其发送对验证信息加密的指令;
客户端向认证设备发送对验证信息加密的指令的方法有多种,其中比较优选的的方法是通过调用认证设备兼容的CryptoAPI接口标准或PKCS#11接口标准自带的加密指令实现,比如CryptoAPI接口标准自带的CryptEncryptMessage()函数等。
步骤209:认证设备利用预存的关键信息标识符判断客户端发送来的验证信息中是否有关键信息,有则执行步骤210,否则执行步骤212;
比如认证设备预先存储的关键消息标识符为A=和$=,则通过将该关键消息标识符与上述验证信息进行比较,如果上述验证信息中含有预先存储的关键消息标识符A=和$=,则说明客户端发送来的验证信息中含有关键信息,即为关键操作,并且A=1234$=500便为客户端发送来到的验证信息中的关键信息,继续执行步骤210;
如果认证设备通过将该关键消息标识符与上述验证信息进行比较,未发现其中含有预先存储的关键信息标识符A=和$=,则说明客户端向认证设备发送的验证信息中没有关键信息,说明其为非关键操作,此时执行步骤212;
当然,在上述比较之前还可以认证设备利用步骤206中组合的反变换处理该验证信息;
比如客户端发送来的验证信息为A=1234$=500H=×××,则利用步骤206中组合的反变换处理该验证信息得到A=1234$=500和H=×××两个值;再分别比较这两个值中是否含有预先存储的关键消息标识符A=和$=来实现。
步骤210:显示上述关键信息,并等待用户确认;
即在认证设备的显示装置中显示关键信息A=1234$=500,当然实际操作中也可以显示含有该关键信息的其它重要信息,比如可以显示A=1234$=500H=,其中H=是预先约定好要显示的字符,预先存储在认证设备中,或又客户端通知均可;
本实施例以显示输出为例说明,当然实际应用中还可以采用发声装置播报输出,或将关键信息标识符上传到客户端输出等。
步骤211:用户按动认证设备上的确认按键确认步骤210中显示的关键信息是否正确;
当然按键还可以等同替换成触摸键、微型开关、光电开关或感应式开关等,本实施例以物理装置为例,在实际应用中还可以采用将确认信息由客户端下传到认证设备中等方式实现。
当然,在实际应用中,如果用户不想继续进行操作或输出的关键信息错误,也可以通过按动认证设备上的取消按键取消上述操作,同样的,取消用的按键也可以等同替换成触摸键、微型开关、光电开关或感应式开关等,还可以将取消信息由客户端下传到认证设备中等方式实现;或预先设定等待确认的时间,当超出该预设的等待时间,自动产生取消信号,结束此次操作。
步骤212:认证设备利用事先协商对称密钥加密算法及本次会话密钥加密处理该验证信息,得到密文信息,并将该密文信息传送回客户端;
步骤213:客户端将步骤201中生成的操作信息及步骤212中认证设备返回的密文信息通过网络传送至服务端;
步骤214:服务端判断接收到的操作信息的类型,当操作信息的类型为交易信息类型时,执行步骤215,当操作信息的类型不是交易信息类型时,执行步骤220。
步骤215:服务端对接收到的操作信息做与步骤204相同的变换,得到关键码;
步骤216:服务端对接收到的操作信息做与步骤205相同的运算,得到特征码;
步骤217:服务端利用与步骤212中的加密算法相对应的解密算法及服务端存储的本次会话密钥解密处理接收到的密文信息,得到验证信息;
步骤218:利用与步骤206中组合的反变换处理上述验证信息,得到关键信息和特征信息;
步骤219:比较步骤215中得到的关键码与步骤218中得到的关键信息是否一致,及步骤216中得到的特征码和步骤218中得到的特征信息是否一致,如果均一致,则认证通过;否则认证失败,操作结束。
步骤220:服务端对接收到的操作信息做与步骤207相同的运算,得到验证值;
步骤221:服务端利用与步骤212中的加密算法相同的算法及服务端的会话密钥解密处理接收到的密文信息,得到验证信息;
步骤222:比较步骤220中得到的验证值和步骤221中得到的验证信息是否一致,如果一致则认证通过;否则认证失败,操作结束。
本实施例中是先执行步骤204,后执行步骤205,但在实际应用中,还可以先执行步骤205,再执行步骤204,也可以同时进行;同样的,步骤215、216也没有严格的顺序要求,可以调整先后顺序进行操作,也可以同时进行。
在实际应用中,本实施例中的步骤202可以在步骤201~步骤208之间的任意步骤时完成,而不是一定必须在步骤201与步骤203之间完成。
本实施例中的步骤215~步骤219还可以是:
服务端对接收到的操作信息进行与步骤204相同的变换得到关键码;对接收到的操作信息进行与步骤205相同的运算得到特征码,利用与步骤206中组合,组合关键码和特征码得到验证码;利用与步骤212中加密算法相同的算法解密处理接收到的密文信息得到验证信息;比较验证码和验证信息是否一致,如果一致则操作成功,否则操作失败。
实施例3:
参见图3,本发明实施例还提供了一种认证方法,本实施例采用基于PKI加解密方法实现。预先在认证设备中存储与合法用户的帐号相对应的私钥,在服务端存储与该合法用户的帐号相对应的公钥,其中一个合法用户的帐号可以是一个,也可以是多个,但一般情况下一个帐号对应一个私钥和一个公钥。然后执行如下步骤:
步骤301:客户端生成操作信息;
操作信息包括关键信息和其它非关键信息,比如建立SSL连接等,一般涉及到交易信息的操作被认为是关键操作,而其它的操作一般被认为是非关键操作。
交易信息可以是多种形式,比如一般情况下交易信息可以是
Data=2007.12.07.15.49;Account=1234;Money=500;或
D=2007.12.07A=1234$=500;
也可以只是上述信息的一部分,还可以是上述信息的全部或部分与其它必要信息一起组成,比如帐户名称等;
步骤302:判断上述操作信息的类型,当操作信息的类型为交易信息类型时,执行步骤303,当操作信息的类型不是交易信息类型时,执行步骤304;
判断操作信息的类型的方法很多,比如当访问的是特定的URL(超级链接)或特定资源时,就认定操作信息的类型为交易信息类型,其中特定的URL或特定资源一般是提前预定好的。
步骤303:客户端处理上述操作信息得到验证信息,执行步骤305;
此处客户端可以直接将该操作信息作为验证信息,也可以提取该操作信息中的一部分作为验证信息,提取的方法可以是连续提取操作信息中的一部分,也可以是不连续提取操作信息中的一部分,得到验证信息,但是,不管如何提取,从操作信息中提取出来的部分中应该含有关键信息。因为在步骤302中已经判断该操作信息的类型为交易信息类型,所以本实施例中以操作信息是D=2007.12.07A=1234$=500为例进行说明。
其中,关键信息是将该操作信息直接作为关键信息,或通过提取操作信息中的一部分重要信息作为关键信息,更进一步的,在由操作信息得到关键信息的步骤中还可以包括按照预设的规则进行位置调换和/或数值变换等方法。本实施例中以关键信息是提取操作信息中一部分重要信息为例说明,即以关键信息为A=1234$=500为例进行说明。
步骤304:客户端对操作信息进行运算生成验证信息;
运算的方法也有很多,比如Hash运算、CRC运算等均可,此处可以使用可逆运算,也可以使用不可逆运算,当然,优选的是使用不可逆运算,比如hash运算,相对更加安全。
步骤305:客户端将验证信息发送至认证设备,并向其发送对验证信息加密的指令;
客户端向认证设备发送对验证信息加密的指令的方法有多种,其中优选的的方法是通过调用认证设备兼容的CryptoAPI接口标准或PKCS#11接口标准自带的加密指令实现,比如CryptoAPI接口标准自带的CryptEncryptMessage()函数等。
步骤306:认证设备利用预存的关键信息标识符判断客户端发送来的验证信息中是否有关键信息,如果有关键信息则执行步骤307,否则执行步骤309;
比如认证设备预先存储的关键消息标识符为A=和$=,则通过将该关键消息标识符与上述验证信息进行比较,如果上述验证信息中含有预先存储的关键消息标识符A=和$=,则说明客户端发送来的验证信息中含有关键信息,即为关键操作,继续执行步骤307;
如果认证设备通过将该关键消息标识符与上述验证信息进行比较,未发现其中含有预先存储的关键信息标识符A=和$=,则说明客户端向认证设备发送的验证信息中没有关键信息,说明其为非关键操作,此时执行步骤309;
步骤307:显示上述关键信息,并等待用户确认;
即在认证设备的显示装置中显示关键信息A=1234$=500,当然实际操作中也可以显示含有该关键信息的其它重要信息,比如可以显示A=1234$=500H=,其中H=是预先约定好要显示的字符,预先存储在认证设备中,或由客户端通知均可;
本实施例以显示输出为例说明,当然实际应用中还可以采用发声装置播报输出,或将关键信息标识符上传到客户端输出等。
步骤308:用户按动认证设备上的确认按键确认步骤307中显示的关键信息是否正确;
当然按键还可以等同替换成触摸键、微型开关、光电开关或感应式开关等,本实施例以物理装置为例,在实际应用中还可以采用将确认信息由客户端下传到认证设备中等方式实现。
当然,在实际应用中,如果用户不想继续或输出的关键信息是错误的,也可以通过按动认证设备上的取消按键取消上述操作,同样的,取消用的按键还可以等同替换成触摸键、微型开关、光电开关或感应式开关等,还可以将取消信息由客户端下传到认证设备中等方式实现;或预先设定等待确认的时间,当超出该预设的等待时间,自动产生取消信号,结束此次操作。
步骤309:认证设备利用基于PKI加密算法及其内预先存储的私钥加密处理该验证信息,得到密文信息,并将该密文信息传送回客户端;
步骤310:客户端将步骤301中生成的操作信息及步骤309中认证设备返回的密文信息通过网络传送至服务端;
步骤311:服务端判断接收到的操作信息的类型,当操作信息的类型为交易信息类型时,执行步骤312,当操作信息的类型不是交易信息类型时,执行步骤315;
步骤312:服务端对接收到的操作信息做与步骤303相同的处理,得到验证码;
步骤313:服务端利用与步骤309中的基于PKI加密算法相对应的解密算法及服务端预先存储的公钥解密处理接收到的密文信息,得到验证信息;
步骤314:比较步骤312中得到的验证码与步骤313中得到的验证信息是否一致,如果一致,则递交交易的操作成功,服务端便会针对递交的交易继续执行相应操作;否则递交交易操作失败,结束此次操作。
步骤315:服务端对接收到的操作信息做与步骤304相同的运算,得到验证值;
步骤316:服务端利用与步骤309中的基于PKI加密算法相对应的解密算法及服务端预先存储的公钥解密处理接收到的密文信息,得到验证信息;
步骤317:比较步骤315中得到的验证值和步骤316中得到的验证信息是否一致,如果一致则递交交易的操作成功,服务端便会针对递交的交易继续执行相应操作;否则递交交易操作失败,结束此次操作。
实施例4:
参见图4,本实施例提供了一种认证系统,系统包括客户端410、认证设备420和服务端430:
其中,客户端410包括:
操作信息生成模块411,用于生成操作信息;
验证信息生成模块412,用于处理操作信息生成模块411生成的操作信息得到验证信息;
验证信息发送模块413,用于将验证信息生成模块412生成的验证信息发送至认证设备420;
传输模块414,用于将操作信息生成模块411生成的操作信息和认证设备420返回的密文信息传送至服务端430;
认证设备420包括:
关键信息判断模块421,用于判断客户端发送的验证信息中是否有关键信息,有关键信息则启动关键信息输出模块422输出,无关键信息则启动加密模块424加密;
关键信息输出模块422,用于输出该关键信息;
确认模块423,用于等待并接收确认操作,并启动加密模块424加密;
加密模块424,用于加密处理上述验证信息,得到密文信息;
返回模块425,用于将加密模块424得到的密文信息发送回客户端410;
服务端430包括:
判断模块431,用于判断接收到的操作信息的类型,当操作信息的类型为交易信息类型时,启动解析认证模块432,当操作信息的类型不是交易信息类型时,启动密文认证模块433;
解析认证模块432,用于解析密文信息中的关键信息,通过认证关键信息的合法性和密文信息的合法性完成操作;
密文认证模块433,用于通过认证密文信息的合法性完成操作。
进一步的,验证信息发送模块413还包括指令发送单元,用于向认证设备发送对验证信息做加密的指令。
验证信息生成模块412具体包括:
类型判断单元,用于判断操作信息的类型,当操作信息的类型为交易信息类型时,启动关键验证信息生成单元,当操作信息的类型不是交易信息类型时,启动密文验证信息生成单元;
关键验证信息生成单元,用于将操作信息处理为含有关键信息的验证信息;
密文验证信息生成单元,用于将操作信息处理为不含有关键信息的验证信息。
其中,关键验证信息生成单元具体用于对操作信息进行变换得到关键信息,对操作信息进行运算得到特征信息,并将关键信息和特征信息组合,生成验证信息。相对应的,
解析认证模块432具体包括:关键码生成单元,用于对从传输模块414接收到的操作信息进行与上述变换相同的变换,得到关键码;特征码生成单元,用于对从传输模块414接收到的操作信息进行与上述运算相同的运算,得到特征码;解密单元,用于利用与上述加密算法相对应的解密算法处理从传输模块414接收到的密文信息,得到验证信息;还原单元,用于利用上述组合的反变换处理上述验证信息,得到关键信息和特征信息;比较单元,用于分别比较关键码和关键信息是否一致,及特征码和特征信息是否一致,如果均一致则递交交易的操作成功,服务端便会针对递交的交易继续执行相应操作,否则,递交交易的操作失败。
本实施例中的解析认证模块432还可以具体包括:关键码生成单元,用于对从传输模块414接收到的操作信息进行与上述变换相同的变换,得到关键码;特征码生成单元,用于对从传输模块414接收到的操作信息进行与上述运算相同的运算,得到特征码;验证码生成单元,用于利用上述组合相同的组合关键码和特征码得到验证码;解密单元,用于利用与上述加密算法相对应的解密算法处理从传输模块414接收到的密文信息,得到验证信息;比较单元,用于比较验证码和验证信息是否一致,如果一致则递交交易的操作成功,服务端便会针对递交的交易继续执行相应操作,否则,递交交易的操作失败。
其中,关键验证信息生成单元具体用于直接将操作信息作为验证信息或提取操作信息中的一部分作为验证信息。相对应的,
本实施例中解析认证模块432也可以具体包括:验证码生成单元,用于将接收到的操作信息直接作为验证码,或利用提取方法提取操作信息中的一部分作为验证码;解密单元,用于利用加密算法相对应的解密算法解密处理接收到的密文信息,得到验证信息;比较单元,用于比较验证码和验证信息是否一致,如果一致则递交交易的操作成功,服务端便会针对递交的交易继续执行相应操作,否则,递交交易的操作失败。
关键信息判断模块421具体用于:利用预先存储的关键信息标识符与该验证信息比较,判断其中是否有关键信息标识符,如果含关键信息标识符则验证信息中有关键信息,如果不含关键信息标识符,则验证信息中无关键信息。其中,关键信息标识符为关键信息中用于标识作用的字符。比如,关键信息为A=1234$=500,则可以将其中起标识作用的字符A=和$=作为关键信息标识符。
其中,密文验证信息生成单元,具体用于对操作信息进行运算生成验证信息。相对应的,
密文认证模块433具体包括:
验证值生成单元,用于对接收到的操作信息进行上述运算得到验证值;解密单元,用于利用上述加密算法相对应的解密算法处理接收到的密文信息得到验证信息;比较单元,用于比较验证值和验证信息是否一致,如果一致则递交交易的操作成功,服务端便会针对递交的交易继续执行相应操作,否则,递交交易的操作失败。
优选的,关键信息输出模块422可以是显示装置或发声装置,关键信息输出模块422还可以是利用认证设备的通信接口上传到客户端输出等。
优选的,确认模块423为输入装置,包括由按键、触摸键、微型开关、光电开关或感应式开关等实现,或确认模块也可以是利用认证设备的通信接口从客户端下传确认信息等实现。
优选的,认证设备兼容CryptoAPI接口标准和/或PKCS#11接口标准。
其中,本实施例中的加密算法和解密算法可以是基于PKI的加密算法和解密算法,也可以是事先协商对称密钥加密算法和解密算法等。
本发明实施例提供的认证方法和认证系统,通过在认证设备中实现对关键信息的判断,并且提供了利用认证设备实现确认的环节,有效解决了合法用户身份被冒用的安全问题,进一步的避免了由于客户端计算机被黑客或木马病毒等劫持而导致的远程冒用合法用户身份进行交易或窜改交易信息的问题,能够确保网络交易信息都能得到合法用户的确认,从而大大提高网络交易的安全性。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (36)

1、一种认证方法,其特征是包括如下步骤:
客户端判断操作信息的类型,当操作信息的类型为交易信息类型时,客户端将操作信息处理为含有关键信息的验证信息;当操作信息的类型不是交易信息类型时,客户端将操作信息处理为不含有关键信息的验证信息;并将所述验证信息发送至认证设备;
认证设备判断所述验证信息中是否有关键信息,如果验证信息中有关键信息,则输出关键信息并等待确认,认证设备接收到对关键信息的确认信息后,利用加密算法处理所述验证信息得到密文信息,并将所述密文信息发送回所述客户端;如果验证信息中无关键信息,则利用加密算法处理所述验证信息得到密文信息,并将所述密文信息发送回所述客户端;
客户端将所述操作信息和所述密文信息发送至服务端;
服务端判断所述操作信息的类型,当操作信息的类型为交易信息类型时,解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成操作;当操作信息的类型不是交易信息类型时,通过认证所述密文信息的合法性完成操作。
2、根据权利要求1所述的认证方法,其特征是当操作信息的类型为交易信息类型时,客户端对操作信息进行变换得到关键信息,对操作信息进行运算得到特征信息,将所述关键信息和特征信息组合生成验证信息;当操作信息的类型不是交易信息类型时,客户端对操作信息进行运算生成验证信息。
3、根据权利要求1所述的认证方法,其特征是当操作信息的类型为交易信息类型时,客户端直接将所述操作信息作为验证信息或提取所述操作信息中的一部分作为验证信息;当操作信息的类型不是交易信息类型时,客户端对操作信息进行运算生成验证信息。
4、根据权利要求1所述的认证方法,其特征是所述认证设备判断所述验证信息中是否有关键信息方法的具体步骤为:所述认证设备利用预存的所述关键信息的标识符判断客户端发送来的验证信息中是否有关键信息;所述关键信息标识符为所述关键信息中用于表示标识作用的字符。
5、根据权利要求4所述的认证方法,其特征是所述认证设备利用预存的所述关键信息的标识符判断客户端发送来的验证信息中是否有关键信息方法的具体步骤为:
所述认证设备利用预先存储的关键信息标识符与所述验证信息比较,判断验证信息中是否含有所述关键信息标识符,如果含有所述关键信息标识符则所述验证信息中有关键信息,如果不含所述关键信息标识符,则所述验证信息中无关键信息。
6、根据权利要求2所述的认证方法,其特征是解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成认证的具体步骤为:服务端对所述接收到的操作信息进行所述变换得到关键码;对所述接收到的操作信息进行所述运算得到特征码;利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息得到验证信息,利用所述组合的反变换处理所述验证信息,得到关键信息和特征信息;分别比较所述关键码和关键信息是否一致,以及特征码和特征信息是否一致,如果两种比较结果均为一致则操作成功,否则操作失败。
7、根据权利要求2所述的认证方法,其特征是解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成认证的具体步骤为:服务端对所述接收到的操作信息进行所述变换得到关键码;对所述接收到的操作信息进行所述运算得到特征码,利用所述组合规则组合所述关键码和特征码,得到验证码;利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息得到验证信息;比较所述验证码和验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
8、根据权利要求3所述的认证方法,其特征是解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成认证的具体步骤为:服务端将所述接收到的操作信息直接作为验证码,或利用所述提取方法提取所述操作信息中的一部分作为验证码;利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息得到验证信息;比较所述验证码和验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
9、根据权利要求2或3所述的认证方法,其特征是通过认证所述密文信息的合法性完成认证的具体步骤为:对所述接收到的操作信息进行所述运算得到验证值,利用所述加密算法相对应的解密算法处理所述接收到的密文信息得到验证信息,比较所述验证值和所述验证信息是否一致,如果比较结果为一致则操作成功,否则认证失败。
10、根据权利要求2所述的认证方法,其特征是所述客户端对操作信息进行变换得到关键信息的方法为所述客户端直接将操作信息作为关键信息;或所述客户端提取操作信息的一部分作为关键信息。
11、根据权利要求10所述的认证方法,其特征是所述客户端对操作信息进行变换得到关键信息的方法还包括所述客户端按照预设的规则对操作信息进行位置调换和/或数值变换的步骤。
12、根据权利要求2所述的认证方法,其特征是所述关键信息和特征信息组合的方式为拼接和/或插入。
13、根据权利要求2或3所述的认证方法,其特征是所述对操作信息进行运算的方法包括直接作为、提取、拼接、插入、Hash运算或CRC运算。
14、根据权利要求1所述的认证方法,其特征是所述认证设备输出关键信息方法的具体步骤为:利用认证设备上的显示装置输出,或利用认证设备上的发声装置输出,或利用认证设备的通信接口上传到客户端输出。
15、根据权利要求1所述的认证方法,其特征是所述认证设备接收确认信息方法的具体步骤为:利用认证设备上的输入装置确认,或利用认证设备的通信接口接收从客户端下传的所述确认信息。
16、根据权利要求1所述的认证方法,其特征是所述认证设备兼容CryptoAPI接口标准和/或PKCS#11接口标准。
17、根据权利要求1所述的认证方法,其特征是所述加密算法为基于PKI的加密算法。
18、根据权利要求1所述的认证方法,其特征是所述加密算法为事先协商对称密钥加密算法。
19、根据权利要求18所述的认证方法,其特征是所述协商方法为:利用SSL握手协商会话标准协议或D-H协议进行协商。
20、一种认证系统,包括客户端、认证设备和服务端,其特征是:
所述客户端包括:
操作信息生成模块,用于生成操作信息;
验证信息生成模块,用于判断操作信息的类型,并在操作信息的类型为交易信息类型时,将操作信息处理为含有关键信息的验证信息,在操作信息的类型不是交易信息类型时,将操作信息处理为不含有关键信息的验证信息;
验证信息发送模块,用于将所述验证信息生成模块生成的验证信息发送至认证设备;
传输模块,用于将所述操作信息生成模块生成的操作信息和所述认证设备返回的密文信息传送至服务端;
所述认证设备包括:
关键信息判断模块,用于判断客户端发送的所述验证信息中是否有关键信息,有关键信息则启动关键信息输出模块输出,无关键信息则启动加密模块加密;
关键信息输出模块,用于输出所述关键信息;
确认模块,用于等待并接收确认操作,并启动所述加密模块加密;
加密模块,用于加密处理所述验证信息,得到密文信息;
返回模块,用于将所述加密模块得到的密文信息发送回所述客户端;
所述服务端包括:
判断模块,用于判断接收到的操作信息的类型,当操作信息的类型为交易信息类型时,启动解析认证模块,当操作信息的类型不是交易信息类型时,启动密文认证模块;
解析认证模块,用于解析所述密文信息中的关键信息,通过认证所述关键信息的合法性和所述密文信息的合法性完成操作;
密文认证模块,用于通过认证所述密文信息的合法性完成操作。
21、根据权利要求20所述的认证系统,其特征是:所述验证信息生成模块包括:
类型判断单元,用于判断操作信息的类型,当操作信息的类型为交易信息类型时,启动关键验证信息生成单元,当操作信息的类型不是交易信息类型时,启动密文验证信息生成单元;
关键验证信息生成单元,用于将操作信息处理为含有关键信息的验证信息;
密文验证信息生成单元,用于将操作信息处理为不含有关键信息的验证信息。
22、根据权利要求21所述的认证系统,其特征是:所述关键验证信息生成单元,具体用于对所述操作信息进行变换得到关键信息,对所述操作信息进行运算得到特征信息,并将所述关键信息和特征信息组合,生成验证信息。
23、根据权利要求21所述的认证系统,其特征是:所述关键验证信息生成单元,具体用于直接将所述操作信息作为验证信息或提取所述操作信息中的一部分作为验证信息。
24、根据权利要求21所述的认证系统,其特征是:所述密文验证信息生成单元,具体用于对操作信息进行运算生成验证信息。
25、根据权利要求22或23所述的认证系统,其特征是:所述关键信息判断模块具体用于:利用预先存储的关键信息标识符与所述验证信息比较,判断其中是否有所述关键信息标识符,如果含所述关键信息标识符则所述验证信息中有关键信息,如果不含所述关键信息标识符,则所述验证信息中无关键信息。
26、根据权利要求25所述的认证系统,其特征是:所述关键信息标识符为所述关键信息中用于表示标识作用的字符。
27、根据权利要求22所述的认证系统,其特征是:所述解析认证模块具体包括:
关键码生成单元,用于对所述接收到的操作信息进行所述变换得到关键码;
特征码生成单元,用于对所述接收到的操作信息进行所述运算得到特征码;
解密单元,用于利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息,得到验证信息;
还原单元,用于利用所述组合的反变换处理所述验证信息,得到关键信息和特征信息;
比较单元,用于分别比较所述关键码和关键信息是否一致,及特征码和特征信息是否一致,如果均一致则操作成功,否则操作失败。
28、根据权利要求22所述的认证系统,其特征是:所述解析认证模块具体包括:
关键码生成单元,用于对所述接收到的操作信息进行所述变换得到关键码;
特征码生成单元,用于对所述接收到的操作信息进行所述运算得到特征码;
验证码生成单元,用于利用所述组合方法组合所述关键码生成单元得到的关键码和所述特征码生成单元得到的特征码,得到验证码;
解密单元,用于利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息,得到验证信息;
比较单元,用于比较所述验证码和验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
29、根据权利要求23所述的认证系统,其特征是:所述解析认证模块具体包括:
验证码生成单元,用于将所述接收到的操作信息直接作为验证码,或利用所述提取方法提取所述操作信息中的一部分作为验证码;
解密单元,用于利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息,得到验证信息;
比较单元,用于比较所述验证码和验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
30、根据权利要求24所述的认证系统,其特征是:所述密文认证模块具体包括:
验证值生成单元,用于对所述接收到的操作信息进行所述运算得到验证值;
解密单元,用于利用所述加密算法相对应的解密算法解密处理所述接收到的密文信息得到验证信息;
比较单元,用于比较所述验证值和所述验证信息是否一致,如果比较结果为一致则操作成功,否则操作失败。
31、根据权利要求20所述的认证系统,其特征是:所述关键信息输出模块为显示装置或发声装置。
32、根据权利要求20所述的认证系统,其特征是:所述关键信息输出模块具体用于利用认证设备的通信接口上传关键信息到客户端输出。
33、根据权利要求20所述的认证系统,其特征是:所述确认模块为输入装置,包括按键、触摸键、微型开关、光电开关或感应式开关。
34、根据权利要求20所述的认证系统,其特征是:所述确认模块具体用于利用认证设备的通信接口接收从客户端下传的确认信息。
35、根据权利要求20所述的认证系统,其特征是:所述认证设备兼容CryptoAPI接口标准和/或PKCS#11接口标准。
36、根据权利要求20所述的认证系统,其特征是:所述加密算法为基于PKI的加密算法,或事先协商对称密钥加密算法。
CN200710303740A 2007-12-21 2007-12-21 一种认证方法和认证系统 Active CN100589390C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710303740A CN100589390C (zh) 2007-12-21 2007-12-21 一种认证方法和认证系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710303740A CN100589390C (zh) 2007-12-21 2007-12-21 一种认证方法和认证系统

Publications (2)

Publication Number Publication Date
CN101232377A CN101232377A (zh) 2008-07-30
CN100589390C true CN100589390C (zh) 2010-02-10

Family

ID=39898575

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710303740A Active CN100589390C (zh) 2007-12-21 2007-12-21 一种认证方法和认证系统

Country Status (1)

Country Link
CN (1) CN100589390C (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101409622B (zh) * 2008-11-26 2012-10-31 飞天诚信科技股份有限公司 一种数字签名系统及方法
CN101635715B (zh) * 2009-05-31 2012-09-12 飞天诚信科技股份有限公司 提高网络应用安全性的方法和系统
CN103166924B (zh) * 2011-12-14 2017-11-03 中国银联股份有限公司 基于特征参数分析的安全性信息交互系统及方法
SG2013038278A (en) * 2013-05-16 2014-12-30 Fast And Safe Technology Private Ltd Authentication device and method
CN103346886B (zh) * 2013-07-01 2016-12-28 天地融科技股份有限公司 一种发送签名数据的方法和电子签名令牌
CN105450641A (zh) * 2015-11-13 2016-03-30 中国建设银行股份有限公司 验证方法、设备及系统
CN107172078B (zh) * 2017-06-27 2020-09-04 武汉蓝星软件技术有限公司 一种基于应用服务的核心框架平台的安全管控方法和系统
CN107995208B (zh) * 2017-12-15 2020-11-27 深圳市新格林耐特通信技术有限公司 基于掩码的ont认证方法及基于掩码的ont认证系统
CN108833541A (zh) * 2018-06-15 2018-11-16 北京奇安信科技有限公司 一种识别终端信息的方法及装置

Also Published As

Publication number Publication date
CN101232377A (zh) 2008-07-30

Similar Documents

Publication Publication Date Title
AU2021203184B2 (en) Transaction messaging
CN100589390C (zh) 一种认证方法和认证系统
CN101897165B (zh) 数据处理系统中验证用户的方法
CN102483779B (zh) 从id-令牌中读取属性的方法及其计算机系统
CN101848090B (zh) 认证装置及利用其进行网上身份认证与交易的系统与方法
JP6012125B2 (ja) 問い合わせ型トランザクションによる強化された2chk認証セキュリティ
CN102834830B (zh) 从id-令牌中读取属性的程序
CN100566254C (zh) 提高智能密钥设备安全性的方法和系统
US20160307194A1 (en) System and method for point of sale payment data credentials management using out-of-band authentication
CN100533459C (zh) 数据安全读取方法及其安全存储装置
CN105427099A (zh) 安全电子交易的网络认证方法
CN101221641B (zh) 一种联机交易的安全确认设备及联机交易方法
US9065806B2 (en) Internet based security information interaction apparatus and method
EP2690589A1 (en) Method and system for security information interaction based on internet
CN101340294A (zh) 一种密码键盘装置及其实现方法
CN101662469A (zh) 基于USBKey网上银行交易信息认证的方法和系统
US11569991B1 (en) Biometric authenticated biometric enrollment
CN101393628A (zh) 一种新型的网上安全交易系统和方法
WO2013074786A1 (en) Method and apparatus for trust based data scanning, capture, and transfer
CN101212301B (zh) 一种认证设备及认证方法
US20100005519A1 (en) System and method for authenticating one-time virtual secret information
EP2530868A1 (en) Method for generating an anonymous routable unlinkable identification token
CN105072136B (zh) 一种基于虚拟驱动的设备间安全认证方法和系统
EP3063920B1 (en) Method for setting up, via an intermediate entity, a secure session between a first and a second entity, and corresponding entities and computer program products
JP2008502045A (ja) 電子商取引の確保

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
C56 Change in the name or address of the patentee

Owner name: FEITIAN TECHNOLOGIES CO., LTD.

Free format text: FORMER NAME: BEIJING FEITIAN CHENGXIN TECHNOLOGY CO., LTD.

CP03 Change of name, title or address

Address after: 100085 Beijing city Haidian District Xueqing Road No. 9 Ebizal building B block 17 layer

Patentee after: Feitian Technologies Co.,Ltd.

Address before: 100083, Haidian District, Xueyuan Road, No. 40 research, 7 floor, 5 floor, Beijing

Patentee before: FEITIAN TECHNOLOGIES Co.,Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 17th floor, building B, Huizhi building, No.9, Xueqing Road, Haidian District, Beijing 100085

Patentee after: Feitian Technologies Co.,Ltd.

Country or region after: China

Address before: 100085 17th floor, block B, Huizhi building, No.9 Xueqing Road, Haidian District, Beijing

Patentee before: Feitian Technologies Co.,Ltd.

Country or region before: China