Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020134653 - METHOD AND DEVICE FOR UPLOADING ELECTRONIC CERTIFICATE

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126   0127   0128   0129   0130   0131   0132   0133   0134   0135   0136   0137   0138   0139   0140   0141   0142   0143   0144   0145   0146   0147   0148   0149   0150   0151   0152   0153   0154   0155   0156   0157   0158   0159   0160   0161   0162   0163   0164   0165  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14  

附图

1   2   3   4   5   6   7   8   9   10   11  

说明书

发明名称 : 一种电子凭证上传的方法及装置

[0001]
相关申请的交叉引用
[0002]
本申请要求在2018年12月26日提交中国专利局、申请号为201811604746.8、申请名称为“一种电子凭证上传的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。

技术领域

[0003]
本发明实施例涉及区块链技术领域,尤其涉及一种电子凭证上传的方法及装置。

背景技术

[0004]
在基于区块链的电子凭证项目中,各个收单机构把电子签购单进行哈希,把哈希值存储与分布式账本上进行存证,其他机构从分布式账本获取电子票据的哈希,与电子票据进行比较,确定电子签购单的真实性和完整性。但对于非银行的收单机构,可能存在数据造假的情况。
[0005]
发明内容
[0006]
本发明实施例提供一种电子凭证上传的方法及装置,用以解决第三方收单机构上传信息造假的问题。
[0007]
本发明实施例提供的一种电子凭证上传的方法,包括:
[0008]
前置终端获取电子凭证;
[0009]
所述前置终端对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值;
[0010]
所述前置终端根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息;
[0011]
所述前置终端将所述前置终端的商户号和终端号、所述电子凭证的哈希 值和所述签名信息上传至区块链节点,以使所述区块链节点在对所述签名信息进行验证后,登记到区块链网络中。
[0012]
上述技术方案中,前置终端通过对电子凭证进行处理后直接上传到区块链网络中,解决了现有技术中前置终端将电子凭证通过后台终端上传至区块链时会产生电子凭证篡改的问题。
[0013]
可选的,所述前置终端根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息,包括:
[0014]
所述前置终端使用所述前置终端的私钥,对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[0015]
可选的,所述前置终端根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息,包括:
[0016]
所述前置终端通过所述前置终端的私钥使用椭圆曲线数字签名ECDSA算法对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[0017]
相应的,本发明实施例还提供了一种电子凭证上传的方法,包括:
[0018]
区块链节点获取前置终端发送的交易信息,所述交易信息包括电子凭证的哈希值、所述前置终端的商户号和终端号、签名信息;所述电子凭证的哈希值是所述前置终端对所述电子凭证进行哈希处理后确定的;所述签名信息是所述前置终端根据所述前置终端的私钥对所述电子凭证的哈希值、所述前置终端的商户号和终端号进行处理后确定的;
[0019]
所述区块链节点根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥;
[0020]
所述区块链节点根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中。
[0021]
相应的,本发明实施例还提供了一种电子凭证上传的装置,包括:
[0022]
通信模块,用于获取电子凭证;
[0023]
上传预处理模块,用于对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值;根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息;将所述前置终端的商户号和终端号、所述电子凭证的哈希值和所述签名信息上传至区块链节点,以使所述区块链节点在对所述签名信息进行验证后,登记到区块链网络中。
[0024]
可选的,所述上传预处理模块具体用于:
[0025]
使用所述前置终端的私钥,对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[0026]
可选的,所述上传预处理模块具体用于:
[0027]
通过所述前置终端的私钥使用椭圆曲线数字签名ECDSA算法对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[0028]
相应的,本发明实施例还提供了一种电子凭证上传的装置,包括:
[0029]
获取模块,用于获取前置终端发送的交易信息,所述交易信息包括电子凭证的哈希值、所述前置终端的商户号和终端号、签名信息;所述电子凭证的哈希值是所述前置终端对所述电子凭证进行哈希处理后确定的;所述签名信息是所述前置终端根据所述前置终端的私钥对所述电子凭证的哈希值、所述前置终端的商户号和终端号进行处理后确定的;
[0030]
处理模块,用于根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥;以及根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中。
[0031]
相应的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述电子凭证上传的方法。
[0032]
相应的,本发明实施例还提供了一种计算设备,包括:
[0033]
存储器,用于存储程序指令;
[0034]
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述电子凭证上传的方法。
[0035]
相应的,本发明实施例还提供了一种前置终端,包括:处理器、存储器、收发机、总线接口,其中处理器、存储器与收发机之间通过总线接口连接;
[0036]
所述处理器,用于读取所述存储器中的程序,执行下列方法:获取电子凭证;对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值;根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息;
[0037]
所述存储器,用于存储一个或多个可执行程序,可以存储所述处理器在执行操作时所使用的数据;
[0038]
所述收发机,用于在所述处理器的控制下将所述前置终端的商户号和终端号、所述电子凭证的哈希值和所述签名信息上传至区块链节点,以使所述区块链节点在对所述签名信息进行验证后,登记到区块链网络中;
[0039]
所述总线接口,用于提供接口。
[0040]
相应的,本发明实施例还提供了一种区块链节点,包括:处理器、存储器、收发机、总线接口,其中处理器、存储器与收发机之间通过总线接口连接;
[0041]
所述收发机,用于在所述处理器的控制下获取前置终端发送的交易信息,所述交易信息包括电子凭证的哈希值、所述前置终端的商户号和终端号、签名信息;所述电子凭证的哈希值是所述前置终端对所述电子凭证进行哈希处理后确定的;所述签名信息是所述前置终端根据所述前置终端的私钥对所述电子凭证的哈希值、所述前置终端的商户号和终端号进行处理后确定的;
[0042]
所述处理器,用于读取所述存储器中的程序,执行下列方法:根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥;以及根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中。
[0043]
所述存储器,用于存储一个或多个可执行程序,可以存储所述处理器在 执行操作时所使用的数据;
[0044]
所述总线接口,用于提供接口。

