基于小模数数字签名和可信平台模块的银行支票防伪方法技术

技术编号:4255117 阅读:382 留言:0更新日期:2012-04-11 18:40
基于小模数数字签名和可信平台模块的银行支票防伪方法,属于密码技术和可信计算技术领域;本发明专利技术使得支票的不可伪造性与公钥数字签名方案的安全性相对应,包括密钥生成、数字签名、数据传输和身份验证四个部分;其中,密钥生成部分用来生成客户的一对私钥和公钥,数字签名部分用来产生签名码,数据传输部分用来接收待验证数据和返回验证结果,身份验证部分用来鉴定客户的身份和签名码是否有效;该方法安全性高、成本低、可防止银行内部人员作案、可取代单位或私人印章、把客户的提货等待时间降至几乎为零,可广泛应用于商业银行支票业务中。

【技术实现步骤摘要】

属于密码技术和可信计算技术 领域,是信息安全的核心技术之一。(二)
技术介绍
数字签名算法是公开密钥密码技术的一种,可用于计算机中或互联网(Internet)上数据 文件的签名,其目的是防止发送方假冒他人身份进行数据传输或对传输数据进行抵赖,因此, 数字签名具有抗抵赖性和可鉴别性。其过程是这样的,用户先得到数据文件或消息的Hash摘要,然后用自己的私钥与Hash 摘要运算,就生成了签名码。任何人可以对签名码进行验证,因为该用户的公钥是公开的。 验证时,验证者也是先得到同一个数据文件或消息的Hash摘要,然后,用该用户的公钥与 Hash摘要运算,看结果是否满足某一预先设定的判别式。可信平台模块(Trsuted Platform Module, TPM)是一个硬件芯片,可用于计算机、手机 和个人数字助理等设备中,利用可信根和可信链等来加强设备的可信计算功能。TPM内含计 算引擎、密码协处理器、寄存器和存储器等组件,其中,非易失性存储器可贮存一定量的保 密数据,以保证这些重要的数据不会被外界非授权用户获得。转帐支票或现金支票是银行客户常用的一种支付手段。但作为一次性支付介质,对它没 有严格的物理或光学防伪措施。目前,对支票的防伪主要包括三种措施①特殊而又简易的 物理印制(银行不可能花大价钱来对一次性介质施加物理和光学防伪措施);②单位或个人签 章;③支付密码。实际情况告诉我们前两者容易被假冒,商家不会轻易相信。第三者虽然采用了密码技术,却是对称密码技术,且主要用于直接与银行打交道的支票,例如现金支票, 因为只有银行才肯花价钱购买一种专门的验证机器和软件,即全国支票影像交换系统就是这种验证系统(参见中国人民银行,全国支票影像交换系统业务处理办法,2007年)。凭借这个系统,提入行可以采用印鉴核验方式或支付密码核验方式对支票影像信息进行 付款确认。支票影像信息通过扫描或数码照相输入系统。传统的手工比较印鉴(印章)也采用 了计算机比较。支付密码也称为变码印鉴,其基本原理是出票时,银行客户在专有的硬件或者软件上, 输入金额、账号、票号、日期等信息,计算出一个数码,填写在票据上作为出票依据。配套 的C0M组件提供了基于256位密钥AES的支付密码(参见中国人民银行,全国支票影像交 换系统业务处理办法,2007年)。不过,256位的AES支付密码是相当长的,即使采用64进 制表示,也高达43个字符,对于手工填写还是不方便的。因为一般的大小商家(包括超市、商场、餐馆、宾馆、饭店等)不愿意掏钱购买支票影 像交换系统,因此,当顾客在这些场所购买商品或消费时,往往要等约一个星期支票到款后 才能提货、或者被要求付现金。这极大地妨碍和影响了个人或企业转帐支票的推广和使用。
技术实现思路
如果把公钥签名技术用到网下、用于支票防伪,那么支票的安全性就能和公钥算法的安全性等价,就能从根本上解决支票造假和可信问题。然而,现在常用的数字签名算法,例如RSA和ECC,因模数太大而没有实用价值。 假设签名码用64进制表示(即6位比特用一个字符来代替)。字符包括数字0、... 、 9, a、...、z, A、 ...、 Z,这些字符个数为26 x2+ 10 = 62。因为字母o、 O与数字0容易混淆,因此,用+、-取代字母o、 O,另外,再添加字符*、 \,这样,刚好凑齐64个字符。这些字符都可以从手机上输入。如果采用1024比特的RSA算法(其安全性相当于0(28())指令数,运算时间为0(236)MPS 年),则签名码的长度为1024比特,其64进制长度为171个字符。显然,验证时手工录入171 个字符是不现实的。如果采用160比特的ECC算法(其安全性等价于1024比特的RSA),则 签名码的长度为4 x 160比特,其64进制长度为108个字符。显然,这个长度对于手工录入 来讲仍然过长。注意,支票作为一种一次性支付手段不可能被嵌入IC芯片来存储签名码。2006年,我们提交了专利技术申请一种基于超对数难题和双同余定理的数字签名方法(申 请号为200610145647.9,简称为REESSEl+签名方案)。这是一种完全原始创新的公钥签名方 法,与常用的RSA和ECC相比,它有一个优势,即模数的长度可以降低到与明文分组的长 度w相等,而安全性可以维持在0(2)。本专利技术利用小模数REESSEl+签名方案和可信计算技术设计了一种用于银行支票防伪的 安全方法,签名与验证均快捷、方便、不需要额外成本,可以极大促进银行支票在个人和企 业间的流通和使用。3.1 REESSEl+签名的小模数化REESSEl+是一个多变量、多难题公钥体制,多变量排列组合难题保证了私钥的安全性、 子集模乘积难题保证了加密的安全性、超对数难题保证了数字签名的安全性。 所谓小模数化就是把模数长度尽可能降低,且不影响体制的安全性。如果REEssEi+只用于数字签名,则密钥生成算法中的约束M〉n;^M,i可以去掉,从而,模数长度可以降至个比特,但而安全性仍保持在0(2),这里,w 80或>80。可以进一 步分析,参数么£>、 r的大小并不影响体制的安全性。例如,当=78时,签名码为2x78 比特,其64进制字符为26个,仅比身份证多8个字符,达到了实用的长度。在支票防伪方法中,还可以选择=84、 90或96,此时,签名码的第一个参数做适当选 择,使之满足一定的压縮比例,从而保证签名码的长度不大于26个字符。3.2支票防伪的密钥生成部分本部分供银行总部使用,用于生成顾客的一对私钥和公钥。(1) 设置参数=78、 84、 90或96,(2) 让客户输入企业代码或个人身份证号,(3) 调用REESSEl+密钥生成模块,得到一对私钥和公钥,(4) 如果是企业客户,则把私钥写入一块TPM中, 如果是个人客户,则把私钥写入一个USB闪存中,(5) 公钥存于银行验证数据库中,与企业代码或身份证号相对应。注意,存储公钥的数据库可以存放在一台连入互联网的计算机中,以便商家能够通过互 联网来验证签名码。3.3支票防伪的数字签名部分本部分供企业或个人客户使用,是根据银行支票的票面信息生成和输出64进制签名码(其 长度小于26字符)。(1) 输入支票号、金额和日期等三项,(2) 以私钥、支票号、金额和日期作为参数,调用REESSEl+数字签名模块, 得到签名码,(3) 如果是企业客户,则把企业代码、金额、日期连同签名码打印到支票上, 如果是个人客户,则把身份证号、金额、日期连同签名码书写到支票上。注意,现在有专门的支票打印机,它可以直接连到计算机上。个人客户一般不会购买这种打印机,因此,需把有关信息用手书写到支票上,须工整。 有了签名码后,企业或个人的印章可有可无,因为签名码本身就是一个印章, 一个数字 印章。为了方便个人客户随时随地用支票支付,将来,数字签名码的产生可通过手机进行。3.4支票防伪的数据传输部分本部分供商家在验证签名时使用,它接收来自商家的签名码、并回传来自银行总部的验 证结果。(1) 输入企业代码或个人身份证号、支票号、金额、日期、签名码等信息 到连网计算机或手机中、按发送钮或发送号码,(2) 银行数据收发器收到相关信息后,应马上把信息转至验证模块,(3) 验证模块运算本文档来自技高网
...

