CN105956855B - 一种电子签名设备的交易方法和交易系统 - Google Patents

一种电子签名设备的交易方法和交易系统 Download PDF

Info

Publication number
CN105956855B
CN105956855B CN201610178067.3A CN201610178067A CN105956855B CN 105956855 B CN105956855 B CN 105956855B CN 201610178067 A CN201610178067 A CN 201610178067A CN 105956855 B CN105956855 B CN 105956855B
Authority
CN
China
Prior art keywords
electronic signature
signature device
data packet
unit data
unit
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
CN201610178067.3A
Other languages
English (en)
Other versions
CN105956855A (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.)
Tendyron Corp
Original Assignee
Tendyron Corp
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 Tendyron Corp filed Critical Tendyron Corp
Publication of CN105956855A publication Critical patent/CN105956855A/zh
Priority to PCT/CN2017/077652 priority Critical patent/WO2017162164A1/zh
Application granted granted Critical
Publication of CN105956855B publication Critical patent/CN105956855B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists

Abstract

本发明提供了一种电子签名设备的交易方法和交易系统,交易方法包括:第二电子签名设备将交易请求发送至第一电子签名设备,其中,交易请求至少包括交易金额;第一电子签名设备接收交易请求,并从其安全芯片中获取至少一个第二单位数据包,将上述至少一个第二单位数据包发送至第二电子签名设备,其中每个第二单位数据包代表多种货币面值中的一种货币面值,上述至少一个第二单位数据包所代表的货币面值的总和等于交易金额;第二电子签名设备接收上述至少一个第二单位数据包并将至少一个第二单位数据包存储于安全芯片中。采用本发明提供的技术方案,可以实现安全的脱机电子交易。

Description

