CN103714626A - 多密码预警式可异卡控制银行卡 - Google Patents

多密码预警式可异卡控制银行卡 Download PDF

Info

Publication number
CN103714626A
CN103714626A CN201310174989.3A CN201310174989A CN103714626A CN 103714626 A CN103714626 A CN 103714626A CN 201310174989 A CN201310174989 A CN 201310174989A CN 103714626 A CN103714626 A CN 103714626A
Authority
CN
China
Prior art keywords
card
data
password
code
bank
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.)
Granted
Application number
CN201310174989.3A
Other languages
English (en)
Other versions
CN103714626B (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.)
Suzhou yifanghua Intellectual Property Operation Co., Ltd
Original Assignee
汪风珍
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 汪风珍 filed Critical 汪风珍
Priority to CN201310585474.2A priority Critical patent/CN103679932B/zh
Priority to CN201310585527.0A priority patent/CN103632439B/zh
Priority to CN201310174989.3A priority patent/CN103714626B/zh
Priority to CN201310585475.7A priority patent/CN103632297B/zh
Priority to CN201310585608.0A priority patent/CN103927824B/zh
Publication of CN103714626A publication Critical patent/CN103714626A/zh
Application granted granted Critical
Publication of CN103714626B publication Critical patent/CN103714626B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

多密码预警式可异卡控制银行卡利用银行卡带有的可读写数据作为连接程序中的数据表连接路径变量,选择性的从程序中调用数据参与密码的合成,其采用的终端合成密码经过引进字符串,截取字符串,进制转换,字码转换,重新排序,部分字符替代等加密方法,这种密码只需要银行卡提供很少的几个数据,就利用终端计算机设备获得了复杂的密码,它同时具备隐形卡号,隐藏或扫描的数据防止银行卡的复制,其采用的异卡控制技术可以提前预防银行卡或密码被他人掌握的情况下对银行卡交易过程进行部分控制,此外,它提供了几种预警模式保障银行卡资金或持卡人人身安全,将部分电信安全技术与银行卡技术结合,也提供了部分计算机商业服务方法的资金防范措施。

Description

多密码预警式可异卡控制银行卡
一:所属领域:本发明属于银行卡的软硬件技术。
二:背景技术:下面先介绍常用的银行卡硬件产品及大致原理,
A:目前绝大部分银行卡是磁卡(磁条卡,Magnetic Card),磁卡是电子凭据,用来证明卡主身份,磁条是利用磁性材料加树脂固化成的记忆体,它是利用电磁感应现象进行工作的,简单说,写信息就是利用电信号获得磁信号,读信息就是利用磁信号获得电信号,S、N极和二进制的0和1存在着对应关系,磁条就是利用S、N极的排列的不同代表不同的信息,磁条信息只能一次写入的就是只读磁道,能够多次改写信息的,就是读写磁道(RW磁道),一般银行卡分三个磁道,第一磁道为只读磁道,79字节,7bit1字节,可以存贮数字和字母等,第二磁道为只读磁道,40字节,5bit1字节,一般存贮数字,第三磁道为RW磁道,107字节,5bit1字节,一般存贮数字,一般银行卡写入的是身份证号码,银行账号等信息,由于磁条易于复制,所以磁卡都必须借助服务器对交易进行控制,磁卡写入的是静态数据,第三磁道都没有写入内容,不同的磁卡则第一,第二磁道使用有别,磁卡三个磁道都是可用的,其中4bit或6bit表示具体字符,另外1bit为效验码(以上摘自百度文库wap版,作者leely009);
B:一种比较新式的目前央行重点推广的升级银行卡是PBOC2.0标准的IC卡(芯片卡),以及芯片磁条复合卡,它暂时与EMV不兼容,芯片卡是一台微型计算机,它内置微处理器,可以对持卡人输入的密码等数据进行加密,IC卡是一个复杂的集成电路,技术含量更高,制造成本也更高,IC卡按使用原理可分为接触式与非接触式,非接触式IC卡是利用L-C电路或者是压电效应等谐振电路由读卡机的谐振模块作用获得需要的电源,其他原理差不多,IC卡内置了密钥,数字证书,生物密码比方说指纹等;
C:U-key,我们一般称U盾,U盾采用1024位非对称密钥算法,它同金融IC卡一样内置微处理器,和接触式IC卡原理相近,U盾用于网上银行;
D:存折,目前使用的存折也是基于磁条原理的,只有部分柜员机支持存折读取;
E:广佛通或羊城通,这类地方发行的充值卡也是金融IC卡,但是它们是脱机交易方式,一般用于公交,地铁等小额支付;
F:此外,一些芯片制造厂商和国家有关部门对电话卡与IC卡合二为一感兴趣,这很可能是未来的手机银行的发展趋势,
从技术原理看,就是磁条原理与集成电路(即微型计算机原理)两大类银行卡技术,后者有取代前者的趋势,下面对这两大类技术进行比较:
1:方便性:二者差不多,但是磁卡无法用于网上银行与手机银行,应用有局限;
2:稳定性:接触式IC卡的使用寿命可能更短,主要是触点的自然氧化或是油污带来的读取数据困难,手机卡内置都会有接触不良问题,外置的银行卡触点和柜员机的相关部分可能很难保证不出这方面的问题;
3:数据窃取,如果是基于非接触式的IC卡,在比较拥挤的场合,会不会别人利用微型设备盗取资料,接触式IC卡和磁卡不存在这个问题;
4:防病毒:磁卡既不会感染病毒,也无法制造和传播病毒,IC卡就存在这个可能,黑客可能利用IC卡恶意制造病毒和通过柜员机等传播病毒;
5:产品费用比较,费用可以分产品本身的费用,以及网络改造与维护的费用,磁卡类产品在这方面占有绝对的优势,这也是IC卡PBOC2.0标准颁布8年来,却一直推广不顺的原因,产品升级包括网络升级的费用谁出,是一个现实的问题,
这里的比较是申请人参考相关网页获得的,不过,IC卡的安全性申请人认为存在夸大的成分,而基于磁卡原理的产品又存在银行卡支付系统设计不完善,导致二者的安全性形成了比较大的对比,申请人依据相关编程原理具体分析这一问题的原因,
无论是任何银行卡,只要是在线交易,都是基于密码与卡号或账号(包括其他的一些同步发送的数据)的一致性利用服务器进行身份验证或者是反向验证,这样,所有的同一类型的银行卡支付终端(本说明书涉及的支付终端既包括实体终端比方柜员机,银行电脑等,也包括虚拟终端,虚拟终端就是一个软件,用户下载后安装在电脑或手机上,其实,实体终端与虚拟终端都是软件控制交易过程,只是物理部件的归属以及操作权限的差别)必须计算出相同的数据,才能保证发送到服务器端的数据一致,而从编程原理看,无论是基于B/S(即浏览器端/服务器端)或C/S(即客户端/服务器端),长途通信线路的加密都是很难做到的,一般都是采用终端加密,传输的是加密数据,这些很多时候都依赖密码技术,我们可以把IC卡或者是U盾之类的银行卡密码称为硬件密码,而通过软件算法的MD5之类的密码称为软件密码,磁卡的银行卡密码就是一种软件密码,
这里引进一个术语,常量与变量,对于银行卡密码而言,我们选择时它是一个变量,6位数字,每一位都可以选择0到9,有1百万种选择,别人猜解密码时,一次只有百万分之一的可能,一日猜解超过3次,系统就会锁卡,也就是说,通过这种方式只有百万分之三的概率,我们可以这样推断,假如有一百万张银行卡被他人试着输入密码,就有三张被破解,假如被他人捡到输入密码,磁卡与芯片卡的安全性并没有任何区别,
一旦密码设定,大多数人为了防止自己难以记忆,都不会频繁更改密码,此时,这个密码实际是一个常量,而它的加密过程,如果是基于软件的,不管这个过程多复杂,它也是一个常量,这样我们输入A,势必获得D,对任何银行卡都是如此,目前的磁卡密码就是这样子的,假如他人恶意通过技术手段获取持卡人的密码,那它的概率就不再是百万分之三,持卡人又没有火眼金睛,实在是很难防范种种在柜员机上做手脚盗取银行卡密码甚至卡号或者是通过网上银行盗取等行为,而硬件密码对于具体的银行卡而言,虽然它也是和软件密码一样是常量,但是,它的有一部分数据并不需要持卡人输入,而它的加密过程也是利用银行卡自身运算完成的,不掌握隐藏的那一部分数据和加密过程,就没有办法破解这种密码,我们可以把它简述为输入A,利用隐藏的B(加密数据)和C(加密过程)获得D的过程,但是IC卡的这种优势是磁卡设计不完善获得的,磁卡同样可以应用B和C,
再就是卡片,磁卡有什么资料,银行都是有记载的,有的时候有些单位要持卡人提供卡号账号之类的,而中国公民个人信息隐私保护现状不容乐观,一些个人资料获取并非不可能的事,现在磁卡类银行卡软件设计时防复制的功能太差,一旦银行电脑硬盘通过维修,以及黑客入侵,甚至银行工作人员恶意泄露资料等路径,磁卡就没有安全可言了,芯片卡资料通过银行或持卡人提供都不足以复制成功,芯片卡的这种优势同样是磁卡设计不完善获得的,
IC卡在卡片防复制和密码防破解方面都比磁卡要强很多,但这种优势磁卡完全可以通过改进程序设计和卡片设计消弭芯片卡存在的这种优势,磁卡不足的是不能存贮生物密码,
芯片卡采用指纹验证,也有一些技术问题需要解决,比方说持卡人的隐私,在外地需要用钱,或者持卡人已经病重,无法操作柜员机,现在的银行卡还可以告诉密码,但使用指纹,会导致持卡人死亡后卡内资金无法取出的情况增多,目前银行卡持有人死亡后,需要通过公证,有的甚至要打官司,通过别人起诉才能查询被继承人的这笔资金,既费时间又费精力,如果子女知道持卡人卡内资金不多,很可能就会放弃,
而且,芯片卡纵有千般优点,却有缺陷,这就是病毒漏洞,芯片卡的容量太大了,自身又带有程序,黑客完全有可能通过在芯片卡上编写病毒程序或者是一些数据窃取软件入侵银行卡系统,因为开放了相应的端口,这就意味着,每时每刻银行卡支付系统都有可能面临黑客或病毒的入侵,目前的银行卡支付系统有相对的安全性,这是因为磁卡仅仅226字节,这么一点字节无法编写任何程序,并非是柜员机系统或者银联服务器系统牢不可破,是因为目前的银行卡支付系统是一个局域网系统,它不是和因特网互联互通的,加之磁卡不会提供相应的病毒入侵端口,才使得银行卡支付系统具有相对的安全性,
而银行卡支付的网上银行与手机银行的安全性方面,磁卡就有短板了,早期工商银行的大众版网上银行登录是基于active X控件的安全技术,后来改为U-Key,芯片卡很可能和手机卡合二为一,这样,直接取代了目前的MD5密码的登陆方式,但是手机银行和网上银行,假如病毒问题不能解决,无论这种卡多安全都有问题,病毒问题是个世界性的技术难题,加之中国的移动电话公司的信誉度并不是特别高,手机话费都屡屡出现交易问题,柜员机交易还可以通过银行监控摄像头,利于消费者举证,假如是手机交易,很可能出现病毒或黑客控制的交易甚至电话公司或者其工作人员恶意,消费者也很难举证的局面,一般消费者可能很难认同大额交易的网上银行与手机银行渠道,如果银行卡的网上银行,手机银行和柜员机支付系统,甚至社保,医保卡等实行一卡通,就意味着银行卡的支付网络将极大程度的扩展,将银行卡的功能扩展到多领域是芯片卡一个主要研究课题,这更加加大了病毒潜入的风险,申请人认为,涉及金额很大的银行卡不宜太多的扩展功能,芯片卡的安全性也是相对的,检索相关文献资料与网页,芯片卡能够将伪卡交易比磁卡下降90%,也就是说,芯片卡同样存在伪卡交易,之所以芯片卡的伪卡交易少,也有一个事实不容忽视,就是产品刚刚问世,针对的破解相对要少一些,而磁卡问世多年,加之以磁卡为主的银行卡支付系统也存在不容小觑的设计漏洞,这些让芯片卡看起来很美,将银行卡柜员机交易与脱机交易融为一体,则会带来挂失的实时生效新问题,因为目前的银行卡都是通过服务器控制交易的,羊城通就已经出现挂失后7天才能生效的问题,就是因为脱机交易引起的,脱机交易的资金安全性问题没有办法解决,只能适用小额交易,一卡通也是IC卡宣传的优点,从技术上说,一卡通是可以的,现实中行不通,假如医保业务由工商银行承揽,而社保业务由邮政储蓄银行承揽,怎么一卡通?到甲单位,人家是兴业银行客户,你得办兴业银行的卡,到乙单位又是建设银行,假如这几家银行使用一张卡的不同模块,银行极有可能抵制这样做,就算银行不抵制,卡被别人捡到了,万一密码被猜中,一般人为了记忆方便,几张卡使用同一个密码,这下倒好,全部银行卡资金拱手送人,在现实中,面临大额交易与小额交易,交易安全与支付方便,太方便的交易方式往往意味着低安全性,而现实中小额交易与大额交易往往是并存的,在病毒,交易安全与支付方便方面以及卡片费用等,IC卡与磁卡,网上银行与手机银行等各有优缺点,申请人认为,能同时满足各方面设计要求的一卡通技术根本不存在,
经过分析,申请人认为银行卡有以下方面值得改进:
A:磁卡6位数字密码安全强度偏低,密码组合数太少,这会造成服务器和持卡人安全隐患;
B:磁卡卡号和密码无法抵挡各种形式的偷看,即使是IC卡,密码和卡都被别人控制呢?
C:光靠单一的密码难以保障持卡人在各种特殊情况下的人身与财产权益;
D:无论是什么卡,暴力逼问密码,持卡人说不说密码都是难题;
E:银行卡不光存在卡片技术问题,也存在服务方法问题;
F:磁卡有被复制的漏洞,即使持卡人卡不离身;
G:银行卡有非法修改密码的可能,特别是银行卡和身份证一起遗失,密码还有cookies漏洞;
H:输入密码后遇到紧急情况时,没有紧急退卡等安全机制;
I:电话挂失和柜台挂失存在瑕疵;
J:指纹密码存在瑕疵;
K:芯片卡足以编写病毒程序,芯片卡的多功能应用也将带来银行卡支付系统的网络拓展相应的病毒防范面扩大问题,芯片卡在造价,技术成熟性,使用经验等方面也不及磁卡。
三:发明目的:通过终端设备引入银行卡数据进行密码的硬件加密;通过预警模式以减轻持卡人面临暴力逼问密码时的财产损失,有限保护持卡人的人身安全;通过背面密码与隐形卡号,身份证号码替代码阻止他人利用银行或持卡人向单位等提供的信息复制银行卡;通过卡片异常检获装置以保证持卡人输入密码后遇到危急情况即强行退出交易页面,或者提醒取卡,利用银行卡的卡主身份证号码一致或者是近亲属等,用一张卡对另一张卡实行部分功能限制或自助操作等。
四:技术方案:它是一种利用卡片异常检获系统控制的具有多个密码的可异卡控制的可报警的带有隐形卡号的银行卡,有以下技术特征:
①:四种交易模式的三种独立数据:银行卡的柜员机与POS数据,网上银行或手机银行数据都是互不相干的,柜员机与POS机采用同样的数据,它们的业务与交易过程也是独立的,所以可以单独采用或操作,但是它们共用同一个账号(手机银行没有这个账号)和卡号,柜员机与POS机数据由磁条或其他数据存贮介质提供,背面密码原始数据则是扫描获得,网上银行数据由存贮卡或IC卡提供,手机银行数据由扫描二维码等获得,在硬件设计方面,存贮卡内置在银行卡上,它跟磁条有些相似,是信息记忆载体,它分为读写部分与只读部分,使用电路触点或金手指等,通过专用的USB转接线连接到电脑获取存贮卡数据,也可以在电脑上设置专用银行卡插口用于网上银行操作,这个插口也可以兼容实现接触式IC卡的网上银行数据读取,而背面密码原始数据是在银行卡背面用漆膜等覆盖物覆盖的类似即开式彩票的几组数据,手机识别数据是在银行卡背面利用漆膜等覆盖物覆盖的二维码或其他可以被智能手机扫描的数据,手机银行的账号采用类似隐形卡号的部分组成;
②:基于硬件的终端合成密码,本发明把银行卡当成动态数据库与静态数据库存贮介质,动态数据就是银行卡数据存贮介质中的可读写数据,它们的改写受服务器端控制,静态数据就是不能改写的数据,终端合成密码就是通过银行卡提供的动态数据或其他数据作为数据表或是数据连接路径变量或者是部分密码数据,利用它们从终端程序数据库中选择性的获得复杂的数据参与合成或控制的密码,用户密码,预警密码,背面密码与指纹密码都是利用终端合成密码合成的,这种密码可以适用任何银行卡,采用磁条设计这种密码可以防止病毒侵入银行卡支付系统;
③:三种防复制与反钓鱼网站的数据:本银行卡在银行柜台完成部分操作后,还有背面密码,隐形卡号与身份证号码替代码初始化过程必须在柜员机上完成后才能正常使用,这三种防复制方法可以采用其中的一种或几种,其中网上银行隐形卡号和手机银行账号以及身份证号码替代码具有反钓鱼网站功能;
④:两种报警模式,一是基于银行卡遗失在柜员机或其他紧急情况下,操作人员能够主动或被动改变某些控制设备的控制状态,系统程序依据这些状态的改变从而做出退出交易页面或启动报警的安全物理装置及相应的程序设计的卡片异常检获系统,二是遇到紧急情况或逼问密码时的接通110的后台报警系统,它们可以单独采用,也可以综合采用;
⑤:异卡控制:利用银行卡的卡主身份证号码一致预先用一张卡设定对另一张卡的部分交易过程进行限制或控制,或者是银行卡遗失或吞卡或不需要银行卡后,利用柜员机等自助操作处理相关事宜,或者是互相信赖的人或者是近亲属的银行卡,预先用某人的银行卡设定对另一人的银行卡的部分交易过程进行限制或控制,异卡控制可以适用任何银行卡。
五:有益效果:这种设计可以兼容和升级目前的磁卡和IC卡,柜员机仅需接一个卡片异常检获装置和报警装置,设备改造费用低,只要持卡人不遗失银行卡,复制,偷看都毫无用处,采用的终端合成密码技术由于需要提供几方数据,只要持卡人有一方数据没有被他人知晓,就能保证卡内资金安全,由于终端合成密码的密码组合数非常多,加大了密码破解的难度,与目前的磁卡和芯片卡比较,终端合成密码的安全强度和芯片卡的密码差不多,却没有芯片卡的病毒安全隐患,由于本设计也可以基于磁卡原理制作,卡片费用低廉,它采用简单的物理或软件技术同步了手机银行,网上银行,POS机和柜员机在一张卡上,相对于芯片卡而言,它是由银行卡提供部分数据,利用柜员机等终端加密,减少了银行卡卡片的技术含量,而且此技术提供了卡和密码都被他人控制,以及暴力逼问密码,遭遇钓鱼网站等情况下,持卡人资金不受损失或损失较少的基于计算机商业服务方法方面的应急处理方案。
六:具体实施方式:本说明书论述的实施方式介绍了实施本专利的一般的过程,但实施本专利并不一定需要完全遵循这里描述的过程,它仅是实施本专利的一个特例,为了方便描述,本说明书所指的输入密码和现有银行卡的用户密码是完全一致的,取值都是六位阿拉伯数字,
1:下面先介绍本技术相关的硬件技术:
①:背面密码数据,在银行卡背面有类似即开式彩票的利用漆膜等覆盖物覆盖的几组数据,示例是6组,它们就是背面密码的原始数据;
②:手机识别数据,在银行卡背面还有利用漆膜等覆盖物覆盖的二维码或其他可以被智能手机扫描的数据;
③:存贮卡及连接:银行卡嵌置一块存贮卡片,存贮网上银行需要的数据,存贮卡和磁条一样,具有只读部分与可读写部分,数据处理与磁条数据处理是一样的,电脑与银行卡存贮卡的连接,银行卡只是提供相应的金手指等可以接通的路径,还必须有专用的USB转接线才能接通,也可以在机器上面直接设置插口,电脑银行卡插口应该像USB接口一样采用标准接口,并兼容IC卡数据的读取,这样,持卡人可以在任何一台电脑上插卡进行登录网上银行的操作,当然,前提是该电脑具有银行卡支付系统的网上银行客户端程序;
④:卡片异常检获装置:卡片异常检获系统就是操作人员能够主动或被动改变某些控制设备的控制状态,系统程序依据这些状态的改变从而做出退出交易页面或启动报警的安全物理装置及相应程序设计,
示例:脚踩开关是一个省力杠杆装置,连接一块有一个小孔的铁片,没有踩住时,弹簧朝下顶住铁片,小孔位置不对,光电管或其他感应装置不能进行工作,用脚踩住后,小孔的位置上移对准发光小灯泡(这里设置的上下位置是即使弹簧坏掉,铁片也会由于重力作用造成小孔位置不对,铁片的重量要保证在不操作的情况下,其重力可以保证这一状态存在),光电管开始工作,一旦光电管停止工作,系统获知信息,即退出交易页面,经过一定的时间(设置30秒应该就可以了,持卡人即使离开,也没有走多远),系统检测到银行卡还在柜员机里,即启动语音和警示灯光等报警,提醒持卡人取卡,这里没有设置电动开关,是因为电动开关容易出故障,这种设计在于,发光小灯泡或者光电管之类的装置坏掉,也是不能交易,只需要通知银行处理即可,这种设计需要持卡人踩住,我们也可以利用光电管或是红外线等,将柜员机与遮棚或机房获得一个通路,持卡人操作时,会挡住其通路,持卡人离开后,通路接通,假如卡还在柜员机里,就进入报警程序,也可是其他的有相似功能的系统控制交易过程。第二步介绍软件技术:
1:背面密码:
背面密码就是利用印制在银行卡背面的字符串为原始数据通过加密获得的一种密码,
①:背面密码原始数据是卡片制造过程中就已经预先印制好并经过覆盖处理的数据;
②:这种密码的印制过程并不需要卡片制造厂家存贮具体的数据,它由电脑控制随机生成的一定长度的字符串,或者是计算机能够识别的二维码,条形码等;
③:背面密码原始数据一般比较复杂,要保证普通人看一下基本无法记住;
④:只所以设置在背面,是为了防止偷看的人同步看到卡号和这种密码,
⑤:背面密码只能在柜员机等上面不能在银行柜台完成初始化,而且,其初始化过程中一并初始化隐形卡号和身份证号码替代码,
⑥:后期加密:背面密码采用终端合成密码的方法进行加密,
构成示例:本发明示例是6组15位0到9的随机数字,印制好后,采用漆膜等可以封存的方法进行遮盖数据即可,它是一种无法更改原始数据的密码,持卡人在银行开卡完成后,不能在柜台完成初始化,而是第一次使用前,持卡人必须刮开漆膜,在柜员机上完成初始化后银行卡才能正常使用,初始化过程中,和用户密码一样,不能原封不动的采用,这里的例举仍旧是截码,利用函数substring(expression,start,length)截取字符串,只不过length值采用其他数据确定或指定,这里设为5,而start的值由其他的数据获得或指定,这里由用户密码那6组只读二进制数据提供,将这6组二进制数据转换成10进制数据,将结果除以一个数(这里建议11到13比较合适,要考虑印制长度与截码的组合,这个数越大,截码的组合数.越多,但也不能印制太长),余数加1就是start的值,这样获得6组0到99999之间的背面密码,再把它们转换成0到q0T这样的62进制数据,我们可以依据start的max值和length值确定背面密码的字符串长度,如果start的max值为11,也就是从第11位截取,截取5位,所以字符串长度就是15,例如substring(697851033650278,7,5),就是将697851033650278截取,从第7位开始,截取5位,即截取697851(03365)0278,结果就是括号中的03365,本发明中涉及的截码都是这个原理,从这里可以看出,背面密码到这一步是没有用户自行修改的权利的,也不用用户记忆,假如没有对应的用户密码那6组数据,则是将背面密码原始数据分别除以一个数(这里建议11到13比较合适),取余数加1作为截码函数substring的参数start的值进行截码,其他的原理是一样,背面密码原始数据也可以使用条形码,二维码等计算机能够识别的符号,由于柜员机的隐形卡号,背面密码和身份证号码替代码初始化工作是一次进行的,所以这里一并介绍,当持卡人插入没有初始化的银行卡,系统会要求持卡人输入密码,假如密码输入错误三次,背面密码又已经被刮开,系统会锁卡,这种锁卡不能解锁,只能换卡,假如持卡人没有刮开漆膜等覆盖物,系统会提示先刮开漆膜再插卡,假如持卡人输入正确的密码,系统会计算出相应的背面密码的终端合成密码,将数据发送到服务器之后,服务器返回此卡的身份证号码,身份证号码在终端设备上不可见,它是一种后台数据,终端根据返回值计算出对应的身份证号码替代码,在银行卡写入只读数据,服务器利用程序自动计算出隐形卡号并存贮,程序设计隐形卡号和身份证号码是同步返回终端,不是两次返回,终端记载隐形卡号为读写数据,方便以后交易时调用,服务器端与终端的隐形卡号一致才能完成交易过程,这一切都是系统完成,持卡人所做的就是刮开漆膜,对于持有银行卡的任何人而言背面密码都没有任何加密作用,但是,它可以加大银联服务器端与银行端的密码破解难度,并非没有用处,
后期加密:背面密码采用终端合成密码的方法进行加密。
2:用户密码:
由持卡人输入的密码和银行卡部分数据经过编程处理的6组数据就是用户密码,磁卡没有办法提供相应数据时,用户密码就是持卡人输入的6位阿拉伯数字密码,
构成示例:开卡时,系统会随机生成几组二进制数据(之所以采用二进制字符串是考虑容量,同样的截码,利用10进制与2进制数据,2进制需要的比特数更少),本说明书示例是6组,每组26位,把它们作为只读数据写入银行卡,在磁卡中,一般只应用一个磁道,也就是还有一个只读磁道可以利用,而记忆模块也分为只读和可读写部分,只是程序设计随机二进制字符串时要保证不出现连续0和1或01或10排列(最高只允许为截取字符段的长度,本设计中为≤17),持卡人输入密码,系统就会依据该密码与这六组二进制数据进行合成,合成时是将密码分拆为6个阿拉伯数字,依据密码字符的先后位置与6组数据一一合成的,一种方法就是利用函数substring(expression,start,length)截取字符串,expression值就是26位二进制数据,start值就是对应的输入密码值加1,length是指定或通过其他数据获取,这里设为17,转换成十进制之后为0到131071(二进制的17位最大数11111111111111111就是十进制的131071)。它们对应的62进制数据是0到y63,这样就获得了6组0到y63之间的62进制数据,也就是用户密码,这里仅仅是例举,也可以利用left,right等进行,其中一个最基本的特征就是原数据不要原封不动的作为用户密码来采用,而应通过引入其他数据截取字符串或者改变原排列顺序等方法,这样具有一定的安全性,
后期处理:用户密码采用终端合成密码的方法进行加密。
3:预警密码与后台报警系统:
后台报警系统就是前台操作页面看不出异常,但是能够由系统判断出操作是非法操作或者是违背持卡人意愿的操作,后台通知接通110报警系统的一种程序设计,
预警模式,这种模式的前台页面与正常模式一模一样,只是此模式下的可交易金额是由持卡人预先设定的,并且这个设定的存款数最好不要低于500元,而且最好带两位尾数比方说534.23元,不允许透支的银行卡,在实际存款数低于设定数时,预警模式显示的为实际存款数,假如持卡人不设定这个金额,预警模式显示持卡人真实的存款数,在这个模式下,前台允许操作人进行看似合法的交易,系统后台会偷偷接通附近的派出所110报警系统,如果持卡人滥用预警模式,可能遭到相应处罚,
预警密码是柜员机交易的专用密码,手机银行和网上银行没有预警密码,输入密码由预警密码控制值(这个值由银行卡可读写数据提供,它的有效值由银行卡密码位数确定,现在的银行卡密码位数是6位,因此此值是1到6)指定的那一位错误而其他全部正确进入的页面模式就是预警模式,指定的这一位就是预警密码,所有的输入密码都有9个错误预警密码可以进入预警模式,预警密码是一位比较特殊的输入密码,
构成示例和功能介绍:由输入密码转换成用户密码以及利用密码加载码合成时,预警密码和其他五位密码都是利用输入密码字符的先后位置合成的,只是合成后是单独存贮的,而其他五位是将合成结果进行合并后存贮的,系统检测到其他五位的合成结果相同而预警密码不符,即进入预警模式,持卡人可以利用任意一个错误的预警密码,进入预警模式后,再使用别的错误的预警密码和正确的原密码,都是进入预警模式,预警模式只有通过银行柜台才会解除锁定,恢复正常使用,预警模式需要设定生效,缺省模式是密码错误,预警密码可以适用基于任何原理的银行卡,
后期处理:预警密码采用终端合成密码的方法进行加密,它的加密和用户密码密不可分,
另外一种预警密码是电话密码即特服号码尾号,它是将银行卡绑定电话号码(从技术上看固话也是可以的,但是座机不方便,要求绑定手机号码),全国设定一个固定的特服号码,这个特服号码就是类似119这样的,然后持卡人自行设置一定的尾号,一般建议设置1至2位尾号(设定一位或两位可由持卡人依据自己的记忆能力选择,设定两位更加安全),这个特服号码必须加上尾号才可以成功拨打,但是特服号码加任何有效尾号都可以成功拨打,持卡人每次交易前,必须拨打这个电话号码请求交易,只要接通即可,电信公司接到通信服务请求后,将拨打的号码与时间发送到银联公司的专用服务器,再传送到银行卡支付系统,持卡人拨打的特服号码尾号与服务器记载的特服号码尾号一致时,即按照正常交易进行,不一致时,交易依照预警模式进行,只有银行卡交易通过密码验证请求后,才会启动电话密码验证,这样,即使持卡人遗失或被抢夺手机,他人恶意拨打此特服号码,也只会浪费电话费,假如持卡人经过一定的时间不上机交易(比方说10分钟),记录被清除,请求即被取消,持卡人必须再次拨打,为了防止恶意拨打,这项服务应该收费,持卡人取消电话密码服务的,由于服务的定制与取消是利用一个布尔数据进行控制,只要设定的银行卡绑定手机短消息服务或者电话密码服务其手机号码仍旧有效,也可以利用绑定的手机号码临时拨打,当出现拨打的尾号与持卡人设定的尾号不一致时,就可以进入预警模式,只是编程时,手机程序设定拨打的这类号码不能在手机里有尾号记录,电信公司的记录里程序设计只能显示特服号码不能显示尾号,尾号通过后台发送,此外,手机的电话薄等相应的功能也不能存贮这类号码,必须通过按键或手写号码拨号,这种预警模式是对现有银行卡交易绑定短消息通知服务的改进,它把短消息的事后通知变成了交易前的许可,利用无线电话通信的安全技术控制金融交易过程,
利用预警密码和电话密码各有优缺点,使用电话密码由于每次都要拨打,因此比较繁琐,由于要电话通知,相对提高了交易的安全系数,不过可能被别人偷看的机会比较大,但是预警密码用得很少,又可能容易忘记,持卡人可以根据自己的情况选用。
4:指纹密码:
指纹是一种模糊验证,由于持卡人输入的指纹与系统存贮的指纹数据不会完全一致,而需要通过计算机进行智能化分析,所以,指纹不能通过不可逆方法加密,
①:指纹密码是利用至少两种指纹数据以外的数据,其中一种是服务器从后台传送过来的数据到终端;
②:它采用可逆算法技术完成加密与解密,这里的可逆算法可以是一些数学运算规则,也可以是一些函数或编程规则,解密后的最终数据为采集的指纹数据;
③验证时解密数据存于终端程序的cookies中,一旦验证完毕,即清空数据,银行卡始终存贮的是加密数据;
④加密与解密由系统自动完成,它们可以采用静态数据存贮,也可以采用动态数据存贮,采用动态数据存贮时,选择修改密码,可以由系统自动修改指纹数据以外的动态数据完成密码的修改;
⑤指纹数据也可以修改,指纹验证通过后,选择修改指纹数据,系统会以本次的指纹数据为原始数据进行加密,或者持卡人利用另一个指纹进行修改,指纹数据的修改同样需要原指纹数据为动态数据,
示例:芯片卡等可以使用指纹数据进行持卡人身份验证,目前工商银行提供的指纹密码是一个平面图形,指纹密码如果采用IC卡数据和持卡人的指纹对比验证,这种密码可能存在恶意覆盖原数据进行欺骗验证的可能性,如果采用服务器验证,则验证数据庞大,指纹验证耗系统资源,同样很难进行,这里采用终端合成密码进行加密,先将原始指纹数据转换成二进制数据,把它们利用一定的方法分成几组,再转换成10进制数据,由服务器返回一个类似密码的数据,比方说123456之类的,进行截码,没有截取的部分保留,加密只针对截取的这一部分,将截取的这一部分数据转换成适合加密的62进制数据,加密时,是利用这个返回的数据对银行卡其他数据(比方说背面密码的原始数据)进行加密,但是到字符替代码这一步,不是字符替代,而是与指纹的相关数据进行合成,这里要注意的就是要保证指纹数据的返回,比方说加密时是相加获得最终数据,那么,解密时是最终数据相减背面密码的原始数据合成的那些数据,最终返回62进制的指纹数据,把这些数据转换成10进制数据之后,与没有截取的部分进行组合,转换成2进制数据,最终获得原始的指纹数据,由于银行卡并没有存贮类似平面图像的指纹数据,光覆盖原数据没有用。
5:终端合成密码:终端合成密码就是通过银行卡提供的动态数据或其他数据作为数据表或是数据连接路径变量或者是部分密码数据,利用它们从终端程序数据库中选择性的获得复杂的数据参与合成或控制的密码,终端合成密码有两种合成方式,一种是直接合成,也就是将两种或两种以上的数据利用一定的编程规则合成新数据,然后利用MD5之类的软件加密,但是,磁卡本身无法提供太复杂的数据,利用这种方法合成的密码安全等级不是很高,这里不建议采用,还有一种是间接合成,本发明例举的就是间接合成,它与U盾或芯片卡通过自身微电脑提供的密码加密程序合成密码的原理有区别,它是由持卡人提供的密码与银行卡提供的动态或静态数据为原始密码或原始密码的中间数据,利用具有密码运算能力的终端设备(手机,柜员机与家用电脑等)提供的程序生成的电子加密数据,相同点是它们都可以归类为硬件密码,终端合成密码在网上银行,手机银行与柜员机使用的是不同的密码,不过,柜员机与POS机使用的是相同的密码,
示例是通过引进字符串,截取字符串,进制转换,字符串字符转换,改变位置,替代部分字符等其中的一种或多种加密方法综合形成的电子数据,一般引进的字符串都比较长,数据比较复杂,而截取字符串就是只取其中的一部分数据,或者是改变原字符的位置等编程方法,进制转换就是将原数据转换成另一种进制的数据,所谓字符串字符转换就是把一个字符转换成另一个字符或者是把一组字符转换成另一组字符,每个字符的转换遵循一定的编程规则,替代部分字符就是把部分字符替代成另一种形式的字符,替代后的字符与没有替代的字符存在相同的部分字符,以及替代插入点使用逻辑判断,当然,也可以使用其他方法,这些合成方法可以有先后顺序的不同,前提是方便设计即可,
与U盾或芯片卡密码的异同:终端合成密码与U盾或芯片卡自身通过微电脑提供的密码加密程序合成密码的原理有区别,它是由持卡人提供的密码与银行卡提供的动态或静态数据为原始密码或原始密码的中间数据,利用具有密码运算能力的终端设备(手机,柜员机与家用电脑等)提供的程序生成的电子加密数据,相同点是它们都可以归类为硬件密码,
终端合成密码与我们目前使用的银行卡密码不一样,它是密码组,但是,持卡人依旧只是输入6位数字,并且,终端合成密码在网上银行,手机银行与柜员机使用的是不同的密码,不过,柜员机与POS机使用的是相同的密码,
终端合成密码的合成方式:终端合成密码有两种合成方式,一种是直接合成,也就是将两种或两种以上的数据利用一定的编程规则合成新数据,然后利用MD5之类的软件加密,但是,磁卡本身无法提供太复杂的数据,利用这种方法合成的密码安全等级不是很高,这里不建议采用,还有一种是间接合成,其基本特征就是由银行卡的动态数据提供数据表连接路径变量或指定部分数据的位置等;银联终端设备等存贮一定数量的数据表,它们在同一数据库下(在编程时,一般都是先连接数据库,再连接数据表),数据表名称形式AB,如果A相同而B不相同(A为数据表主名称,B为阿拉伯数字序号),就表示它们为同一类型数据表,数据结构包括字段和数据类型都相同,只有数据不同,示例中是指字符替代码表,转码表和密码排列控制表,举例sql语句select*from chinese_FourCodeB表示链接到字符替代码表,chinese_FourCode就是数据表名称形式的A,B就是银行卡的动态数据提供的连接路径变量,假如银行卡对应的此数据B为7,就是通过编程语句指定链接到表名为chinese_FourCode7的字符替代码表,转码表和密码排列控制表的连接原理也是一样,程序据此连接到指定的数据表,为了安全,连接数据可以分为公有数据表连接路径变量与私有数据表连接路径变量数据,用户密码,背面密码在合成各自的终端合成密码时采用公有数据表路径变量指向同一个转码表和密码排列控制表,但是密码加载码表只有一个,程序在获取密码加载码时是通过银行卡提供的几组数据,这几组数据与密码加载码的ID号按照一定的编程规则连接,也就是数据为C(C只能为阿拉伯数字),就把C经过编程处理,获得一个数据,就连接该数据对应的ID号进而获得密码加载码,它也是公有连接,而字符替代码表是私有连接;可以通过改写它们修改密码,背面密码只能由持卡人在柜员机完成初始化,这里的初始化会同时初始化隐形卡号和身份证号码替代码,虽然各种数据表可以自由设计,但是,程序设计完成后,所有的数据表及数据以及合成规则在所有的同一类型的实体终端是完全一样的,这样,在每一台同一类型的实体终端上,都会获得完全一致的密码数据,也就是说这种密码设计同样遵循所有的同一类型的实体终端密码算法一致这个基本原理,而网银与手机银行的初始化工作在申请人在柜台申请开卡之后就可以进行,它们并没有先后顺序,持卡人申请开通相应的服务即可,网银的存贮模块与磁条的非常相似,手机银行程序没有数据表连接路径变量B这个选项,是直接利用对应的数据表加密,也就是相应的数据表程序中只有一个,合成之后,把扫描到的二维码等智能手机能够识别的数据和加密后的数据进行加密即可,发送数据时,为了安全,可以利用电话卡的后台锁定技术等辅助锁定交易者的身份,
下面介绍终端合成密码需要的专用术语及其定义以及数据表示例设计:
A:62进制,这里的62进制是指采用62位字符表示的一种数制,这种数制可以和10进制数据或2进制数据完成互换,本发明利用数字与大小写字母表示这种数制,它们是指定利用阿拉伯数字0到9表示0到9,字母的小写a到z表示10到35,字母的大写A到Z表示36到61的的数制算法,也可以有其他的指定方案,后面部分讲述的数字或字母的本位码,转码算法等也遵循同样的规律,本发明中,密码加载码表示区段为十进位00000(0)到99999,相应的62进制为000(0)到q0T,也就是说,将十进制的五位数变成了三位数字与字母组合数,这里的62进制算法介绍一种除权值余数与结果综合取值法,任何进制(进制设为N)的数,其右起第一位权值为1,第二位权值为进制数N,第三位权值为进制数的平方N2,本处只需要用到三位数,62的平方为3844,因此,将五位数除以3844,将余数除以62,将第一次的结果,第二次的结果和最终的余数按顺序排列,用62进制表示即可,99999除以3844,结果是26,余数是55,不足62,记为0,其结果是26,0,55,查表A知26为q,55为T,结果q0T就是这样算出来的:
表A:62进制算法和数字与字母本位码算法换算表
0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
l m n o p q r s t u v w x y z A B C D E F
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
G H I J K L M N O P Q R S T U V W X Y Z
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
B:数字与字母的转换算法,用一个数字或字母获得另一个数字或字母或者是用一组数字或字母获得另一组数字或字母的转换算法,转换算法遵循以下规律
Figure BSA00000893776400101
不同的源码相同的算法转换之后结果是不能相同的;
同一源码的几种算法的转换结果互相也不能相同;
Figure BSA00000893776400103
转码的结果也不能与源码相同;
转码要设置几种转码算法,以强化密码的组合复杂性,
示例是设置四种,即A,B,C,D算法,它是以数字和字母的本位码为基础条件进行转换的,
数字的本位码:数字0到9的本位码分别是数字0到9;
小写字母的本位码:字母a到z的本位码分别是数字10到35;
大写字母的本位码:字母A到Z的本位码分别是数字36到61;
这里例举的是ABCD算法,其中A算法,B算法,C算法是以本位码为基础进行的数学运算,但是D算法经过人工调整,没有什么算法规律,
A算法:数字或字母的本位码加该本位码后的第2位奇数就是此数字或字母的A码转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母,转码记为A;
B算法:数字或字母的本位码加该本位码后第13位奇数就是此数字或字母的B码转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母,转码记为B;
C算法:数字或字母的本位码加30就是该数字或字母的C码转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母,转码记为C;
D算法:D算法基本遵循数字或字母的本位码加该本位码后的第3个偶数就是该数字或字母的D码转码算法,结果≥62的,就减62,为了防止数据相同性冲突,做了部分位置调整,记载其本位码对应的数字或字母,转码记为D,见表B:
表B:数字与字母的ABCD算法转码对照表
源码 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k
A 3 6 7 a b e f i j m n q r u v y z C D G H
B p s t w x A B E F I J M N Q R U V Y Z 2 3
C u v w x y z A B C D E F G H I J K L M N O
D 6 7 a b e f i j m n q r u v y z C D G H K
源码 l m n o p q r s t u v w x y z A B C D E F
A K L O P S T W X 0 1 4 5 8 9 c d g h k I o
B 6 7 a b e f i j m n q r u v y z C D G H K
C P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9
D L O P T W S X 0 1 4 5 8 9 c d g h k I o p
源码 G H I J K L M N O P Q R S T U V W X Y Z
A p s t w x A B E F I J M N Q R U V Y Z 2
B L O P S T W X 0 1 4 5 8 9 c d g h k l o
C a b c d e f g h i j k l m n o p q r s t
D s t w x A B E I J F M N Q U V R Y Z 2 3
使用说明:例如源码数据为Q,按A算法就是转换成J,B算法就是转换成5,C算法就是转换成k,D算法就是转换成M,只要对照表查询就可以了,其实也可以设计其他的数据表或算法,但是,只是注意设计时这里有三个基本要点,就是不同的源码相同的算法转换之后结果是不能相同的,而同一源码的几种算法的转换结果互相也不能相同,而且转码的结果也不能与源码相同,从它的设计原理我们可以知道,转码前后的每一个数字和字母都不会相同,这是一个最基本的设计要点,调用时,A算法,B算法,C算法都可以直接使用数据表调用,也可以使用数学运算换算,但是,D算法经过了人工调整,一般只能使用数据表调用,示例中这两张数据表一般是固定的,也就是所有的终端采用的数据都是相同的,表A,表B它们其实也可以设置几张表,使用编程语句完成选择性调用,
①:密码加载码表:原始密码是和一定长度的字符段利用一定的编程规则进行加密的,这种原始密码字符段就是密码加载码,密码加载码和其ID号对照表就是密码加载码表,一般密码加载码需要一定数量的组数,本说明书示例设计密码加载码共10000组,见表1:
表1:密码加载码表(仅仅显示部分内容)
ID 密码加载码 ID 密码加载码
1 69135,78450,13269,87563,57 3 67520,10036,98855,22216,42
2 19876,23400,19888,57829,36 10000 99856,22367,85430,01091,56
使用说明:终端合成密码要调用这些数据中的几组数据参与密码的合成,银行卡开卡时,系统会生成几组供调用的连接变量数据,目前的银行卡密码是6位,所以是6组0到9999之间的可读写数据为调用的连接变量,由于ID号是自动编号,而一般ID号是从1开始的,银行卡数据与ID号挂钩时,有可能出现0,因为磁卡为了节省空间,允许出现0,手机银行与网上银行的记忆模块容量也不需要很大,解决方法有两种,一种是其他的一一对应,而0则使用IF语句,也就是出现0,就连接ID号为10000的密码加载码数据,还有一种方案就是把所有的原数据加1,比方说磁卡存贮的为353,就连接ID号354的密码加载码数据,这样,系统检索连接变量,把对应的密码加载码引入程序就完成了数据调用,而背面密码调用此数据时可以直接调用,也可以先进行一定的规则编程,这里例举一种方法,就是把用户密码的6组原始密码数据转换成10进制数据,分别除以一个特定的数,比方说11,把余数加1,就从这一位开始截取背面密码的原始数据,截取四位,这样获得6组四位数字的代码,如果没有用户密码的这6组数字,就用背面密码的6组数字除以一个数,比方说11,其他操作则是一样,把这6组数字和银行卡对应的6组连接数分别相加,是每一位分别相加,结果≥10的,就减10,用6组新数据完成密码加载码的调用工作,虽然银行卡记载的密码加载码的调用的连接变量只有6组,我们还是可以使用多种方法获得新的6组数,这样密码更加复杂,假如某银行卡提供的对应的数据为3,按第一种方法就是调用为67520,10036,98855,22216,42到程序,按第二种方法就是调用99856,22367,85430,01091,56到程序,其他的也是一样的方法,密码加载码表是本设计中一个最重要的表,它的设计质量直接影响到密码的复杂程度,本说明书密码加载码为22位随机数字,这个22位是依据说明书描述需要和易于理解人为规定的,可以依据编程需要设定,示例由截码函数substring的参数来决定,start值确定起始位置,length确定长度,假如start值为15,length值为10,22位就不够,假如start值为11,22位后面的两位就只会占据数据库空间,永远无法使用,这里要注意程序设计随机字符串时应保证不出现连续11个或以上相同数字或两个数字重叠(就是相同数字最高只允许出现截取后的字符段长度,这样才不会出现密码不同,截取的字符段却相同这种情况),一些比较特殊的组合比方说7个8等也要尽量避免,在设计数据库时这是可以人为控制的,再就是组合数,这里建议10000组,也就是ID号从1到10000,数据太庞大,手机应用有困难,数据太少,密码安全性不够好,采用10000位,银行卡就是四位数字0到9999,6组数据为24位数字共24字节,在安全性与空间方面有一个适度的平衡,据此,银行卡的密码组合在这里就拓展到亿亿亿次位,即10的24次方;
②:转码表:转码表:待转码的每个字符作为源码,经过一定的规则转换成另外一个字符,确定转码方向的规则和转码引导值(也就是编号)对照表就是转码表,它的特征如下:
Figure BSA00000893776400121
转码规则位数由源码位数确定;
Figure BSA00000893776400122
转码的项数由转码算法确定;
Figure BSA00000893776400123
转码引导值MAX值由源码位数和转码算法确定,具体是转码算法的源码位数的次方,转码算法为N种,源码位数为M,则转码引导值MAX值为NM
转码引导值由源码获取,将源码转换成10进制数据,将10进制数据除以NM,余数加1为几,就查找该数字编号对应的转码规则进行转码,
本说明书示例是四种算法即A码,B码,C码与D码转码算法,转码控制值由源码位数和转码算法确定,本说明书是64(4*4*4)项,见表2;
表2:转码表(仅仅显示部分内容)
编号 转码 编号 转码 编号 转码 编号 转码 编号 转码 编号 转码
0 AAA 5 ABB 10 ACC 15 ADD 20 BBA 25 BCB
1 AAB 6 ABC 11 ACD 16 BAA 21 BBB 26 BCC
2 AAC 7 ABC 12 ADA 17 BAB 22 BBC 32 BCD
3 AAD 8 ACA 13 ADB 18 BAC 23 BBD 28 BDA
4 ABA 9 ACB 14 ADC 19 BAD 24 BCA 29 BDB
使用说明:原始数据经过截码后,会变成00000到99999之间的数字,用户密码和背面密码都有6组,截码后分两种情况,一种是一组又分成两个00000到99999之间的数据(含00000到99999),一种只有一个00000到99999之间的数据(含00000到99999),只有一个的是自转码,也就是自身的十进制数据除以64,余数为几,就以该编号对应的转码规则进行转码,例举“69853”,69853除以64,余数为29,查表2为BDB,将69853转换成62进制数据,为18,10,41,查表A为iaF,就是将i转码为B码,a转码为D码,F转码为B码,查表B就是ZqK,而两个数据甲和乙就是将它们的10进制数据分别除以64,甲的余数为几,就从该编号对应的转码规则转码乙,而乙则转码甲,也就是互相控制进行转码,例举“1366498713”,先五个一分为13664和98713,二者分别除以64,其余数分别是32和25,其62进制数据分别是3yo,pG9,就是用编号25对应的转码规则BCB转码3yo为w2b,编号32对应的转码规则BCD转码pG9为ean,在实际设计过程中,同一个表的编号与转码是一一对应关系的,但是不同的表允许部分数据相同,比方两张表编号25同为BCB等,假如表格比较多,要保证编号与转码一一对应,并不容易,特别是后面提到的字符替代码表,要保证编号与替代码的这种关系就非常困难了,为了解决实际设计问题,发明人推荐一种抓阉法,也就是采用比较规律的办法先行书写相关数据,比方说此表从AAA到DDD,字符替代码可以按照英文的顺序书写英文以及部首与笔画数等目前字典排布的方法书写中文,这样凑齐一万个就没有多少技术难度了,而且很容易保证不出现相同的数据,然后揉成纸团,混合,再在一张比较大的纸张上面分成100个区域,每一个区域放一个,编号就是1到100,统计完后,又放第二批,编号101到200,这样,顺次下去就完成所有的编号与替代码的统计工作,做完后,重新混合,又进行第二张表的工作,虽然有些繁琐,但是能够保证设计符合要求,本表相对容易很多,就是书写64个纸团,混合好后,直接与编号一一对应,抓阉后又重新混合,再抓阉,数据表连接路径变量和控制原始值由银行卡指定,数据表连接路径变量由数据表的个数决定,也就是假如只有10个转码表,相应的变量也只能有10个,不允许出现空连接,后面的三个表格也是一样不允许出现空连接,
③:密码排列控制表,经过转码加密后的密码的排列次序是与原始密码的排列次序是一致的,合成过程中改变密码排列次序的表就是密码排列控制表,密码排列控制表的待排列部分不一定与原始密码的部分数相同,可以利用一定的编程方法将密码分成几部分后进行重排,密码排列控制表由控制值和排列次序两部分组成,控制值由分成的部分数决定,也就是计算过程中不允许出现空连接,
本说明书仅仅是一种示例排列法,见表3,
表3:密码排列控制表(仅仅显示部分内容)
Figure BSA00000893776400131
密码排列控制表由控制值和排列次序两部分组成,控制值为0到718(这种排列有720种,即6*5*4*3*2=720,将123456这种排列次序不用),而排列次序值就是数字1到6的随机排列,一个数字只允许出现一次,这个1到6就是表示原始次序,示例原始用户密码235691,假如第4位为预警密码,就将第4位剔除,控制原始值由密码分成的重排部分确定,本说明书中密码是分成6部分进行重排,只能是1到6,假如是1,就是用户密码或背面密码第1组的第一个经过转码后的62进制数据,转换成10进制数据,除以719,余数为几,就查找编号对应的次序,进行重排即可,
④:字符替代码表,将密码的一部分字符用其他的字符进行取代的一种加密方法就是字符替代,这个表的基本特征是:
Figure BSA00000893776400132
字符和编号是互相唯一对应的关系;
Figure BSA00000893776400133
字符替代码表所有的表采用的所有字符都是相同的,不同的表只是字符与编号不同;
Figure BSA00000893776400134
取代后的字符与没有替代的字符最好有相同的字符类型;
Figure BSA00000893776400135
一般被替换的字符是同一类型的字符,比方说要替换数字,那么就替换全部的数字,而换上去的可以有不同类型的字符;
被替换的字符应一次替换几个,而插入字符的位置,利用逻辑语句进行判断,这会加大破解难度;
从理论上看,可以利用任何一种字符替代另外一种字符,但是,应该考虑替代后密码数据字节数和其他因素,要利于编程设计和实际需要,
字符替代码表最好采用10000个字符,要替代二级英文字符,密码的安全性才比较高,用三位数字编号不够数,如果是五位,又很难有那么多的字符表示,软件设计工程量也偏大了,见表4,
表4:字符替代码表(仅仅显示部分内容)
Figure BSA00000893776400141
使用方法:密码数据处理的结果是数字与英文大小写字母的组合,最后一步密码处理程序就是利用字符替代码表进行处理,英文大小写字母不予改变,将其中的数字提取出来,把提取的数字采用一定的规律例如按先后顺序四个数字一组,最后一组不足四位时,取0补足,例如23就是0023,查找对应的字符替代码,直接替换,例如四个数字为“0013”,就存贮“不”,四个数字为“0009”,就存贮“Ag”,四个数字为“0019”,就存贮“C”,当替代之后,插入的地方则采用类似IF这样的逻辑语句确定,这里例举一种方法,就是利用取余函数MOD,将四个数字除以4,余数为0,就插入原第1个数字的位置,余数为1,就插入原第2个数字的位置,余数为2,就插入原第3个数字的位置,余数为3,就插入原第4个数字的位置,替代完成后,将空格清除,就获得了新密码,字符替代码表规定所有的字符都是相同的是为了防止服务器端破解,例如,假如某个字只在某一个表出现,则凡是带有此字的密码的字符替代码表的连接路径就已经知晓了,这是不允许出现的,使用字符替代码表的目的是为了降低数据传输和数据存贮的压力,以及重新排序,将转码的结果与替代的结果进行混合,也会使密码破解变得更加困难,中文包括不常用的字是有7244个以上的,从二进制存贮原理看,目前的计算机采用8bit一字节,这其中1bit为效验码,因此,其排列组合数为2的7次方即128,中文一个字符是两字节,其排列组合数为16384,也就是说,采用两字节代表中文,极限值为16384,不存在设计问题,从它的设计原理看,最终密码是英文大小写字母与中文的组合,而且这种密码的字节数不是固定的,从理论上看,也可以利用数字替换掉字母,但是,这种设计会使数据变得庞大,不太可取,如果使用其他的字符也是可以的,但有几个设计要点,就是替代后的字符与没有替代的字符最好有相同的字符类型,本说明书中英文没有改变,而替换字符也有英文,两种英文混在一起,一般被替换的字符是同一类型的字符,比方说替换数字,那么就替换全部或部分的数字,而换上去的可以有不同类型的字符,再就是被替换的字符应同时替换几个,而插入字符的位置,利用逻辑语句进行判断,这会加大破解难度,终端合成密码的具体合成过程:软件部分设计参考如下,这里的例子仅仅描述了申请人认为一种比较好的实现终端合成密码的方式而已,其先后顺序也可能改变,比方第A步和第B步,但是,明显不合逻辑的更改顺序是不可以的:
A:引进密码加载码:利用密码加载码的6组连接变量或通过计算获得的连接变量,通过查找对应的ID号或编程之后对应的ID号,将其对应的密码加载码引入程序,下面的步骤中,通过银行卡的连接路径变量连接相应的数据表就不再一一说明;
B:获取start值:将用户密码和背面密码的6组10进制数据除以13,把余数加1,分别获得6组1到13的6组数,用户密码没有其原始的只读数据的,就是我们输入的6位密码分拆后,分别加1,获得1到10的6组数,这些数据就是第三步中的start值的来源;
C:截取字符串:在函数substring(expression,start,length)中,expression就是表示密码加载码,start的值就是第2步获得的结果,length统一规定为5的倍数,1至5组设定为10,第6组设定为5,以密码加载码为9985622367854300109156说明,假如现在start值为11,为substring(9985622367854300109156,11,10),上述函数意思就是把9985622367854300109156进行截取字符串,从第11位处开始截取,截取长度10位,9985622367(8543001091)56,就是获得括号中的十位数,采用相同或类似的方法,完成截取字符串或者是通过left,right等函数改变字符位置等的工作,本说明书依据substring函数获得的用户密码和背面密码分别都是获得6组共55个阿拉伯数字密码,将它们转换成62进制数据后,就是33位数字与字母密码;
D:转码:将所有的数据按照转码规则进行转码,为了强化防破解效果,这里建议多转码几次;
E:重新排序:将预警密码单独列出,其他的用户密码和背面密码进行重新排序;
F:数据效验:重新排序后,背面密码的33位数字与字母组合,依旧按照6位一分,最后为3位划分成6组,分别是1到6组,而用户密码有可能是27位,也可能是30位,划分位置时,要留下预警密码的位置,也就是预警密码的原位置不能改变,并且把预警密码插进来,这样划分出6组,它们都是将用户密码与预警密码的62进制数据和所有的组数中的第一个三位数据分别相加,是每一个字母或数字的本位码相加,结果≥62的,就减62,记载相应的本位码,用户密码没有相应数据的,就是把输入的密码分拆后,分别相加,完成这一步后,把预警密码提取出来,
G:替代字符:把它们分别利用字符替代码进行处理,获得最终的终端合成密码,
网上银行与磁卡的终端合成密码程序是一样的,而手机银行考虑程序的占用空间问题,不建议使用数据表连接路径变量,而是直接选择数据表,将合成后的结果再利用扫描的二维码数据或其他智能手机可以识别的符号进行加密,手机银行的程序有多个数据表数据存在差别的版本号选择,这点与网上银行有区别,持卡人下载程序时要记住版本号,否则,手机刷机后会导致手机银行无法使用,版本号设置只是版本号后面的部分有区别,方便持卡人记忆,
我们其实还可以利用left,right之类的函数或者是一定的编程规则进行合成,但是,不论是哪种合成,一定得保证合成密码的复杂性与唯一性和几种密码之间的数据关联性以防破解,存贮卡的终端合成密码的合成原理也是一样的,就不再详述了。
6:隐形卡号:
①:隐形卡号就是没有银行记录,只有服务器与银行卡记录的一种动态电子数据;
②:通过柜员机或网上银行程序等采用一定的技术手段保证数据唯一性;
③:持卡人可以输入密码之后修改,但不提供查询,修改结果由柜员机等自动控制;
④:这种数据是一种没有加密的明文数据,其服务器端与银行卡的数据是完全一致的;
⑤:柜员机和POS机须读取隐形卡号,并与服务器记载的隐形卡号进行验证;
⑥:网上银行和手机银行登录时,没有用户名登录框供持卡人选择,只需要输入密码,电脑或手机会把读取的隐形卡号或手机账号通过后台作为用户名发送,系统返回卡号值,持卡人据此可以判断是否遭遇钓鱼网站;
⑦:一张银行卡的隐形卡号或手机账号都是不相同的;
⑧:不允许在银行柜台设置隐形卡号,手机银行的账号数据是卡片制造过程设定的;
⑨:手机银行使用IC卡与电话卡合二为一的,可以采用相同的方法设计隐形卡号。
在开卡之后,持卡人通过登录相应的终端,完成初始化,系统会分配一个卡号写入银行卡动态数据,这就是隐形卡号,隐形卡号要保证唯一性,一种方法就是利用交易日期和当日交易时的顺序数也就是利用application统计出全国当日交易的次序数即可,也可以采用交易区域或柜员机编号等方法确定唯一性,申请人于2011年12月08号补卡,她是当日第8191个开卡,补卡业务申请者,隐形卡号就可以是2011120800008191。写入信息后,系统会清除缓存,也就是说隐形卡号是没有银行记录的,持卡人向外公布的,银行操作的都是卡号,而柜员机和电脑,POS机则必须读取隐形卡号,网上银行或手机银行登录时,没有用户名登录框供持卡人选择,只需要输入密码,电脑会把读取的隐形卡号或手机账号通过后台作为用户名发送,系统返回卡号值,持卡人据此可以判断是否遭遇钓鱼网站,持卡人可以在柜员机,电脑上自行修改隐形卡号,系统计算出新隐形卡号重新写入即可,但是隐形卡号不设计查询功能,因为持卡人不需要知道隐形卡号的号码,由它的设计我们可以知道,一张银行卡的两个隐形卡号是不相同的,因为一张卡,我们在同一时间内不可能同步进行柜员机,或电脑中的两种交易,本发明中手机银行使用IC卡的,隐形卡号可以采用类似的方法设计与使用,不同的是,银行卡可以先查看卡号,而手机银行查看卡号不是很方便,手机账号预先设定在二维码等之中,它和隐形卡号的设计差不多,只是它是采用卡片制造厂的编号与日期和产品的顺序数完成唯一性。
7:银行卡的异卡控制:
持卡人具备两张或以上的身份证号码一致的银行卡,可以利用一张卡对另外一张卡实现部分功能的操作,或者是互相信赖的人或者是近亲属的银行卡进行控制,异卡控制功能可以适用任何形式的银行卡,异卡控制有两大类,即预约控制与即时控制,预约控制原理是:
①:授权控制:先将被控制的卡进入限制功能页面,设定允许异卡控制,两张银行卡卡主的身份证号码不一致时,需要输入控制银行卡的卡号,即授权该卡号银行卡具有控制权;
②:控制:插入控制的银行卡,进入限制功能页面后,选择控制我的其他银行卡,弹出持卡人的经过授权允许异卡控制的其他银行卡卡号,查找要控制的银行卡序列号,输入序列号即可,为了安全,卡号中有几个数字隐藏显示(一般隐藏倒数第5位到第8位,比方一张恒通卡卡号为6223 2213 2264 0072,就显示为6223 2213****0072,没有授权的银行卡不会出现在名单中,被控制的银行卡与控制银行卡卡主身份证号码不一致时,需要输入被控制银行卡的卡号,两种控制都需要授权控制才可以,但是一旦控制成功,只有控制银行卡选择放弃控制或者控制银行卡已经挂失,控制过程才会终止,异卡控制的预约控制可以对下述事项进行控制或取消控制,它可以控制其中的一项或多项,预约控制功能的控制或取消可以利用一个布尔数据进行控制,不过,控制银行卡不能查询被控银行卡的余额,也不能修改被控银行卡的密码,
具体是指:
Figure BSA00000893776400161
转账是否需要提供密码,是否支持简单输入转账,转账限额及数值修改;
Figure BSA00000893776400162
一定时间周期交易总额限制或不限制,一定时间周期交易总额的数值修改;
银行卡交易地点限制或取消限制,修改限制地点;
Figure BSA00000893776400164
银行卡的无密码支付功能,可以设定被控制的银行卡是否支持无密码支付以及无密码支付最高限额;
Figure BSA00000893776400165
银行卡持卡人在柜员机等终端的主动自助销卡;
Figure BSA00000893776400166
银行卡由他人在柜员机等终端自助销卡;
Figure BSA00000893776400167
银行卡持卡人在柜员机等终端的提示自助销卡,
即时控制,即时控制需要控制银行卡与被控银行卡身份证号码相同,不需预先设定,具体是:
Figure BSA00000893776400168
遗失银行卡在柜员机等终端的辅助挂失;
Figure BSA00000893776400169
被吞银行卡在柜员机等终端的自助取卡;
其中,前者的
Figure BSA000008937764001610
项不是异卡控制,由于另外两种销卡方式都归于异卡控制,故一并列出,先讲述预约控制:
转账是否需要提供密码,是否支持简单输入转账,转账限额及数值修改,转账选择提供密码的,这个密码的提供有一个有效时间,也就是转账接受方必须在一定的时间之内提供正确的密码,否则,该笔交易将被取消,转出方可以在有效期内插卡查询该笔交易的密码,转出方可以利用密码避免过后醒悟的受骗转账或过后觉得不好或没有必要的转账,转出方不提供密码导致的交易取消依旧要扣除交易费,持卡人选择简单输入转账时,可以选择经常转账的几个账号,输入简单账号后,系统会显示详细的账号,这几个账号无论持卡人选择转账是否需要提供密码,它们都不需要提供密码,可以设定单笔的转账限额;持卡人没有设定具体数值时,默认由一定时间周期交易总额限制,也可以取消这个默认,也就是不限制
Figure BSA00000893776400172
一定时间周期交易总额限制或不限制,一定时间周期交易总额的数值修改,这个一定时间周期一般以月为单位,月交易总额的数值修改;月交易总额的时间设定是由系统统一设定的,月交易总额时间限制为从阳历每月第一日的0:00开始到月尾的24:00结束,并不需要每张卡都设定,并且,月交易总额不叠加,也就是上月未交易完毕的余额不会叠加到下月使用,持卡人可以根据自己的实际开支情况,设置一个有一定的盈余量的合理的交易总额,由于他们的交易密码不一样,所以月交易总额有三种,即手机银行,网上银行,柜员机与POS机,目前的银行卡是设定日交易总额,这个额度一般是银行设定的,好像也没有更改选择;
Figure BSA00000893776400173
银行卡交易地点限制或取消限制,修改限制地点;
把全国的柜员机或POS机进行省,市分类编号,持卡人可以设定限制在某地的柜员机或POS机上进行交易以及是否允许在港澳台或国外的柜员机或POS机上进行交易,可同时设置几个,经过限制后只能在设定区域的柜员机上完成交易,交易地点只针对柜员机与POS机,网上银行和手机银行根据IP地址也是可以锁定交易区域的;
Figure BSA00000893776400174
银行卡的无密码支付功能,可以设定被控制的银行卡是否支持无密码支付以及无密码支付最高限额,设定支持无密码支付后,持卡人就可以持被控制的银行卡不用输入密码直接进行交易,无密码支付功能也是一种联机交易,只是没有输入密码而已,它是利用隐形卡号和身份证号码替代码等防卡片复制技术保证交易安全的,无密码支付只支持小额支付,编程时应对持卡人可以设定的最高限额进行控制,这里的无密码支付最高限额也是一种一定时间周期交易总额限制技术,不同的是,依据交易习惯,它一般以日为单位进行限制,没有交易完的不叠加,月交易总额限制享有优先权,也就是持卡人一月之内消费总额达到月交易总额限制数,无密码支付功能停止支付,无密码支付只提供支付功能,无法查询,查询余额要输入密码,持卡人可以利用手机短信息等进行资金流动的监控,无密码支付功能可以避免持卡人每次交易都要输入密码,对于一些小额交易免输密码,可以降低密码被盗的概率,对于一些农村老人或者是智力障碍人士而言,需要的钱或者是持有的钱不多,完成自助交易有困难,子女或亲人一次性给付资金过多,风险性更大,无密码支付将银行卡当成一个储钱罐,一次取一点,用完再取;
Figure BSA00000893776400175
银行卡持卡人在柜员机等终端的主动自助销卡,持卡人利用终端设备自助完成销卡的过程就是主动销卡,为了防止他人掌握密码后销卡,主动销卡利用异卡控制,持卡人先插入被控制银行卡,选择允许主动销卡,此时,再插入控制银行卡,选择需要销卡的银行卡序列号即可,其他技术要点同异卡控制,销卡时,插入需要销卡的银行卡,进入操作页面后,资金处理妥善后就完成了销卡操作;
Figure BSA00000893776400176
银行卡由他人在柜员机等终端自助销卡,持卡人利用自己开户的银行卡,先插入被控制的银行卡,选择允许别的银行卡控制特殊交易,再插入控制银行卡,选择允许特殊交易控制选项,此时弹出窗口,授权过的银行卡出现在选项中,选择其序列号即可控制列表中这几张银行卡的特殊交易,上述过程是针对的指纹密码限制的银行卡,所以持卡人的操作是需要指纹验证的,被继承人选择使用指纹密码的,没有在生前取完卡里资金,继承人就可以利用这个功能进行特殊交易,被继承人告诉继承人或近亲属密码,该人凭密码插入被继承人的银行卡,如果是控制银行卡,不需要输入指纹,就会有一个特殊交易选项,选择控制取现的银行卡序列号,只有授权的银行卡出现在列表中,接着在一定的时间段内,插入被控制的银行卡,不需要指纹,光凭密码即可以进入,进入后,完成资金处置后,即完成销卡,完成多张银行卡的销卡的,最后一张卡是一张控制银行卡,假如数额巨大,可以在柜台操作,系统验证通过后,被控制的银行卡会支付卡内资金并销卡,所有的采用指纹或其他的人体的生物特征为密码构成部分,排斥他人即使获得持卡人授权依旧无法交易的银行卡,都可以采用这个方法或类似方法完成交易,特殊交易针对的是持卡人亡故后的一种特殊授权他人处置自己财产的方法,它类似是一种基于计算机原理的遗嘱,这也是符合继承法规定的,但是,特殊交易只是针对的资金提取的授权,它与继承无关;
Figure BSA00000893776400181
银行卡持卡人在柜员机等终端的提示自助销卡,当持卡人操作的银行卡资金过少,例如低于100元时,系统就会询问持卡人是否需要销卡,持卡人选择“是”,将资金处理妥善后,系统就会进入销卡操作,完成销卡后,就会弹出相关提示,此卡不能再行使用,
已经销户的银行卡资料进入专门的销户数据库,普通方法不再可以查询,已经销户的银行卡资料经过一定的时间会消除记录,我国有近30亿张银行卡,其中只有大约10亿张左右处于活跃状态,大量的未使用银行卡占用系统资源,没有及时销卡也可能存在安全隐患,但目前的销卡手续比较麻烦,没有提供自助销卡路径供持卡人选择,
再讲述即时控制:
Figure BSA00000893776400182
遗失银行卡在柜员机等终端的辅助挂失,持卡人利用与遗失的银行卡的卡主身份证号码相同的其他银行卡,在柜员机上输入密码,选择资金冻结,此时,除这张插入的银行卡外,其他的该身份证号码对应的全部银行卡资金均被冻结,假如有一张卡正在别的柜员机上进行交易,也会强行退出,将剩余资金冻结,选择资金冻结后,会弹出子窗口,显示该身份证号码对应的所有银行卡资料,包括开户银行,卡号等,但不能显示资金,为了安全,卡号中有几个数字隐藏显示(一般隐藏倒数第5位到第8位,比方一张恒通卡卡号为6223 2213 22640072,就显示为6223 2213 **** 0072,持卡人输入遗失的银行卡对应的序列号,则该银行卡资金会自动冻结24小时或者第二天通过柜台挂失,其他没有选择的银行卡资金则自动解冻,假如持卡人有效的身份证件遗失而无法挂失时,则选择无证件冻结,无证件冻结的银行卡资金无法自动解冻,银行方面亦无法解冻,持卡人重新办理了有关身份证件后,必须先取消无证件冻结,再利用身份证件进行挂失;
Figure BSA00000893776400183
被吞银行卡在柜员机等终端的自助取卡,持卡人利用与被吞银行卡的卡主身份证号码相同的其他银行卡,在柜员机上输入密码,选择“查找我的被吞银行卡”,系统会检测柜员机被吞的银行卡,这些被吞的银行卡设置在特定地方,有相关银行卡的,此时,系统会告知持卡人,要求持卡人退卡,稍等一会,被吞的卡就会退出来,如果因为输入密码错误引起的吞卡,插卡人修改密码后就可以使用了,如果是背面密码错误的,只能换卡。
8:身份证号码替代码:
身份证号码替代码就是一种银行柜台操作人员判断请求交易的人员提供的身份证号码是否相符,网络交易系统判断银行卡真伪的一种技术:
①:交易人员提交的身份证号码不符时,会导致计算不出正确的身份证号码替代码;
②:系统识别出银行卡记载的身份证号码替代码不符时,会把该卡当成伪卡处理;
③:手机银行与网上银行交易时;身份证号码替代码不会发送到对方网站,持卡人提供正确的银行卡出现伪卡信息时,证明遭遇了钓鱼网站,对方网站没有提供正确的身份证号码导致计算结果出错;
④:身份证号码替代码的初始化只能由持卡人在网上银行等上面自助完成,柜员机是初始化背面密码时同步完成的,并不需要持卡人知情或额外操作,
身份证号码记载在银行卡上是有安全隐患的,别人利用读卡器很容易读出,有些人喜欢使用生日做密码,以及别人伪造身份证等等,本发明设计了身份证号码替代码,它采用编程原理,将身份证号码进行加密,与密码不同的是,它是一种匹配结果,不需要保证唯一性,服务器端存贮的是身份证号码,银行卡存贮的才是身份证号码替代码,银行和服务器都没有存贮身份证号码替代码,柜台核实持卡人身份真伪,是由持卡人提供身份证,通过系统计算匹配性,系统核实银行卡真伪,则是由服务器返回身份证号码,由终端计算出的身份证号码替代码与银行卡记载的身份证号码替代码是否相符判断银行卡真伪,
生成身份证号码替代码示例:它是把身份证号码三个数字一组分成6组,每组三个数字,每三个数字除以一个数11,余数加1为几,就从第几位开始截取对应的6组背面密码的原始字符串,截取五位,转换成62进制数据后,再利用身份证号码除以转码表,密码排列控制表的总个数,余数加1为几,这个数就是相应的数据表连接变量,程序据此连接到相应的数据表,将6组数字转码之后重新排列顺序,只是不使用字符替代码技术,而是把身份证号码的数字与转码后的结果相加,结果≥62的,就存贮对应的数字或字母即可,由此我们可以知道,虽然身份证号码是一致的,但是本发明中三种存贮介质中的身份证号码替代码都是不相同的,这个只读数据只是存贮在银行卡上,不会发送到服务器,系统会计算二者有没有对应关系,如果服务器计算出二者不匹配,同样会拒绝交易,柜台操作时,由于身份证号码并没有记载在银行卡上,持卡人提交的银行卡同样有一个计算验证过程,设计系统不显示持卡人的身份证号码替代码,只是给出结果是否匹配的结论提供给银行工作人员,身份证号码替代码也可以采用其他方法合成,基本设计要点就是提交身份证号码后,就可以由系统获得身份证号码替代码即可。
七:部分数据分析:
密码越复杂越难破解,但是目前的磁卡很难提供比较复杂的数据用于密码合成,而软件密码存在先天不足,本设计主要就是解决由简单的数据完成复杂的密码设计,在本说明书的示例中,由磁道或其他存贮介质提供的读写数据中,只需要密码加载码的6组数据共24字节,以及连接转码表,和密码排列控制表的2个公用连接变量,字符替代码表的2个私有连接路径变量数据,这里设定都是占有两个字节,也就是最高允许连接从0到99,每个类型的数据表有100个差不多了,共6字节,以及密码排列控制表的控制原始值和预警密码控制值,它们都是1到6中的一个数,共2字节,也就是只有34字节,磁卡的RW磁道为107字节,而对于程序大小,300个数据表每一个数据表按500K计算,也就是150M,目前的终端设备的硬盘空间存贮这一点数据根本不成问题,在示例的密码方面,持卡人输入的依旧是6位数字,密码字节数,用户密码除预警密码之后,理论算法最少7字节(27位全部为数字,替代成全部为一位字母),最多31字节(一个为数字替代成中文,其余为字母),背面密码最少9字节,最多34字节(一个为数字替代成中文,其余为字母),预警密码最少1字节,最多4字节(一个为数字替代成中文,其余为字母),也就是说,其密码数介于17到69字节之间(含17和69),以70字节记,全国有大约30亿张银行卡,30亿就是3G(30亿为3,000,000,000,1G为1,000,000,000),全国的银行卡密码存贮字节数大约210GB。

Claims (9)

1.一种利用卡片异常检获系统控制的具有多个密码的可异卡控制的可报警的带有隐形卡号的银行卡,其特征是:
四种交易模式的三种独立数据:银行卡的柜员机与POS数据,网上银行或手机银行数据都是互不相干的,柜员机与POS机采用同样的数据,它们的业务与交易过程也是独立的,所以可以单独采用或操作,但是它们共用同一个账号(手机银行没有这个账号)和卡号,柜员机与POS机数据由磁条或其他数据存贮介质提供,背面密码原始数据则是扫描获得,网上银行数据由存贮卡或IC卡提供,手机银行数据由扫描二维码等获得,在硬件设计方面,存贮卡内置在银行卡上,它跟磁条有些相似,是信息记忆载体,它分为读写部分与只读部分,使用电路触点或金手指等,通过专用的USB转接线连接到电脑获取存贮卡数据,也可以在电脑上设置专用银行卡插口用于网上银行操作,这个插口也可以兼容实现接触式IC卡的网上银行数据读取,而背面密码原始数据是在银行卡背面用漆膜等覆盖物覆盖的类似即开式彩票的几组数据,手机识别数据是在银行卡背面利用漆膜等覆盖物覆盖的二维码或其他可以被智能手机扫描的数据,手机银行的账号采用类似隐形卡号的部分组成;
基于硬件的终端合成密码,本发明把银行卡当成动态数据库与静态数据库存贮介质,动态数据就是银行卡数据存贮介质中的可读写数据,它们的改写受服务器端控制,静态数据就是不能改写的数据,终端合成密码就是通过银行卡提供的动态数据或其他数据作为数据表或是数据连接路径变量或者是部分密码数据,利用它们从终端程序数据库中选择性的获得复杂的数据参与合成或控制的密码,用户密码,预警密码,背面密码与指纹密码都是利用终端合成密码合成的,这种密码可以适用任何银行卡,采用磁条设计这种密码可以防止病毒侵入银行卡支付系统;
三种防复制与反钓鱼网站的数据:本银行卡在银行柜台完成部分操作后,还有背面密码,隐形卡号与身份证号码替代码初始化过程必须在柜员机上完成后才能正常使用,这三种防复制方法可以采用其中的一种或几种,其中网上银行隐形卡号和手机银行账号以及身份证号码替代码具有反钓鱼网站功能;
两种报警模式,一是基于银行卡遗失在柜员机或其他紧急情况下,操作人员能够主动或被动改变某些控制设备的控制状态,系统程序依据这些状态的改变从而做出退出交易页面或启动报警的安全物理装置及相应的程序设计的卡片异常检获系统,二是遇到紧急情况或逼问密码时的接通110的后台报警系统,它们可以单独采用,也可以综合采用;
异卡控制:利用银行卡的卡主身份证号码一致预先用一张卡设定对另一张卡的部分交易过程进行限制或控制,或者是银行卡遗失或吞卡或不需要银行卡后,利用柜员机等自助操作处理相关事宜,或者是互相信赖的人或者是近亲属的银行卡,预先用某人的银行卡设定对另一人的银行卡的部分交易过程进行限制或控制,异卡控制可以适用任何银行卡。
2.依据权利要求1所述的卡片异常检获系统,其特征是:
卡片异常检获系统就是操作人员能够主动或被动改变某些控制设备的控制状态,系统程序依据这些状态的改变从而做出退出交易页面或启动报警的安全物理装置及相应程序设计,
示例:脚踩开关是一个省力杠杆装置,连接一块有一个小孔的铁片,没有踩住时,弹簧朝下顶住铁片,小孔位置不对,光电管或其他感应装置不能进行工作,用脚踩住后,小孔的位置上移对准发光小灯泡(这里设置的上下位置是即使弹簧坏掉,铁片也会由于重力作用造成小孔位置不对,铁片的重量要保证在不操作的情况下,其重力可以保证这一状态存在),光电管开始工作,一旦光电管停止工作,系统获知信息,即退出交易页面,经过一定的时间(设置30秒应该就可以了,持卡人即使离开,也没有走多远),系统检测到银行卡还在柜员机里,即启动语音和警示灯光等报警,提醒持卡人取卡,这里没有设置电动开关,是因为电动开关容易出故障,这种设计在于,发光小灯泡或者光电管之类的装置坏掉,也是不能交易,只需要通知银行处理即可,这种设计需要持卡人踩住,我们也可以利用光电管或是红外线等,将柜员机与遮棚或机房获得一个通路,持卡人操作时,会挡住其通路,持卡人离开后,通路接通,假如卡还在柜员机里,就进入报警程序,也可是其他的有相似功能的系统控制交易过程。
3.依据权利要求1所述的背面密码,其特征是:
背面密码就是利用印制在银行卡背面的字符串为原始数据通过加密获得的一种密码,
①:背面密码原始数据是卡片制造过程中就已经预先印制好并经过覆盖处理的数据;
②:这种密码的印制过程并不需要卡片制造厂家存贮具体的数据,它由电脑控制随机生成的一定长度的字符串,或者是计算机能够识别的二维码,条形码等;
③:背面密码原始数据一般比较复杂,要保证普通人看一下基本无法记住;
④:只所以设置在背面,是为了防止偷看的人同步看到卡号和这种密码,
⑤:背面密码只能在柜员机等上面不能在银行柜台完成初始化,而且,其初始化过程中一并初始化隐形卡号和身份证号码替代码,
⑥:后期加密:背面密码采用终端合成密码的方法进行加密。
4.依据权利要求1所述的预警密码和后台报警系统,其特征是:
后台报警系统就是前台操作页面看不出异常,但是能够由系统判断出操作是非法操作或者是违背持卡人意愿的操作,后台通知接通110报警系统的一种程序设计,
预警模式,这种模式的前台页面与正常模式一模一样,只是此模式下的可交易金额是由持卡人预先设定的,并且这个设定的存款数最好不要低于500元,而且最好带两位尾数比方说534.23元,不允许透支的银行卡,在实际存款数低于设定数时,预警模式显示的为实际存款数,假如持卡人不设定这个金额,预警模式显示持卡人真实的存款数,在这个模式下,前台允许操作人进行看似合法的交易,系统后台会偷偷接通附近的派出所110报警系统,如果持卡人滥用预警模式,可能遭到相应处罚,
预警密码是柜员机交易的专用密码,手机银行和网上银行没有预警密码,输入密码由预警密码控制值(这个值由银行卡可读写数据提供,它的有效值由银行卡密码位数确定,现在的银行卡密码位数是6位,因此此值是1到6)指定的那一位错误而其他全部正确进入的页面模式就是预警模式,指定的这一位就是预警密码,所有的输入密码都有9个错误预警密码可以进入预警模式,预警密码是一位比较特殊的输入密码,
构成示例和功能介绍:由输入密码转换成用户密码以及利用密码加载码合成时,预警密码和其他五位密码都是利用输入密码字符的先后位置合成的,只是合成后是单独存贮的,而其他五位是将合成结果进行合并后存贮的,系统检测到其他五位的合成结果相同而预警密码不符,即进入预警模式,持卡人可以利用任意一个错误的预警密码,进入预警模式后,再使用别的错误的预警密码和正确的原密码,都是进入预警模式,预警模式只有通过银行柜台才会解除锁定,恢复正常使用,预警模式需要设定生效,缺省模式是密码错误,预警密码可以适用基于任何原理的银行卡,
后期处理:预警密码采用终端合成密码的方法进行加密,它的加密和用户密码密不可分,
另外一种预警密码是特服号码尾号,它是将银行卡绑定电话号码(手机号码),全国设定一个固定的特服号码,这个特服号码就是类似119这样的,然后持卡人自行设置一定的尾号,一般建议设置1至2位尾号,这个特服号码必须加上尾号才可以成功拨打,但是特服号码加任何有效尾号都可以成功拨打,持卡人每次交易前,必须拨打这个电话号码请求交易,只要接通即可,电信公司接到通信服务请求后,将拨打的号码与时间发送到银联公司的专用服务器,再传送到银行卡支付系统,持卡人拨打的特服号码尾号与服务器记载的特服号码尾号一致时,即按照正常交易进行,不一致时,交易依照预警模式进行,只有银行卡交易通过密码验证请求后,才会启动电话密码验证,持卡人经过一定的时间不上机交易,记录被清除,请求即被取消,持卡人必须再次拨打,为了防止恶意拨打,这项服务应该收费,持卡人取消电话密码服务的,由于服务的定制与取消是利用一个布尔数据进行控制,只要设定的银行卡绑定手机短消息服务或者电话密码服务其手机号码仍旧有效,也可以利用绑定的手机号码临时拨打,当出现拨打的尾号与持卡人设定的尾号不一致时,就可以进入预警模式,只是编程时,手机程序设定拨打的这类号码不能在手机里有尾号记录,电信公司的记录里程序设计只能显示特服号码不能显示尾号,尾号通过后台发送,此外,手机的电话薄等相应的功能也不能存贮这类号码,必须通过按键或手写号码拨号。
5.依据权利要求1所述的指纹密码,其特征是:
指纹是一种模糊验证,由于持卡人输入的指纹与系统存贮的指纹数据不会完全一致,而需要通过计算机进行智能化分析,所以,指纹不能通过不可逆方法加密,
①:指纹密码是利用至少两种指纹数据以外的数据,其中一种是服务器从后台传送过来的数据到终端;
②:它采用可逆算法技术完成加密与解密,这里的可逆算法可以是一些数学运算规则,也可以是一些函数或编程规则,解密后的最终数据为采集的指纹数据;
③验证时解密数据存于终端程序的cookies中,一旦验证完毕,即清空数据,银行卡始终存贮的是加密数据;
④加密与解密由系统自动完成,它们可以采用静态数据存贮,也可以采用动态数据存贮,采用动态数据存贮时,选择修改密码,可以由系统自动修改指纹数据以外的动态数据完成密码的修改;
⑤指纹数据也可以修改,指纹验证通过后,选择修改指纹数据,系统会以本次的指纹数据为原始数据进行加密,或者持卡人利用另一个指纹进行修改,指纹数据的修改同样需要原指纹数据为动态数据。
6.依据权利要求1,权利要求3,权利要求4,权利要求5所述的终端合成密码,其特征是:
①:终端合成密码就是通过银行卡提供的动态数据或其他数据作为数据表或是数据连接路径变量或者是部分密码数据,利用它们从终端程序数据库中选择性的获得复杂的数据参与合成或控制的密码,终端合成密码有两种合成方式,一种是直接合成,也就是将两种或两种以上的数据利用一定的编程规则合成新数据,然后利用MD5之类的软件加密,但是,磁卡本身无法提供太复杂的数据,利用这种方法合成的密码安全等级不是很高,这里不建议采用,还有一种是间接合成,本发明例举的就是间接合成,它与U盾或芯片卡通过自身微电脑提供的密码加密程序合成密码的原理有区别,它是由持卡人提供的密码与银行卡提供的动态或静态数据为原始密码或原始密码的中间数据,利用具有密码运算能力的终端设备(手机,柜员机与家用电脑等)提供的程序生成的电子加密数据,相同点是它们都可以归类为硬件密码,终端合成密码在网上银行,手机银行与柜员机使用的是不同的密码,不过,柜员机与POS机使用的是相同的密码;
②:终端合成密码程序调用数据表或数据:
调用数据表:银联终端设备等存贮一定数量的数据表,它们在同一数据库下(在编程时,一般都是先连接数据库,再连接数据表),数据表名称形式AB,如果A相同而B不相同(A为数据表主名称,B为阿拉伯数字序号),就表示它们为同一类型数据表,数据结构包括字段和数据类型都相同,只有数据不同,在编程连接数据表时完成调用,例如连接数据表SQL语句select*from chinese_FourCodeB表示链接到某个数据表,chinese_FourCode就是数据表名称形式的A,B就是银行卡的动态数据提供的连接路径变量,假如银行卡对应的此数据B为7,就是通过编程语句指定链接到表名为chinese_FourCode7的数据表,本发明的示例是指连接到字符替代码表,转码表和密码排列控制表,程序据此连接到指定的数据表,为了防止破解,连接数据可以分为公有数据表连接路径变量与私有数据表连接路径变量数据,用户密码,背面密码在合成各自的终端合成密码时采用公有数据表路径变量指向同一个转码表和密码排列控制表,却连接不同的字符替代码表,
调用数据:有的数据表只有一个,程序在获取这些表的数据时是通过银行卡提供的几组数据,这几组数据与这些数据表的数据按照一定的编程规则连接,一般是银行卡数据与数据表的数据ID号产生一定的关联进行连接,将该ID号对应的数据调入系统进行加密,示例中连接的是密码加载码;
③:程序数据库的固定,虽然各种数据表可以自由设计,但是,程序设计完成后,所有的数据表及数据以及合成规则在所有的同一类型的实体终端是完全一样的,这样,在每一台同一类型的实体终端上,都会获得完全一致的密码数据,也就是说这种密码设计同样遵循所有的同一类型的实体终端密码算法一致这个基本原理,
下面介绍终端合成密码示例需要的专用术语及其定义:
①:62进制,这里的62进制是指采用62位字符表示的一种数制,这种数制可以和10进制数据或2进制数据完成互换,本发明利用数字与大小写字母表示这种数制,它们是指定利用阿拉伯数字0到9表示0到9,字母的小写a到z表示10到35,字母的大写A到Z表示36到61的的数制算法,也可以有其他的指定方案,后面部分讲述的数字或字母的本位码,转码算法等也遵循同样的规律,本发明中,密码加载码表示区段为十进位00000(0)到99999,相应的62进制为000(0)到q0T,也就是说,将十进制的五位数变成了三位数字与字母组合数,这里的62进制算法介绍一种除权值余数与结果综合取值法,任何进制(进制设为N)的数,其右起第一位权值为1,第二位权值为进制数N,第三位权值为进制数的平方N2,本处只需要用到三位数,62的平方为3844,因此,将五位数除以3844,将余数除以62,将第一次的结果,第二次的结果和最终的余数按顺序排列,用62进制表示即可;
②:数字与字母的转换算法,用一个数字或字母获得另一个数字或字母或者是用一组数字或字母获得另一组数字或字母的转换算法,转换算法遵循以下规律
Figure FSA00000893776300041
不同的源码相同的算法转换之后结果是不能相同的;
Figure FSA00000893776300042
同一源码的几种算法的转换结果互相也不能相同;
Figure FSA00000893776300043
转码的结果也不能与源码相同;
转码要设置几种转码算法,以强化密码的组合复杂性,
示例是设置四种,即A,B,C,D算法,它是以数字和字母的本位码为基础条件进行转换的,
数字的本位码:数字0到9的本位码分别是数字0到9;
小写字母的本位码:字母a到z的本位码分别是数字10到35;
大写字母的本位码:字母A到Z的本位码分别是数字36到61;
这里例举的是ABCD算法,其中A算法,B算法,C算法是以本位码为基础进行的数学运算,但是D算法经过人工调整,没有什么算法规律,
A算法:数字或字母的本位码加该本位码后的第2位奇数就是此数字或字母的A码转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母,转码记为A;
B算法:数字或字母的本位码加该本位码后第13位奇数就是此数字或字母的B码转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母,转码记为B;
C算法:数字或字母的本位码加30就是该数字或字母的C码转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母,转码记为C;
D算法:D算法基本遵循数字或字母的本位码加该本位码后的第3个偶数就是该数字或字母的D码转码算法,结果≥62的,就减62,为了防止数据相同性冲突,做了部分位置调整,记载其本位码对应的数字或字母,转码记为D,
③:密码加载码表:原始密码是和一定长度的字符段利用一定的编程规则进行加密的,这种原始密码字符段就是密码加载码,密码加载码和其ID号对照表就是密码加载码表,一般密码加载码需要一定数量的组数,本说明书示例设计密码加载码共10000组,
终端合成密码要调用这些数据中的几组数据参与密码的合成,银行卡开卡时,系统会生成几组供调用的连接变量数据,目前的银行卡密码是6位,所以是6组0到9999之间的可读写数据为调用的连接变量,由于ID号是自动编号,而一般ID号是从1开始的,银行卡数据与ID号挂钩时,有可能出现0,因为磁卡为了节省空间,允许出现0,手机银行与网上银行的记忆模块容量也不需要很大,解决方法有两种,一种是其他的一一对应,而0则使用IF语句,也就是出现0,就连接ID号为10000的密码加载码数据,还有一种方案就是把所有的原数据加1,比方说磁卡存贮的为353,就连接ID号354的密码加载码数据,这样,系统检索连接变量,把对应的密码加载码引入程序就完成了数据调用,而背面密码调用此数据时可以直接调用,也可以先进行一定的规则编程,这里例举一种方法,就是把用户密码的6组原始密码数据转换成10进制数据,分别除以一个特定的数,比方说11,把余数加1,就从这一位开始截取背面密码的原始数据,截取四位,这样获得6组四位数字的代码,如果没有用户密码的这6组数字,就用背面密码的6组数字除以一个数,比方说11,其他操作则是一样,把这6组数字和银行卡对应的6组连接数分别相加,是每一位分别相加,结果≥10的,就减10,用6组新数据完成密码加载码的调用工作,虽然银行卡记载的密码加载码的调用的连接变量只有6组,我们还是可以使用多种方法获得新的6组数,这样密码更加复杂,密码加载码表是本设计中一个最重要的表,它的设计质量直接影响到密码的复杂程度,本示例中密码加载码为22位随机数字,这个22位是依据说明书描述需要和易于理解人为规定的,可以依据编程需要设定,示例由截码函数substring的参数来决定,start值确定起始位置,length确定长度,假如start值为15,length值为10,22位就不够,假如start值为11,22位后面的两位就只会占据数据库空间,永远无法使用,这里要注意程序设计随机字符串时应保证不出现连续11个或以上相同数字或两个数字重叠(就是相同数字最高只允许出现截取后的字符段长度,这样才不会出现密码不同,截取的字符段却相同这种情况),一些比较特殊的组合比方说7个8等也要尽量避免,在设计数据库时这是可以人为控制的,再就是组合数,这里建议10000组,也就是ID号从1到10000,数据太庞大,手机应用有困难,数据太少,密码安全性不够好,采用10000位,银行卡就是四位数字0到9999,6组数据为24位数字共24字节,在安全性与空间方面有一个适度的平衡,据此,银行卡的密码组合在这里就拓展到亿亿亿次位,即10的24次方;
④:转码表:待转码的每个字符作为源码,经过一定的规则转换成另外一个字符,确定转码方向的规则和转码引导值(也就是编号)对照表就是转码表,它的特征如下:
Figure FSA00000893776300051
转码规则位数由源码位数确定;
Figure FSA00000893776300052
转码的项数由转码算法确定;
Figure FSA00000893776300053
转码引导值MAX值由源码位数和转码算法确定,具体是转码算法的源码位数的次方,示例,转码算法为N种,源码位数为M,则转码引导值MAX值为NM
Figure FSA00000893776300054
转码引导值由源码获取,将源码转换成10进制数据,将10进制数据除以NM,余数加1为几,就查找该数字编号对应的转码规则进行转码,
在实际设计过程中,同一个表的编号与转码是一一对应关系的,但是不同的表允许部分数据相同,比方两张表编号25同为BCB等,假如表格比较多,要保证编号与转码一一对应,并不容易,特别是后面提到的字符替代码表,要保证编号与替代码的这种关系就非常困难了,为了解决实际设计问题,发明人推荐一种抓阉法,也就是采用比较规律的办法先行书写相关数据,比方说此表从AAA到DDD,字符替代码可以按照英文的顺序书写英文以及部首与笔画数等目前字典排布的方法书写中文,这样凑齐一万个就没有多少技术难度了,而且很容易保证不出现相同的数据,然后揉成纸团,混合,再在一张比较大的纸张上面分成100个区域,每一个区域放一个,编号就是1到100,统计完后,又放第二批,编号101到200,这样,顺次下去就完成所有的编号与替代码的统计工作,做完后,重新混合,又进行第二张表的工作,虽然有些繁琐,但是能够保证设计符合要求,本表相对容易很多,就是书写64个纸团,混合好后,直接与编号一一对应,抓阉后又重新混合,再抓阉,数据表连接路径变量和控制原始值由银行卡指定,数据表连接路径变量由数据表的个数决定,也就是假如只有10个转码表,相应的变量也只能有10个,不允许出现空连接,后面的三个表格也是一样不允许出现空连接;
⑤:密码排列控制表,经过转码加密后的密码的排列次序是与原始密码的排列次序是一致的,合成过程中改变密码排列次序的表就是密码排列控制表,密码排列控制表的待排列部分不一定与原始密码的部分数相同,可以利用一定的编程方法将密码分成几部分后进行重排,密码排列控制表由控制值和排列次序两部分组成,控制值由分成的部分数决定,也就是计算过程中不允许出现空连接;
⑥:字符替代码表,将密码的一部分字符用其他的字符进行取代的一种加密方法就是字符替代,这个表的基本特征是:
Figure FSA00000893776300061
字符和编号是互相唯一对应的关系;
Figure FSA00000893776300062
字符替代码表所有的表采用的所有字符都是相同的,不同的表只是字符与编号不同;
Figure FSA00000893776300063
取代后的字符与没有替代的字符最好有相同的字符类型;
一般被替换的字符是同一类型的字符,比方说要替换数字,那么就替换全部的数字,而换上去的可以有不同类型的字符;
被替换的字符应一次替换几个,而插入字符的位置,利用逻辑语句进行判断,这会加大破解难度;
Figure FSA00000893776300066
从理论上看,可以利用任何一种字符替代另外一种字符,但是,应该考虑替代后密码数据字节数和其他因素,要利于编程设计和实际需要,
终端合成密码的具体合成过程:软件部分设计参考如下,这里的例子仅仅描述了申请人认为一种比较好的实现终端合成密码的方式而已,其先后顺序也可能改变,但是,明显不合逻辑的更改顺序是不可以的:
①:引进密码加载码;
②:将密码加载码进行截取字符串或其他的采用一定的编程方法引用其中的一部分字符;
③:将所有的数据按照转码规则进行转码,为了强化防破解效果,这里建议多转码几次;
④:将预警密码单独列出,其他的用户密码和背面密码进行重新排序;
⑤:与另外一部分数据进行效验;
⑥:把它们分别利用字符替代码进行处理,获得最终的终端合成密码,
我们其实还可以利用left,right之类的函数或者是一定的编程规则进行合成,但是,不论是哪种合成,一定得保证合成密码的复杂性与唯一性和几种密码之间的数据关联性以防破解,存贮卡的终端合成密码的合成原理也是一样的,就不再详述了。
7.依据权利要求1所述的隐形卡号与手机账号,其特征是:
①:隐形卡号就是没有银行记录,只有服务器与银行卡记录的一种动态电子数据;
②:通过柜员机或网上银行程序等采用一定的技术手段保证数据唯一性;
③:持卡人可以输入密码之后修改,但不提供查询,修改结果由柜员机等自动控制;
④:这种数据是一种没有加密的明文数据,其服务器端与银行卡的数据是完全一致的;
⑤:柜员机和POS机须读取隐形卡号,并与服务器记载的隐形卡号进行验证;
⑥:网上银行和手机银行登录时,没有用户名登录框供持卡人选择,只需要输入密码,电脑或手机会把读取的隐形卡号或手机账号通过后台作为用户名发送,系统返回卡号值,持卡人据此可以判断是否遭遇钓鱼网站;
⑦:一张银行卡的隐形卡号或手机账号都是不相同的;
⑧:不允许在银行柜台设置隐形卡号,手机银行的账号数据是卡片制造过程设定的;
⑨:手机银行使用IC卡与电话卡合二为一的,可以采用相同的方法设计隐形卡号。
8.依据权利要求1所述的异卡控制,其特征是:
持卡人具备两张或以上的身份证号码一致的银行卡,可以利用一张卡对另外一张卡实现部分功能的操作,或者是互相信赖的人或者是近亲属的银行卡进行控制,异卡控制功能可以适用任何形式的银行卡,异卡控制有两大类,即预约控制与即时控制,预约控制原理是:
①:授权控制:先将被控制的卡进入限制功能页面,设定允许异卡控制,两张银行卡卡主的身份证号码不一致时,需要输入控制银行卡的卡号,即授权该卡号银行卡具有控制权;
②:控制:插入控制的银行卡,进入限制功能页面后,选择控制我的其他银行卡,弹出持卡人的经过授权允许异卡控制的其他银行卡卡号,查找要控制的银行卡序列号,输入序列号即可,为了安全,卡号中有几个数字隐藏显示(一般隐藏倒数第5位到第8位,比方一张恒通卡卡号为6223 2213 2264 0072,就显示为6223 2213 **** 0072,没有授权的银行卡不会出现在名单中,被控制的银行卡与控制银行卡卡主身份证号码不一致时,需要输入被控制银行卡的卡号,两种控制都需要授权控制才可以,但是一旦控制成功,只有控制银行卡选择放弃控制或者控制银行卡已经挂失,控制过程才会终止,异卡控制的预约控制可以对下述事项进行控制或取消控制,它可以控制其中的一项或多项,预约控制功能的控制或取消可以利用一个布尔数据进行控制,不过,控制银行卡不能查询被控银行卡的余额,也不能修改被控银行卡的密码,
具体是指:
转账是否需要提供密码,是否支持简单输入转账,转账限额及数值修改;
Figure FSA00000893776300072
一定时间周期交易总额限制或不限制,一定时间周期交易总额的数值修改;
Figure FSA00000893776300073
银行卡交易地点限制或取消限制,修改限制地点;
Figure FSA00000893776300074
银行卡的无密码支付功能,可以设定被控制的银行卡是否支持无密码支付以及无密码支付最高限额;
Figure FSA00000893776300075
银行卡持卡人在柜员机等终端的主动自助销卡;
Figure FSA00000893776300076
银行卡由他人在柜员机等终端自助销卡;
Figure FSA00000893776300077
银行卡持卡人在柜员机等终端的提示自助销卡,
已经销户的银行卡资料进入专门的销户数据库,普通方法不再可以查询,已经销户的银行卡资料经过一定的时间会消除记录,
即时控制,即时控制需要控制银行卡与被控银行卡身份证号码相同,不需预先设定,具体是:
Figure FSA00000893776300078
遗失银行卡在柜员机等终端的辅助挂失;
Figure FSA00000893776300079
被吞银行卡在柜员机等终端的自助取卡,
其中,前者的
Figure FSA000008937763000710
项不是异卡控制,由于另外两种销卡方式都归于异卡控制,故一并列出。
9.依据权利要求1所述的身份证号码替代码,其特征是:
身份证号码替代码就是一种银行柜台操作人员判断请求交易的人员提供的身份证号码是
否相符,网络交易系统判断银行卡真伪的一种技术:
①:交易人员提交的身份证号码不符时,会导致计算不出正确的身份证号码替代码;
②:系统识别出银行卡记载的身份证号码替代码不符时,会把该卡当成伪卡处理;
③:手机银行与网上银行交易时;身份证号码替代码不会发送到对方网站,持卡人提供正确的银行卡出现伪卡信息时,证明遭遇了钓鱼网站,对方网站没有提供正确的身份证号码导致计算结果出错;
④:身份证号码替代码的初始化只能由持卡人在网上银行等上面自助完成,柜员机是初始化背面密码时同步完成的,并不需要持卡人知情或额外操作,
身份证号码记载在银行卡上是有安全隐患的,别人利用读卡器很容易读出,有些人喜欢使用生日做密码,以及别人伪造身份证等等,本发明设计了身份证号码替代码,它采用编程原理,将身份证号码进行加密,与密码不同的是,它是一种匹配结果,不需要保证唯一性,服务器端存贮的是身份证号码,银行卡存贮的才是身份证号码替代码,银行和服务器都没有存贮身份证号码替代码,柜台核实持卡人身份真伪,是由持卡人提供身份证,通过系统计算匹配性,系统核实银行卡真伪,则是由服务器返回身份证号码,由终端计算出的身份证号码替代码与银行卡记载的身份证号码替代码是否相符判断银行卡真伪,
生成身份证号码替代码示例:它是把身份证号码三个数字一组分成6组,每组三个数字,每三个数字除以一个数11,余数加1为几,就从第几位开始截取对应的6组背面密码的原始字符串,截取五位,转换成62进制数据后,再利用身份证号码除以转码表,密码排列控制表的总个数,余数加1为几,这个数就是相应的数据表连接变量,程序据此连接到相应的数据表,将6组数字转码之后重新排列顺序,只是不使用字符替代码技术,而是把身份证号码的数字与转码后的结果相加,结果≥62的,就存贮对应的数字或字母即可,由此我们可以知道,虽然身份证号码是一致的,但是本发明中三种存贮介质中的身份证号码替代码都是不相同的,这个只读数据只是存贮在银行卡上,不会发送到服务器,系统会计算二者有没有对应关系,如果服务器计算出二者不匹配,同样会拒绝交易,柜台操作时,由于身份证号码并没有记载在银行卡上,持卡人提交的银行卡同样有一个计算验证过程,设计系统不显示持卡人的身份证号码替代码,只是给出结果是否匹配的结论提供给银行工作人员,身份证号码替代码也可以采用其他方法合成,基本设计要点就是提交身份证号码后,就可以由系统获得身份证号码替代码即可。
CN201310174989.3A 2013-05-01 2013-05-01 多密码预警式可异卡控制银行卡 Active CN103714626B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201310585474.2A CN103679932B (zh) 2013-05-01 2013-05-01 一种能读写银行卡的电脑系统
CN201310585527.0A CN103632439B (zh) 2013-05-01 2013-05-01 带预警功能的银行卡系统
CN201310174989.3A CN103714626B (zh) 2013-05-01 2013-05-01 多密码预警式可异卡控制银行卡
CN201310585475.7A CN103632297B (zh) 2013-05-01 2013-05-01 一种银行卡的初始化方法
CN201310585608.0A CN103927824B (zh) 2013-05-01 2013-05-01 银行卡系统实施预警的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310174989.3A CN103714626B (zh) 2013-05-01 2013-05-01 多密码预警式可异卡控制银行卡

Related Child Applications (7)

Application Number Title Priority Date Filing Date
CN201310585606.1A Division CN103632267A (zh) 2013-05-01 2013-05-01 无密码支付系统
CN201310585608.0A Division CN103927824B (zh) 2013-05-01 2013-05-01 银行卡系统实施预警的方法
CN201310585530.2A Division CN103679936A (zh) 2013-05-01 2013-05-01 带异卡控制功能的银行卡
CN201310585526.6A Division CN103679935A (zh) 2013-05-01 2013-05-01 终端合成密码
CN201310585474.2A Division CN103679932B (zh) 2013-05-01 2013-05-01 一种能读写银行卡的电脑系统
CN201310585527.0A Division CN103632439B (zh) 2013-05-01 2013-05-01 带预警功能的银行卡系统
CN201310585475.7A Division CN103632297B (zh) 2013-05-01 2013-05-01 一种银行卡的初始化方法

Publications (2)

Publication Number Publication Date
CN103714626A true CN103714626A (zh) 2014-04-09
CN103714626B CN103714626B (zh) 2017-09-08

Family

ID=50407565

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201310174989.3A Active CN103714626B (zh) 2013-05-01 2013-05-01 多密码预警式可异卡控制银行卡
CN201310585474.2A Active CN103679932B (zh) 2013-05-01 2013-05-01 一种能读写银行卡的电脑系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201310585474.2A Active CN103679932B (zh) 2013-05-01 2013-05-01 一种能读写银行卡的电脑系统

Country Status (1)

Country Link
CN (2) CN103714626B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104143237A (zh) * 2014-04-22 2014-11-12 汪风珍 可互相控制的银行卡
CN104486321A (zh) * 2014-12-11 2015-04-01 上海斐讯数据通信技术有限公司 一种Web数据交互方法、系统及相应的Web服务器
CN104821934A (zh) * 2015-03-20 2015-08-05 百度在线网络技术(北京)有限公司 基于人工智能的声纹登录方法和装置
CN105306200A (zh) * 2014-06-09 2016-02-03 腾讯科技(深圳)有限公司 网络账号密码的加密方法和装置
CN106161006A (zh) * 2015-04-06 2016-11-23 汪风珍 一种数字加密算法
CN106411523A (zh) * 2016-08-24 2017-02-15 中国银行股份有限公司 银行卡密码的生成方法、校验方法、设备以及系统
CN106910149A (zh) * 2017-01-22 2017-06-30 胡雄焱 一种公民身份证号码的替代号码生成系统及生成方法
CN107133661A (zh) * 2016-02-29 2017-09-05 航天信息股份有限公司 生成有源卡的外部标识码的方法
CN107170142A (zh) * 2016-03-08 2017-09-15 乐金信世股份有限公司 金融设备及金融设备控制方法
CN107305660A (zh) * 2016-04-24 2017-10-31 汪风珍 一种手机金融交易方法及手机双置银行卡
CN107545291A (zh) * 2016-06-27 2018-01-05 汪风珍 一种手机银行卡及其金融交易方法
CN107609622A (zh) * 2017-08-28 2018-01-19 深圳市金天速科技有限公司 基于多码合一的加密方法和系统
CN107741783A (zh) * 2017-10-01 2018-02-27 上海量科电子科技有限公司 电子转账方法及系统
CN109686012A (zh) * 2018-12-20 2019-04-26 中钞科堡现金处理技术(北京)有限公司 一种银行自助设备的银行u盾发行方法及系统
CN109697174A (zh) * 2018-12-14 2019-04-30 中国航空工业集团公司西安航空计算技术研究所 一种机载计算机存储系统敏感分区防护方法
CN109886048A (zh) * 2019-02-12 2019-06-14 苏州超块链信息科技有限公司 一种基于密码学难度累积的数据一致性保护方法
CN110490600A (zh) * 2019-08-23 2019-11-22 中国联合网络通信集团有限公司 处理银行业务的方法、服务器、终端
CN111209583A (zh) * 2020-01-13 2020-05-29 多点(深圳)数字科技有限公司 一种用于磁卡数据的加密算法
CN115375998A (zh) * 2022-10-24 2022-11-22 成都新希望金融信息有限公司 一种证件识别方法、装置、电子设备及存储介质
CN117424759A (zh) * 2023-12-18 2024-01-19 南京思宇电气技术有限公司 应用于配电房内的全息监控网关及其监控系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1523809A (zh) * 2003-09-08 2004-08-25 赵忠华 可变密码身份验证技术
CN101561714A (zh) * 2009-06-01 2009-10-21 臧永学 组群式密码输入法
CN101604366A (zh) * 2009-07-13 2009-12-16 中山爱科数字科技有限公司 一种密码分割式动态验证方法和系统
CN102881079A (zh) * 2012-08-28 2013-01-16 汪风珍 脚踩多密码预警式可异卡控制银行卡

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7416112B2 (en) * 2006-04-05 2008-08-26 Diebold Self-Service Systems Division Of Diebold, Incorporated Automated banking machine system and method
CN1228743C (zh) * 2003-04-04 2005-11-23 深圳市兴达通机电设备有限公司 大额自动取款机
CN101635070A (zh) * 2008-07-24 2010-01-27 付建云 移动支付智能存储卡
CN201725341U (zh) * 2010-06-04 2011-01-26 黄梓楠 一种读卡器
US8612807B2 (en) * 2011-01-12 2013-12-17 Ncr Corporation Entertainment kiosk error handling and troubleshooting method
CN102938033A (zh) * 2012-10-18 2013-02-20 张仁平 一种银行u盾增强安全性的系统及使用方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1523809A (zh) * 2003-09-08 2004-08-25 赵忠华 可变密码身份验证技术
CN101561714A (zh) * 2009-06-01 2009-10-21 臧永学 组群式密码输入法
CN101604366A (zh) * 2009-07-13 2009-12-16 中山爱科数字科技有限公司 一种密码分割式动态验证方法和系统
CN102881079A (zh) * 2012-08-28 2013-01-16 汪风珍 脚踩多密码预警式可异卡控制银行卡

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104143237A (zh) * 2014-04-22 2014-11-12 汪风珍 可互相控制的银行卡
CN105306200A (zh) * 2014-06-09 2016-02-03 腾讯科技(深圳)有限公司 网络账号密码的加密方法和装置
CN104486321A (zh) * 2014-12-11 2015-04-01 上海斐讯数据通信技术有限公司 一种Web数据交互方法、系统及相应的Web服务器
CN104821934B (zh) * 2015-03-20 2018-11-20 百度在线网络技术(北京)有限公司 基于人工智能的声纹登录方法和装置
CN104821934A (zh) * 2015-03-20 2015-08-05 百度在线网络技术(北京)有限公司 基于人工智能的声纹登录方法和装置
CN106161006A (zh) * 2015-04-06 2016-11-23 汪风珍 一种数字加密算法
CN106161006B8 (zh) * 2015-04-06 2022-07-08 杨艺 一种数字加密算法
CN106161006B (zh) * 2015-04-06 2020-11-17 汪风珍 一种数字加密算法
CN107133661A (zh) * 2016-02-29 2017-09-05 航天信息股份有限公司 生成有源卡的外部标识码的方法
CN107133661B (zh) * 2016-02-29 2020-06-02 航天信息股份有限公司 生成有源卡的外部标识码的方法
CN107170142A (zh) * 2016-03-08 2017-09-15 乐金信世股份有限公司 金融设备及金融设备控制方法
CN107305660B (zh) * 2016-04-24 2021-02-02 张家界航空工业职业技术学院 一种手机金融交易方法及手机双置银行卡
CN107305660A (zh) * 2016-04-24 2017-10-31 汪风珍 一种手机金融交易方法及手机双置银行卡
CN107545291A (zh) * 2016-06-27 2018-01-05 汪风珍 一种手机银行卡及其金融交易方法
CN106411523A (zh) * 2016-08-24 2017-02-15 中国银行股份有限公司 银行卡密码的生成方法、校验方法、设备以及系统
CN106411523B (zh) * 2016-08-24 2021-06-04 中国银行股份有限公司 银行卡密码的生成方法、校验方法、设备以及系统
CN106910149A (zh) * 2017-01-22 2017-06-30 胡雄焱 一种公民身份证号码的替代号码生成系统及生成方法
CN107609622B (zh) * 2017-08-28 2021-03-02 深圳市金天速科技有限公司 基于多码合一的加密方法和系统
CN107609622A (zh) * 2017-08-28 2018-01-19 深圳市金天速科技有限公司 基于多码合一的加密方法和系统
CN107741783A (zh) * 2017-10-01 2018-02-27 上海量科电子科技有限公司 电子转账方法及系统
CN109697174A (zh) * 2018-12-14 2019-04-30 中国航空工业集团公司西安航空计算技术研究所 一种机载计算机存储系统敏感分区防护方法
CN109686012A (zh) * 2018-12-20 2019-04-26 中钞科堡现金处理技术(北京)有限公司 一种银行自助设备的银行u盾发行方法及系统
CN109886048A (zh) * 2019-02-12 2019-06-14 苏州超块链信息科技有限公司 一种基于密码学难度累积的数据一致性保护方法
CN109886048B (zh) * 2019-02-12 2023-01-13 苏州超块链信息科技有限公司 一种基于密码学难度累积的数据一致性保护方法
CN110490600B (zh) * 2019-08-23 2022-04-26 中国联合网络通信集团有限公司 处理银行业务的方法、服务器、终端
CN110490600A (zh) * 2019-08-23 2019-11-22 中国联合网络通信集团有限公司 处理银行业务的方法、服务器、终端
CN111209583A (zh) * 2020-01-13 2020-05-29 多点(深圳)数字科技有限公司 一种用于磁卡数据的加密算法
CN115375998A (zh) * 2022-10-24 2022-11-22 成都新希望金融信息有限公司 一种证件识别方法、装置、电子设备及存储介质
CN115375998B (zh) * 2022-10-24 2023-03-17 成都新希望金融信息有限公司 一种证件识别方法、装置、电子设备及存储介质
CN117424759A (zh) * 2023-12-18 2024-01-19 南京思宇电气技术有限公司 应用于配电房内的全息监控网关及其监控系统
CN117424759B (zh) * 2023-12-18 2024-03-22 南京思宇电气技术有限公司 应用于配电房内的全息监控网关及其监控系统

Also Published As

Publication number Publication date
CN103714626B (zh) 2017-09-08
CN103679932A (zh) 2014-03-26
CN103679932B (zh) 2016-05-11

Similar Documents

Publication Publication Date Title
CN103714626A (zh) 多密码预警式可异卡控制银行卡
CN102667832B (zh) 一种公民信息管理方法
DE69630713T2 (de) Identifikationssystem ohne identitätsmarker
US5649118A (en) Smart card with multiple charge accounts and product item tables designating the account to debit
DE69900169T3 (de) Kreditkartensystem und verfahren
CN102638447B (zh) 基于用户自主产生的动态口令对系统登录的方法和装置
CN105900100A (zh) 用于身份验证的设备和方法
CN106375326B (zh) 一种手机双向验证终端及方法
CN101388095A (zh) 用于执行委托交易的方法和装置
JPH07319982A (ja) スマートカードを使用しての安全な送金技法
CN109727123A (zh) 用户征信数据构建方法、装置及计算机可读存储介质
CN107230050A (zh) 基于可视数字货币芯片卡进行数字货币支付的方法和系统
CN108108611A (zh) 一种搭载智能芯片的智能印章
CN102880955A (zh) 一种高度安全的凭指纹支付方法
CN109272311A (zh) 一种基于数字钱包的跨链逻辑系统
CN102881079A (zh) 脚踩多密码预警式可异卡控制银行卡
CN109034766A (zh) 借款方法及系统、设备和存储介质
US20020095580A1 (en) Secure transactions using cryptographic processes
CN100456332C (zh) 移动通信终端的电子结算系统及其操作方法
CN107240010A (zh) 向数字货币芯片卡转入数字货币的方法和系统
KR100449751B1 (ko) 상수도 운영 및 관리 시스템
CN107545291A (zh) 一种手机银行卡及其金融交易方法
CN102945334A (zh) 一种带虚拟片上操作系统的安全设备、装置、系统和方法
CN103295053A (zh) 多密码预警式内存锁银行卡
CN108960788A (zh) 一种用于物业服务体系的高可靠性一卡通平台

Legal Events

Date Code Title Description
DD01 Delivery of document by public notice

Addressee: Wang Fengzhen

Document name: Notification of Acceptance of Patent Application

C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201022

Address after: Room a1309, No. 109, Shazhou West Road, yangshe Town, Zhangjiagang City, Suzhou City, Jiangsu Province

Patentee after: Suzhou yifanghua Intellectual Property Operation Co., Ltd

Address before: 9 groups of long Qiao Xiang Jing Quan Cun 427226 Cili County of Hunan Province Jing

Patentee before: Wang Fengzhen