【技术保护点】
基于小模数数字签名和可信平台模块的银行支票防伪方法,由支票防伪的密钥生成、支票防伪的数字签名、支票防伪的数据传输和支票防伪的身份验证等四个部分组成,其中,密钥生成部分供银行用来生成客户的一对私钥和公钥,数字签名部分供客户用来产生签名码,数据传输部分供银行用来接收待验证数据和返回验证结果,身份验证部分供银行用来鉴定客户的身份和签名码是否有效,其特征在于    .支票防伪的密钥生成部分采用了下列步骤:    (1)设置参数n=78、84、90或96,    (2)让客户输入企业代码或个人身份证号,    (3)调用REESSE1+密钥生成模块,得到一对私钥和公钥,    (4)如果是企业客户,则把私钥写入一块TPM中,    如果是个人客户,则把私钥写入一个USB闪存中,    (5)公钥存于银行验证数据库中,与企业代码或身份证号相对应;    .支票防伪的数字签名部分采用了下列步骤:    (1)输入支票号、金额和日期等三项,    (2)以私钥、支票号、金额和日期作为参数,调用REESSE1+数字签名模块,得到签名码,    (3)如果是企业客户,则把企业代码、金额、日期连同签名码打印到支票上,如果是个人客户,则把身份证号、金额、日期连同签名码书写到支票上;    .支票防伪的数据传输部分采用了下列步骤:    (1)输入企业代码或个人身份证号、支票号、金额、日期、签名码等信息到连网计算机或手机中、按发送钮或发送号码,    (2)银行数据收发器收到相关信息后,应马上把信息转至验证模块,    (3)验证模块运算后把结果“真”或“假”返回给数据收发器,    (4)数据收发器通过互联网或无线网把结果传至商家;    .支票防伪的身份验证部分采用了下列步骤:    (1)收存企业代码或个人身份证号、支票号、金额、日期、签名码等信息,    (2)根据企业代码或个人身份证号从公钥库中找到相对应的公钥,    (3)利用公钥、支票号、金额、日期、签名码作为参数调用REESSE1+身份验证模块,并得到“真”或“假”的结果,    (4)把结果返回给数据收发器。...

【技术特征摘要】
1、基于小模数数字签名和可信平台模块的银行支票防伪方法,由支票防伪的密钥生成、支票防伪的数字签名、支票防伪的数据传输和支票防伪的身份验证等四个部分组成,其中,密钥生成部分供银行用来生成客户的一对私钥和公钥,数字签名部分供客户用来产生签名码,数据传输部分供银行用来接收待验证数据和返回验证结果,身份验证部分供银行用来鉴定客户的身份和签名码是否有效,其特征在于·支票防伪的密钥生成部分采用了下列步骤(1)设置参数n=78、84、90或96,(2)让客户输入企业代码或个人身份证号,(3)调用REESSE1+密钥生成模块,得到一对私钥和公钥,(4)如果是企业客户,则把私钥写入一块TPM中,如果是个人客户,则把私钥写入一个USB闪存中,(5)公钥存于银行验证数据库中,与企业代码或身份证号相对应;·支票防伪的数字签名部分采用了下列步骤(1)输入支票号、金额和日期等三项,(2)以私钥、支票号、金额和日期作为参数...

【专利技术属性】
技术研发人员:苏盛辉沈昌祥吕述望李健蔡永泉张兴
申请(专利权)人:北京工业大学苏盛辉沈昌祥
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1