一种电子签名设备的交易方法和交易系统
技术领域
本发明涉及一种电子技术领域,尤其涉及一种电子签名设备的交易方法和交易系统。
背景技术
现有的电子交易中,用户的资金以数字的形式存在账户中,例如:用户持有100元的资金,该资金以数字的形式存储于银行服务器的用户账户中,当用户消费了10元以后,银行服务器需要将用户账户中的资金100改写为90,以完成账户的清算。为了保证资金数值的安全,在银行服务器改写数值后,要对改写后的资金数值90进行签名。因为用户每次进行交易后账户中的金额数值都会发生变动,所以银行服务器要针对每次变动后的数值进行处理。也就是说,现有的电子交易要依托于银行服务器,用户进行的电子交易需要与银行服务器进行实时同步,不能实现在不联网的情况下独立完成多笔线下交易。
发明内容
本发明旨在至少解决上述问题之一。
本发明的主要目的在于提供一种电子签名设备的交易方法。
本发明的另一目的在于提供一种交易系统。
为达到上述目的,本发明的技术方案具体是这样实现的:
方案1、一种电子签名设备的交易方法,所述交易方法包括:第二电子签名设备将交易请求发送至第一电子签名设备,其中,所述交易请求至少包括:交易金额;所述第一电子签名设备接收所述交易请求,并从其安全芯片中获取至少一个第二单位数据包,将所述至少一个第二单位数据包发送至所述第二电子签名设备,其中,每个第二单位数据包代表多种货币面值中的一种货币面值,所述至少一个第二单位数据包所代表的货币面值的总和等于所述交易金额;所述第二电子签名设备接收所述至少一个第二单位数据包,并将所述至少一个第二单位数据包存储于安全芯片中。
方案2、根据方案1所述的交易方法,在所述第一电子签名设备将所述至少一个第二单位数据包发送至所述第二电子签名设备之后,所述方法还包括:所述第一电子签名设备删除获取的所述至少一个第二单位数据包。
方案3、根据方案1所述的交易方法,所述第一电子签名设备将所述至少一个第二单位数据包发送至所述第二电子签名设备,包括:所述第一电子签名设备对所述至少一个第二单位数据包进行加密,得到至少一个第三单位数据包,并将所述至少一个第三单位数据包发送至所述第二电子签名设备;所述第二电子签名设备接收所述至少一个第二单位数据包,包括:所述第二电子签名设备接收所述至少一个第三单位数据包,对所述至少一个第三单位数据包进行解密,得到所述至少一个第二单位数据包。
方案4、根据方案3所述的交易方法,所述第一电子签名设备对所述至少一个第二单位数据包进行加密,包括:所述第一电子签名设备利用所述第二电子签名设备的公钥至少对每个第二单位数据包中的第二单位数据进行加密,得到数据密文;所述第二电子签名设备对所述至少一个第三单位数据包进行解密,包括:所述第二电子签名设备利用所述第二电子签名设备的私钥至少对每个第三单位数据包中的所述数据密文进行解密。
方案5、根据方案4所述的交易方法,在所述第一电子签名设备对所述至少一个第二单位数据包进行加密之后,所述方法还包括:所述第一电子签名设备用每个第三单位数据包覆盖所述安全芯片中存储的所述每个第二单位数据包。
方案6、根据方案3所述的交易方法,所述第一电子签名设备对所述至少一个第二单位数据包进行加密,包括:所述第一电子签名设备利用与所述第二电子签名设备关联的对称密钥至少对所述每个第二单位数据包中的第二单位数据进行加密,得到数据密文;所述第二电子签名设备对所述至少一个第三单位数据包进行解密,包括:所述第二电子签名设备利用与所述第一电子签名设备关联的对称密钥至少对每个第三单位数据包中的所述数据密文进行解密。
方案7、根据方案6所述的交易方法,在所述第一电子签名设备对所述至少一个第二单位数据包进行加密之后,所述方法还包括:所述第一电子签名设备用每个第三单位数据包覆盖所述安全芯片中存储的所述每个第二单位数据包,并删除所述对称密钥。
方案8、根据方案6或7所述的交易方法,所述对称密钥为异或因子;所述第一电子签名设备利用与所述第二电子签名设备关联的对称密钥至少对所述每个第二单位数据包中的第二单位数据进行加密,得到数据密文,包括:所述第一电子签名设备利用所述异或因子至少对所述每个第二单位数据包中的第二单位数据进行异或运算,得到数据密文;所述第二电子签名设备利用与所述第一电子签名设备关联的对称密钥至少对每个第三单位数据包中的所述数据密文进行解密,包括:所述第二电子签名设备利用所述异或因子分别对所述每个第三单位数据包中的所述数据密文进行异或运算。
方案9、根据方案1至8任一项所述的交易方法,在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之后,所述方法还包括:所述第二电子签名设备利用计数器的计数值得到当前存储的第二单位数据包的总个数。
方案10、根据方案1至9任一项所述的交易方法,所述每个第二单位数据包至少包括:第二单位数据、服务器对所述第二单位数据签名得到的第三签名数据;在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之前,所述方法还包括:所述第二电子签名设备对所述第三签名数据进行验证,在验证通过后执行所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中的步骤。
方案11、根据方案1至9任一项所述的交易方法,所述交易请求至少包括:所述第二电子签名设备的设备标识。
方案12、根据方案11所述的交易方法,在所述第一电子签名设备从其安全芯片中获取至少一个第二单位数据包之前,所述交易方法还包括:所述第一电子签名设备向持有用户提示所述交易金额和所述第二电子签名设备的设备标识,并接收到所述持有用户的确认信息。
方案13、根据方案11所述的交易方法,所述每个第二单位数据包至少还包括:第二单位数据、所述第一电子签名设备对所述第二单位数据和所述第二电子签名的设备标识签名得到的第四签名数据;在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之前,所述方法还包括:所述第二电子签名设备对所述第四签名数据进行验证,在验证通过后执行所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中的步骤。
方案14、根据方案11所述的交易方法,每个所述第三单位数据包还包括:所述第二电子签名设备的设备标识。
方案15、根据方案1至14任一项所述的交易方法,所述第二单位数据包包括:数据包标识。
方案16、根据方案15所述的交易方法,所述交易请求还包括:数据包标识;所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中,包括:所述第二电子签名设备判断接收到的第二单位数据包中的数据包标识是否与发送的交易请求中的数据包标识相同,如果不相同,则将数据包标识不相同的第二单位数据包丢弃,如果相同,则将数据包标识相同的第二单位数据包存储于所述安全芯片中。
方案17、根据方案15所述的交易方法,所述交易请求还包括:数据包标识起始值;所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中,包括:所述第二电子签名设备判断所述每个第二单位数据包中包含的数据包标识是否满足根据所述数据包标识起始值确定的预设范围,如果不满足,则将数据包标识不满足所述预设范围的第二单位数据包丢弃,如果满足,则将数据包标识满足所述预设范围的第二单位数据包存储于所述安全芯片中。
方案18、根据方案17所述的交易方法,在所述第二电子签名设备将交易请求发送至所述第一电子签名设备之前,所述方法还包括:所述第二电子签名设备利用计数器的计数值得到所述数据包标识起始值;在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之后,所述方法还包括:所述第二电子签名设备的计数器将所述数据包标识起始值加上接收到的所述第二单位数据包的总个数计算得到新的数据包标识起始值。
方案19、根据方案15至18任一项所述的交易方法,在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之后,所述方法还包括:所述第二电子签名设备根据接收到的所述第二单位数据包的个数以及每个第二单位数据包所代表的货币面值计算所述接收到的第二单位数据包所代表的货币面值的总和与所述交易请求中的交易金额是否一致,如果不一致,则向所述第一电子签名设备发送重发请求;所述第一电子签名设备接收所述重发请求,并根据所述重发请求将重发信息发送至所述第二电子签名设备,其中,所述重发请求中至少包括所述第二电子签名设备的设备标识和/或所述每个第二单位数据包对应的数据包标识。
方案20、根据方案19所述的交易方法,在所述第一电子签名设备根据所述重发请求将重发信息发送至所述第二电子签名设备之后,所述方法还包括:所述第二电子签名设备接收所述重发信息,其中,所述重发信息包括所述至少一个第二单位数据包,并将之前存储于所述安全芯片中的所述至少一个第二单位数据包删除,重新存储所述第一电子签名设备重发的所述至少一个第二单位数据包。
方案21、根据方案19所述的交易方法,在所述第一电子签名设备根据所述重发请求将重发信息发送至所述第二电子签名设备之后,所述方法还包括:所述第二电子签名设备接收所述重发信息,其中,所述重发信息包括所述第二电子签名设备未收到的第二单位数据包,并将所述未接收到的第二单位数据包存储于其安全芯片中。
方案22、根据方案4至21任一项所述的交易方法,所述第二单位数据至少包括:货币面值数据,或者,货币序号和货币面值数据;所述第二单位数据包包括以下至少之一:发行银行标识和银行证书序号。
方案23、根据方案1至22任一项所述的交易方法,在所述第一电子签名设备将所述至少一个第二单位数据包发送至所述第二电子签名设备之后,所述方法还包括:所述第一电子签名设备将其账户金额减去所述交易金额得到当前账户余额,并向持有用户显示所述交易金额和/或当前账户余额;在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之后,所述方法还包括:所述第二电子签名设备将其当前账户金额加上所述交易金额得到当前账户余额,并向持有用户显示所述交易金额和/或当前账户余额。
方案24、根据方案1至23任一项所述的交易方法,在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之前,所述方法还包括:所述第二电子签名设备的安全芯片分配用于存储所述至少一个第二单位数据包的存储空间;所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中,包括:所述第二电子签名设备将所述至少一个第二单位数据包存储于对应的所述存储空间中,并将所述对应的存储空间的状态字置为已占用。
方案25、根据方案19至24任一项所述的交易方法,在所述第一电子签名设备将所述至少一个第二单位数据包发送至所述第二电子签名设备之前,所述方法还包括:所述第一电子签名设备的安全芯片分配用于存储所述至少一个第三单位数据包的存储空间,并将所述至少一个第三单位数据包存储于对应的所述存储空间中;在所述第一电子签名设备根据所述重发请求将重发信息发送至所述第二电子签名设备之后,所述方法还包括:所述第一电子签名设备接收到所述第二电子签名设备返回的接收成功的确认信息,将之前存储所述至少一个第三单位数据包的存储空间的状态字修改为交易完成,或者将所述存储空间清空。
方案26、一种交易系统,所述交易系统包括:第一电子签名设备和第二电子签名设备;所述第二电子签名设备,用于将交易请求发送至所述第一电子签名设备,其中,所述交易请求至少包括:交易金额;所述第一电子签名设备,用于接收所述交易请求,并从其安全芯片中获取至少一个第二单位数据包,将所述至少一个第二单位数据包发送至所述第二电子签名设备,其中,每个第二单位数据包代表多种货币面值中的一种货币面值,所述至少一个第二单位数据包所代表的货币面值的总和等于所述交易金额;所述第二电子签名设备,还用于接收所述至少一个第二单位数据包,并将所述至少一个第二单位数据包存储于安全芯片中。
方案27、根据方案26所述的交易系统,所述第一电子签名设备,还用于在将所述至少一个第二单位数据包发送至所述第二电子签名设备之后,删除获取的所述至少一个第二单位数据包。
方案28、根据方案26所述的交易系统,所述第一电子签名设备,用于将所述至少一个第二单位数据包发送至所述第二电子签名设备,包括:所述第一电子签名设备,用于对所述至少一个第二单位数据包进行加密,得到至少一个第三单位数据包,并将所述至少一个第三单位数据包发送至所述第二电子签名设备;所述第二电子签名设备,用于接收所述至少一个第二单位数据包,包括:所述第二电子签名设备,用于接收所述至少一个第三单位数据包,对所述至少一个第三单位数据包进行解密,得到至少一个第二单位数据包。
方案29、根据方案28所述的交易系统,所述第一电子签名设备,用于对所述至少一个第二单位数据包进行加密,包括:所述第一电子签名设备,用于利用所述第二电子签名设备的公钥至少对每个第二单位数据包中的第二单位数据进行加密,得到数据密文;所述第二电子签名设备,用于对所述至少一个第三单位数据包进行解密,包括:所述第二电子签名设备,用于利用所述第二电子签名设备的私钥至少对每个第三单位数据包中的所述数据密文进行解密。
方案30、根据方案29所述的交易系统,所述第一电子签名设备,还用于在对所述至少一个第二单位数据包进行加密之后,用每个第三单位数据包覆盖所述安全芯片中存储的所述每个第二单位数据包。
方案31、根据方案28所述的交易系统,所述第一电子签名设备,用于对所述至少一个第二单位数据包进行加密,包括:所述第一电子签名设备,用于利用与所述第二电子签名设备关联的对称密钥至少对所述每个第二单位数据包中的第二单位数据进行加密,得到数据密文;所述第二电子签名设备,用于对所述至少一个第三单位数据包进行解密,包括:所述第二电子签名设备,用于利用与所述第一电子签名设备关联的对称密钥至少对每个第三单位数据包中的所述数据密文进行解密。
方案32、根据方案31所述的交易系统,所述第一电子签名设备,还用于在对所述至少一个第二单位数据包进行加密之后,用每个第三单位数据包覆盖所述安全芯片中存储的所述每个第二单位数据包,并删除所述对称密钥。
方案33、根据方案31或32所述的交易系统,所述对称密钥为异或因子;所述第一电子签名设备,用于利用与所述第二电子签名设备关联的对称密钥至少对所述每个第二单位数据包中的第二单位数据进行加密,得到数据密文,包括:所述第一电子签名设备,用于利用所述异或因子至少对所述每个第二单位数据包中的第二单位数据进行异或运算,得到数据密文;所述第二电子签名设备,用于利用与所述第一电子签名设备关联的对称密钥至少对每个第三单位数据包中的所述数据密文进行解密,包括:所述第二电子签名设备,用于利用所述异或因子分别对所述每个第三单位数据包中的所述数据密文进行异或运算。
方案34、根据方案26至33任一项所述的交易系统,所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之后,利用计数器的计数值得到当前存储的第二单位数据包的总个数。
方案35、根据方案26至34任一项所述的交易系统,所述每个第二单位数据包至少包括:第二单位数据、服务器对所述第二单位数据签名得到的第三签名数据;所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之前,对所述第三签名数据进行验证,在验证通过后执行所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中的操作。
方案36、根据方案26至34任一项所述的交易系统,所述交易请求至少包括:所述第二电子签名设备的设备标识。
方案37、根据方案36所述的交易系统,所述第一电子签名设备,还用于在从其安全芯片中获取至少一个第二单位数据包之前,向持有用户提示所述交易金额和所述第二电子签名设备的设备标识,并接收到所述持有用户的确认信息。
方案38、根据方案36所述的交易系统,所述每个第二单位数据包至少还包括:第二单位数据、所述第一电子签名设备对所述第二单位数据和所述第二电子签名的设备标识签名得到的第四签名数据;所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之前,对所述第四签名数据进行验证,在验证通过后执行所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中的操作。
方案39、根据方案36所述的交易系统,每个所述第三单位数据包还包括:所述第二电子签名设备的设备标识。
方案40、根据方案26至39任一项所述的交易系统,所述第二单位数据包包括:数据包标识。
方案41、根据方案40所述的交易系统,所述交易请求还包括:数据包标识;所述第二电子签名设备,还用于将所述至少一个第二单位数据包存储于安全芯片中,包括:所述第二电子签名设备,还用于判断接收到的第二单位数据包中的数据包标识是否与发送的交易请求中的数据包标识相同,如果不相同,则将数据包标识不相同的第二单位数据包丢弃,如果相同,则将数据包标识相同的第二单位数据包存储于所述安全芯片中。
方案42、根据方案40所述的交易系统,所述交易请求还包括:数据包标识起始值;所述第二电子签名设备,还用于将所述至少一个第二单位数据包存储于安全芯片中,包括:所述第二电子签名设备,还用于判断所述每个第二单位数据包中包含的数据包标识是否满足根据所述数据包标识起始值确定的预设范围,如果不满足,则将数据包标识不满足所述预设范围的第二单位数据包丢弃,如果满足,则将数据包标识满足所述预设范围的第二单位数据包存储于所述安全芯片中。
方案43、根据方案42所述的交易系统,所述第二电子签名设备,还用于在将交易请求发送至所述第一电子签名设备之前,利用计数器的计数值得到所述数据包标识起始值;还用于在将所述至少一个第二单位数据包存储于安全芯片中之后,将所述数据包标识起始值加上接收到的所述第二单位数据包的总个数计算得到新的数据包标识起始值。
方案44、根据方案40至43任一项所述的交易系统,所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之后,根据接收到的所述第二单位数据包的个数以及每个第二单位数据包所代表的货币面值计算所述接收到的第二单位数据包所代表的货币面值的总和与所述交易请求中的交易金额是否一致,如果不一致,则向所述第一电子签名设备发送重发请求;所述第一电子签名设备,还用于接收所述重发请求,并根据所述重发请求将重发信息发送至所述第二电子签名设备,其中,所述重发请求中至少包括所述第二电子签名设备的设备标识和/或所述每个第二单位数据包对应的数据包标识。
方案45、根据方案44所述的交易系统,所述第二电子签名设备,还用于接收所述重发信息,其中,所述重发信息包括所述至少一个第二单位数据包,并将之前存储于所述安全芯片中的所述至少一个第二单位数据包删除,重新存储所述第一电子签名设备重发的所述至少一个第二单位数据包。
方案46、根据方案44所述的交易系统,所述第二电子签名设备,还用于接收所述重发信息,其中,所述重发信息包括所述第二电子签名设备未收到的第二单位数据包,并将所述未接收到的第二单位数据包存储于其安全芯片中。
方案47、根据方案29至46任一项所述的交易系统,所述第二单位数据至少包括:货币面值数据,或者,货币序号和货币面值数据;所述第二单位数据包包括以下至少之一:发行银行标识和银行证书序号。
方案48、根据方案26至47任一项所述的交易系统,所述第一电子签名设备,还用于在将所述至少一个第二单位数据包发送至所述第二电子签名设备之后,将其账户金额减去所述交易金额得到当前账户余额,并向持有用户显示所述交易金额和/或当前账户余额;所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之后,将其当前账户金额加上所述交易金额得到当前账户余额,并向持有用户显示所述交易金额和/或当前账户余额。
方案49、根据方案26至48任一项所述的交易系统,所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之前,利用其安全芯片分配用于存储所述至少一个第二单位数据包的存储空间;所述第二电子签名设备,用于将所述至少一个第二单位数据包存储于安全芯片中,包括:所述第二电子签名设备,用于将所述至少一个第二单位数据包存储于对应的所述存储空间中,并将所述对应的存储空间的状态字置为已占用。
方案50、根据方案44至49任一项所述的交易系统,所述第一电子签名设备,还用于利用其安全芯片分配用于存储所述至少一个第三单位数据包的存储空间,并将所述至少一个第三单位数据包存储于对应的所述存储空间中;所述第一电子签名设备,用于在根据所述重发请求将重发信息发送至所述第二电子签名设备之后,接收到所述第二电子签名设备返回的接收成功的确认信息,将之前存储所述至少一个第三单位数据包的存储空间的状态字修改为交易完成,或者将所述存储空间清空。
由上述本发明提供的技术方案可以看出,本发明提供了一种电子签名设备的交易方法和交易系统。采用本发明提供的技术方案,用户的资金以至少一个第二单位数据包的形式存储于用户的电子签名设备中。用户在消费时,因为资金不再是以数值的形式存储于电子签名设备中,所以电子签名设备不需要通过服务器更改账户中的余额数值,仅需将符合消费金额的一个或多个第二单位数据包发送给收款方即可,由此,电子签名设备在与其他电子签名设备进行电子交易时,不再需要依托服务器进行联网支付,服务器不再需要对电子签名设备进行监管,从而真正地实现脱机电子交易。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例1提供的电子签名设备的交易方法的流程图;
图2为本发明实施例2提供的交易系统的结构示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或数量或位置。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
下面将结合附图对本发明实施例作进一步地详细描述。
实施例1
图1为本实施例提供的一种电子签名设备的交易方法的流程图。如图1所示,该交易方法包括以下步骤S11~S13:
步骤S11,第二电子签名设备将交易请求发送至第一电子签名设备,其中,交易请求至少包括:交易金额;
在本实施例中,第一电子签名设备和第二电子签名设备可以进行线下交易(即无需与服务器联网完成交易),两者均可以为具有签名功能的电子设备,例如,具有签名功能的智能卡(公交卡、银行卡、购物卡等等)、工行的U盾等等。在本实施例一种可选的实施方式中,第一电子签名设备与第二电子签名设备均可设有有线接口或无线接口,第二电子签名设备可以通过有线或无线连接方式与第一电子签名设备建立通信连接,其中,无线连接方式包括但不限于:蓝牙、NFC近场通讯或WIFI。当然,第二电子签名设备还可以通过有线或无线连接方式与外接设备建立连接,通过外接设备向第一电子签名设备发送交易请求,第一电子签名设备也可以通过有线或无线连接方式与外接设备建立连接,通过外接设备接收第二电子签名设备发送的交易请求,其中,外接设备包括但不限于:手机、PC或平板电脑等可以进行通讯的电子设备。由此,两个电子签名设备之间可以直接接收对方的交易请求,进而执行后续的交易流程,无需再与后台服务器联网获取对方的交易请求,执行后续的交易流程,能够实现真正意义上的线下交易。
例如,用户在商场购物,在需要支付时,商场收银台的第二电子签名设备会向用户的第一电子签名设备发送携带有交易金额的交易请求,该交易金额便是用户购物需要支付的金额,以便第一电子签名设备向第二电子签名设备发送与交易金额对应的第二单位数据包(即第一电子签名设备发送的第二单位数据包的货币面值的总和等于交易金额),两个电子签名设备都可以是完全独立、无需联网的设备,例如两张卡片之间就可以实现上述交易,实现线下交易,交易简便快捷。
为了进一步提高两个电子签名设备之间数据传输的安全性,在步骤S11之前,在本实施例一种可选的实施方式中,第二电子签名设备可以与第一电子签名设备建立安全通道,并利用安全通道进行数据传输。例如,第二电子签名设备可以利用第一电子签名设备的公钥对交易请求进行加密得到交易请求密文M1,第一电子签名设备接收第二电子签名设备发送的交易请求密文M1,并利用自身私钥对交易请求密文M1进行解密得到交易请求明文;再例如,第二电子签名设备还可以利用与第一电子签名设备协商得到的协商密钥对交易请求进行加密得到密文M2,第一电子签名设备接收第二电子签名设备发送的交易请求密文M2,并利用对应的协商密钥对交易请求密文M2进行解密得到交易请求明文。当然,第二电子签名设备和第一电子签名设备还可以采用其他的方式建立用于传输数据的安全通道,由此可以提高第二电子签名设备与第一电子签名设备之间数据传输的安全性。
步骤S12,第一电子签名设备接收交易请求,并从其安全芯片中获取至少一个第二单位数据包,将上述至少一个第二单位数据包发送至第二电子签名设备。
本实施例中,每个第二单位数据包代表多种货币面值中的一种货币面值,上述至少一个第二单位数据包所代表的货币面值的总和等于交易金额。
本实施例中,每个第二单位数据包代表多种货币面值中的一种货币面值,也就是说,货币面值共有多种,当第一电子签名设备仅将一个第二单位数据包发送至第二电子签名设备时,该第二单位数据包仅代表其中的一种货币面值。当第一电子签名设备将多个第二单位数据包发送至第二电子签名设备时,多个第二单位数据包可以代表多种不同的货币面值,例如,第二单位数据包的个数为3个,每个第二单位数据包分别代表货币面值1元、2元以及5元;或者,多个第二单位数据包可以代表相同的货币面值,例如,第二单位数据包的个数为3个,每个第二单位数据包均代表货币面值1元;再或者,多个第二单位数据包所代表的货币面值中既包括相同的也包括不相同的货币面值,例如,第二单位数据包的个数为3个,每个第二单位数据包分别代表货币面值1元、1元以及2元。由此,第一电子签名设备发送给第二电子签名设备的至少一个第二单位数据包所代表的货币面值具有灵活的组合方式。
在本实施例一种可选的实施方式中,第二单位数据包中至少包括第二单位数据,该第二单位数据至少包括:货币面值数据,或者,货币序号和货币面值数据。其中,货币面值数据为第二单位数据包所代表的货币面值,以此来标识第二单位数据包所代表的货币面值,货币序号为每个第二单位数据包的唯一序号,即不同的第二单位数据包中的货币序号是不同的。由此,能够保证每个第二单位数据包的唯一性,以便于辨认第二单位数据包的真伪。作为一种可选的实施方式,第二单位数据包至少还包括以下之一:发行银行标识和银行证书序号。其中,发行银行标识为发行该第二单位数据包的银行的标识信息,由此,第二电子签名设备可以根据该标识查询到对应的发行银行的相关信息,而且,第二电子签名设备可以根据发行银行标识和银行证书序号获取对应的发行银行的银行证书,银行证书中包含有发行银行的公钥,以便于后续第二电子签名设备利用发行银行的公钥对第二单位数据的签名完成验证。
在本实施例一种可选的实施方式中,每个第二单位数据包至少包括:第二单位数据、服务器对所述第二单位数据签名得到的第三签名数据。作为一种可选的实施方式,服务器利用自身的私钥分别对每个第二单位数据包中的第二单位数据进行签名,得到与每个第二单位数据包对应的第三签名数据。具体地,以服务器为银行服务器为例,服务器利用自身的私钥进行签名是指银行服务器根据发行银行标识和银行证书序号获取对应的私钥,利用该私钥进行签名。服务器将上述至少一个携带有第三签名数据的第二单位数据包发送至第一电子签名设备。第二电子签名设备在从第一电子签名设备进行收款操作时,从第一电子签名设备接收上述至少一个携带有第三签名数据的第二单位数据包,以便于后续步骤中第二电子签名设备可以利用服务器的公钥验证第二单位数据包的真实性。
在本实施例另一种可选的实施方式中,第二电子签名设备发送至第一电子签名设备的交易请求中还包括:第二电子签名设备的设备标识;每个第二单位数据包至少包括:第二单位数据、第一电子签名设备对第二单位数据和第二电子签名设备的设备标识签名得到的第四签名数据。作为一种可选的实施方式,第一电子签名设备利用自身的私钥对第二单位数据和第二电子签名设备的设备标识进行签名,得到与每个第二单位数据包对应的第四签名数据。第二电子签名设备在从第一电子签名设备进行收款操作时,从第一电子签名设备接收至少一个携带有第四签名数据的第二单位数据包,以便于后续步骤中第二电子签名设备利用第一电子签名设备的公钥验证第二单位数据包的正确性。
在本实施例中,第一电子签名设备在收到第二电子签名设备发送的交易请求后,会从自身的账户余额中扣除第二电子签名设备请求的交易金额,并为第二电子签名设备下发货币面值的总和等于交易金额的至少一个第二单位数据包,在第二电子签名设备接收到这些第二单位数据包,如转账成功后,便完成了线下交易,第二电子签名设备不需要再与服务器联网便可以接收第一电子签名设备转账(即接收第一电子签名设备发送的至少一个第二单位数据包)。每个第二单位数据包所代表的货币面值可以相同也可以不同,第一电子签名设备发送给第二电子签名设备的第二单位数据包的个数以及各个第二单位数据包所代表的货币面值可以由第一电子签名设备根据交易金额确定,也可以由第二电子签名设备根据交易金额确定后告知第一电子签名设备,例如,作为本实施例中的一种可选实施方式,第二电子签名设备发送的交易请求中还可以携带所需第二单位数据包的种类以及个数。前者第一电子签名设备可以灵活实现第二单位数据包的下发,后者可以满足第二电子签名设备的用户对第二单位数据包的个数以及面值的需求。在本实施例一种可选的实施方式中,每个第二单位数据包代表多种货币面值中的一种货币面值,例如,第二单位数据包所代表的货币面值包括:1元、2元、5元、10元、20元、50元和100元,当然,如果未来国家发行了新的货币面值、或者除了使用人民币之外的其他地区、国家的货币面值也属于本发明的保护范围,本实施例中仅以人民币面值进行举例说明。例如,第二电子签名设备向第一电子签名设备发送交易请求,其中,交易请求包括的交易金额为10元,第二电子签名设备接收第一电子签名设备发送的5个第二单位数据包,5个第二单位数据包所代表的货币面值分别为1元、1元、1元、2元和5元,5个第二单位数据包所代表的货币面值的总和为10元,与交易金额相等。当然,当交易请求包括的交易金额为10元时,第二电子签名设备还可以接收第一电子签名设备发送的10个代表1元货币面值的第二单位数据包,或者,2个代表5元货币面值的第二单位数据包,或者,1个代表10元货币面值的第二单位数据包。也就是说,第二电子单位货币数据包所代表的货币面值与个数可以灵活组合,仅需使第一电子签名设备发送的至少一个第二单位数据包所代表的货币面值的总和等于交易金额即可,此处仅以交易金额为10元为例,对于其他金额数值原理相同,此处不再举例说明。由此,在第一电子签名设备根据交易金额确定第二单位数据包的个数,以及各个第二单位数据包所代表的金额的情况下,第一电子签名设备可以灵活实现第二单位数据包的下发,可以有各种组合;在第二电子签名设备根据交易金额确定第二单位数据包的个数,以及各个第二单位数据包所代表的货币面值的情况下,可以将请求的个数以及对应的第二单位数据包所代表的货币面值发送至第一电子签名设备,由此可以满足第二电子签名设备的用户对第二单位数据包的个数以及货币面值的需求。
对于第二电子签名设备根据交易金额确定第二单位数据包的个数,以及各个第二单位数据包所代表的货币面值的情况,第一电子签名设备的安全芯片中很有可能没有存储第二电子签名设备请求的货币面值对应的第二单位数据包或者存储的个数不足请求的个数,作为本实施例中的一种可选实施方式,第一电子签名设备可以向第二电子签名设备发送提示信息,该提示信息可以包括:对应货币面值的第二单位数据包不存在或者个数不足的信息,第二电子签名设备可以根据交易金额更换第二电子单位货币数据包所代表的货币面值与个数的组合策略,或者,由第一电子签名设备根据交易金额更换第二电子单位货币数据包所代表的货币面值与个数的组合策略。例如,第一电子签名设备收到第二电子签名设备转账10元的交易请求,并请求发送5个代表2元的第二单位数据包(下称2元数据包),但第一电子签名设备只有4个2元数据包,则向第二电子签名设备发送只有4个2元数据包,2元数据包个数不足的提示信息,此时,第二电子签名设备可以更换组合策略,例如,向第一电子签名设备返回请求发送4个2元数据包、2个1元数据包的响应,或者,第一电子签名设备在向第二电子签名设备发送提示信息后,收到第二电子签名设备的确认响应,则第一电子签名设备可以随机确定一种组合策略,例如,将4个2元数据包、2个1元数据包发送至第二电子签名设备,由此,解决第一电子签名设备的安全芯片中存储的第二单位数据包的个数不足或不存在的问题。
此外,在具体实施时,还存在第一电子签名设备的安全芯片中存储的第二单位数据包所代表的货币面值无法拼凑出与交易金额相等的上述至少一个第二单位数据包的问题,为了解决该问题,在本实施例一种可选的实施方式中,在步骤S11之后,步骤S12中第一电子签名设备从其安全芯片中获取至少一个第二单位数据包之前,本实施例提供的方法还包括:第一电子签名设备发送待找零信息,第二电子签名设备接收该待找零信息,其中,待找零信息由第一电子签名设备根据交易金额以及自身安全芯片中存储的第二单位数据包所代表的货币面值确定,例如,待找零信息可以包括需要第二电子签名设备返回的找回零钱的货币面值。如果第二电子签名设备存储有代表该找回零钱货币面值的第二单位数据包,或者,存储有货币面值的总和等于该找回零钱的第二单位数据包,则第二电子签名设备可以向第一电子签名设备返回确认响应,即告知第一电子签名设备自己存有找零用的第二单位数据包,第一电子签名设备在接收到第二电子签名设备发送的找零信息(即返回确认相应)之后,第一电子签名设备从安全芯片中获取至少一个第二单位数据包,其中,上述至少一个第二单位数据包所代表的货币面值的总和应等于交易金额加上找回零钱的货币面值。
例如,交易金额为7元,第一电子签名设备的安全芯片中存储有5个分别代表2元货币面值的第二单位数据包(下称2元数据包),则第一电子签名设备无法利用该5个2元数据包拼凑出7元货币面值,第一电子签名设备只能利用安全芯片中存储的5个2元数据包拼凑出与交易金额7元最接近且大于交易金额的货币面值,即第一电子签名设备可以利用4个2元数据包拼凑出8元货币面值,还需要第二电子签名设备找回1元零钱,即在第一电子签名设备将4个2元数据包发送给第二电子签名设备后,第二电子签名设备需要向第一电子签名设备返回1个1元数据包(代表1元货币面值的第二单位数据包)。第一电子签名设备向第二电子签名设备发送携带有找回零钱为1元的待找零信息,其中,待找零信息用于询问第二电子签名设备是否可以找回所代表的货币面值总和为1元的第二单位数据包。如果第二电子签名设备的安全芯片中存储有所代表的货币面值总和为1元的第二单位数据包,则向第一电子签名设备发送找零信息,即同意向第一电子签名设备返回代表1元或者货币面值总和为1元的第二单位数据包。第一电子签名设备在接收到找零信息之后,从安全芯片中获取4个2元数据包发送至第二电子签名设备,第二电子签名设备会再返回给第一电子签名设备1个1元数据包(代表1元货币面值的第二单位数据包)。由此,当无法拼凑出所代表的货币面值总和与交易金额相等的第二单位数据包时,可以通过找零机制完成电子交易,使得电子交易更加方便。
本实施例中,为了防止电子签名设备非法重复使用同一个第二单位数据包,造成第二单位数据包流通的混乱,保证同一个第二单位数据包在支付过程中的唯一性,本实施例第一电子签名设备将上述至少一个第二单位数据包发送至第二电子签名设备的方式至少包括以下两种之一:
方式一:
在步骤S12中,在第一电子签名设备将上述至少一个第二单位数据包发送至第二电子签名设备之后,第一电子签名设备删除获取的至少一个第二单位数据包,由于第一电子签名设备在根据交易金额获取到该至少一个第二单位数据包并发送至第二电子签名设备之后,本地其实还保留着已发送的这些第二单位数据包,并不会自动执行删除的动作,因此,本方式中,为了保证第一电子签名设备无法再重复使用这些第二单位数据,在第一电子签名设备将上述至少一个第二单位数据包发送至第二电子签名设备之后,会强制删除已发送过的这些第二单位数据包,并将对应的存储空间的状态字置为未占用。由此,第一电子签名设备可以在支付第二单位数据包之后,将自身存储的已支付的第二单位数据包删除,保证了第一电子签名设备不能重复使用也无法恢复出已发送过的第二单位数据包,即保证了同一个第二单位数据包在支付过程中的唯一性;
在该方式一中,第二电子签名设备接收到第一电子签名设备发送的至少一个第二单位数据包后,便直接存储,由于第一电子签名设备已经删除该至少一个第二单位数据包,第二电子签名设备接收到的第二单位数据包都是唯一的,不会出现重复的数据包。
方式二:
在步骤S12中,第一电子签名设备发送给第二电子签名设备的至少一个第二单位数据包为密文形式,即第一电子签名设备将至少一个第二单位数据包发送至第二电子签名设备,包括:第一电子签名设备对上述至少一个第二单位数据进行加密,得到至少一个第三单位数据包,并将上述至少一个第三单位数据包发送至第二电子签名设备;第二电子签名设备接收第一电子签名设备发送的上述至少一个第二单位数据包,包括:第二电子签名设备接收上述至少一个第三单位数据包,对上述至少一个第三单位数据包进行解密,得到至少一个第二单位数据包。例如,第二电子签名设备从第一电子签名设备接收到5个代表2元的第三单位数据包,对每个代表2元的第三单位数据包解密得到5个代表2元的第二单位数据包。第二电子签名设备接收到的至少一个第三单位数据包中包括数据密文,其中,数据密文由第一电子签名设备对每个第二单位数据包中的部分或全部数据进行加密操作得到的。具体地,第二单位数据包中可以包括:第二单位数据、第三签名数据、第四签名数据、数据包标识和第二电子签名设备的设备标识等,第一电子签名设备对每个第二单位数据包中的部分数据进行加密是指:第一电子签名设备至少对第二单位数据包中的第二单位数据进行加密,例如,第一电子签名设备可以对第二单位数据包中的第二单位数据和数据包标识进行加密。本实施例中,第一电子签名设备对每个第二单位数据包中的部分或全部数据进行的加密操作为不可逆操作,即,第一电子签名设备可以加密得到第三单位数据包,却不能从第三单位数据包解密得到第二单位数据包,因此,当得到的至少一个第三单位数据包覆盖了对应的至少一个第二单位数据包时,第一电子签名设备中仅仅存储了加密的第三单位数据包,由于其不能对第三单位数据包解密,所以无法恢复出第二单位数据包,也就不能再重复使用这些第二单位数据包。
具体地,作为一种可选的实施方式,第一电子签名设备对至少一个第二单位数据进行加密,包括:第一电子签名设备利用第二电子签名设备的公钥至少对每个第二单位数据包中的第二单位数据加密,得到数据密文;第二电子签名设备对至少一个第三单位数据包进行解密,包括:第二电子签名设备利用第二电子签名设备的私钥至少对每个第三单位数据包中的数据密文进行解密。作为另一种可选的实施方式,第一电子签名设备对至少一个第二单位数据包进行加密,包括:第一电子签名设备利用与第二电子签名设备关联的对称密钥至少对每个第二单位数据包中的第二单位数据进行加密,得到数据密文;第二电子签名设备对至少一个第三单位数据包进行解密,包括:第二电子签名设备利用与第一电子签名设备关联的对称密钥至少对每个第三单位数据包中的数据密文进行解密。
对于前一种可选实施方式,第二电子签名设备可以在发送给第一电子签名设备的交易请求中还包括第二电子签名设备的公钥,或者第一电子签名设备可以向第三方认证平台获取第二电子签名设备的数字证书,该数字证书中保存有第二电子签名设备的公钥。由此,第一电子签名设备可以获取到第二电子签名设备的公钥。
在第一电子签名设备对至少一个第二单位数据包进行加密之后,本实施例提供的方法还包括:第一电子签名设备用每个第三单位数据包覆盖安全芯片中存储的每个第二单位数据包。本实施例中,用每个第三单位数据包覆盖安全芯片中存储的每个第二单位数据包是指,第一电子签名设备将生成的每个第三单位数据包写入对应的原第二单位数据包的存储空间,替换掉原来的第二单位数据包。例如,将数据包标识为1***的第二单位数据包加密生成第三单位数据包,并写入该1***对应的存储空间中。由此,第一电子签名设备在进行第二单位数据包支付之后,对于已发送给第二电子签名设备的第二单位数据包,第一电子签名设备的安全芯片仅存储由第二电子签名设备公钥进行加密后得到的对应的第三单位数据包,而第一电子签名设备不可能有第二电子签名设备的私钥,因此第一电子签名设备无法对该第三单位数据包进行解密,无法恢复出第二单位数据包,也就不能再重复使用这些第二单位数据包,保证了同一个第二单位数据包的唯一性,而且该第三单位数据包是利用第二电子签名设备的公钥加密的,所以该第三单位数据包仅可由第二电子签名设备进行解密(只有第二电子签名设备存有自己的私钥),从而仅有收款方(即第二电子签名设备)可以拥有并能够使用未加密的第二单位数据包,其他电子签名设备即便非法获取到该第三单位数据包,也因为没有第二电子签名设备的私钥而无法解密不能使用获取到的第二单位数据包,从而保证了第二单位数据包流通的安全性。
对于后一种可选实施方式,对称密钥由第一电子签名设备与第二电子签名设备进行协商得到,也就是说,第一电子签名设备在进行加密操作时使用的对称密钥与第二电子签名设备在进行解密操作时使用的对称密钥是相同的。在第一电子签名设备对至少一个第二单位数据包进行加密之后,本实施例提供的方法还包括:第一电子签名设备用每个第三单位数据包覆盖安全芯片中存储的每个第二单位数据包,并删除该对称密钥。本实施例中,用每个第三单位数据包覆盖安全芯片中存储的每个第二单位数据包是指,第一电子签名设备将生成的每个第三单位数据包写入对应的原第二单位数据包的存储空间,替换掉原来的第二单位数据包。例如,将数据包标识为1***的第二单位数据包加密生成第三单位数据包,并写入该1***对应的存储空间中。在该利用对称密钥加解密的方式中,如果第一电子签名设备中还拥有对称密钥,就可以对第三单位数据包解密恢复出第二单位数据包,因此,本实施例中,在第一电子签名设备将至少一个第二单位数据包发送至第二电子签名设备之后,必须强制删除对称密钥,由此,第一电子签名设备在进行第二单位数据包支付之后,对于已发送给第二电子签名设备的第二单位数据包,第一电子签名设备的安全芯片仅存储由第二电子签名设备利用对称密钥加密后得到的对应的第三单位数据包,而由于第一电子签名设备已将进行加密使用的对称密钥删除,所以,第一电子签名设备无法再对该第三单位数据包进行解密,无法恢复出第二单位数据包,也就不能再重复使用这些第二单位数据包,保证了同一个第二单位数据包的唯一性,而且,该对称密钥只有第一电子签名设备和第二电子签名设备知道,因此,该第三单位数据包仅可由第二电子签名设备进行解密,从而仅有收款方(即第二电子签名设备)可以拥有并能够使用未加密的第二单位数据包,其他电子签名设备即便非法获取到该第三单位数据包,也因为没有该对称密钥无法通过解密获取到第二单位数据包,从而保证了第二单位数据包流通的安全性。
在该可选实施方式中,作为一种可选的方式,对称密钥可以为异或因子,该异或因子可以是第二电子签名设备和第一电子签名设备协商得到的一组字符或数字的序列,用于进行异或运算;具体地,第一电子签名设备利用与第二电子签名设备关联的对称密钥至少对每个第二单位数据包中的第二单位数据进行加密,得到数据密文,包括:第一电子签名设备利用异或因子至少对每个第二单位数据包中的第二单位数据进行异或运算,得到数据密文;第二电子签名设备利用与第一电子签名设备关联的对称密钥至少对每个第二单位数据包中的数据密文进行解密,包括:第二电子签名设备利用异或因子至少对每个第三单位数据包中的数据密文进行异或运算。异或运算也属于一种对称解密运算方式,但相比其他对称解密运算的方式,异或运算的速度较快,由此,可以提高第二电子签名设备对第三单位数据包进行解密生成第二单位数据包的效率。
本实施例中,在步骤S12中至少可以通过以上几种方式来防止电子签名设备非法重复使用同一个第二单位数据包,造成第二单位数据包流通的混乱,保证同一个第二单位数据包在支付过程中的唯一性。当然本实施例并不排除其他实施方式,只要可以达到相同的技术效果即可。
此外,在方式二中,第三单位数据包为密文,保证了传输数据的安全性,且即便被其他设备截获,也很难破解,进一步提高了第二单位数据包流通的安全性。此外,在第一电子签名设备收到交易请求后,为了保证交易的安全,还需要得到第一电子签名设备的持有用户的确认,才能执行后续的交易操作,在本实施例一种可选的实施方式中,第二电子签名设备发送的交易请求至少包括:第二电子签名设备的设备标识。在步骤S12中的第一电子签名设备从其安全芯片中获取至少一个第二单位数据包之前,第一电子签名设备向持有用户提示交易金额和第二电子签名设备的设备标识,并接收到持有用户的确认信息。在本实施例一种可选的实施方式中,第二电子签名设备的设备标识可以为第二电子签名设备的出厂序列号,也可以为第二电子签名设备的设备名称,还可以为第二电子签名设备持有用户的姓名。通过该设备标识,第一电子签名设备的持有用户可以确认该第二电子签名设备是否为用户同意的交易对象,只有用户对交易金额和交易对象都认可后,用户才会选择确认这笔交易,由此通过用户对交易的确认来保证该笔交易的安全。
作为一种可选的实施方式,第一电子签名设备设置有显示屏或扬声器,通过自身设置的显示屏显示或者通过自身设置的扬声器语音播报交易金额和第二电子签名设备的设备标识;或者,第一电子签名设备与外接设备建立连接,通过外接设备的显示屏或扬声器向持有用户提示交易金额和第二电子签名设备的设备标识。由此,可以方便用户确认付款金额以及收款方是否正确。作为一种可选的实施方式,第一电子签名设备上可以设置有确认按键,用户通过该确认按键进行确认。当然,第一电子签名设备上还可以设置确认信息输入组件,该确认信息输入组件具体可以包括:PIN码输入键盘或指纹输入组件。由此,用户可以通过输入PIN码或者指纹的方式输入确认信息,在对电子交易的相关信息进行确认的同时,第一电子签名设备也可以对持有用户的身份进行验证,进一步提高电子交易的安全性。
步骤S13,第二电子签名设备接收上述至少一个第二单位数据包,并将上述至少一个第二单位数据包存储于安全芯片中。
在本实施例一种可选的实施方式中,第二电子签名设备中设置有安全芯片,该安全芯片内部拥有独立的处理器和存储单元,可存储PKI数字证书和密钥,以及其他特征数据,对数据进行加解密运算,为用户提供数据加密和身份安全认证服务,本实施例中,第二电子签名设备可以将从第一电子签名设备或从其他后台服务器(如银行服务器或商场购物充值服务器等第三方服务器)接收到的第二单位数据包存储于安全芯片中,由于安全芯片的存储单元内的数据不能被非法读出,由此可以保证存储单元中存储数据的安全性。
在步骤S13中的第二电子签名设备将上述至少一个第二单位数据包存储于安全芯片中之前,本实施例提供的方法还包括:第二电子签名设备的安全芯片分配用于存储上述至少一个第二单位数据包的存储空间。在本实施例中,步骤S13中将上述至少一个第二单位数据包存储于安全芯片中,具体包括:将上述至少一个第二单位数据包存储于对应的存储空间中,并将对应的存储空间的状态字置为已占用。其中,安全芯片为每个第二单位数据包分配一个存储空间,一个存储空间只能存储一个第二单位数据包,且第二电子签名设备的交易记录中也会记录一笔交易中从其他电子签名设备接收到的各个第二单位数据包存储的存储空间的位置。存储空间的状态字用于标识该存储空间是否已经被占用,如果已经被占用,则第二电子签名设备不能在该被占用的存储空间存储第二单位数据包。当安全芯片分配的所有存储空间都已被占用时,第二电子签名设备需要进行请求后台服务器更新数据包或者申请新的存储空间的操作,其中,作为一种可选的实施方式,第二电子签名设备可以申请新的存储空间以存储新接收到的第二单位数据包。作为另一种可选的实施方式,第二电子签名设备还可以向后台服务器请求更新本地存储的第二单位数据包,例如,第二电子签名设备可以请求后台服务器将本地存储的N个(N为大于1的正整数)代表小面值的第二单位数据包替换为1个或M个(M<N)代表大货币面值的第二单位数据包进行存储,只要存储的货币金额不变即可,由此便可以释放多个存储空间,从而节省出存储空间以存储新接收到的第二单位数据包。此外,为了进一步提高数据存储的安全性,在本步骤中,第二电子签名设备还可以将每个第二单位数据包进行加密得到每个第二单位数据包的密文数据,并将每个密文数据存储于对应的存储空间中。由此,可以保证存储在安全芯片的存储空间中的第二单位数据包不能被恶意复制或更改,以此确保存储第二单位数据包的安全性。
在本实施例中,为了保证步骤S13中第二电子签名设备存储的第二单位数据包的真实性,在第二电子签名设备接收至少一个第二单位数据包之后,在第二电子签名设备将上述至少一个第二单位数据包存储于安全芯片中之前,作为本实施例中的一种可选实施方式,该交易方法还包括:第二电子签名设备对第三签名数据进行验证,在验证通过后执行将上述至少一个第二单位数据包存储于安全芯片中的步骤。其中,第三签名数据是服务器对第二单位数据进行签名得到的,每个第二单位数据包至少包括:第二单位数据以及服务器对第二单位数据签名得到的第三签名数据,由此使得第二电子签名设备可以验证第二单位数据包的真实性。作为一种可选的实施方式,第三签名数据为服务器利用自身的私钥对第二单位数据进行签名得到的签名数据。相应的,第二电子签名设备对第三签名数据进行验证具体包括:第二电子签名设备利用该服务器的公钥对第三签名数据进行验签。以服务器为银行服务器为例,银行服务器对第二单位数据进行HASH运算得到第二单位数据的摘要报文A1,并利用银行服务器自身的私钥对该摘要报文A1进行签名运算得到第三签名数据,并携带在第二单位数据包中下发至第一电子签名设备,在第二电子签名设备进行收款操作时,第二电子签名设备从第一电子签名设备接收携带有第三签名数据的至少一个第二单位数据包,第二电子签名设备可以利用该银行服务器的公钥对第三签名数据进行验签,具体地,第二电子签名设备利用银行服务器的公钥对第三电子签名数据进行运算得到运算结果A2,并对接收到的第二单位数据包中的第二单位数据进行HASH运算得到第二单位数据的摘要报文A3,将运算结果A2与摘要报文A3进行比对,如果比对结果一致,则第二电子签名设备对第三电子签名数据验签通过。其中,第二电子签名设备可以根据第二单位数据包中的银行证书序号和/或发行银行标识获取银行的公钥,例如,第二电子签名设备可以根据第二单位数据包中的发行银行标识,从与待验证的第三签名数据对应的发行银行服务器获取该银行的银行证书,并从银行证书中获取该银行的公钥;再例如,第二电子签名设备可以预存各个银行的银行证书,根据第二单位数据包中的银行证书序号从预存的各个银行证书中获取与待验证的第三签名数据对应的银行证书,并从对应的银行证书中获取银行的公钥。由此,第二电子签名设备利用银行的公钥对第二单位数据包中携带的第三签名数据进行验签,可以验证第二单位数据包的真实性。上述描述仅以服务器为银行服务器为例进行说明,但本实施例并不限于银行服务器,其他第三方服务器如超市购物卡储值服务器等的具体实施方式均属于本发明的保护范围之内。
进一步地,第二电子签名设备在确保收到的第二单位数据包是真实的前提下,还想再确认接收到的第二单位数据包是否为真实的第一电子签名设备所发送以及第一电子签名设备发送的对象是否确实为第二电子签名设备本身,以避免存储第一电子签名设备误发的数据包,在执行步骤S13中的第二电子签名设备将上述至少一个第二单位数据包存储于安全芯片中之前,该交易方法还包括:第二电子签名设备对第四签名数据进行验证,在验证通过后执行步骤S13。其中,第四签名数据是第一电子签名设备对第二单位数据和第二电子签名设备的设备标识签名得到的,因此,在本实施例一种可选的实施方式中,第二电子签名设备发送给第一电子签名设备的交易请求中还包括:第二电子签名设备的设备标识;第一电子签名设备发送给第二电子签名设备的每个第二单位数据包至少包括:第二单位数据、第一电子签名设备对第二单位数据和第二电子签名设备的设备标识签名得到的第四签名数据,由此使得第二电子签名设备可以验证第二单位数据包的真实性和正确性。作为一种可选的实施方式,第四签名数据为第一电子签名设备利用自身的私钥对第二单位数据和第二电子签名设备的设备标识进行签名得到的签名数据,也就是说,每个第四签名数据的签名对象为每个第二单位数据和第二电子签名设备的设备标识的组合。相应的,第二电子签名设备对第四签名数据进行验证具体包括:第二电子签名设备利用第一电子签名设备的公钥分别对每个第四签名数据进行验签。第二电子签名设备可以从第一电子签名设备获取第一电子签名设备的数字证书,并从该数字证书中获取第一电子签名设备的公钥。当然,第二电子签名设备也可以预存第一电子签名设备以及其他电子签名设备的数字证书,并从第一电子签名设备获取第一电子签名设备的设备标识,根据该设备标识获取预存的第一电子签名设备的数字证书,从该数字证书中获取第一电子签名设备的公钥。由此,第二电子签名设备利用第一电子签名设备的公钥对第二单位数据包中携带的第四签名数据进行验签,可以证明第二单位数据包确实是第一电子签名设备下发给该第二电子签名设备的,即验证第二单位数据包的正确性。
为了方便第二电子签名设备验证从第一电子签名设备接收到的至少一个第二单位数据包是否为重放数据,本实施例中,第二单位数据包中还包括:数据包标识。
作为一种可选的实施方式,第二电子签名设备向第一电子签名设备发送的交易请求中还包括:数据包标识。在第一电子签名设备将至少一个第二单位数据包或第三单位数据包逐一发送至第二电子签名设备的情况下,第一电子签名设备可以将交易请求中的数据包标识添加在一个第二单位数据包或一个第三单位数据包中并将其发送至第二电子签名设备;在第一电子签名设备将至少一个第二单位数据包或第三单位数据包一起发送至第二电子签名设备的情况下,第一电子签名设备可以将交易请求中的数据包标识添加在交易金额对应的所有第二单位数据包或第三单位数据包中并将其发送至第二电子签名设备,具体地,第一电子签名设备将对应的数据包标识添加至第二单位数据包中后,再将该第二单位数据包或将该第二单位数据包生成的第三单位数据包发送给第二电子签名设备,第二电子签名设备接收该第三单位数据包。本实施例中,为了防止重复接收到某个第二单位数据包,具体地,步骤S13中第二电子签名设备将上述至少一个第二单位数据包存储于安全芯片中包括:第二电子签名设备判断接收到的第二单位数据包中的数据包标识是否与发送的交易请求中的数据包标识相同,如果不相同,则第二电子签名设备将数据包标识不相同的第二单位数据包丢弃,如果相同,则第二电子签名设备将数据包标识相同的第二单位数据包存储于安全芯片中。由此,可以方便第二电子签名设备对接收到的第二单位数据包(即接收到第三单位数据包后解密得到的第二单位数据包)是否为重放数据进行检验,并且由于数据包标识由第二电子签名设备分配,所以第二电子签名设备能够判断是否已收到全部数据包标识对应的第二单位数据包,为后续步骤中判断是否需要发起重发请求提供便利。以防止重放攻击举例来说,数据包标识为第二电子签名设备生成的随机数R1时,第一电子签名设备在发送一个第二单位数据包之前,从第二电子签名设备获取数据包标识,即随机数R1,并将包括有随机数R1的第二单位数据包发送至第二电子签名设备。第二电子签名设备可以检验接收到的第二单位数据包中携带的数据包标识是否为随机数R1,如果是,则认为接收到的第二单位数据包为合法的;否则认为接收到的第二单位数据包为重放数据,则丢弃该数据。由此,可以避免第二电子签名设备被重放攻击。
作为另一种可选的实施方式,第二电子签名设备向第一电子签名设备发送的交易请求中还包括:数据包标识起始值。具体地,在本实施例一种可选的实施方式中,第二电子签名设备设有计数器,在步骤S11之前,本实施例提供的方法还包括:第二电子签名设备利用计数器的计数值得到数据包标识起始值,即该计数器的值即为数据包标识起始值,该数据包标识起始值是根据第二电子签名设备每次接收到的数据包的个数累计得到的;因此,在步骤S13之后,本实施例提供的方法还包括:第二电子签名设备的计数器将数据包标识起始值加上接收到的第二单位数据包的总个数计算得到新的数据包标识起始值。由此,第二电子签名设备可以计算并更新数据包标识起始值。第一电子签名设备可以基于数据包标识起始值,并根据待发送给第二电子签名设备的第二单位数据包的总个数计算得到的每个第二单位数据包对应的数据包标识。本实施例中,为了防止重复接收到某个第二单位数据包,具体地,步骤S13中的第二电子签名设备将上述至少一个第二单位数据包存储于安全芯片中包括:第二电子签名设备判断每个第二单位数据包中包含的数据包标识是否满足根据数据包标识起始值确定的预设范围,如果不满足,则第二电子签名设备将数据包标识不满足预设范围的第二单位数据包丢弃,如果满足,则第二电子签名设备将数据包标识满足预设范围的第二单位数据包存储于安全芯片中。
作为一种可选的实施方式,当第二电子签名设备中的计数器为递增型的计数器时,每个第二单位数据包中包含的数据包标识应不小于数据包标识起始值,否则视为重放数据,其中,递增性的计数器是指:第二电子签名设备每接收到一个第二单位数据包,其计数器的计数值增加1。
举例来说,当交易金额为8元时,第一电子签名设备需要发送给第二电子签名设备三个第二单位数据包,三个第二单位数据包分别代表货币面值1元、2元和5元。第一电子签名设备从第二电子签名设备获取的数据包标识起始值为30,该数据包标识起始值可以为第二电子签名设备的计数器计数累计得到的当前数据包的个数加1,例如,在发起本次交易之前,第二电子签名设备总共存储有29个第二单位数据包,这29个第二单位数据包的数据包标识可以从1至29,那么,接收到的下一个数据包就可以从30起开始标识,则第一电子签名设备基于数据包标识起始值30计算得到:代表1元货币面值的第二单位数据包所对应的数据包标识为30、代表2元货币面值的第二单位数据包所对应的数据包标识为31以及代表3元货币面值的第二单位数据包所对应的数据包标识为32,本实施例中,第二电子签名设备在接收到这3个第二单位数据包后,按照对应的数据包标识进行关联存储,并将原数据包标识起始值30加上3计算得到新的数据包标识起始值33。由此,第一电子签名设备仅需从第二电子签名设备获取一个数据包标识起始值,即可根据待发送给第二电子签名设备的第二单位数据包的个数,灵活计算每个第二单位数据包对应的数据包标识。第二电子签名设备判断接收到的三个第二单位数据包所携带的数据包标识不小于数据包标识起始值30,则将接收到的三个第二单位数据包存储于安全芯片中。当然,本实施例仅以第二电子签名设置的计数器为递增计数器为例,其他形式的计数器(如递减计数器)也在本发明的保护范围内,在此不进行举例说明。由此,第二电子签名设备可以根据数据包标识判断接收到的第二单位数据包是否为重放数据,从而避免第二电子签名设备被重放攻击。
在步骤S13之后,如果第二电子签名设备没有收到请求的交易金额对应的全部第二单位数据包时,在本实施例一种可选的实施方式中,本实施例提供的方法还包括:第二电子签名设备根据接收到的第二单位数据包的个数以及每个第二单位数据包所代表的货币面值计算接收到的第二单位数据包所代表的货币面值的总和与交易请求中的交易金额是否一致,如果不一致,则向第一电子签名设备发送重发请求;第一电子签名设备接收该重发请求,并根据重发请求将重发信息发送至第二电子签名设备,其中,重发请求中至少包括第二电子签名设备的设备标识和/或每个第二单位数据包对应的数据包标识,以使得第一电子签名设备可以根据该重发请求确定重发信息,重发信息即为第一电子签名设备从给该第二电子签名设备的一笔交易对应的第三单位数据包中选出的全部或部分数据包,以保证第二电子签名设备得到一笔交易的全部第二单位数据包。
在本实施例中,作为一种可选的实施方式,第二电子签名设备接收第一电子签名设备根据重发请求发送的重发信息,其中,重发信息包括至少一个第二单位数据包。第二电子签名设备将之前存储于安全芯片中的至少一个第二单位数据包删除,并重新存储第一电子签名设备重发的至少一个第二单位数据包。作为另一种可选的实施方式,第二电子签名设备接收第一电子签名设备根据重发请求发送的重发信息,其中,重发信息包括第二电子签名设备未接收到的第二单位数据包。第二电子签名设备将未接收到的第二单位数据包存储于安全芯片中。需要说明的是,重发信息中的第二单位数据包可以理解为密文形式,即第一电子签名设备对第二单位数据包加密得到的第三单位数据包,因此,在一种可选的实施方式中,重发信息中实际包括的是第三单位数据包,第二电子签名设备接收到第一电子签名设备发送的重发信息(第三单位数据包)后,对第三单位数据包解密得到第二单位数据包重新存储。
对于前者,第二电子签名设备的重发请求中至少包括第二电子签名设备的设备标识,第一电子签名设备的重发信息包括至少一个第二单位数据包,即重发一笔交易的交易金额对应的全部第二单位数据包,作为一种可选的方式,第一电子签名设备可以将该至少一个第二单位数据包以密文形式发送至第二电子签名设备,即将至少一个第三单位数据包发送至第二电子签名设备,可以理解此处的重发信息包括至少一个第三单位数据包,第二电子签名设备将之前存储于安全芯片中的至少一个第二单位数据包删除,并重新存储第一电子签名设备重发的至少一个第二单位数据包(对第三单位数据包解密得到的第二单位数据包);对于后者,第二电子签名设备的重发请求中至少包括:未收到的第二单位数据包的数据包标识,还可以包括:第二电子签名设备的设备标识,第一电子签名设备的重发信息包括第二电子签名设备未接收到的第二单位数据包,即重发请求中数据包标识指示的第二单位数据包,作为一种可选的方式,第一电子签名设备可以将该数据包标识指示的第二单位数据包以密文形式发送至第二电子签名设备,即将该数据包标识指示的第三单位数据包发送至第二电子签名设备,可以理解此处的重发信息包括该数据包标识指示的第三单位数据包,第二电子签名设备将接收到的数据包标识指示的第三单位数据包解密得到的第二单位数据包存储于安全芯片中。
对于前者,举例来说,对于一笔编号为1*******的交易,第二电子签名设备的交易请求中的交易金额为10元,第一电子签名设备向第二电子签名设备发送5个分别代表2元货币面值的第二单位数据包,但由于传输过程中数据丢失,第二电子签名设备仅接收到4个分别代表2元货币面值的第二单位数据包,货币面值总和为8元,与交易金额10元不相等。针对该笔交易,第二电子签名设备向第一电子签名设备发送重发请求,该重发请求中至少携带有第二电子签名设备的设备标识,第一电子签名设备接收第二电子签名设备发送的重发请求后,针对该第二电子签名设备的该笔交易可以查询到其对应的全部第三单位数据包,将5个第三单位数据包携带在重发信息中发送至第二电子签名设备,即将5个分别代表2元货币面值的第二单位数据包以密文的形式携带在重发信息发送至第二电子签名设备。第二电子签名设备接收该重发信息,将重发信息中携带的5个第三单位数据包进行解密,得到对应的5个第二单位数据包,并将之前存储于安全芯片中的4个分别代表2元货币面值的第二单位数据包删除,重新存储解密得到的5个第二单位数据包。由此,第二电子签名设备具有在未接收到电子交易所需的全部第二单位数据包时向第一电子签名设备发送重发请求的功能,第一电子签名设备具有响应第二电子签名设备重发的功能,从而保证了第二电子签名设备可以接收到电子交易所需的全部第二单位数据包,保证交易能够顺利完成。
对于后者,举例来说,对于一笔编号为1*******的交易,第二电子签名设备的交易请求中的交易金额为5元,第二电子签名设备接收第一电子签名设备发送的2个分别代表2元货币面值的第二单位数据包(简称2元数据包),以及1个代表1元货币面值的第二单位数据包(简称1元数据包),但由于传输过程中数据丢失,第二电子签名设备仅接收到2个2元数据包,货币面值总和为4元,与交易金额5元不相等。针对该笔交易,第二电子签名设备向第一电子签名设备发送重发请求,该重发请求中至少携带有第二电子签名设备的设备标识以及未收到的数据包的数据包标识(即1元数据包的数据包标识)或者已收到的2元数据包的数据包标识,第一电子签名设备接收第二电子签名设备发送的重发请求后,针对该第二电子签名设备的该笔交易可以根据1元数据包的数据包标识查询到对应的第三单位数据包,或者根据4个2元数据包的数据包标识确定未发送成功的1元数据包的数据包标识对应的第三单位数据包,将1元数据包标识对应的第三单位数据包携带在重发信息发送至第二电子签名设备,即将数据包标识对应的第二单位数据包以密文的形式携带在重发信息发送至第二电子签名设备。第二电子签名设备接收该重发信息,将重发信息中携带的1元数据包标识对应的第三单位数据包进行解密,得到1元数据包标识对应的第二单位数据包,并将该1元数据包标识对应的第二单位数据包存储于安全芯片中。由此,第二电子签名设备具有在未接收到电子交易所需的全部第二单位数据包时向第一电子签名设备发送重发请求的功能,并接收第一电子签名设备重发的第二电子签名设备未接收到的第二单位数据包,减少了重发数据的传输量,保证了第二电子签名设备可以接收到电子交易所需的全部第二单位数据包。
在本实施例一种可选的实施方式中,第一电子签名设备的安全芯片分配用于存储至少一个第三单位数据包(或第二单位数据包)的存储空间,将至少一个第三单位数据包存储于对应的存储空间中。安全芯片的这些存储空间可以存储至少一个第二单位数据包,以便于第一电子签名设备在收到第二电子签名设备的交易请求后从安全芯片中获取交易金额所需的第二单位数据包,此外,在对至少一个第二单位数据包加密得到至少一个第三单位数据包后,至少一个第三单位数据包覆盖至少一个第二单位数据后,该至少一个第三单位数据包存储于对应的存储空间中。在第一电子签名设备根据重发请求将重发信息发送至第二电子签名设备之后,第一电子签名设备接收到第二电子签名设备返回的接收成功的确认信息,第一电子签名设备将之前存储至少一个第三单位数据包的存储空间的状态字修改为交易完成,或者将存储空间清空,并将对应的存储空间的状态字修改为未占用。其中,状态字为交易完成的存储空间,可以被新的数据覆盖。由此,第一电子签名设备在确认第二电子签名设备接收到电子交易所需的全部第二单位数据包之后,可以清理安全芯片的存储空间,以便释放更多的存储空间,保证后续的交易顺利进行。
以上均是以一笔交易的实施方式为例进行说明的,在本实施例中,对于多笔交易中的每笔交易都可以按照上述方式来实现。
在本实施例中,第二电子签名设备的存储空间毕竟是有限的,因此,需要随时监控第二电子签名设备的剩余空间,以便于即时释放存储空间,避免在交易过程中没有多余空间造成交易失败的问题。在本实施例一种可选的实施方式中,还可以通过第二电子签名设备中的计数器实时监控第二电子签名设备的剩余存储空间。具体地,在每一笔交易结束后,即在步骤S13之后,第二电子签名设备利用计数器的计数值得到当前存储的第二单位数据包的总个数。具体地,在每一笔交易中计数器都会加上该笔交易接收到第二单位数据包的个数,在多笔交易之后,计数器的计数值会累计到一个数值,当该数值达到预设数值时,说明第二电子签名设备的存储空间已分配完毕,没有多余的存储空间了,此时,第二电子签名设备需要进行请求服务器更新数据包或者申请新的存储空间的操作(如上所述)。在本实施例中,每个存储空间的大小相同,每个第二单位数据包的大小相同,且与存储空间的大小匹配,例如,第二电子签名设备给一个第二单位数据包分配的存储空间的大小为2M,该2M的存储空间可以存储一个第二单位数据包,而一个安全芯片预留存储第二单位数据包的空间为1G,那么,第二电子签名设备最多可以存储512个第二单位数据包,即预设数值可以设为512。由此,可以实时监控第二电子签名设备的剩余空间,并及时释放出多余的存储空间,避免在交易过程中没有多余空间造成交易失败的问题。当然,第二电子签名设备还可以利用计数器的计数值得到安全芯片中存储的每种货币面值的第二单位数据包的总个数。由此,第二电子签名设备可以根据存储的每种第二单位数据包所代表的货币面值以及个数得到当前存储的第二单位数据包的货币总额。
在本实施例一种可选的实施方式中,第一电子签名设备在将至少一个第二单位数据包发送至第二电子签名设备后,将其账户金额减去交易金额得到当前账户余额,并向持有用户显示交易金额和/或当前账户余额;第二电子签名设备在将上述至少一个第二单位数据包存储于安全芯片中之后,将其当前账户金额加上交易金额得到当前账户余额,向持有用户显示交易金额和/或当前账户余额。由此,持有电子签名设备的用户可以在自己的设备上查询交易金额以及当前账户余额。
采用本实施例提供的一种电子签名设备的交易方法,用户的资金以至少一个第二单位数据包的形式存储于第一电子签名设备或第二电子签名设备中。收款方用户(第二电子签名设备侧)在收取第二单位数据包时,因为资金不再是以数值的形式存储于第二电子签名设备中,所以第二电子签名设备不需要通过服务器更改存储的数值,收款方用户的第二电子签名设备仅需从付款方用户的第一电子签名设备中收取一定数量的第二单位数据包即可,由此,电子签名设备在与其他电子签名设备进行电子交易时,不再需要依托服务器进行联网支付,服务器不需要再对收款方用户或付款方用户的电子签名设备进行监管,从而真正地实现脱机电子交易。此外,第二电子签名设备可以从第一电子签名设备接收密文形式的第三单位数据包,进一步提高了电子交易的安全性;此外,在第二单位数据包中添加数据包标识以及第二电子签名设备的设备标识,可以有效的防止第二电子签名设备被重放攻击,同时可以方便第一电子签名设备确定重发信息。
实施例2
图2为本实施例提供的一种交易系统的结构示意图。如图2所示,该交易系统包括第一电子签名设备20和第二电子签名设备30,其中:
第二电子签名设备30,用于将交易请求发送至第一电子签名设备20,其中,交易请求至少包括:交易金额。第一电子签名设备20,用于接收交易请求,并从其安全芯片中获取至少一个第二单位数据包,将上述至少一个第二单位数据包发送至第二电子签名30设备,其中,每个第二单位数据包代表多种货币面值中的一种货币面值,上述至少一个第二单位数据包所代表的货币面值的总和等于交易金额;第二电子签名设备30,还用于接收上述至少一个第二单位数据包,并将上述至少一个第二单位数据包存储于安全芯片中。
在本实施例中,第一电子签名设备20和第二电子签名设备30可以进行线下交易(即无需与服务器联网完成交易),两者均可以为具有签名功能的电子设备,例如,具有签名功能的智能卡(公交卡、银行卡、购物卡等等)、工行的U盾等等。在本实施例一种可选的实施方式中,第一电子签名设备20与第二电子签名设备30均可设有有线接口或无线接口,第二电子签名设备30可以通过有线或无线连接方式与第一电子签名设备20建立通信连接,其中,无线连接方式包括但不限于:蓝牙、NFC近场通讯或WIFI。当然,第二电子签名设备30还可以通过有线或无线连接方式与外接设备建立连接,通过外接设备向第一电子签名设备20发送交易请求,第一电子签名设备20也可以通过有线或无线连接方式与外接设备建立连接,通过外接设备接收第二电子签名设备30发送的交易请求,其中,外接设备包括但不限于:手机、PC或平板电脑等可以进行通讯的电子设备。由此,两个电子签名设备之间可以直接接收对方的交易请求,进而执行后续的交易流程,无需再与后台服务器联网获取对方的交易请求,执行后续的交易流程,能够实现真正意义上的线下交易。
例如,用户在商场购物,在需要支付时,商场收银台的第二电子签名设备30会向用户的第一电子签名设备20发送携带有交易金额的交易请求,该交易金额便是用户购物需要支付的金额,以便第一电子签名设备20向第二电子签名设备30发送与交易金额对应的第二单位数据包(即第一电子签名设备20发送的第二单位数据包的货币面值的总和等于交易金额),两个电子签名设备都可以是完全独立、无需联网的设备,例如两张卡片之间就可以实现上述交易,实现线下交易,交易简便快捷。
为了进一步提高两个电子签名设备之间数据传输的安全性,在本实施例一种可选的实施方式中,在第二电子签名设备30将交易请求发送至第一电子签名设备20之前,第二电子签名设备30可以与第一电子签名设备20建立安全通道,并利用安全通道进行数据传输。例如,第二电子签名设备30可以利用第一电子签名设备20的公钥对交易请求进行加密得到交易请求密文M1,第一电子签名设备20接收第二电子签名设备30发送的交易请求密文M1,并利用自身私钥对交易请求密文M1进行解密得到交易请求明文;再例如,第二电子签名设备30还可以利用与第一电子签名设备20协商得到的协商密钥对交易请求进行加密得到密文M2,第一电子签名设备20接收第二电子签名设备30发送的交易请求密文M2,并利用对应的协商密钥对交易请求密文M2进行解密得到交易请求明文。当然,第二电子签名设备30和第一电子签名设备20还可以采用其他的方式建立用于传输数据的安全通道,由此可以提高第二电子签名设备30与第一电子签名设备20之间数据传输的安全性。
第一电子签名设备20,用于接收交易请求,并从其安全芯片中获取至少一个第二单位数据包,将上述至少一个第二单位数据包发送至第二电子签名设备30,其中,每个第二单位数据包代表多种货币面值中的一种货币面值,上述至少一个第二单位数据包所代表的货币面值的总和等于交易金额。
本实施例中,每个第二单位数据包代表多种货币面值中的一种货币面值,也就是说,货币面值共有多种,当第一电子签名设备20仅将一个第二单位数据包发送至第二电子签名设备30时,该第二单位数据包仅代表其中的一种货币面值。当第一电子签名设备20将多个第二单位数据包发送至第二电子签名设备30时,多个第二单位数据包可以代表多种不同的货币面值,例如,第二单位数据包的个数为3个,每个第二单位数据包分别代表货币面值1元、2元以及5元;或者,多个第二单位数据包可以代表相同的货币面值,例如,第二单位数据包的个数为3个,每个第二单位数据包均代表货币面值1元;再或者,多个第二单位数据包所代表的货币面值中既包括相同的也包括不相同的货币面值,例如,第二单位数据包的个数为3个,每个第二单位数据包分别代表货币面值1元、1元以及2元。由此,第一电子签名设备20发送给第二电子签名设备30的至少一个第二单位数据包所代表的货币面值具有灵活的组合方式。
在本实施例一种可选的实施方式中,第二单位数据包中至少包括第二单位数据,该第二单位数据至少包括:货币面值数据,或者,货币序号和货币面值数据。其中,货币面值数据为第二单位数据包所代表的货币面值,以此来标识第二单位数据包所代表的货币面值,货币序号为每个第二单位数据包的唯一序号,即不同的第二单位数据包中的货币序号是不同的。由此,能够保证每个第二单位数据包的唯一性,以便于辨认第二单位数据包的真伪。作为一种可选的实施方式,第二单位数据包至少还包括以下之一:发行银行标识和银行证书序号。其中,发行银行标识为发行该第二单位数据包的银行的标识信息,由此,第二电子签名设备30可以根据该标识查询到对应的发行银行的相关信息,而且,第二电子签名设备30可以根据发行银行标识和银行证书序号获取对应的发行银行的银行证书,银行证书中包含有发行银行的公钥,以便于后续第二电子签名设备30利用发行银行的公钥对第二单位数据的签名完成验证。
在本实施例一种可选的实施方式中,每个第二单位数据包至少包括:第二单位数据、服务器对所述第二单位数据签名得到的第三签名数据。作为一种可选的实施方式,服务器利用自身的私钥分别对每个第二单位数据包中的第二单位数据进行签名,得到与每个第二单位数据包对应的第三签名数据。具体地,以服务器为银行服务器为例,服务器利用自身的私钥进行签名是指银行服务器根据发行银行标识和银行证书序号获取对应的私钥,利用该私钥进行签名。服务器将至少一个携带有第三签名数据的第二单位数据包发送至第一电子签名设备20。第二电子签名设备30,用于在从第一电子签名设备20进行收款操作时,从第一电子签名设备20接收上述至少一个携带有第三签名数据的第二单位数据包,以便于后续操作中第二电子签名设备30可以利用服务器的公钥验证第二单位数据包的真实性。
在本实施例另一种可选的实施方式中,第二电子签名设备30发送至第一电子签名设备20的交易请求中还包括:第二电子签名设备30的设备标识;每个第二单位数据包至少包括:第二单位数据、第一电子签名设备对第二单位数据和第二电子签名设备30的设备标识签名得到的第四签名数据。作为一种可选的实施方式,第一电子签名设备20,用于利用自身的私钥对第二单位数据和第二电子签名设备30的设备标识进行签名,得到与每个第二单位数据包对应的第四签名数据。第二电子签名设备30,用于在从第一电子签名设备20进行收款操作时,从第一电子签名设备20接收至少一个携带有第四签名数据的第二单位数据包,以便于后续操作中第二电子签名设备30利用第一电子签名设备20的公钥验证第二单位数据包的正确性。
在本实施例中,第一电子签名设备20,用于在收到第二电子签名设备30发送的交易请求后,从自身的账户余额中扣除第二电子签名设备30请求的交易金额,并为第二电子签名设备30下发货币面值的总和等于交易金额的至少一个第二单位数据包,在第二电子签名设备30接收到这些第二单位数据包,如转账成功后,便完成了线下交易,第二电子签名设备30不需要再与服务器联网便可以接收第一电子签名设备20转账(即接收第一电子签名设备20发送的至少一个第二单位数据包)。每个第二单位数据包所代表的货币面值可以相同也可以不同,第一电子签名设备20发送给第二电子签名设备30的第二单位数据包的个数以及各个第二单位数据包所代表的货币面值可以由第一电子签名设备20根据交易金额确定,也可以由第二电子签名设备30根据交易金额确定后告知第一电子签名设备20,例如,作为本实施例中的一种可选实施方式,第二电子签名设备30发送的交易请求中还可以携带所需第二单位数据包的种类以及个数。前者第一电子签名设备20可以灵活实现第二单位数据包的下发,后者可以满足第二电子签名设备30的用户对第二单位数据包的个数以及面值的需求。在本实施例一种可选的实施方式中,每个第二单位数据包代表多种货币面值中的一种货币面值,例如,第二单位数据包所代表的货币面值包括:1元、2元、5元、10元、20元、50元和100元,当然,如果未来国家发行了新的货币面值、或者除了使用人民币之外的其他地区、国家的货币面值也属于本发明的保护范围,本实施例中仅以人民币面值进行举例说明。例如,第二电子签名设备30向第一电子签名设备20发送交易请求,其中,交易请求包括的交易金额为10元,第二电子签名设备30接收第一电子签名设备20发送的5个第二单位数据包,5个第二单位数据包所代表的货币面值分别为1元、1元、1元、2元和5元,5个第二单位数据包所代表的货币面值的总和为10元,与交易金额相等。当然,当交易请求包括的交易金额为10元时,第二电子签名设备30还可以接收第一电子签名设备20发送的10个代表1元货币面值的第二单位数据包,或者,2个代表5元货币面值的第二单位数据包,或者,1个代表10元货币面值的第二单位数据包。也就是说,第二电子单位货币数据包所代表的货币面值与个数可以灵活组合,仅需使第一电子签名设备20发送的至少一个第二单位数据包所代表的货币面值的总和等于交易金额即可,此处仅以交易金额为10元为例,对于其他金额数值原理相同,此处不再举例说明。由此,在第一电子签名设备20根据交易金额确定第二单位数据包的个数,以及各个第二单位数据包所代表的金额的情况下,第一电子签名设备20可以灵活实现第二单位数据包的下发,可以有各种组合;在第二电子签名设备30根据交易金额确定第二单位数据包的个数,以及各个第二单位数据包所代表的货币面值的情况下,可以将请求的个数以及对应的第二单位数据包所代表的货币面值发送至第一电子签名设备20,由此可以满足第二电子签名设备30的用户对第二单位数据包的个数以及货币面值的需求。
对于第二电子签名设备30根据交易金额确定第二单位数据包的个数,以及各个第二单位数据包所代表的货币面值的情况,第一电子签名设备20的安全芯片中很有可能没有存储第二电子签名设备30请求的货币面值对应的第二单位数据包或者存储的个数不足请求的个数,作为本实施例中的一种可选实施方式,第一电子签名设备20,用于向第二电子签名设备30发送提示信息,该提示信息可以包括:对应货币面值的第二单位数据包不存在或者个数不足的信息,第二电子签名设备30,用于根据交易金额更换第二电子单位货币数据包所代表的货币面值与个数的组合策略,或者,由第一电子签名设备20根据交易金额更换第二电子单位货币数据包所代表的货币面值与个数的组合策略。例如,第一电子签名设备20收到第二电子签名设备30转账10元的交易请求,并请求发送5个代表2元的第二单位数据包(下称2元数据包),但第一电子签名设备20只有4个2元数据包,则向第二电子签名设备30发送只有4个2元数据包,2元数据包个数不足的提示信息,此时,第二电子签名设备30可以更换组合策略,例如,向第一电子签名设备20返回请求发送4个2元数据包、2个1元数据包的响应,或者,第一电子签名设备20在向第二电子签名设备30发送提示信息后,收到第二电子签名设备30的确认响应,则第一电子签名设备20可以随机确定一种组合策略,例如,将4个2元数据包、2个1元数据包发送至第二电子签名设备30,由此,解决第一电子签名设备20的安全芯片中存储的第二单位数据包的个数不足或不存在的问题。
此外,在具体实施时,还存在第一电子签名设备20的安全芯片中存储的第二单位数据包所代表的货币面值无法拼凑出与交易金额相等的上述至少一个第二单位数据包的问题,为了解决该问题,在本实施例一种可选的实施方式中,第一电子签名设备20,还用于在接收交易请求之后,在从其安全芯片中获取至少一个第二单位数据包之前,发送待找零信息;第二电子签名设备30,用于接收该待找零信息,其中,待找零信息由第一电子签名设备20根据交易金额以及自身安全芯片中存储的第二单位数据包所代表的货币面值确定,例如,待找零信息可以包括需要第二电子签名设备30返回的找回零钱的货币面值。如果第二电子签名设备30存储有代表该找回零钱货币面值的第二单位数据包,或者,存储有货币面值的总和等于该找回零钱的第二单位数据包,则第二电子签名设备30可以向第一电子签名设备20返回确认响应,即告知第一电子签名设备20自己存有找零用的第二单位数据包,第一电子签名设备20在接收到第二电子签名设备30发送的找零信息(即返回确认相应)之后,第一电子签名设备20从安全芯片中获取至少一个第二单位数据包,其中,上述至少一个第二单位数据包所代表的货币面值的总和应等于交易金额加上找回零钱的货币面值。
例如,交易金额为7元,第一电子签名设备20的安全芯片中存储有5个分别代表2元货币面值的第二单位数据包(下称2元数据包),则第一电子签名设备20无法利用该5个2元数据包拼凑出7元货币面值,第一电子签名设备20只能利用安全芯片中存储的5个2元数据包拼凑出与交易金额7元最接近且大于交易金额的货币面值,即第一电子签名设备20可以利用4个2元数据包拼凑出8元货币面值,还需要第二电子签名设备30找回1元零钱,即在第一电子签名设备20将4个2元数据包发送给第二电子签名设备30后,第二电子签名设备30需要向第一电子签名设备20返回1个1元数据包(代表1元货币面值的第二单位数据包)。第一电子签名设备20向第二电子签名设备30发送携带有找回零钱为1元的待找零信息,其中,待找零信息用于询问第二电子签名设备30是否可以找回所代表的货币面值总和为1元的第二单位数据包。如果第二电子签名设备30的安全芯片中存储有所代表的货币面值总和为1元的第二单位数据包,则向第一电子签名设备20发送找零信息,即同意向第一电子签名设备20返回代表1元或者货币面值总和为1元的第二单位数据包。第一电子签名设备20在接收到找零信息之后,从安全芯片中获取4个2元数据包发送至第二电子签名设备30,第二电子签名设备30会再返回给第一电子签名设备201个1元数据包(代表1元货币面值的第二单位数据包)。由此,当无法拼凑出所代表的货币面值总和与交易金额相等的第二单位数据包时,可以通过找零机制完成电子交易,使得电子交易更加方便。
本实施例中,为了防止电子签名设备非法重复使用同一个第二单位数据包,造成第二单位数据包金融流通的混乱,保证同一个第二单位数据包在支付过程中的唯一性,本实施例第一电子签名设备20将上述至少一个第二单位数据包发送至第二电子签名设备30的方式至少包括以下两种之一:
方式一:
第一电子签名设备20,用于在将上述至少一个第二单位数据包发送至第二电子签名设备30之后,删除获取的至少一个第二单位数据包。由于第一电子签名设备20在根据交易金额获取到该至少一个第二单位数据包并发送至第二电子签名设备30之后,本地其实还保留着已发送的这些第二单位数据包,并不会自动执行删除的动作,因此,本方式中,为了保证第一电子签名设备20无法再重复使用这些第二单位数据,在第一电子签名设备20将上述至少一个第二单位数据包发送至第二电子签名设备30之后,会强制删除已发送过的这些第二单位数据包,并将对应的存储空间的状态字置为未占用。由此,第一电子签名设备20可以在支付第二单位数据包之后,将自身存储的已支付的第二单位数据包删除,保证了第一电子签名设备20不能重复使用也无法恢复出已发送过的第二单位数据包,即保证了同一个第二单位数据包在支付过程中的唯一性;
在该方式一中,第二电子签名设备30,用于在接收到第一电子签名设备20发送的至少一个第二单位数据包后,直接存储该至少一个第二单位数据包,由于第一电子签名设备20已经删除该至少一个第二单位数据包,第二电子签名设备30接收到的第二单位数据包都是唯一的,不会出现重复的数据包。
方式二:
第一电子签名设备20发送给第二电子签名设备30的至少一个第二单位数据包为密文形式,即第一电子签名设备20,用于将上述至少一个第二单位数据包发送至第二电子签名设备30,包括:第一电子签名设备20,用于对上述至少一个第二单位数据进行加密,得到至少一个第三单位数据包,并将上述至少一个第三单位数据包发送至第二电子签名设备30;第二电子签名设备30,用于接收第一电子签名设备20发送的至少一个第二单位数据包,包括:第二电子签名设备30,用于接收上述至少一个第三单位数据包,对上述至少一个第三单位数据包进行解密,得到至少一个第二单位数据包。例如,第二电子签名设备30从第一电子签名设备20接收到5个代表2元的第三单位数据包,对每个代表2元的第三单位数据包解密得到5个代表2元的第二单位数据包。第二电子签名设备30接收到的至少一个第三单位数据包中包括数据密文,其中,数据密文由第一电子签名设备20对每个第二单位数据包中的部分或全部数据进行加密操作得到的。具体地,第二单位数据包中可以包括:第二单位数据、第三签名数据、第四签名数据、数据包标识和第二电子签名设备30的设备标识等,第一电子签名设备20对每个第二单位数据包中的部分数据进行加密是指:第一电子签名设备20至少对第二单位数据包中的第二单位数据进行加密,例如,第一电子签名设备20可以对第二单位数据包中的第二单位数据和数据包标识进行加密。本实施例中,第一电子签名设备20对每个第二单位数据包中的部分或全部数据进行的加密操作为不可逆操作,即,第一电子签名设备20可以加密得到第三单位数据包,却不能从第三单位数据包解密得到第二单位数据包,因此,当得到的至少一个第三单位数据包覆盖了对应的至少一个第二单位数据包时,第一电子签名设备20中仅仅存储了加密的第三单位数据包,由于其不能对第三单位数据包解密,所以无法恢复出第二单位数据包,也就不能再重复使用这些第二单位数据包。
具体地,作为一种可选的实施方式,第一电子签名设备20,用于对上述至少一个第二单位数据进行加密,包括:第一电子签名设备20,用于利用第二电子签名设备30的公钥至少对每个第二单位数据包中的第二单位数据加密,得到数据密文;第二电子签名设备30,用于对上述至少一个第三单位数据包进行解密,包括:第二电子签名设备30,用于利用第二电子签名设备30的私钥至少对每个第三单位数据包中的数据密文进行解密。作为另一种可选的实施方式,第一电子签名设备20,用于对上述至少一个第二单位数据包进行加密,包括:第一电子签名设备20,用于利用与第二电子签名设备30关联的对称密钥至少对每个第二单位数据包中的第二单位数据进行加密,得到数据密文;第二电子签名设备30,用于对上述至少一个第三单位数据包进行解密,包括:第二电子签名设备30,用于利用与第一电子签名设备20关联的对称密钥至少对每个第三单位数据包中的数据密文进行解密。
对于前一种可选实施方式,第二电子签名设备30可以在发送给第一电子签名设备20的交易请求中还包括第二电子签名设备30的公钥,或者第一电子签名设备20可以向第三方认证平台获取第二电子签名设备30的数字证书,该数字证书中保存有第二电子签名设备30的公钥。由此,第一电子签名设备20可以获取到第二电子签名设备30的公钥。
第一电子签名设备20,还用于在对上述至少一个第二单位数据包进行加密之后,用每个第三单位数据包覆盖安全芯片中存储的每个第二单位数据包。本实施例中,用每个第三单位数据包覆盖安全芯片中存储的每个第二单位数据包是指,第一电子签名设备20将生成的每个第三单位数据包写入对应的原第二单位数据包的存储空间,替换掉原来的第二单位数据包。例如,将数据包标识为1***的第二单位数据包加密生成第三单位数据包,并写入该1***对应的存储空间中。由此,第一电子签名设备20在进行第二单位数据包支付之后,对于已发送给第二电子签名设备30的第二单位数据包,第一电子签名设备20的安全芯片仅存储由第二电子签名设备30公钥进行加密后得到的对应的第三单位数据包,而第一电子签名设备20不可能有第二电子签名设备30的私钥,因此第一电子签名设备20无法对该第三单位数据包进行解密,无法恢复出第二单位数据包,也就不能再重复使用这些第二单位数据包,保证了同一个第二单位数据包的唯一性,而且该第三单位数据包是利用第二电子签名设备30的公钥加密的,所以该第三单位数据包仅可由第二电子签名设备30进行解密(只有第二电子签名设备30存有自己的私钥),从而仅有收款方(即第二电子签名设备30)可以拥有并能够使用未加密的第二单位数据包,其他电子签名设备即便非法获取到该第三单位数据包,也因为没有第二电子签名设备30的私钥而无法解密不能使用获取到的第二单位数据包,从而保证了第二单位数据包流通的安全性。
对于后一种可选实施方式,对称密钥由第一电子签名设备20与第二电子签名设备30进行协商得到,也就是说,第一电子签名设备20在进行加密操作时使用的对称密钥与第二电子签名设备30在进行解密操作时使用的对称密钥是相同的。第一电子签名设备20,用于在对上述至少一个第二单位数据包进行加密之后,用每个第三单位数据包覆盖安全芯片中存储的每个第二单位数据包,并删除该对称密钥。本实施例中,用每个第三单位数据包覆盖安全芯片中存储的每个第二单位数据包是指,第一电子签名设备20将生成的每个第三单位数据包写入对应的原第二单位数据包的存储空间,替换掉原来的第二单位数据包。例如,将数据包标识为1***的第二单位数据包加密生成第三单位数据包,并写入该1***对应的存储空间中。在该利用对称密钥加解密的方式中,如果第一电子签名设备20中还拥有对称密钥,就可以对第三单位数据包解密恢复出第二单位数据包,因此,本实施例中,在第一电子签名设备20将上述至少一个第二单位数据包发送至第二电子签名设备30之后,必须强制删除对称密钥,由此,第一电子签名设备20在进行第二单位数据包支付之后,对于已发送给第二电子签名设备30的第二单位数据包,第一电子签名设备20的安全芯片仅存储由第二电子签名设备30利用对称密钥加密后得到的对应的第三单位数据包,而由于第一电子签名设备20已将进行加密使用的对称密钥删除,所以,第一电子签名设备20无法再对该第三单位数据包进行解密,无法恢复出第二单位数据包,也就不能再重复使用这些第二单位数据包,保证了同一个第二单位数据包的唯一性,而且,该对称密钥只有第一电子签名设备20和第二电子签名设备30知道,因此,该第三单位数据包仅可由第二电子签名设备30进行解密,从而仅有收款方(即第二电子签名设备30)可以拥有并能够使用未加密的第二单位数据包,其他电子签名设备即便非法获取到该第三单位数据包,也因为没有该对称密钥无法通过解密获取到第二单位数据包,从而保证了第二单位数据包流通的安全性。
在该可选实施方式中,作为一种可选的方式,对称密钥可以为异或因子,该异或因子可以是第二电子签名设备30和第一电子签名设备20协商得到的一组字符或数字的序列,用于进行异或运算;具体地,第一电子签名设备20,用于利用与第二电子签名设备30关联的对称密钥至少对每个第二单位数据包中的第二单位数据进行加密,得到数据密文,包括:第一电子签名设备20,用于利用异或因子至少对每个第二单位数据包中的第二单位数据进行异或运算,得到数据密文;第二电子签名设备30,用于利用与第一电子签名设备20关联的对称密钥至少对每个第二单位数据包中的数据密文进行解密,包括:第二电子签名设备30,用于利用异或因子至少对每个第三单位数据包中的数据密文进行异或运算。异或运算也属于一种对称解密运算方式,但相比其他对称解密运算的方式,异或运算的速度较快,由此,可以提高第二电子签名设备30对第三单位数据包进行解密生成第二单位数据包的效率。
本实施例中,至少可以通过以上几种方式来防止电子签名设备非法重复使用同一个第二单位数据包,造成第二单位数据包流通的混乱,保证同一个第二单位数据包在支付过程中的唯一性。当然本实施例并不排除其他实施方式,只要可以达到相同的技术效果即可。
此外,在方式二中,第三单位数据包为密文,保证了传输数据的安全性,且即便被其他设备截获,也很难破解,进一步提高了第二单位数据包流通的安全性。此外,在第一电子签名设备20收到交易请求后,为了保证交易的安全,还需要得到第一电子签名设备20的持有用户的确认,才能执行后续的交易操作,在本实施例一种可选的实施方式中,第二电子签名设备30发送的交易请求至少包括:第二电子签名设备30的设备标识。第一电子签名设备20,用于在从其安全芯片中获取至少一个第二单位数据包之前,向持有用户提示交易金额和第二电子签名设备30的设备标识,并接收到持有用户的确认信息。在本实施例一种可选的实施方式中,第二电子签名设备30的设备标识可以为第二电子签名设备30的出厂序列号,也可以为第二电子签名设备30的设备名称,还可以为第二电子签名设备30持有用户的姓名。通过该设备标识,第一电子签名设备20的持有用户可以确认该第二电子签名设备30是否为用户同意的交易对象,只有用户对交易金额和交易对象都认可后,用户才会选择确认这笔交易,由此通过用户对交易的确认来保证该笔交易的安全。
作为一种可选的实施方式,第一电子签名设备20设置有显示屏或扬声器,第一电子签名设备20,用于通过自身设置的显示屏显示或者通过自身设置的扬声器语音播报交易金额和第二电子签名设备30的设备标识;或者,第一电子签名设备20,用于与外接设备建立连接,通过外接设备的显示屏或扬声器向持有用户提示交易金额和第二电子签名设备30的设备标识。由此,可以方便用户确认付款金额以及收款方是否正确。作为一种可选的实施方式,第一电子签名设备20上可以设置有确认按键,用户通过该确认按键进行确认。当然,第一电子签名设备20上还可以设置确认信息输入组件,该确认信息输入组件具体可以包括:PIN码输入键盘或指纹输入组件。由此,用户可以通过输入PIN码或者指纹的方式输入确认信息,在对电子交易的相关信息进行确认的同时,第一电子签名设备20也可以对持有用户的身份进行验证,进一步提高电子交易的安全性。
第二电子签名设备30,用于接收上述至少一个第二单位数据包,并将上述至少一个第二单位数据包存储于安全芯片中。
在本实施例一种可选的实施方式中,第二电子签名设备30中设置有安全芯片,该安全芯片内部拥有独立的处理器和存储单元,可存储PKI数字证书和密钥,以及其他特征数据,对数据进行加解密运算,为用户提供数据加密和身份安全认证服务,本实施例中,第二电子签名设备30可以将从第一电子签名设备20或从其他后台服务器(如银行服务器或商场购物充值服务器等第三方服务器)接收到的第二单位数据包存储于安全芯片中,由于安全芯片的存储单元内的数据不能被非法读出,由此可以保证存储单元中存储数据的安全性。
第二电子签名设备30,还用于在将上述至少一个第二单位数据包存储于安全芯片中之前,利用其安全芯片分配用于存储至少一个第二单位数据包的存储空间。在本实施例中,第二电子签名设备30,用于将上述至少一个第二单位数据包存储于安全芯片中,具体包括:第二电子签名设备30,用于将上述至少一个第二单位数据包存储于对应的存储空间中,并将对应的存储空间的状态字置为已占用。其中,安全芯片为每个第二单位数据包分配一个存储空间,一个存储空间只能存储一个第二单位数据包,且第二电子签名设备30的交易记录中也会记录一笔交易中从其他电子签名设备接收到的各个第二单位数据包存储的存储空间的位置。存储空间的状态字用于标识该存储空间是否已经被占用,如果已经被占用,则第二电子签名设备30不能在该被占用的存储空间存储第二单位数据包。当安全芯片分配的所有存储空间都已被占用时,第二电子签名设备30需要进行请求后台服务器更新数据包或者申请新的存储空间的操作,其中,作为一种可选的实施方式,第二电子签名设备30可以申请新的存储空间以存储新接收到的第二单位数据包。作为另一种可选的实施方式,第二电子签名设备30还可以向后台服务器请求更新本地存储的第二单位数据包,例如,第二电子签名设备30可以请求后台服务器将本地存储的N个(N为大于1的正整数)代表小面值的第二单位数据包替换为1个或M个(M<N)代表大货币面值的第二单位数据包进行存储,只要存储的货币金额不变即可,由此便可以释放多个存储空间,从而节省出存储空间以存储新接收到的第二单位数据包。此外,为了进一步提高数据存储的安全性,在本实施方式中,第二电子签名设备30还可以将每个第二单位数据包进行加密得到每个第二单位数据包的密文数据,并将每个密文数据存储于对应的存储空间中。由此,可以保证存储在安全芯片的存储空间中的第二单位数据包不能被恶意复制或更改,以此确保存储第二单位数据包的安全性。
在本实施例中,为了保证第二电子签名设备30存储的第二单位数据包的真实性,在第二电子签名设备30,还用于在接收上述至少一个第二单位数据包之后,在将上述至少一个第二单位数据包存储于安全芯片中之前,对第三签名数据进行验证,在验证通过后执行将上述至少一个第二单位数据包存储于安全芯片中的操作。其中,第三签名数据是服务器对第二单位数据进行签名得到的,每个第二单位数据包至少包括:第二单位数据以及服务器对第二单位数据签名得到的第三签名数据,由此使得第二电子签名设备30可以验证第二单位数据包的真实性。作为一种可选的实施方式,第三签名数据为服务器利用自身的私钥对第二单位数据进行签名得到的签名数据。相应的,第二电子签名设备30对第三签名数据进行验证具体包括:第二电子签名设备30,用于利用该服务器的公钥对第三签名数据进行验签。以服务器为银行服务器为例,银行服务器对第二单位数据进行HASH运算得到第二单位数据的摘要报文A1,并利用银行服务器自身的私钥对该摘要报文A1进行签名运算得到第三签名数据,并携带在第二单位数据包中下发至第一电子签名设备20,在第二电子签名设备30进行收款操作时,第二电子签名设备30从第一电子签名设备20接收携带有第三签名数据的至少一个第二单位数据包,第二电子签名设备30可以利用该银行服务器的公钥对第三签名数据进行验签,具体地,第二电子签名设备30利用银行服务器的公钥对第三电子签名数据进行运算得到运算结果A2,并对接收到的第二单位数据包中的第二单位数据进行HASH运算得到第二单位数据的摘要报文A3,将运算结果A2与摘要报文A3进行比对,如果比对结果一致,则第二电子签名设备30对第三电子签名数据验签通过。其中,第二电子签名设备30可以根据第二单位数据包中的银行证书序号和/或发行银行标识获取银行的公钥,例如,第二电子签名设备30可以根据第二单位数据包中的发行银行标识,从与待验证的第三签名数据对应的发行银行服务器获取该银行的银行证书,并从银行证书中获取该银行的公钥;再例如,第二电子签名设备30可以预存各个银行的银行证书,根据第二单位数据包中的银行证书序号从预存的各个银行证书中获取与待验证的第三签名数据对应的银行证书,并从对应的银行证书中获取银行的公钥。由此,第二电子签名设备30利用银行的公钥对第二单位数据包中携带的第三签名数据进行验签,可以验证第二单位数据包的真实性。上述描述仅以服务器为银行服务器为例进行说明,但本实施例并不限于银行服务器,其他第三方服务器如超市购物卡储值服务器等的具体实施方式均属于本发明的保护范围之内。
进一步地,第二电子签名设备30在确保收到的第二单位数据包是真实的前提下,还想再确认接收到的第二单位数据包是否为真实的第一电子签名设备20所发送以及第一电子签名设备20发送的对象是否确实为第二电子签名设备30本身,以避免存储第一电子签名设备20误发的数据包,第二电子签名设备30,用于在将上述至少一个第二单位数据包存储于安全芯片中之前,对第四签名数据进行验证,在验证通过后执行第二电子签名设备30将上述至少一个第二单位数据包存储于安全芯片中的操作。其中,第四签名数据是第一电子签名设备20对第二单位数据和第二电子签名设备30的设备标识签名得到的,因此,在本实施例一种可选的实施方式中,第二电子签名设备30发送给第一电子签名设备20的交易请求中还包括:第二电子签名设备30的设备标识;第一电子签名设备20发送给第二电子签名设备30的每个第二单位数据包至少包括:第二单位数据、第一电子签名设备20对第二单位数据和第二电子签名设备30的设备标识签名得到的第四签名数据,由此使得第二电子签名设备30可以验证第二单位数据包的真实性和正确性。作为一种可选的实施方式,第四签名数据为第一电子签名设备20利用自身的私钥对第二单位数据和第二电子签名设备30的设备标识进行签名得到的签名数据,也就是说,每个第四签名数据的签名对象为每个第二单位数据和第二电子签名设备30的设备标识的组合。相应的,第二电子签名设备30,用于对第四签名数据进行验证,具体包括:第二电子签名设备30,用于利用第一电子签名设备20的公钥分别对每个第四签名数据进行验签。第二电子签名设备30可以从第一电子签名设备20获取第一电子签名设备20的数字证书,并从该数字证书中获取第一电子签名设备20的公钥。当然,第二电子签名设备30也可以预存第一电子签名设备20以及其他电子签名设备的数字证书,并从第一电子签名设备20获取第一电子签名设备20的设备标识,根据该设备标识获取预存的第一电子签名设备20的数字证书,从该数字证书中获取第一电子签名设备20的公钥。由此,第二电子签名设备30利用第一电子签名设备20的公钥对第二单位数据包中携带的第四签名数据进行验签,可以证明第二单位数据包确实是第一电子签名设备20下发给该第二电子签名设备30的,即验证第二单位数据包的正确性。
为了方便第二电子签名设备30验证从第一电子签名设备20接收到的至少一个第二单位数据包是否为重放数据,本实施例中,第二单位数据包中还包括:数据包标识。
作为一种可选的实施方式,第二电子签名设备30向第一电子签名设备20发送的交易请求中还包括:数据包标识。在第一电子签名设备20将至少一个第二单位数据包或第三单位数据包逐一发送至第二电子签名设备30的情况下,第一电子签名设备20可以将交易请求中的数据包标识添加在一个第二单位数据包或一个第三单位数据包中并将其发送至第二电子签名设备30;在第一电子签名设备20将至少一个第二单位数据包或第三单位数据包一起发送至第二电子签名设备30的情况下,第一电子签名设备20可以将交易请求中的数据包标识添加在交易金额对应的所有第二单位数据包或第三单位数据包中并将其发送至第二电子签名设备30,具体地,第一电子签名设备20将对应的数据包标识添加至第二单位数据包中后,再将该第二单位数据包或将该第二单位数据包生成的第三单位数据包发送给第二电子签名设备30,第二电子签名设备30接收该第三单位数据包。本实施例中,为了防止重复接收到某个第二单位数据包,具体地,第二电子签名设备30,用于将至少一个第二单位数据包存储于安全芯片中,包括:第二电子签名设备30,用于判断接收到的第二单位数据包中的数据包标识是否与发送的交易请求中的数据包标识相同,如果不相同,则第二电子签名设备30将数据包标识不相同的第二单位数据包丢弃,如果相同,则第二电子签名设备30将数据包标识相同的第二单位数据包存储于安全芯片中。由此,可以方便第二电子签名设备30对接收到的第二单位数据包(即接收到第三单位数据包后解密得到的第二单位数据包)是否为重放数据进行检验,并且由于数据包标识由第二电子签名设备30分配,所以第二电子签名设备30能够判断是否已收到全部数据包标识对应的第二单位数据包,为后续操作中判断是否需要发起重发请求提供便利。以防止重放攻击举例来说,数据包标识为第二电子签名设备30生成的随机数R1时,第一电子签名设备20在发送一个第二单位数据包之前,从第二电子签名设备30获取数据包标识,即随机数R1,并将包括有随机数R1的第二单位数据包发送至第二电子签名设备30。第二电子签名设备30可以检验接收到的第二单位数据包中携带的数据包标识是否为随机数R1,如果是,则认为接收到的第二单位数据包为合法的;否则认为接收到的第二单位数据包为重放数据,则丢弃该数据。由此,可以避免第二电子签名设备30被重放攻击。
作为另一种可选的实施方式,第二电子签名设备30向第一电子签名设备20发送的交易请求中还包括:数据包标识起始值。具体地,在本实施例一种可选的实施方式中,第二电子签名设备30设有计数器,第二电子签名设备30,还用于在将交易请求发送至第一电子签名设备20之前,利用计数器的计数值得到数据包标识起始值,即该计数器的值即为数据包标识起始值,该数据包标识起始值是根据第二电子签名设备30每次接收到的数据包的个数累计得到的;因此,第二电子签名设备,还用于在将上述至少一个第二单位数据包存储于安全芯片中之后,将数据包标识起始值加上接收到的第二单位数据包的总个数计算得到新的数据包标识起始值。由此,第二电子签名设备30可以计算并更新数据包标识起始值。第一电子签名设备20可以基于数据包标识起始值,并根据待发送给第二电子签名设备30的第二单位数据包的总个数计算得到的每个第二单位数据包对应的数据包标识。本实施例中,为了防止重复接收到某个第二单位数据包,具体地,第二电子签名设备30,用于将上述至少一个第二单位数据包存储于安全芯片中,包括:第二电子签名设备30,用于判断每个第二单位数据包中包含的数据包标识是否满足根据数据包标识起始值确定的预设范围,如果不满足,则第二电子签名设备30将数据包标识不满足预设范围的第二单位数据包丢弃,如果满足,则第二电子签名设备30将数据包标识满足预设范围的第二单位数据包存储于安全芯片中。
作为一种可选的实施方式,当第二电子签名设备30中的计数器为递增型的计数器时,每个第二单位数据包中包含的数据包标识应不小于数据包标识起始值,否则视为重放数据,其中,递增性的计数器是指:第二电子签名设备30每接收到一个第二单位数据包,其计数器的计数值增加1。
举例来说,当交易金额为8元时,第一电子签名设备20需要发送给第二电子签名设备30三个第二单位数据包,三个第二单位数据包分别代表货币面值1元、2元和5元。第一电子签名设备20从第二电子签名设备30获取的数据包标识起始值为30,该数据包标识起始值可以为第二电子签名设备30的计数器计数累计得到的当前数据包的个数加1,例如,在发起本次交易之前,第二电子签名设备30总共存储有29个第二单位数据包,这29个第二单位数据包的数据包标识可以从1至29,那么,接收到的下一个数据包就可以从30起开始标识,则第一电子签名设备20基于数据包标识起始值30计算得到:代表1元货币面值的第二单位数据包所对应的数据包标识为30、代表2元货币面值的第二单位数据包所对应的数据包标识为31以及代表3元货币面值的第二单位数据包所对应的数据包标识为32,本实施例中,第二电子签名设备30在接收到这3个第二单位数据包后,按照对应的数据包标识进行关联存储,并将原数据包标识起始值30加上3计算得到新的数据包标识起始值33。由此,第一电子签名设备20仅需从第二电子签名设备30获取一个数据包标识起始值,即可根据待发送给第二电子签名设备30的第二单位数据包的个数,灵活计算每个第二单位数据包对应的数据包标识。第二电子签名设备30判断接收到的三个第二单位数据包所携带的数据包标识不小于数据包标识起始值30,则将接收到的三个第二单位数据包存储于安全芯片中。当然,本实施例仅以第二电子签名设置的计数器为递增计数器为例,其他形式的计数器(如递减计数器)也在本发明的保护范围内,在此不进行举例说明。由此,第二电子签名设备30可以根据数据包标识判断接收到的第二单位数据包是否为重放数据,从而避免第二电子签名设备30被重放攻击。
在第二电子签名设备30将上述至少一个第二单位数据包存储于安全芯片中之后,如果第二电子签名设备30没有收到请求的交易金额对应的全部第二单位数据包时,在本实施例一种可选的实施方式中,第二电子签名设备30,还用于根据接收到的第二单位数据包的个数以及每个第二单位数据包所代表的货币面值计算接收到的第二单位数据包所代表的货币面值的总和与交易请求中的交易金额是否一致,如果不一致,则向第一电子签名设备20发送重发请求;第一电子签名设备20,用于接收该重发请求,并根据重发请求将重发信息发送至第二电子签名设备30,其中,重发请求中至少包括第二电子签名设备30的设备标识和/或每个第二单位数据包对应的数据包标识,以使得第一电子签名设备20可以根据该重发请求确定重发信息,重发信息即为第一电子签名设备20从给该第二电子签名设备30的一笔交易对应的第三单位数据包中选出的全部或部分数据包,以保证第二电子签名设备30得到一笔交易的全部第二单位数据包。
在本实施例中,作为一种可选的实施方式,第二电子签名设备30,用于接收第一电子签名设备20根据重发请求发送的重发信息,其中,重发信息包括至少一个第二单位数据包。第二电子签名设备30,用于将之前存储于安全芯片中的至少一个第二单位数据包删除,并重新存储第一电子签名设备20重发的至少一个第二单位数据包。作为另一种可选的实施方式,第二电子签名设备30,用于接收第一电子签名设备20根据重发请求发送的重发信息,其中,重发信息包括第二电子签名设备30未接收到的第二单位数据包。第二电子签名设备30,用于将未接收到的第二单位数据包存储于安全芯片中。需要说明的是,重发信息中的第二单位数据包可以理解为密文形式,即第一电子签名设备20对第二单位数据包加密得到的第三单位数据包,因此,在一种可选的实施方式中,重发信息中实际包括的是第三单位数据包,第二电子签名设备30接收到第一电子签名设备20发送的重发信息(第三单位数据包)后,对第三单位数据包解密得到第二单位数据包重新存储。
对于前者,第二电子签名设备30的重发请求中至少包括第二电子签名设备30的设备标识,第一电子签名设备20的重发信息包括至少一个第二单位数据包,即重发一笔交易的交易金额对应的全部第二单位数据包,作为一种可选的方式,第一电子签名设备20可以将该至少一个第二单位数据包以密文形式发送至第二电子签名设备30,即将至少一个第三单位数据包发送至第二电子签名设备30,可以理解此处的重发信息包括至少一个第三单位数据包,第二电子签名设备30将之前存储于安全芯片中的至少一个第二单位数据包删除,并重新存储第一电子签名设备20重发的至少一个第二单位数据包(对第三单位数据包解密得到的第二单位数据包);对于后者,第二电子签名设备30的重发请求中至少包括:未收到的第二单位数据包的数据包标识,还可以包括:第二电子签名设备30的设备标识,第一电子签名设备20的重发信息包括第二电子签名设备30未接收到的第二单位数据包,即重发请求中数据包标识指示的第二单位数据包,作为一种可选的方式,第一电子签名设备20可以将该数据包标识指示的第二单位数据包以密文形式发送至第二电子签名设备30,即将该数据包标识指示的第三单位数据包发送至第二电子签名设备30,可以理解此处的重发信息包括该数据包标识指示的第三单位数据包,第二电子签名设备30将接收到的数据包标识指示的第三单位数据包解密得到的第二单位数据包存储于安全芯片中。
对于前者,举例来说,对于一笔编号为1*******的交易,第二电子签名设备30的交易请求中的交易金额为10元,第一电子签名设备20向第二电子签名设备30发送5个分别代表2元货币面值的第二单位数据包,但由于传输过程中数据丢失,第二电子签名设备30仅接收到4个分别代表2元货币面值的第二单位数据包,货币面值总和为8元,与交易金额10元不相等。针对该笔交易,第二电子签名设备30向第一电子签名设备20发送重发请求,该重发请求中至少携带有第二电子签名设备30的设备标识,第一电子签名设备20接收第二电子签名设备30发送的重发请求后,针对该第二电子签名设备30的该笔交易可以查询到其对应的全部第三单位数据包,将5个第三单位数据包携带在重发信息中发送至第二电子签名设备30,即将5个分别代表2元货币面值的第二单位数据包以密文的形式携带在重发信息发送至第二电子签名设备30。第二电子签名设备30接收该重发信息,将重发信息中携带的5个第三单位数据包进行解密,得到对应的5个第二单位数据包,并将之前存储于安全芯片中的4个分别代表2元货币面值的第二单位数据包删除,重新存储解密得到的5个第二单位数据包。由此,第二电子签名设备30具有在未接收到电子交易所需的全部第二单位数据包时向第一电子签名设备20发送重发请求的功能,第一电子签名设备20具有响应第二电子签名设备30重发的功能,从而保证了第二电子签名设备30可以接收到电子交易所需的全部第二单位数据包,保证交易能够顺利完成。
对于后者,举例来说,对于一笔编号为1*******的交易,第二电子签名设备30的交易请求中的交易金额为5元,第二电子签名设备30接收第一电子签名设备20发送的2个分别代表2元货币面值的第二单位数据包(简称2元数据包),以及1个代表1元货币面值的第二单位数据包(简称1元数据包),但由于传输过程中数据丢失,第二电子签名设备30仅接收到2个2元数据包,货币面值总和为4元,与交易金额5元不相等。针对该笔交易,第二电子签名设备30向第一电子签名设备20发送重发请求,该重发请求中至少携带有第二电子签名设备30的设备标识以及未收到的数据包的数据包标识(即1元数据包的数据包标识)或者已收到的2元数据包的数据包标识,第一电子签名设备20接收第二电子签名设备30发送的重发请求后,针对该第二电子签名设备30的该笔交易可以根据1元数据包的数据包标识查询到对应的第三单位数据包,或者根据4个2元数据包的数据包标识确定未发送成功的1元数据包的数据包标识对应的第三单位数据包,将1元数据包标识对应的第三单位数据包携带在重发信息发送至第二电子签名设备30,即将数据包标识对应的第二单位数据包以密文的形式携带在重发信息发送至第二电子签名设备30。第二电子签名设备30接收该重发信息,将重发信息中携带的1元数据包标识对应的第三单位数据包进行解密,得到1元数据包标识对应的第二单位数据包,并将该1元数据包标识对应的第二单位数据包存储于安全芯片中。由此,第二电子签名设备30具有在未接收到电子交易所需的全部第二单位数据包时向第一电子签名设备20发送重发请求的功能,并接收第一电子签名设备20重发的第二电子签名设备30未接收到的第二单位数据包,减少了重发数据的传输量,保证了第二电子签名设备30可以接收到电子交易所需的全部第二单位数据包。
在本实施例一种可选的实施方式中,第一电子签名设备20,还用于利用其安全芯片分配用于存储至少一个第三单位数据包(或第二单位数据包)的存储空间,并将至少一个第三单位数据包存储于对应的存储空间中。安全芯片的这些存储空间可以存储至少一个第二单位数据包,以便于第一电子签名设备20在收到第二电子签名设备30的交易请求后从安全芯片中获取交易金额所需的第二单位数据包,此外,在对至少一个第二单位数据包加密得到至少一个第三单位数据包后,至少一个第三单位数据包覆盖至少一个第二单位数据后,该至少一个第三单位数据包存储于对应的存储空间中。第一电子签名设备20,用于在根据重发请求将重发信息发送至第二电子签名设备30之后,接收到第二电子签名设备30返回的接收成功的确认信息,将之前存储至少一个第三单位数据包的存储空间的状态字修改为交易完成,或者将存储空间清空,并将对应的存储空间的状态字修改为未占用。其中,状态字为交易完成的存储空间,可以被新的数据覆盖。由此,第一电子签名设备20在确认第二电子签名设备30接收到电子交易所需的全部第二单位数据包之后,可以清理安全芯片的存储空间,以便释放更多的存储空间,保证后续的交易顺利进行。
以上均是以一笔交易的实施方式为例进行说明的,在本实施例中,对于多笔交易中的每笔交易都可以按照上述方式来实现。
在本实施例中,第二电子签名设备30的存储空间毕竟是有限的,因此,需要随时监控第二电子签名设备30的剩余空间,以便于即时释放存储空间,避免在交易过程中没有多余空间造成交易失败的问题。在本实施例一种可选的实施方式中,还可以通过第二电子签名设备30中的计数器实时监控第二电子签名设备30的剩余存储空间。具体地,在每一笔交易结束后,即在第二电子签名设备将至少一个第二单位数据包存储于安全芯片中之后,第二电子签名设备30,用于利用计数器的计数值得到当前存储的第二单位数据包的总个数。具体地,在每一笔交易中计数器都会加上该笔交易接收到第二单位数据包的个数,在多笔交易之后,计数器的计数值会累计到一个数值,当该数值达到预设数值时,说明第二电子签名设备30的存储空间已分配完毕,没有多余的存储空间了,此时,第二电子签名设备30需要进行请求服务器更新数据包或者申请新的存储空间的操作(如上所述)。在本实施例中,每个存储空间的大小相同,每个第二单位数据包的大小相同,且与存储空间的大小匹配,例如,第二电子签名设备30给一个第二单位数据包分配的存储空间的大小为2M,该2M的存储空间可以存储一个第二单位数据包,而一个安全芯片预留存储第二单位数据包的空间为1G,那么,第二电子签名设备30最多可以存储512个第二单位数据包,即预设数值可以设为512。由此,可以实时监控第二电子签名设备30的剩余空间,并及时释放出多余的存储空间,避免在交易过程中没有多余空间造成交易失败的问题。当然,第二电子签名设备30还可以利用计数器的计数值得到安全芯片中存储的每种货币面值的第二单位数据包的总个数。由此,第二电子签名设备30可以根据存储的每种第二单位数据包所代表的货币面值以及个数得到当前存储的第二单位数据包的货币总额。
在本实施例一种可选的实施方式中,第一电子签名设备20,用于在将上述至少一个第二单位数据包发送至第二电子签名设备30后,将其账户金额减去交易金额得到当前账户余额,并向持有用户显示交易金额和/或当前账户余额;第二电子签名设备30,用于在将上述至少一个第二单位数据包存储于安全芯片中之后,将其当前账户金额加上交易金额得到当前账户余额,向持有用户显示交易金额和/或当前账户余额。由此,持有电子签名设备的用户可以在自己的设备上查询交易金额以及当前账户余额。
采用本实施例提供的一种交易系统,用户的资金以至少一个第二单位数据包的形式存储于第一电子签名设备20或第二电子签名设备30中。收款方用户(第二电子签名设备30侧)在收取第二单位数据包时,因为资金不再是以数值的形式存储于第二电子签名设备30中,所以第二电子签名设备30不需要通过服务器更改存储的数值,收款方用户的第二电子签名设备30仅需从付款方用户的第一电子签名设备20中收取一定数量的第二单位数据包即可,由此,电子签名设备在与其他电子签名设备进行电子交易时,不再需要依托服务器进行联网支付,服务器不需要再对收款方用户或付款方用户的电子签名设备进行监管,从而真正地实现脱机电子交易。此外,第二电子签名设备30可以从第一电子签名设备20接收密文形式的第三单位数据包,进一步提高了电子交易的安全性;此外,在第二单位数据包中添加数据包标识以及第二电子签名设备30的设备标识,可以有效的防止第二电子签名设备30被重放攻击,同时可以方便第一电子签名设备20确定重发信息。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求及其等同限定。

