专利名称:一种具有多因素认证方法的网络业务处理方法及系统的制作方法
技术领域:
本发明涉及网络业务处理领域,尤其涉及一种具有多因素认证方法的业务处理方法及系统。
背景技术:
目前通信网络覆盖全球,利用网络处理业务也在飞速发展之中,尤其是利用网络交易和网络支付活动,在日趋频繁的网络交易支付中,必须具备身份认证过程,以保证交易的安全性,常见的身份认证方法有下面几种一、静态口令验证;该认证方法为单因素认证,通常输入一组密码,尽量采用字母和数字符号相混合的方式提高口令强度,抵御词典式的攻击,还可以采用限制出错次数的方式提高口令强度。但是这种口令的安全程度还是不够,容易被猜出来,常用的攻击手段就是词典式攻击和偷窥。二、口令卡验证,其原理是在卡片上预置口令,根据给出的行号及列号找出对应的口令,属于双因素认证,这种口令认证的 缺点是安全度不高,口令集合少,容易被穷举和复制,无法防御中间人的攻击,对词典式攻击抵抗有限,常用的攻击手段有复印、偷窥和词典式攻击。三、动态口令验证;该验证方法是基于时间序列或事件序列的双因素验证,Token (令牌)结果参与业务交易,Token内置密钥,采用HASH或其他迭代算法计算,外部无法预测结果,但其安全程度还是较低,属于单向认证,及Token持有人无法验证服务器端,无法防止中间人/钓鱼网站攻击,常用的攻击手段就是钓鱼网站。具体可以参考公开号为CN101495956A的中国专利文献。四、普通USBKey验证;该验证方法是基于PKI (Public Key Infrastructure ,即公钥基础设施)体系的签名加密机制,对传输的数据进行加密和签名,可以防抵赖,安全芯片支撑底层安全,外部无法破解和预测结果,安全程度较高,可以支持双向认证,攻击人必须控制U盾之外的计算机设备,如PC,常用攻击手段有木马攻击寻找有漏洞的电脑,植入木马程序,记录密码,趁用户插入U盾交易后还未拔下之机,迅速登录网银并转走钱;与基于浏览器的文件型证书攻击方式相同。具体可以参考公开号为CN101770619A的中国专利文献;上述认证方法皆存在认证因素过少,认证手段容易被攻击的缺点。
发明内容
本发明的目的就是提供一种交易更加安全的、具有多因素认证方法的业务处理方法及系统。本发明提供一种具有多因素认证方法的网络业务处理方法,包括如下步骤
步骤I、业务操作终端I将业务操作请求发送到业务服务器2,业务操作请求中至少携
带有用户ID和核心操作信息;
步骤2、业务服务器2收到所述业务操作请求后,进行本地验证;如验证通过,则提取业务操作核心数据连同用户ID、用户ID已经绑定的硬件安全单元ID或已注册移动终端5的号码向安全平台服务器3递交安全验证请求,同时向业务操作终端I反馈输入验证信息的界面,进入步骤3 ;否则,不做处理或向业务操作终端I反馈不合法的提示信息;步骤3、安全平台服务器3收到验证请求后,将验证请求中的数据进行处理后打包发送到与用户对应的已注册移动终端5 ;
步骤4、移动终端5接收到安全平台服务器3发送的打包数据后,由硬件安全单元按照预定的格式拆包,并向手机显示屏显示关键信息,请求用户确认;
步骤5、用户确认后,硬件安全单元计算应答数,并将计算出的应答数通过手机明文显示给用户;
步骤6、用户在业务操作终端I上要求输入验证信息的页面中的输入框中输入应答数并确认,业务操作终端I将应答数发送到业务服务器2 ;
步骤7、业务服务器2把应答数发送到安全平台服务器进行验证;
步骤8、安全平台服务器3收到应答数后,进行验证,并将验证结果反馈给业务服务器
2 ;
步骤9、业务服务器2接收到安全平台服务器反馈的验证结果,并根据结果进行业务处理。作为另一优选方案,所述步骤I中业务服务器2不向业务操作终端I反馈输入验证信息的界面;且在步骤5中,用户确认后,硬件安全单元计算应答数,然后将应答数反馈到安全平台服务器3,进入步骤8。作为另一优选方案,所述步骤3中打包数据包括安全平台服务器通过预定的算法计算的挑战数,挑战数计算因子包括核心操作信息、用户ID、手机号码、服务器私密数据中的一个或几个的组合。作为另一优选方案,所有数据发送过程均采用加密传输。作为另一优选方案,所述步骤5中硬件安全单元计算应答数所用的种子包括当前OTP值、证书的签名信息、密钥信息及硬件信息中的一种或几种。本发明还提供一种具有多因素认证方法的网络业务处理系统,包括
业务操作终端,将业务操作请求发送到业务服务器2,业务操作请求中至少携带有用户ID和核心操作信息;用户在业务操作终端I上要求输入验证信息的页面中的输入框中输入应答数并确认,业务操作终端I将应答数发送到业务服务器2 ;
业务服务器,收到所述业务操作请求后,进行本地验证;如验证通过,则提取业务操作核心数据连同用户ID、硬件安全单元ID或已注册移动终端5的号码向安全平台服务器3递交安全验证请求,同时向业务操作终端I反馈输入验证信息的界面,否则,不做处理或向业务操作终端I反馈不合法的提示信息;把从业务操作终端接收的应答数发送到安全平台服务器进行验证;根据安全平台服务器反馈的验证结果进行业务处理;
安全平台服务器,收到验证请求后,将验证请求中的数据进行处理后打包发送到与用户对应的已注册移动终端;收到应答数后,进行验证,并将验证结果反馈给业务服务器2 ;
移动终端,接收到安全平台服务器3发送的打包数据后,由硬件安全单元按照预定的格式拆包,并向手机显示屏显示关键信息,请求用户确认;用户确认后,硬件安全单元计算应答数,并将计算出的应答数通过手机明文显示给用户。作为另一优选方案,所述业务服务器不向业务操作终端I反馈输入验证信息的界面;业务操作终端不向业务服务器发送应答数,业务服务器不向安全平台服务器发送应答数;所述移动终端在用户确认后,硬件安全单元计算应答数,然后将应答数反馈到安全平台服务器。作为另一优选方案,所述安全平台服务器打包的数据包括安全平台服务器通过预定的算法计算的挑战数,挑战数计算因子包括核心数据、用户ID、手机号码、服务器私密数据中的一个或几个的组合。作为另一优选方案,所述业务操作终端作为移动终端。作为另一优选方案,硬件安全单元计算应答数所用的种子包括当前OTP值、证书信息、密钥信息及硬件信息中的一种或几种。采用本发明的上述方案,网络业务处理将更加安全。通过以下结合附图对本发明优选实施方式的描述,本发明的其他特点、目的和效 果将变得更加清楚和易于理解。
图I为本发明系统结构示意 图2为本发明其中一个实施例流程 图3为本发明另一个实施例流程 在所有的上述附图中,相同的标号表示具有相同、相似或相应的特征或功能。
具体实施例方式参考图1,本发明的网络业务处理系统包括业务操作终端I、业务服务器2、安全平台服务器3、短信/网络接口 4和移动终端5。其中,业务操作终端I可以是ATM机、电话、PC (个人电脑)或移动终端如手机;业务服务器可以是与ATM机对应的银行业务服务器A、与电话对应的电话银行业务服务器B、与PC对应的网上银行业务服务器C、与手机对应的银行业务服务器D ;手机可以通过短息接口或者WAP网关与业务服务器D连接。安全平台服务器3与业务服务器连接,用于接收业务服务器发送的验证请求,并反馈,同时安全平台服务器3通过短信/网络接口 4与移动终端5连接,用于与移动终端5完成验证过程。移动终端5 (如手机)上带有硬件安全单元,硬件安全单元存储有硬件信息、用户ID、证书、密钥、OTP (动态口令)算法及OTP因子、挑战应答计算公式等,硬件安全单元可以是安全SM卡、安全SD卡、贴片卡、安全TF卡、MTM (Mobile Trusted Module移动可信模块)等。硬件信息如硬件安全单元ID ;证书如CFCA证书;密钥系统内置的加密密钥、会话密钥等;0ΤΡ因子如0ΤΡ计算公式和当前OTP因子,OTP计算公式可以采用开放认证项目(OATH)联盟推广的HOTP算法,OTP因子可以有时间因子;应答数的计算方法可以是从安全平台服务器接收到的挑战数、OTP 口令或某个OTP因子、硬件安全单元ID、证书的签名信息中的一个或几个的组合通过HASH算法、Des算法或其他迭代算法计算出应答数。下面结合流程图详细说明本发明的业务处理及验证过程。参见图2,本发明的业务处理及验证过程如下
步骤I、用户在业务操作终端I操作业务时,如ATM,电话银行,网银,WAP银行,短信银行;用户在业务操作终端I显示的由业务服务器2或相应的网关提供的界面上选择并确定业务操作(操作过程中可以输入密码也可不输入),业务操作终端I将业务操作请求发送到业务服务器2,业务操作请求中携带有用户ID、和核心操作信息,如金融领域的用户ID、转入/转出账号、操作金额等,还可以包括动态口令;
步骤2、业务服务器2收到所述业务操作请求后,进行本地验证;验证用户业务信息的合法性,例如验证核心操作信息中的内容是否合法,动态口令是否合法,例如金融领域中,验证核心操作信息中的账户是否合法,操作金额是否合法等,如验证通过,则提取业务操作核心数据(如金融领域中的账号信息、操作方式及操作金额等,例如转出账户向转入账户转款100元);连同用户ID、用户ID已经绑定的硬件安全单元ID或已注册移动终端5的号码向安全平台服务器3递交安全验证请求,同时向业务操作终端反馈输入验证信息的界面,进入步骤3。否则,不做处理或向业务操作终端I反馈不合法的提示信息。如果业务操作终端I为手机,采用WAP方式操作业务,则业务操作终端I的操作页面为WAP网关根据业务服务器2的指示提供,首先业务操作终端I将业务操作请求发送到WAP网关,WAP网关转发该请求到业务服务器。业务服务器收到所述业务操作请求后,验证用户业务信息的合法性,如合法,则提取部分核心数据,连同用户ID、用户ID已经绑定的硬件安全单元ID或手机号码向安全平台服务器递交安全验证请求。 步骤3、安全平台服务器3收到验证请求后,将验证请求中的数据进行处理后打包发送到与用户对应的已注册移动终端5 ;安全平台服务器3收到验证请求后,提取用户ID,查找到对应的用户注册的移动终端(手机)号码,(手机号码也可以是在验证请求中由业务服务器2在验证请求中传递过来的,业务服务器2获得用户注册的手机号码的方式,可以是业务操作终端I提交业务操作请求时携带给业务服务器2,也可以是业务服务器本地存储了用户注册的手机号码,收到业务操作请求后根据请求消息中的用户ID查找对应的手机号码),将核心操作信息(例如“转入账户+转出账户+100元,,)打包后发送到用户ID所对应的手机号码;打包方法按照特定格式裁剪、组装和加密数据;发送方式可以是通过加密短信、USSD或TCP/IP进行发送;
作为另一个优先替代方案,安全平台服务器3收到验证请求后,提取用户ID,查找到对应的用户注册手机号码(如果手机号码能够从业务服务器获得,则不用再查找手机号码),并查找事先存储的挑战数计算因子,安全平台服务器通过预定的算法,利用用户计算因子计算挑战数,用户计算因子例如核心操作信息(转出账户、转入账户、金额)、用户ID、手机号码、服务器私密数据(该服务器私密数据为服务器自身生成,外部保密)等中的一个或几个的组合,组合形式有相加、相减等,算法可以是HASH算法、Des算法或其他迭代计算方法;挑战数计算完成后,安全平台服务器将核心操作信息和挑战数一同进行打包;通过加密短信、USSD (Unstructured Supplementary Service Data 非结构化补充数据业务)或 TCP/IP发送到用户ID对应的注册手机号码;
步骤4、移动终端5接收到安全平台服务器3发送的打包数据后,由硬件安全单元按照预定的格式拆包,如果是加密数据,则先进行解密,然后拆包;并向手机显示屏显示核心操作信息,如金融领域的“XX账户向YY账户转款100元”,又如网路数据操作领域的“将XX文件拷贝/删除/替换”或者“运行XX程序、启动YY设备”等,并请求用户确认;
步骤5、用户确认后(用户确认可以使用YSE or NO形式或PIN确认或签名确认等等形式,这些常用技术手段这里就不细说),硬件安全单元计算应答数,并将计算出的应答数通过手机明文显示给用户;应答数计算方法为将从安全平台服务器3收到的数据包拆包后的信息作为计算的种子,采用预定的算法进行计算获得应答数;作为另一个优选实施例,用于计算应答数的种子还可以增加其它因子,例如当前OTP值、证书信息、密钥信息、硬件信息、等中的一种或几种;
步骤6、用户看到移动终端5上显示的应答数后,在业务操作终端I上要求输入验证信息的页面中的输入框中输入应答数并确认,业务操作终端I将应答数发送到业务服务器2 ;步骤7、业务服务器2把应答数发送到安全平台服务器进行验证;
步骤8、安全平台服务器3收到业务服务器2发送的应答数后,进行验证,并将验证结果反馈给业务服务器2 ;安全平台服务器3采用与移动终端5中硬件安全单元相同的方法计算应答数,将接收到的应答数与计算出的应答数进行比较,如果一致,说明合法,如果不一致,说明不合法;
步骤9、业务服务器2接收到安全平台服务器反馈的验证结果,并根据结果进行业务处理;如果合法,则执行业务操作,如果不合法,则向业务操作终端I反馈不合法提示信息;
本发明中,如果业务操作终端为移动终端例如手机,则业务操作终端I可以就是移动 终端5。作为另一优先实施例,验证过程与业务操作终端I无关,硬件安全单元计算出应答数后直接加密的或者明文的将应答数反馈给安全平台服务器,安全平台服务器3验证应答数,并把验证结果发送到业务服务器2,业务服务器2根据验证结果进行相应处理。如图3所示,具体流程如下
步骤I、用户在业务操作终端I操作业务并确定业务操作,业务操作终端I将业务操作请求发送到业务服务器2,业务操作请求中携带有用户ID、转入/转出账号、操作金额等,还可以包括动态口令;
步骤2、业务服务器2收到所述业务操作请求后,进行本地验证;验证用户业务信息的合法性,如验证通过,则提取部分核心数据连同用户ID、硬件安全单元ID或手机号码向安全平台服务器3递交安全验证请求;否则,不做处理或向业务操作终端I反馈不合法的提示信息。步骤3、安全平台服务器3收到验证请求后,将从业务服务器2收到的数据进行处理后打包发送到对应的移动终端5 ;这里的处理同样可以是提取信息,也可以是提取信息后添加一些其它作为挑战数的信息,当然,提取的信息里面包含业务操作请求的核心数据,供移动终端5显示给用户确认;更加优选的方案是,将一部分信息按照预定的算法进行计算获得一个值;然后直接作为挑战数与提取的核心数据一起打包发送;
步骤4、移动终端5接收到安全平台服务器3发送的打包数据后,由硬件安全单元按照固定的格式拆包,如果是加密数据,则先进行解密,然后拆包;并向手机显示屏显示核心操作信息,如“XX账户向XX账户转款100元”,并请求用户确认;
步骤5、用户确认后(用户确认可以使用YSE or NO形式或PIN确认或签名确认等形式,这些常用技术手段这里就不细说),硬件安全单元计算应答数,然后将应答数反馈到安全平台服务器3 ;应答数计算方法为将从安全平台服务器3收到的数据包拆包后的其中一些或全部信息作为计算的种子,采用预定的算法进行计算获得应答数;
作为另一个优选实施例,用于计算应答数的种子还可以增加其它因子,例如当前OTP值、证书信息、密钥信息、硬件信息、等中的一种或几种;
步骤6、安全平台服务器3收到应答数后,进行验证,并将验证结果反馈给业务服务器2 ;安全平台服务器3采用与移动终端5中硬件安全单元相同的方法计算应答数,将接收到的应答数与计算出的应答数进行比较,如果一致,说明合法,如果不一致,说明不合法;
步骤7、业务服务器2接收到安全平台服务器反馈的验证结果,并根据结果进行业务处理;如果合法,则执行业务操作,如果不合法,则向业务操作终端I反馈不合法提示信息;作为另一个实施例,步骤3中的挑战数的计算不是必须的。 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人 员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.一种具有多因素认证方法的网络业务处理方法,包括如下步骤 步骤I、业务操作终端(I)将业务操作请求发送到业务服务器(2),业务操作请求中至少携带有用户ID和核心操作信息; 步骤2、业务服务器(2)收到所述业务操作请求后,进行本地验证;如验证通过,则提取业务操作核心数据连同用户ID、用户ID已经绑定的硬件安全单元ID或已注册移动终端(5)的号码向安全平台服务器(3)递交安全验证请求,同时向业务操作终端(I)反馈输入验证信息的界面,进入步骤3 ;否则,不做处理或向业务操作终端(I)反馈不合法的提示信息;步骤3、安全平台服务器(3)收到验证请求后,将验证请求中的数据进行处理后打包发送到与用户对应的已注册移动终端(5); 步骤4、移动终端(5)接收到安全平台服务器(3)发送的打包数据后,由硬件安全单元按照预定的格式拆包,并向手机显示屏显示关键信息,请求用户确认; 步骤5、用户确认后,硬件安全单元计算应答数,并将计算出的应答数通过手机明文显示给用户; 步骤6、用户在业务操作终端(I)上要求输入验证信息的页面中的输入框中输入应答数并确认,业务操作终端(I)将应答数发送到业务服务器(2); 步骤7、业务服务器(2)把应答数发送到安全平台服务器进行验证; 步骤8、安全平台服务器(3)收到应答数后,进行验证,并将验证结果反馈给业务服务器⑵; 步骤9、业务服务器(2)接收到安全平台服务器反馈的验证结果,并根据结果进行业务处理。
2.根据权利要求I所述的一种具有多因素认证方法的网络业务处理方法,其特征在于,所述步骤I中业务服务器(2)不向业务操作终端(I)反馈输入验证信息的界面;且在步骤5中,用户确认后,硬件安全单元计算应答数,然后将应答数反馈到安全平台服务器(3),进入步骤8。
3.根据权利要求I或2所述的一种具有多因素认证方法的网络业务处理方法,其特征在于,所述步骤3中打包数据包括安全平台服务器通过预定的算法计算的挑战数,挑战数计算因子包括核心操作信息、用户ID、手机号码、服务器私密数据中的一个或几个的组合。
4.根据权利要求I或2所述的一种具有多因素认证方法的网络业务处理方法,其特征在于,所有数据发送过程均采用加密传输。
5.根据权利要求I或2所述的一种具有多因素认证方法的网络业务处理方法,其特征在于,所述步骤5中硬件安全单元计算应答数所用的种子包括当前OTP值、证书的签名信息、密钥信息及硬件信息中的一种或几种。
6.一种具有多因素认证方法的网络业务处理系统,包括 业务操作终端,将业务操作请求发送到业务服务器(2),业务操作请求中至少携带有用户ID和核心操作信息;用户在业务操作终端(I)上要求输入验证信息的页面中的输入框中输入应答数并确认,业务操作终端(I)将应答数发送到业务服务器(2); 业务服务器,收到所述业务操作请求后,进行本地验证;如验证通过,则提取业务操作核心数据连同用户ID、硬件安全单元ID或已注册移动终端(5)的号码向安全平台服务器3递交安全验证请求,同时向业务操作终端I反馈输入验证信息的界面,否则,不做处理或向业务操作终端(I)反馈不合法的提示信息;把从业务操作终端接收的应答数发送到安全平台服务器进行验证;根据安全平台服务器反馈的验证结果进行业务处理; 安全平台服务器,收到验证请求后,将验证请求中的数据进行处理后打包发送到与用户对应的已注册移动终端;收到应答数后,进行验证,并将验证结果反馈给业务服务器(2); 移动终端,接收到安全平台服务器3发送的打包数据后,由硬件安全单元按照预定的格式拆包,并向手机显示屏显示关键信息,请求用户确认;用户确认后,硬件安全单元计算应答数,并将计算出的应答数通过手机明文显示给用户。
7.根据权利要求6所述的一种具有多因素认证方法的网络业务处理系统,其特征在于, 所述业务服务器不向业务操作终端(I)反馈输入验证信息的界面;业务操作终端不向业务服务器发送应答数,业务服务器不向安全平台服务器发送应答数;所述移动终端在用户确认后,硬件安全单元计算应答数,然后将应答数反馈到安全平台服务器。
8.根据权利要求6或7所述的一种具有多因素认证方法的网络业务处理系统,其特征在于,所述安全平台服务器打包的数据包括安全平台服务器通过预定的算法计算的挑战数,挑战数计算因子包括核心数据、用户ID、手机号码、服务器私密数据中的一个或几个的组合。
9.根据权利要求6或7所述的一种具有多因素认证方法的网络业务处理系统,其特征在于,所述业务操作终端作为移动终端。
10.根据权利要求6或7所述的一种具有多因素认证方法的网络业务处理系统,其特征在于,硬件安全单元计算应答数所用的种子包括当前OTP值、证书信息、密钥信息及硬件信息中的一种或几种。
全文摘要
本发明公开了一种具有多因素认证方法的网络业务处理方法及系统,业务操作终端将业务操作请求发送到业务服务器,业务服务器收到所述业务操作请求后,进行本地验证;验证通过,向安全平台服务器递交安全验证请求,安全平台服务器收到验证请求后,进行处理后发送到与用户对应的移动终端;移动终端接收到数据后,计算并将其明文显示给用户;用户在业务操作终端上输入应答数并确认,业务操作终端将应答数发送到业务服务器;业务服务器把应答数发送到安全平台服务器;安全平台服务器收到应答数后验证,将验证结果反馈给业务服务器;业务服务器接收到反馈的验证结果,并根据结果进行业务处理。本发明的方案使得网络业务处理更加安全。
文档编号H04L29/06GK102780674SQ20111011801
公开日2012年11月14日 申请日期2011年5月9日 优先权日2011年5月9日
发明者邹勇 申请人:同方股份有限公司