专利名称:电子银行认证方法,及采用该方法的系统和智能卡的制作方法
技术领域:
本发明涉及保密通信,具体地说涉及电子银行认证方法,采用该方法的电子银行认证系统和智能卡。
背景技术:
随着全球信息网络的建立和完善,电子银行的发展已经成为不可阻挡的潮流。为广大客户提供多渠道多形式的网络金融服务,大大突破和延伸了传统银行柜台业务。与传统银行业相比,电子银行具有极大的优势。首先,电子银行采用了全新的运营模式;其次,电子银行成本低、效率高。因此,它在全球的发展十分迅猛。然而,由于电子银行交易双方——银行与客户互不见面,使得这种交易既方便又存在一定的安全隐患。对于交易双方来说,信息传递的私密性、真实完整性和不可否认性都是影响交易安全的关键因素。
正是出于安全性和易用性的考虑,智能卡在近些年受到了金融行业的广泛应用。银行卡智能化的快速兴起主要来自这样几个方面的驱动力第一,智能卡跨行业应用越来越广泛;第二,现金交易逐渐减少;第三,信用卡欺诈活动日益猖獗;第四,全球智能卡支付系统日益普及。但是,目前对于智能卡的保护基本上是基于口令的方式。为了不遗忘口令,用户往往采用简单易记的口令,这就削弱了系统的安全性。同时,用户遗忘口令的现象也时有发生。并且,口令与用户的身份并不能绑定,获得口令的人都可以利用信用卡进行消费。
图1是一种现有技术的电子银行认证的流程图。
如图1所示,在步骤1,用户通过刷卡,输入帐户信息; 步骤2,用户从前台键盘输入帐户密码(口令),将用户密码(口令)送入后台服务器,实施认证过程; 步骤3,利用卡内的秘密k,与后台服务器通过认证协议进行认证; 步骤4,一旦认证通过就按照用户的合理意愿,完成合理交易。
这里,卡内的秘密k以两种情况存在(1)在对称密码环境中,k是智能卡与后台服务器的共享秘密;(2)在公钥密码环境中,k是用户私钥,相应的,在后台服务器,存有与此私钥对应的公钥证书。
图2是另一种现有技术的电子银行认证的流程图。
如图2所示,在步骤1,用户通过刷卡,输入帐户信息; 在步骤2,用户从前台键盘输入智能卡个人鉴别码(PIN码),启动智能卡; 在步骤3,利用卡内的秘密k,与后台服务器进行认证协议; 在步骤4,一旦认证通过就按照用户的合理意愿,完成合理交易。
显然,第二种现有技术的方案较第一种现有技术的方案合理,而且安全性要高。
在现有的技术中,IC卡和口令的组合实际就是启动银行业务的钥匙。然而,用户在设置口令的时候,往往以“生日”、“名字”,以及其他容易记忆的数字和/或字母组合作为口令。而且在用户输入口令的时候,可能遭遇摄像机的拍摄。因此,智能卡遗失后,用户帐户很可能被盗用。而且,原有系统的网络认证的趋势是采取较方便认证的公钥密码技术,但这需要银行建立公钥基础设施(PKI)以实现对数字证书的管理和使用。例如,我国的“中国人民银行”很多年前就投资开发了CA(数字证书)系统。但这更加繁琐且开销昂贵。
发明内容
本发明的目的是在不破坏原有系统的功能的基础上,增强系统的安全性,而且改进的新系统与原有系统可以完全兼容。
具体而言,在本发明方案中,引入了生物特征。生物特征的作用是双重的,既配合口令实施智能卡本地认证,又可利用生物特征实施远程网络认证。最终要求实现两个目标(1)智能卡本地认证不仅仅依靠口令,还要利用生物特征信息;(2)在与后台服务器进行的网络认证时,采用以生物特征为公钥的身份基密码技术,从而达到无需数字证书及其相应的而且昂贵的公钥基础设施的目的。
根据第一方面,本发明提供一种电子银行认证方法,包括利用系统私钥对生物特征信息为输入的第一函数值秘密签名,产生用户私钥;利用用户私钥对待签消息为输入的第二函数值签名;利用预先存储的生物特征信息和系统公钥对签名进行验证。
根据第二方面,提供一种电子银行认证系统,包括智能卡,对智能卡进行读写的具有终端的刷卡机,通过网络和刷卡机相连的服务器;刷卡机通过终端接收生物特征信息,利用系统私钥对生物特征信息为输入的第一函数值秘密签名,产生用户私钥,并且将用户私钥存入智能卡;智能卡利用用户私钥对待签消息为输入的第二函数值签名,并且将签名后的消息通过刷卡机发送给服务器;服务器利用预先存储的生物特征信息和系统公钥对签名进行验证。
根据第三方面,提供一种用于电子银行认证系统的智能卡,所述电子银行认证系统包括智能卡,对智能卡进行读写的具有终端的刷卡机,通过网络和刷卡机相连的服务器;所述智能卡存储有用户私钥,所述用户私钥由刷卡机利用系统私钥对生物特征信息为输入的第一函数值秘密签名而产生;智能卡利用用户私钥对待签消息为输入的第二函数值签名,并且将签名后的消息通过刷卡机发送给服务器,以便服务器利用预先存储的生物特征信息和系统公钥对签名进行验证。
本发明采用了基于生物特征的认证系统,不仅可以完成高效安全的电子交易,而且由于基于生物特征的特殊性,用户的身份与生物特征是唯一绑定的。这样即使他人获得智能卡,也无法完成认证操作。同时,用户也可以选择无需记忆任何口令的方式。由于我们采用了有效的身份基密码技术来实现网络认证,所以省略了开销昂贵的公钥基础设施建设。
下面将通过举例参照附图对本发明进行更详细的说明,图中 图1是一种现有技术的电子银行认证的流程图; 图2是另一种现有技术的电子银行认证的流程图; 图3是根据本发明的一种实施方案的电子银行认证的流程图。
具体实施例方式 图3是根据本发明的一种实施方案的电子银行认证的流程图。需要说明的是,在实施本发明的电子银行认证方法之前,用户需要向银行注册,将原始生物特征存入智能卡和后台服务器。另外,刷卡机中有系统私钥mk。
如图3所示,电子银行系统包括智能卡,具有前台终端的刷卡机,和后台服务器。后台服务器和刷卡机通过网络相连。
在步骤1,用户通过刷卡,输入帐户信息。
在步骤2,用户从前台键盘输入智能卡个人鉴别码(PIN码),以及输入生物特征,只有两者都匹配才能启动智能卡。
在步骤3,刷卡机利用系统私钥mk为用户生成与交易日期和生物特征对应的临时认证私钥tk,即用户私钥,然后将tk导入卡中。
在步骤4,刷卡机将用户的意愿按某种固定格式转换成消息m,利用导入智能卡中的tk对消息m进行基于身份的数字签名,并通过后台服务器存储的用户原始生物特征进行验证。
在步骤5,一旦验证通过就按照用户的意愿,完成合理交易。
在步骤6,将利用tk进行的基于身份的数字签名存入后台服务器,作为交易背书文件。背书文件可以在规定期限后销毁。
下文说明基于身份的具体数字签名算法。
根据本发明,基于身份的签名算法是由系统参数产生算法S、私钥提取算法Ext、签名算法Sig、验证算法Ver四个算法组成。这四个算法描述如下 系统参数产生算法S产生系统参数。
算法如下 步骤1系统随机生成两个大小不同且大小相近的大素数p和q,其中,p和q都是强素数。
步骤2计算n=pq和φ=(p-1)(q-1)。
步骤3选取整数e,1<e<φ,且e与φ互素。
步骤4使用扩展欧几里德算法计算满足ed≡1mod(φ)的唯一整数d,1<d<φ。这里,整数e和d是乘法逆元。需要说明,整数e和d也可以采用其它方式确定。
步骤5选取哈希函数。需要说明,其它的签名函数也是可行的。
步骤6系统公共参数为(n,e,H),私钥mk为d。系统公钥为e。
私钥提取算法Ext利用系统私钥对生物特征信息为输入的签名函数值秘密签名,产生用户私钥。
给定用户的生物特征信息ID∈{0,1}*和时间信息t,算法如下 步骤1计算PID=H(ID||t),其中||表示字符串的连接符。这里,生物特征信息是必要的输入。需要说明,生物特征信息和时间信息可以采用其它的组合方式,比如与、或的方式。
步骤2计算SID=(PID)dmod(n)。
步骤3SID就是生物特征信息ID和时间信息t对应的私钥tk。
签名算法Sig利用用户私钥对待签消息为输入的签名函数值签名。需要说明,这里的签名函数可以采用与私钥提取算法不同的签名算法。
对于待签的消息m,算法如下 步骤1随机选取整数r∈Zn。选取操作可以由随机数发生装置完成。
步骤2计算α=remod(n)。
步骤3计算h=H(m||α),其中||表示字符串的连接符。这里,待签消息是必要的输入。需要说明,待签消息和参数α之间可以采用其它的组合方式,比如与、或的方式。
步骤4计算β=(r·SID)hmod(n)。
步骤5(α,β)就是针对消息m的签名。
验证算法Ver利用预先存储的生物特征信息和系统公钥对签名进行验证。
对于签名(α,β),利用ID,t,验证算法如下 步骤1计算PID=H(ID||t) 步骤2计算h=H(m||α)。
步骤3验证βe=(α·PID)hmod(n)是否成立。如果成立,输出1表示接受这个签名,否则输出0,表示拒绝这个签名。
本发明可以在不改动原有系统架构的基础上增加系统的安全性。安全性的增强具体表现在生物特征信息的一举多用和可实现的、有效的、可证安全的身份基密码技术的应用。本发明的方案具有如下的特点(1)对智能卡的保护不仅仅依赖口令,而且利用生物特征识别;(2)生物特征信息作为用户的身份信息,利用可实现的、有效的、可证安全的身份基密码技术实现网络认证;(3)交易完成后的背书文件在网络认证时一次完成;(4)由于本发明利用生物特征作为用户的身份,利用身份基密码技术进行网络认证和数字签名,所以可以省去通常实现公钥密码算法所依赖的公钥基础设施的昂贵开销。
显而易见,在此描述的本发明可以有许多变化,这种变化不能认为偏离本发明的精神和范围。因此,所有对本领域技术人员显而易见的改变,都包括在本权利要求书的涵盖范围之内。
权利要求
1.一种电子银行认证方法,包括利用系统私钥对生物特征信息为输入的第一函数值秘密签名,产生用户私钥;利用用户私钥对待签消息为输入的第二函数值签名;利用预先存储的生物特征信息和系统公钥对签名进行验证。
2.如权利要求1所述的电子银行认证方法,其特征在于所述第一函数和/或第二函数是哈希函数。
3.如权利要求1所述的电子银行认证方法,其特征在于所述第一函数以生物特征信息和时间信息的组合为输入。
4.如权利要求1所述的电子银行认证方法,其特征在于利用用户私钥对待签消息为输入的第二函数值签名的步骤包括产生随机数,利用随机数处理用户私钥,以及利用处理后的用户私钥签名;所述方法包括利用系统公钥处理该随机数产生第一参数;所述签名验证的步骤基于所述第一参数进行。
5.如权利要求4所述的电子银行认证方法,其特征在于所述第二函数以待签消息和所述第一参数的组合为输入。
6.如权利要求1所述的电子银行认证方法,其特征在于所述系统公钥和系统私钥是乘法逆元。
7.如权利要求3或5所述的电子银行认证方法,其特征在于所述组合通过连接方式形成。
8.如权利要求1所述的电子银行认证方法,其特征在于包括将所述利用用户私钥对待签消息为输入的第二函数值签名的步骤中得到的签名存入后台服务器,作为交易背书文件。
9.一种电子银行认证系统,包括智能卡,对智能卡进行读写的具有终端的刷卡机,通过网络和刷卡机相连的服务器;
刷卡机通过终端接收生物特征信息,利用系统私钥对生物特征信息为输入的第一函数值秘密签名,产生用户私钥,并且将用户私钥存入智能卡;
智能卡利用用户私钥对待签消息为输入的第二函数值签名,并且将签名后的消息通过刷卡机发送给服务器;
服务器利用预先存储的生物特征信息和系统公钥对签名进行验证。
10.如权利要求9所述的电子银行认证系统,其特征在于智能卡包括随机数发生装置,用于产生随机数,智能卡利用随机数处理用户私钥,以及利用处理后的用户私钥签名,智能卡利用系统公钥处理该随机数产生第一参数;服务器基于所述第一参数进行签名的验证。
11.如权利要求9所述的电子银行认证系统,其特征在于所述刷卡机包括分别匹配智能卡个人鉴别码和输入生物特征,在两者都匹配的情况下启动智能卡的装置。
12.一种用于电子银行认证系统的智能卡,所述电子银行认证系统包括智能卡,对智能卡进行读写的具有终端的刷卡机,通过网络和刷卡机相连的服务器;
所述智能卡存储有用户私钥,所述用户私钥由刷卡机利用系统私钥对生物特征信息为输入的第一函数值秘密签名而产生;
智能卡利用用户私钥对待签消息为输入的第二函数值签名,并且将签名后的消息通过刷卡机发送给服务器,以便服务器利用预先存储的生物特征信息和系统公钥对签名进行验证。
13.如权利要求12所述的智能卡,其特征在于包括随机数发生装置,用于产生随机数,智能卡利用随机数处理用户私钥,以及利用处理后的用户私钥签名,智能卡利用系统公钥处理该随机数产生第一参数;服务器基于所述第一参数进行签名的验证。
全文摘要
本发明提供一种电子银行认证方法,采用该方法的电子银行认证系统和智能卡。所述电子银行认证系统包括智能卡,对智能卡进行读写的具有终端的刷卡机,通过网络和刷卡机相连的服务器;刷卡机通过终端接收生物特征信息,利用系统私钥对生物特征信息为输入的第一函数值秘密签名,产生用户私钥,并且将用户私钥存入智能卡;智能卡利用用户私钥对待签消息为输入的第二函数值签名,并且将签名后的消息通过刷卡机发送给服务器;服务器利用预先存储的生物特征信息和系统公钥对签名进行验证。
文档编号G07F19/00GK101101686SQ20061006148
公开日2008年1月9日 申请日期2006年7月3日 优先权日2006年7月3日
发明者曹珍富, 董晓蕾, 渊 周, 郑志彬, 位继伟 申请人:上海交通大学, 华为技术有限公司