Claims (36)

1.一种电子签名设备的交易方法,其特征在于,所述交易方法包括:
第二电子签名设备将交易请求发送至第一电子签名设备,其中,所述交易请求至少包括:交易金额;
所述第一电子签名设备接收所述交易请求,并从其安全芯片中获取至少一个第二单位数据包,所述第一电子签名设备对所述至少一个第二单位数据包进行加密,得到至少一个第三单位数据包,并将所述至少一个第三单位数据包发送至所述第二电子签名设备,其中,每个第二单位数据包代表多种货币面值中的一种货币面值,每个第二单位数据包至少包括:第二单位数据、服务器对所述第二单位数据签名得到的第三签名数据,所述至少一个第二单位数据包所代表的货币面值的总和等于所述交易金额;
所述第二电子签名设备接收所述至少一个第三单位数据包,对所述至少一个第三单位数据包进行解密,得到所述至少一个第二单位数据包,并对每个第二单位数据包中的第三签名数据进行验证,在验证通过后将所述至少一个第二单位数据包存储于安全芯片中;
其中,所述第一电子签名设备对所述至少一个第二单位数据包进行加密,包括:所述第一电子签名设备利用异或因子至少对所述每个第二单位数据包中的第二单位数据进行异或运算;所述第二电子签名设备对所述至少一个第三单位数据包进行解密,包括:所述第二电子签名设备利用所述异或因子分别对所述每个第三单位数据包中的所述数据密文进行异或运算;其中,所述异或因子是所述第二电子签名设备和所述第一电子签名设备协商得到的一组字符或数字的序列;
在所述第一电子签名设备对所述至少一个第二单位数据包进行加密后,所述方法还包括:所述第一电子签名设备用每个第三单位数据包覆盖其安全芯片中存储的所述每个第二单位数据包,并删除所述异或因子。
2.根据权利要求1所述的交易方法,其特征在于,在所述第一电子签名设备将所述至少一个第二单位数据包发送至所述第二电子签名设备之后,所述方法还包括:
所述第一电子签名设备删除获取的所述至少一个第二单位数据包。
3.根据权利要求1所述的交易方法,其特征在于,在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之后,所述方法还包括:
所述第二电子签名设备利用计数器的计数值得到当前存储的第二单位数据包的总个数。
4.根据权利要求1所述的交易方法,其特征在于,
所述交易请求至少包括:所述第二电子签名设备的设备标识。
5.根据权利要求4所述的交易方法,其特征在于,在所述第一电子签名设备从其安全芯片中获取至少一个第二单位数据包之前,所述交易方法还包括:
所述第一电子签名设备向持有用户提示所述交易金额和所述第二电子签名设备的设备标识,并接收到所述持有用户的确认信息。
6.根据权利要求4所述的交易方法,其特征在于,
所述每个第二单位数据包至少还包括:第二单位数据、所述第一电子签名设备对所述第二单位数据和所述第二电子签名的设备标识签名得到的第四签名数据;
在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之前,所述方法还包括:
所述第二电子签名设备对所述第四签名数据进行验证,在验证通过后执行所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中的步骤。
7.根据权利要求4所述的交易方法,其特征在于,
每个所述第三单位数据包还包括:所述第二电子签名设备的设备标识。
8.根据权利要求1所述的交易方法,其特征在于,
所述第二单位数据包包括:数据包标识。
9.根据权利要求8所述的交易方法,其特征在于,
所述交易请求还包括:数据包标识;
所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中,包括:
所述第二电子签名设备判断接收到的第二单位数据包中的数据包标识是否与发送的交易请求中的数据包标识相同,如果不相同,则将数据包标识不相同的第二单位数据包丢弃,如果相同,则将数据包标识相同的第二单位数据包存储于所述安全芯片中。
10.根据权利要求8所述的交易方法,其特征在于,
所述交易请求还包括:数据包标识起始值;
所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中,包括:
所述第二电子签名设备判断所述每个第二单位数据包中包含的数据包标识是否满足根据所述数据包标识起始值确定的预设范围,如果不满足,则将数据包标识不满足所述预设范围的第二单位数据包丢弃,如果满足,则将数据包标识满足所述预设范围的第二单位数据包存储于所述安全芯片中。
11.根据权利要求10所述的交易方法,其特征在于,在所述第二电子签名设备将交易请求发送至所述第一电子签名设备之前,所述方法还包括:
所述第二电子签名设备利用计数器的计数值得到所述数据包标识起始值;
在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之后,所述方法还包括:
所述第二电子签名设备的计数器将所述数据包标识起始值加上接收到的所述第二单位数据包的总个数计算得到新的数据包标识起始值。
12.根据权利要求8至11任一项所述的交易方法,其特征在于,在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之后,所述方法还包括:
所述第二电子签名设备根据接收到的所述第二单位数据包的个数以及每个第二单位数据包所代表的货币面值计算所述接收到的第二单位数据包所代表的货币面值的总和与所述交易请求中的交易金额是否一致,如果不一致,则向所述第一电子签名设备发送重发请求;
所述第一电子签名设备接收所述重发请求,并根据所述重发请求将重发信息发送至所述第二电子签名设备,其中,所述重发请求中至少包括所述第二电子签名设备的设备标识和/或所述每个第二单位数据包对应的数据包标识。
13.根据权利要求12所述的交易方法,其特征在于,在所述第一电子签名设备根据所述重发请求将重发信息发送至所述第二电子签名设备之后,所述方法还包括:
所述第二电子签名设备接收所述重发信息,其中,所述重发信息包括所述至少一个第二单位数据包,并将之前存储于所述安全芯片中的所述至少一个第二单位数据包删除,重新存储所述第一电子签名设备重发的所述至少一个第二单位数据包。
14.根据权利要求12所述的交易方法,其特征在于,在所述第一电子签名设备根据所述重发请求将重发信息发送至所述第二电子签名设备之后,所述方法还包括:
所述第二电子签名设备接收所述重发信息,其中,所述重发信息包括所述第二电子签名设备未收到的第二单位数据包,并将所述未接收到的第二单位数据包存储于其安全芯片中。
15.根据权利要求1所述的交易方法,其特征在于,
所述第二单位数据至少包括:货币面值数据,或者,货币序号和货币面值数据;
所述第二单位数据包还包括以下至少之一:发行银行标识和银行证书序号。
16.根据权利要求1所述的交易方法,其特征在于,在所述第一电子签名设备将所述至少一个第二单位数据包发送至所述第二电子签名设备之后,所述方法还包括:
所述第一电子签名设备将其账户金额减去所述交易金额得到当前账户余额,并向持有用户显示所述交易金额和/或当前账户余额;
在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之后,所述方法还包括:
所述第二电子签名设备将其当前账户金额加上所述交易金额得到当前账户余额,并向持有用户显示所述交易金额和/或当前账户余额。
17.根据权利要求1所述的交易方法,其特征在于,在所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中之前,所述方法还包括:
所述第二电子签名设备的安全芯片分配用于存储所述至少一个第二单位数据包的存储空间;
所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中,包括:
所述第二电子签名设备将所述至少一个第二单位数据包存储于对应的所述存储空间中,并将所述对应的存储空间的状态字置为已占用。
18.根据权利要求12所述的交易方法,其特征在于,在所述第一电子签名设备将所述至少一个第二单位数据包发送至所述第二电子签名设备之前,所述方法还包括:
所述第一电子签名设备的安全芯片分配用于存储所述至少一个第三单位数据包的存储空间,并将所述至少一个第三单位数据包存储于对应的所述存储空间中;
在所述第一电子签名设备根据所述重发请求将重发信息发送至所述第二电子签名设备之后,所述方法还包括:
所述第一电子签名设备接收到所述第二电子签名设备返回的接收成功的确认信息,将之前存储所述至少一个第三单位数据包的存储空间的状态字修改为交易完成,或者将所述存储空间清空。
19.一种交易系统,其特征在于,所述交易系统包括:第一电子签名设备和第二电子签名设备;
所述第二电子签名设备,用于将交易请求发送至所述第一电子签名设备,其中,所述交易请求至少包括:交易金额;
所述第一电子签名设备,用于接收所述交易请求,并从其安全芯片中获取至少一个第二单位数据包,对所述至少一个第二单位数据包进行加密,得到至少一个第三单位数据包,并将所述至少一个第三单位数据包发送至所述第二电子签名设备,其中,每个第二单位数据包代表多种货币面值中的一种货币面值,每个第二单位数据包至少包括:第二单位数据、服务器对所述第二单位数据签名得到的第三签名数据,所述至少一个第二单位数据包所代表的货币面值的总和等于所述交易金额;
所述第二电子签名设备,还用于接收所述至少一个第三单位数据包,对所述至少一个第三单位数据包进行解密,得到所述至少一个第二单位数据包,并将所述至少一个第二单位数据包存储于安全芯片中;
其中,所述第一电子签名设备,用于对所述至少一个第二单位数据包进行加密,包括:所述第一电子签名设备,用于利用异或因子至少对所述每个第二单位数据包中的第二单位数据进行异或运算;其中,所述异或因子是所述第二电子签名设备和所述第一电子签名设备协商得到的一组字符或数字的序列;
所述第二电子签名设备,用于对所述至少一个第三单位数据包进行解密,包括:所述第二电子签名设备,用于利用所述异或因子分别对所述每个第三单位数据包中的所述数据密文进行异或运算;
所述第一电子签名设备,还用于在对所述至少一个第二单位数据包进行加密之后,用每个第三单位数据包覆盖其安全芯片中存储的所述每个第二单位数据包,并删除所述异或因子。
20.根据权利要求19所述的交易系统,其特征在于,
所述第一电子签名设备,还用于在将所述至少一个第二单位数据包发送至所述第二电子签名设备之后,删除获取的所述至少一个第二单位数据包。
21.根据权利要求19所述的交易系统,其特征在于,
所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之后,利用计数器的计数值得到当前存储的第二单位数据包的总个数。
22.根据权利要求19所述的交易系统,其特征在于,
所述交易请求至少包括:所述第二电子签名设备的设备标识。
23.根据权利要求22所述的交易系统,其特征在于,
所述第一电子签名设备,还用于在从其安全芯片中获取至少一个第二单位数据包之前,向持有用户提示所述交易金额和所述第二电子签名设备的设备标识,并接收到所述持有用户的确认信息。
24.根据权利要求22所述的交易系统,其特征在于,
所述每个第二单位数据包至少还包括:第二单位数据、所述第一电子签名设备对所述第二单位数据和所述第二电子签名的设备标识签名得到的第四签名数据;
所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之前,对所述第四签名数据进行验证,在验证通过后执行所述第二电子签名设备将所述至少一个第二单位数据包存储于安全芯片中的操作。
25.根据权利要求22所述的交易系统,其特征在于,
每个所述第三单位数据包还包括:所述第二电子签名设备的设备标识。
26.根据权利要求19所述的交易系统,其特征在于,
所述第二单位数据包包括:数据包标识。
27.根据权利要求26所述的交易系统,其特征在于,
所述交易请求还包括:数据包标识;
所述第二电子签名设备,还用于将所述至少一个第二单位数据包存储于安全芯片中,包括:
所述第二电子签名设备,还用于判断接收到的第二单位数据包中的数据包标识是否与发送的交易请求中的数据包标识相同,如果不相同,则将数据包标识不相同的第二单位数据包丢弃,如果相同,则将数据包标识相同的第二单位数据包存储于所述安全芯片中。
28.根据权利要求26所述的交易系统,其特征在于,
所述交易请求还包括:数据包标识起始值;
所述第二电子签名设备,还用于将所述至少一个第二单位数据包存储于安全芯片中,包括:
所述第二电子签名设备,还用于判断所述每个第二单位数据包中包含的数据包标识是否满足根据所述数据包标识起始值确定的预设范围,如果不满足,则将数据包标识不满足所述预设范围的第二单位数据包丢弃,如果满足,则将数据包标识满足所述预设范围的第二单位数据包存储于所述安全芯片中。
29.根据权利要求28所述的交易系统,其特征在于,
所述第二电子签名设备,还用于在将交易请求发送至所述第一电子签名设备之前,利用计数器的计数值得到所述数据包标识起始值;还用于在将所述至少一个第二单位数据包存储于安全芯片中之后,将所述数据包标识起始值加上接收到的所述第二单位数据包的总个数计算得到新的数据包标识起始值。
30.根据权利要求26至29任一项所述的交易系统,其特征在于,
所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之后,根据接收到的所述第二单位数据包的个数以及每个第二单位数据包所代表的货币面值计算所述接收到的第二单位数据包所代表的货币面值的总和与所述交易请求中的交易金额是否一致,如果不一致,则向所述第一电子签名设备发送重发请求;
所述第一电子签名设备,还用于接收所述重发请求,并根据所述重发请求将重发信息发送至所述第二电子签名设备,其中,所述重发请求中至少包括所述第二电子签名设备的设备标识和/或所述每个第二单位数据包对应的数据包标识。
31.根据权利要求30所述的交易系统,其特征在于,
所述第二电子签名设备,还用于接收所述重发信息,其中,所述重发信息包括所述至少一个第二单位数据包,并将之前存储于所述安全芯片中的所述至少一个第二单位数据包删除,重新存储所述第一电子签名设备重发的所述至少一个第二单位数据包。
32.根据权利要求30所述的交易系统,其特征在于,
所述第二电子签名设备,还用于接收所述重发信息,其中,所述重发信息包括所述第二电子签名设备未收到的第二单位数据包,并将所述未接收到的第二单位数据包存储于其安全芯片中。
33.根据权利要求19所述的交易系统,其特征在于,
所述第二单位数据至少包括:货币面值数据,或者,货币序号和货币面值数据;
所述第二单位数据包还包括以下至少之一:发行银行标识和银行证书序号。
34.根据权利要求19所述的交易系统,其特征在于,
所述第一电子签名设备,还用于在将所述至少一个第二单位数据包发送至所述第二电子签名设备之后,将其账户金额减去所述交易金额得到当前账户余额,并向持有用户显示所述交易金额和/或当前账户余额;
所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之后,将其当前账户金额加上所述交易金额得到当前账户余额,并向持有用户显示所述交易金额和/或当前账户余额。
35.根据权利要求19所述的交易系统,其特征在于,
所述第二电子签名设备,还用于在将所述至少一个第二单位数据包存储于安全芯片中之前,利用其安全芯片分配用于存储所述至少一个第二单位数据包的存储空间;
所述第二电子签名设备,用于将所述至少一个第二单位数据包存储于安全芯片中,包括:
所述第二电子签名设备,用于将所述至少一个第二单位数据包存储于对应的所述存储空间中,并将所述对应的存储空间的状态字置为已占用。
36.根据权利要求30所述的交易系统,其特征在于,
所述第一电子签名设备,还用于利用其安全芯片分配用于存储所述至少一个第三单位数据包的存储空间,并将所述至少一个第三单位数据包存储于对应的所述存储空间中;
所述第一电子签名设备,用于在根据所述重发请求将重发信息发送至所述第二电子签名设备之后,接收到所述第二电子签名设备返回的接收成功的确认信息,将之前存储所述至少一个第三单位数据包的存储空间的状态字修改为交易完成,或者将所述存储空间清空。
CN201610178067.3A 2016-01-22 2016-03-25 一种电子签名设备的交易方法和交易系统 Active CN105956855B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/077652 WO2017162164A1 (zh) 2016-01-22 2017-03-22 电子签名设备的交易方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2016100453392 2016-01-22
CN201610045339 2016-01-22