附图说明

[0045]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0046]
图1为本发明实施例提供的一种系统架构的示意图;
[0047]
图2为本发明实施例提供的一种电子凭证上传的方法的流程示意图;
[0048]
图3为本发明实施例提供的一种系统架构的示意图;
[0049]
图4为本发明实施例提供的一种系统架构的示意图;
[0050]
图5为本发明实施例提供的一种系统架构的示意图;
[0051]
图6为本发明实施例提供的一种区块链网络中智能合约的示意图;
[0052]
图7为本发明实施例提供的一种系统架构的示意图;
[0053]
图8为本发明实施例提供的一种电子凭证上传的装置的结构示意图;
[0054]
图9为本发明实施例提供的一种电子凭证上传的装置的结构示意图;
[0055]
图10为本发明实施例提供的一种前置终端的结构示意图;
[0056]
图11为本发明实施例提供的一种区块链节点的结构示意图。

具体实施方式

[0057]
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0058]
图1为本发明实施例所适用的系统架构。参考图1所示,该系统架构可以包括前置终端100和区块链网络系统200。
[0059]
该前置终端100可以为收款终端,也可以称为银行卡受理终端,如POS机。也可以为其它的手持终端,如税务部门的税控收款机、快递员的手持终端等。其可以包括通信单元110和上传预处理单元120,其中,通信单元110用于将产生的电子凭证发送给后台收单终端。上传预处理单元120用于对电子凭证进行处理后上传至区块链网络系统200。
[0060]
该区块链网络系统200由多个区块链节点210组成,区块链节点210在接收到前置终端100发送的电子凭证后要对其进行验证,并在验证通过后登记到区块链网络中。
[0061]
需要说明的是,上述图1所示的结构仅是一种示例,本发明实施例对此不做限定。
[0062]
基于上述描述,图2示例性的示出了本发明实施例提供的一种电子凭证上传的方法的流程,该流程可以由电子凭证上传的装置执行。下面将通过前置终端与区块链节点交互的方式来描述该电子凭证上传的流程。
[0063]
如图2所示,该流程具体包括:
[0064]
步骤201,前置终端获取电子凭证,对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值。
[0065]
在步骤201之前,前置终端和需要先在区块链网络平台上进行注册,即为将前置终端的商户号、终端号和公钥登记到区块链网络平台上。
[0066]
然后,前置终端生成电子凭证,在本发明实施例中,电子凭证可以为电子签购单、电子发票、电子运单等,对此不做限制,一切电子单据都可以作为电子凭证应用在本发明实施例中。
[0067]
前置终端生成电子凭证后,可以调用通信模块先将该电子凭证发送到后台系统,以供后台系统进行存储。
[0068]
然后调用上传预处理模块对该电子凭证进行哈希处理,得到该电子凭证的哈希值,也就是该电子屏的散列值。
[0069]
步骤202,前置终端根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息。
[0070]
前置终端可以对使用自身的私钥,对前置终端的商户号和终端号以及电子凭证的哈希值进行签名,确定出签名信息。具体的,可以使用ECDSA算法进行签名。
[0071]
步骤203,前置终端向区块链节点发送交易信息。
[0072]
前置终端将该电子凭证的哈希值、商户号、终端号以及签名信息作为交易信息发送给区块链节点,以供区块链节点进行验证。
[0073]
前置终端在将交易信息进行上传时,可以通过上传预处理模块直接上传,也可以通过区块链中间件服务进行上传,例如web-service服务。
[0074]
步骤204,区块链节点根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥,根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中。
[0075]
区块链节点在接收到前置终端发送的电子凭证的哈希值、前置终端的商户号和终端号、签名信息之后,就可以根据前置终端的商户号和终端号,确定出前置终端的公钥。该前置终端的公钥已经在区块链网络平台上进行了注册,因此,区块链节点可以根据前置终端的商户号和终端号从区块链网络平台中进行查询。
[0076]
查询到前置终端的公钥之后,就可以根据前置终端的公钥对签名信息进行验证,并在验证通过以及其它区块链节点共识之后将电子凭证的哈希值登记到区块链网络中。区块链网站中的各个区块链节点上运行的智能合约对上传的电子凭证的相关信息进行验证,主要是通过商户号和终端号找到前置终端对应的公钥,然后用公钥对签名信息验签。验签通过,则将电子凭证的哈希值登记到区块链网络中。
[0077]
为了更好的解释本发明实施例,下面将通过具体的实施场景来描述电子凭证上传的流程。
[0078]
场景一
[0079]
前置终端为POS机时,此时POS机的结构可以如图3和图4所示的结构。其中,图3为基于传统POS机的电子签购单上传装置的系统架构,该系统架构可以包括通讯模块、收单应用、安全内核、读卡器接口模块、上传预处理模块和证书管理。图4为基于智能POS机的电子签购单上传装置的系统架构,该系统架构可以包括应用处理系统和安全处理系统,其中,应用处理系统包括通讯层、收单应用、上传预处理模块和接口层;安全处理系统包括接口层、安全内核、证书管理和读卡器接口模块。该POS机也可以称为银行卡受理终端。相比于现有的POS机,图3和图4所示结构多出了上传预处理模块,该上传预处理模块可以实现哈希计算和签名处理,以及上传区块链的功能。哈希是对POS终端收单应用生成的电子签购单进行哈希,签名是调用POS终端系统服务层的证书管理模块获取私钥对上传信息进行签名。
[0080]
本发明实施例的信息交互流程可以如图5所示,具体的:
[0081]
本发明实施例采用以太坊作为电子凭证的区块链网络平台,其上部署电子凭证的智能合约,采用solidity语言实现登记POS机信息、电子签购单哈希值验签、上链等功能。
[0082]
POS机采用智能POS终端,对其进行改造,在其安全处理系统的证书管理模块添加一对公私钥,并在POS机的应用处理系统上添加上传预处理模块,模块实现SHA-256哈希算法,以及ECDSA签名算法。
[0083]
电子签购单信息上传的步骤如下:
[0084]
1、收单机构首先调用POS机信息登记合约,将POS机的商户号、终端号、公钥登记到电子凭证区块链平台上;
[0085]
2、POS机的收单应用模块生成一个电子签购单,调用通信模块发送到收单机构的收单后台系统。
[0086]
3、同时,上传预处理模块从收单应用模块获取电子签购单,采用SHA-256算法对电子签购单进行哈希,得到哈希值。
[0087]
4、上传预处理模块从安全处理系统中调用私钥采用ECDSA算法对电子 签购单散列值、商户号、终端号进行签名。
[0088]
5、上传预处理模块调用通信模块将电子签购单散列值、商户号、终端号、签名信息以grpc格式发送到以太坊网络。
[0089]
6、以太坊网络中的记账节点执行电子凭证智能合约,合约通过商户号和终端号从POS机信息登记合约中查到此POS机的公钥,然后公钥对签名进行验证。
[0090]
7、如果签名验证通过,则将电子签购单的散列值登记到以太坊的状态中。
[0091]
8、其他节点采用6、7步相同的操作执行智能合约,如果结果一致,则共识完成,电子签购单的散列值则登记到区块链上。
[0092]
9、电子凭证区块链平台的用户可以通过调用电子签购单的哈希值对电子签购单进行验证。
[0093]
需要说明的是,图6示出了场景一中区块链平台侧执行的步骤,其中,包括POS机登记合约和电子凭证合约。在POS机登记合约中,首先要从交易中获取商户号、终端号、公钥等登记信息。然后将登记信息写入状态,最后公式完成。
[0094]
在电子凭证合约中,首先是从交易中获取电子签购单散列值、商户号、终端号和签名,然后根据商户号、终端号获取POS机公钥,采用ECDSA算法对签名进行验证,若验证通过,则将电子签购单的散列值写入状态,最后共识完成。
[0095]
需要说明的是,对实施例的以下修改也属于本发明实施例保护的范围:
[0096]
1、采用其他区块链平台,或将POS登记智能合约与电子凭证合约合并。
[0097]
2、采用其他哈希方法或签名方法。
[0098]
3、上传预处理模块采用软件实现或硬件实现,通信协议采用其他通信协议,在传输过程中进行加密。
[0099]
4、上链是通过调用中间件服务。
[0100]
5、POS机的公私钥对不是有证书管理模块管理,而是预处理模块自己管理。
[0101]
6、不是通过商户号和终端号确定一台POS机,而是通过POS的标识。
[0102]
场景二
[0103]
前置终端为税控收款机,电子凭证为电子发票。
[0104]
本发明实施例采用以太坊作为电子凭证区块链平台,其上部署电子凭证的智能合约,采用solidity语言实现登记税控收款机信息、电子发票哈希值验签、上链等功能。
[0105]
税控收款机采用符合国家标准的税控收款机,其架构图如图7所示。在税控收款机的MCU模块添加电子发票信息上传预处理逻辑,上传预处理逻辑具备以下功能:
[0106]
1、哈希:对生成的电子发票进行哈希。
[0107]
2、签名:通过私钥对上传的信息进行签名。
[0108]
其核心流程包括:
[0109]
第一步:需要上传信息到基于区块链的电子凭证平台的税控收款机,先在电子凭证平台上进行注册,即将税控收款机的销方纳税号、终端号和公钥等信息登记到电子凭证平台上。
[0110]
第二步:税控收款机生成电子发票,调用外部通信扩展接口发送到税控收款机管理系统。
[0111]
第三步:税控收款机的上传预处理模块对电子发票进行哈希生成散列值。
[0112]
第四步:税控收款机的上传预处理模块调用税控卡的私钥对上一步生成的散列值连同销方税号、终端号、时间戳进行签名。
[0113]
第五步:上传预处理模块调用通信模块将散列值、销方税号、终端号、时间戳和签名信息直接上传或者通过区块链中间件服务上传到电子凭证区块链平台上。
[0114]
第六步:电子凭证区块链平台进行共识,即各个节点上运行的智能合约对上传的电子发票相关信息进行验证:通过销方税号和终端号找到税控收款机对应的公钥,然后用公钥对签名信息验签。
[0115]
第七步:验签通过,则将电子发票的散列值登记到区块链状态中。
[0116]
场景三
[0117]
前置终端为快递员的手持终端,电子凭证为电子运单。
[0118]
本发明实施例采用以太坊作为电子凭证区块链平台,其上部署电子凭证的智能合约,采用solidity语言实现收件手持终端信息、电子运单哈希值验签、上链等功能。
[0119]
终端采用快递收件的手持终端。在税控收款机的添加电子运单信息上传预处理逻辑并在底层安全模块灌入私钥,上传预处理逻辑具备以下功能:
[0120]
1.哈希:对生成的电子运单进行哈希。
[0121]
2.签名:通过私钥对上传的信息进行签名。
[0122]
其核心流程包括:
[0123]
第一步:需要上传信息到基于区块链的电子凭证平台的电子运单的手持终端,先在电子凭证平台上进行注册,即将手持终端的快递公司信息、终端号和公钥等信息登记到电子凭证平台上。
[0124]
第二步:快递手持终端扫描快递单生成电子运单,调用通信模块发送到快递公司后台系统。
[0125]
第三步:快递手持终端的上传预处理模块对电子运单进行哈希生成散列值。
[0126]
第四步:快递手持终端的上传预处理模块调用底层安全模块的私钥对上一步生成的散列值连同快递公司信息、终端号、时间戳进行签名。
[0127]
第五步:上传预处理模块调用通信模块将散列值、快递公司信息、终端号、时间戳和签名信息直接上传或者通过区块链中间件服务上传到电子凭证区块链平台上。
[0128]
第六步:电子凭证区块链平台进行共识,即各个节点上运行的智能合约对上传的电子运单相关信息进行验证:通过快递公司信息和终端号找到快递手持终端对应的公钥,然后用公钥对签名信息验签。
[0129]
第七步:验签通过,则将电子签运单的散列值登记到区块链状态中。
[0130]
上述实施例表明,前置终端获取电子凭证,对电子凭证进行哈希处理, 确定出电子凭证的哈希值,根据所述前置终端的私钥、商户号、终端号和电子凭证的哈希值,确定出签名信息,将前置终端的商户号和终端号、电子凭证的哈希值和签名信息上传至区块链节点,以使区块链节点在对签名信息进行验证后,登记到区块链网络中。前置终端通过对电子凭证进行处理后直接上传到区块链网络中,解决了现有技术中前置终端将电子凭证通过后台终端上传至区块链时会产生电子凭证篡改的问题。
[0131]
基于相同的技术构思,图8示例性的示出了本发明实施例提供的一种电子凭证上传的装置,该装置可以执行电子凭证上传的流程。该装置可以为上述前置终端。
[0132]
如图8所示,该装置具体包括:
[0133]
通信模块801,用于获取电子凭证;
[0134]
上传预处理模块802,用于对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值;根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息;将所述前置终端的商户号和终端号、所述电子凭证的哈希值和所述签名信息上传至区块链节点,以使所述区块链节点在对所述签名信息进行验证后,登记到区块链网络中。
[0135]
可选的,所述上传预处理模块802具体用于:
[0136]
使用所述前置终端的私钥,对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[0137]
可选的,所述上传预处理模块802具体用于:
[0138]
通过所述前置终端的私钥使用椭圆曲线数字签名ECDSA算法对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[0139]
基于相同的技术构思,图9示例性的示出了本发明实施例提供的一种电子凭证上传的装置,该装置可以执行电子凭证上传的流程。该装置可以为上述区块链节点。
[0140]
如图9所示,该装置具体包括:
[0141]
获取模块901,用于获取前置终端发送的交易信息,所述交易信息包括电子凭证的哈希值、所述前置终端的商户号和终端号、签名信息;所述电子凭证的哈希值是所述前置终端对所述电子凭证进行哈希处理后确定的;所述签名信息是所述前置终端根据所述前置终端的私钥对所述电子凭证的哈希值、所述前置终端的商户号和终端号进行处理后确定的;
[0142]
处理模块902,用于根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥;以及根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中。
[0143]
基于相同的技术构思,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述电子凭证上传的方法。
[0144]
基于相同的技术构思,本发明实施例还提供了一种计算设备,包括:
[0145]
存储器,用于存储程序指令;
[0146]
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述电子凭证上传的方法。
[0147]
基于相同的原理,本发明实施例还提供了一种前置终端,如图10所示,该前置终端主要包括:处理器111、存储器112,收发机113、总线接口114,其中处理器111、存储器112与收发机113之间通过总线接口114连接;
[0148]
处理器111,用于读取存储器112中的程序,执行下列方法:获取电子凭证;对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值;根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息;
[0149]
存储器112,用于存储一个或多个可执行程序,可以存储处理器111在执行操作时所使用的数据;
[0150]
收发机113,用于在处理器111的控制下将所述前置终端的商户号和终端号、所述电子凭证的哈希值和所述签名信息上传至区块链节点,以使所述区 块链节点在对所述签名信息进行验证后,登记到区块链网络中;
[0151]
总线接口114提供接口,处理器负责管理总线架构和通常的处理。
[0152]
其中,在图11中,总线构架可以包括任意数量的互联的总线和桥,具体由处理器111代表的一个或多个处理器和存储器112代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。
[0153]
优选地,处理器111具体用于:使用所述前置终端的私钥,对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[0154]
优选地,处理器111具体用于:通过所述前置终端的私钥使用椭圆曲线数字签名ECDSA算法对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[0155]
本发明实施例还提供了一种区块链节点,如图11所示,该区块链节点主要包括:处理器121、存储器122,收发机123、总线接口124,其中处理器121、存储器122与收发机123之间通过总线接口124连接;
[0156]
收发机123,用于在处理器121的控制下获取前置终端发送的交易信息,所述交易信息包括电子凭证的哈希值、所述前置终端的商户号和终端号、签名信息;所述电子凭证的哈希值是所述前置终端对所述电子凭证进行哈希处理后确定的;所述签名信息是所述前置终端根据所述前置终端的私钥对所述电子凭证的哈希值、所述前置终端的商户号和终端号进行处理后确定的;
[0157]
处理器121,用于读取存储器122中的程序,执行下列方法:读取存储器122中的程序,执行下列方法:根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥;以及根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中;
[0158]
存储器122,用于存储一个或多个可执行程序,可以存储处理器121在执 行操作时所使用的数据;
[0159]
总线接口124提供接口,处理器负责管理总线架构和通常的处理。
[0160]
其中,在图11中,总线构架可以包括任意数量的互联的总线和桥,具体由处理器121代表的一个或多个处理器和存储器122代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。
[0161]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0162]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0163]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0164]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0165]
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本 发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

权利要求书

[权利要求 1]
一种电子凭证上传的方法,其特征在于,包括: 前置终端获取电子凭证; 所述前置终端对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值; 所述前置终端根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息; 所述前置终端将所述前置终端的商户号和终端号、所述电子凭证的哈希值和所述签名信息上传至区块链节点,以使所述区块链节点在对所述签名信息进行验证后,登记到区块链网络中。
[权利要求 2]
如权利要求1所述的方法,其特征在于,所述前置终端根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息,包括: 所述前置终端使用所述前置终端的私钥,对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[权利要求 3]
如权利要求2所述的方法,其特征在于,所述前置终端根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息,包括: 所述前置终端通过所述前置终端的私钥使用椭圆曲线数字签名ECDSA算法对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[权利要求 4]
一种电子凭证上传的方法,其特征在于,包括: 区块链节点获取前置终端发送的交易信息,所述交易信息包括电子凭证的哈希值、所述前置终端的商户号和终端号、签名信息;所述电子凭证的哈希值是所述前置终端对所述电子凭证进行哈希处理后确定的;所述签名信息是所述前置终端根据所述前置终端的私钥对所述电子凭证的哈希值、所述前 置终端的商户号和终端号进行处理后确定的; 所述区块链节点根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥; 所述区块链节点根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中。
[权利要求 5]
一种电子凭证上传的装置,其特征在于,包括: 通信模块,用于获取电子凭证; 上传预处理模块,用于对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值;根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息;将所述前置终端的商户号和终端号、所述电子凭证的哈希值和所述签名信息上传至区块链节点,以使所述区块链节点在对所述签名信息进行验证后,登记到区块链网络中。
[权利要求 6]
如权利要求5所述的装置,其特征在于,所述上传预处理模块具体用于: 使用所述前置终端的私钥,对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[权利要求 7]
如权利要求6所述的装置,其特征在于,所述上传预处理模块具体用于: 通过所述前置终端的私钥使用椭圆曲线数字签名ECDSA算法对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[权利要求 8]
一种电子凭证上传的装置,其特征在于,包括: 获取模块,用于获取前置终端发送的交易信息,所述交易信息包括电子凭证的哈希值、所述前置终端的商户号和终端号、签名信息;所述电子凭证的哈希值是所述前置终端对所述电子凭证进行哈希处理后确定的;所述签名信息是所述前置终端根据所述前置终端的私钥对所述电子凭证的哈希值、所 述前置终端的商户号和终端号进行处理后确定的; 处理模块,用于根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥;以及根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中。
[权利要求 9]
一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行如权利要求1至4中任一项所述的方法。
[权利要求 10]
一种计算设备,其特征在于,包括: 存储器,用于存储程序指令; 处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如权利要求1至4中任一项所述的方法。
[权利要求 11]
一种前置终端,其特征在于,包括:处理器、存储器、收发机、总线接口,其中处理器、存储器与收发机之间通过总线接口连接; 所述处理器,用于读取所述存储器中的程序,执行下列方法:获取电子凭证;对所述电子凭证进行哈希处理,确定出所述电子凭证的哈希值;根据所述前置终端的私钥、商户号、终端号和所述电子凭证的哈希值,确定出签名信息; 所述存储器,用于存储一个或多个可执行程序,可以存储所述处理器在执行操作时所使用的数据; 所述收发机,用于在所述处理器的控制下将所述前置终端的商户号和终端号、所述电子凭证的哈希值和所述签名信息上传至区块链节点,以使所述区块链节点在对所述签名信息进行验证后,登记到区块链网络中; 所述总线接口,用于提供接口。
[权利要求 12]
如权利要求11所述的终端,其特征在于,所述处理器,用于: 使用所述前置终端的私钥,对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[权利要求 13]
如权利要求12所述的终端,其特征在于,所述处理器,用于: 通过所述前置终端的私钥使用椭圆曲线数字签名ECDSA算法对所述前置终端的商户号和终端号以及所述电子凭证的哈希值进行签名,确定出所述签名信息。
[权利要求 14]
一种区块链节点,其特征在于,包括:处理器、存储器、收发机、总线接口,其中处理器、存储器与收发机之间通过总线接口连接; 所述收发机,用于在所述处理器的控制下获取前置终端发送的交易信息,所述交易信息包括电子凭证的哈希值、所述前置终端的商户号和终端号、签名信息;所述电子凭证的哈希值是所述前置终端对所述电子凭证进行哈希处理后确定的;所述签名信息是所述前置终端根据所述前置终端的私钥对所述电子凭证的哈希值、所述前置终端的商户号和终端号进行处理后确定的; 所述处理器,用于读取所述存储器中的程序,执行下列方法:根据所述前置终端的商户号和终端号,确定出所述前置终端的公钥;以及根据所述前置终端的公钥对所述签名信息进行验证,并在验证通过以及其它区块链节点共识之后将所述电子凭证的哈希值登记到区块链网络中; 所述存储器,用于存储一个或多个可执行程序,可以存储所述处理器在执行操作时所使用的数据; 所述总线接口,用于提供接口。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]  
[ 图 4]  
[ 图 5]  
[ 图 6]  
[ 图 7]  
[ 图 8]  
[ 图 9]  
[ 图 10]  
[ 图 11]