Publications (2)

Publication Number Publication Date
CN105956855A CN105956855A (zh) 2016-09-21
CN105956855B true CN105956855B (zh) 2022-02-22

Family

ID=56744518

Family Applications (6)

Application Number Title Priority Date Filing Date
CN201610179104.2A Pending CN105931049A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法、交易系统和电子签名设备
CN201610178325.8A Pending CN105913256A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法和交易系统
CN202110217406.5A Pending CN113159763A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法、交易系统和电子签名设备
CN201610178324.3A Pending CN105913255A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法、交易系统和电子签名设备
CN201610178067.3A Active CN105956855B (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法和交易系统
CN201610179102.3A Pending CN105931048A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法、交易系统和电子签名设备

Family Applications Before (4)

Application Number Title Priority Date Filing Date
CN201610179104.2A Pending CN105931049A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法、交易系统和电子签名设备
CN201610178325.8A Pending CN105913256A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法和交易系统
CN202110217406.5A Pending CN113159763A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法、交易系统和电子签名设备
CN201610178324.3A Pending CN105913255A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法、交易系统和电子签名设备

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201610179102.3A Pending CN105931048A (zh) 2016-01-22 2016-03-25 一种电子签名设备的交易方法、交易系统和电子签名设备

Country Status (2)

Country Link
CN (6) CN105931049A (zh)
WO (1) WO2017162164A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105931049A (zh) * 2016-01-22 2016-09-07 天地融科技股份有限公司 一种电子签名设备的交易方法、交易系统和电子签名设备
CN106228349B (zh) * 2016-07-22 2021-01-15 天地融科技股份有限公司 一种电子签名设备的交易方法和电子签名设备
CN107067241A (zh) * 2017-02-06 2017-08-18 吕文华 一种二元体系数字币的运行系统
CN107665427A (zh) 2017-08-22 2018-02-06 阿里巴巴集团控股有限公司 一种离线支付、业务处理、支付处理的方法及装置
CN111915431A (zh) * 2019-05-09 2020-11-10 天地融科技股份有限公司 一种脱机电子货币交易方法及系统
CN112184450B (zh) * 2020-10-13 2023-06-20 中国联合网络通信集团有限公司 基于区块链的交易结算方法、交易节点、设备及介质
CN114612269B (zh) * 2022-05-11 2022-09-13 山东国盾网信息科技有限公司 基于电子签名技术的电子劳动合同平台

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1756150A (zh) * 2004-09-30 2006-04-05 飞力凯网路股份有限公司 信息管理仪器、信息管理方法和程序
CN101051907A (zh) * 2007-05-14 2007-10-10 北京握奇数据系统有限公司 面向签名数据的安全认证方法及其系统
CN102468960A (zh) * 2010-11-16 2012-05-23 卓望数码技术(深圳)有限公司 一种离线模式身份与交易认证方法及终端
CN102694795A (zh) * 2012-05-06 2012-09-26 北京深思洛克软件技术股份有限公司 一种在离线情况下使用应用服务的方法
CN102999570A (zh) * 2012-11-09 2013-03-27 北京深思洛克软件技术股份有限公司 移动设备中应用程序关键数据的离线控制方法和系统
CN103413159A (zh) * 2013-08-15 2013-11-27 成都市易恒信科技有限公司 一种基于cpk的rfid电子凭证离线鉴真防伪实现方法及系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL120585A0 (en) * 1997-04-01 1997-08-14 Teicher Mordechai Countable electronic monetary system and method
US8285991B2 (en) * 2000-10-25 2012-10-09 Tecsec Inc. Electronically signing a document
EP1205889A1 (en) * 2000-11-10 2002-05-15 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Returning of change in an electronic payment system
US7506812B2 (en) * 2004-09-07 2009-03-24 Semtek Innovative Solutions Corporation Transparently securing data for transmission on financial networks
CN101408970A (zh) * 2008-11-21 2009-04-15 李东声 实现批量电子交易的方法、系统和装置以及电子签名工具
CN101593338A (zh) * 2009-07-13 2009-12-02 招商银行股份有限公司 一种处理电子交易请求的方法和系统
CN101719251A (zh) * 2010-01-15 2010-06-02 陈发勇 互联网电子货币系统
CN103560886B (zh) * 2013-11-04 2016-08-17 北京旋极信息技术股份有限公司 电子签名设备认证方法
EP2924637A1 (en) * 2014-03-24 2015-09-30 The Roberto Giori Company Ltd. System and method for electronic money transfer of fractional amounts
CN105931049A (zh) * 2016-01-22 2016-09-07 天地融科技股份有限公司 一种电子签名设备的交易方法、交易系统和电子签名设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1756150A (zh) * 2004-09-30 2006-04-05 飞力凯网路股份有限公司 信息管理仪器、信息管理方法和程序
CN101051907A (zh) * 2007-05-14 2007-10-10 北京握奇数据系统有限公司 面向签名数据的安全认证方法及其系统
CN102468960A (zh) * 2010-11-16 2012-05-23 卓望数码技术(深圳)有限公司 一种离线模式身份与交易认证方法及终端
CN102694795A (zh) * 2012-05-06 2012-09-26 北京深思洛克软件技术股份有限公司 一种在离线情况下使用应用服务的方法
CN102999570A (zh) * 2012-11-09 2013-03-27 北京深思洛克软件技术股份有限公司 移动设备中应用程序关键数据的离线控制方法和系统
CN103413159A (zh) * 2013-08-15 2013-11-27 成都市易恒信科技有限公司 一种基于cpk的rfid电子凭证离线鉴真防伪实现方法及系统

Also Published As

Publication number Publication date
CN105931048A (zh) 2016-09-07
CN105931049A (zh) 2016-09-07
WO2017162164A1 (zh) 2017-09-28
CN105913256A (zh) 2016-08-31
CN113159763A (zh) 2021-07-23
CN105913255A (zh) 2016-08-31
CN105956855A (zh) 2016-09-21

Similar Documents

Publication Publication Date Title
CN105956855B (zh) 一种电子签名设备的交易方法和交易系统
CN109493016B (zh) 基于数字货币的离线支付方法、终端及代理投放设备
AU2021203184B2 (en) Transaction messaging
US11687920B2 (en) Facilitating a fund transfer between user accounts
RU2710897C2 (ru) Способы безопасного генерирования криптограмм
CN107925572B (zh) 软件应用程序到通信装置的安全绑定
US9020858B2 (en) Presence-of-card code for offline payment processing system
US8898088B2 (en) In-card access control and monotonic counters for offline payment processing system
US8959034B2 (en) Transaction signature for offline payment processing system
US11847641B2 (en) Communications device, point of sale device, payment device and methods
CN107609866B (zh) 基于虚拟货币的电子支付、电子收款方法及装置
EP3422275A1 (en) Electronic payment method and electronic device using id-based public key cryptography
CN104969245A (zh) 用于安全元件交易和资产管理的装置和方法
MX2011000165A (es) Sistema y metodo para un deposito inalambrico seguro.
US20230103038A1 (en) Method for directly transferring electronic coin data sets between terminals, payment system, currency system and monitoring unit
EP1142194A1 (en) Method and system for implementing a digital signature
CN111062717B (zh) 一种数据转移处理方法、装置和计算机可读存储介质
CN113874876A (zh) 用于分布式计算系统的安全模型
CN106228349B (zh) 一种电子签名设备的交易方法和电子签名设备
CN113841206A (zh) 分布式计算系统中的事件管理
WO2015162276A2 (en) Secure token implementation
Kisore et al. A secure SMS protocol for implementing digital cash system
CN112041897B (zh) 一种控制方法、售票规则服务器、检票规则服务器及装置
KR101902990B1 (ko) 보안모듈을 이용한 교통카드 발급 및 운용 시스템 및 방법
CN105913253A (zh) 一种电子签名设备的交易方法、交易系统和电子签名设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant