CN111489252B - 一种基于联盟链的存款证明开立方法及装置 - Google Patents
一种基于联盟链的存款证明开立方法及装置 Download PDFInfo
- Publication number
- CN111489252B CN111489252B CN202010269870.4A CN202010269870A CN111489252B CN 111489252 B CN111489252 B CN 111489252B CN 202010269870 A CN202010269870 A CN 202010269870A CN 111489252 B CN111489252 B CN 111489252B
- Authority
- CN
- China
- Prior art keywords
- deposit
- bank
- user
- freezing
- information
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Abstract
本申请公开了一种基于联盟链的存款证明开立方法及装置,接收用户基于移动客户端发送的存款证明开立请求,通过预设的联盟链中各个成员提供的存款查询接口,获取用户在各个银行下的存款信息。依据用户在各个银行下的存款余额,生成存款冻结信息。调用联盟链中目标成员提供的存款冻结接口,触发目标银行对冻结金额进行存款冻结。向用户的移动客户端发送存款证明开立成功信息。可见,通过预先搭建的联盟链,获取用户名下各个银行的存款信息,当用户在第一银行下的存款余额无法满足存款证明金额的情况下,通过联盟链中目标成员提供的存款冻结接口,触发目标银行对存款冻结信息中所指示的冻结金额进行存款冻结,从而实现存款证明的跨行开立。
Description
技术领域
本申请涉及金融服务领域,尤其涉及一种基于联盟链的存款证明开立方法及装置。
背景技术
存款证明是指银行为存款人出具证明,证明存款人在银行具有在以后某个时间点前不可动用的存款余额。存款证明一般用于自费留学、境外移民、探亲、境外旅游、以及就医等场景。
目前,用户可以使用银行的移动应用,在线上实现存款证明的开立。但是,现有的移动应用,只能为用户名下的单一银行的资产提供存款证明,无法对用户名下的其它银行的资产进行存款累计,更无法为用户名下的其他银行的资产提供存款证明。在单一银行的存款无法满足用户需求的存款证明的金额的情况下,用户还需重新使用其他银行的移动应用,开立新的存款证明。
发明内容
本申请提供了一种基于联盟链的存款证明开立方法及装置,目的在于实现存款证明的跨行开立。
为了实现上述目的,本申请提供了以下技术方案:
一种基于联盟链的存款证明开立方法,包括:
接收用户基于移动客户端发送的存款证明开立请求,所述存款证明开立请求至少包括存款证明金额;
通过预设的联盟链中各个成员提供的存款查询接口,获取所述用户在各个银行下的存款信息,所述成员用于表示所述银行在所述联盟链中对应的区块链节点,所述存款信息至少包括存款余额;
在所述用户在第一银行下的所述存款余额小于所述存款证明金额的情况下,依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息,所述存款冻结信息包括冻结金额和进行存款冻结的多个所述银行的银行标识之间的对应关系,所述第一银行为所述用户指定的所述银行,或者,所述用户名下各个所述银行中的任意一个;
调用所述联盟链中目标成员提供的存款冻结接口,触发目标银行对所述冻结金额进行存款冻结,所述目标成员用于表示所述目标银行在所述联盟链中对应的区块链节点,所述目标银行为与所述银行标识对应的所述银行;
在接收到所述目标银行发送的存款冻结成功提示的情况下,向所述用户的所述移动客户端发送存款证明开立成功信息,所述存款证明开立成功信息包括所述存款冻结成功提示与所述存款证明开立请求的对应关系。
可选的,所述获取所述用户在各个所述银行下的存款信息之后,还包括:
统计所述用户在各个所述银行下的所述存款余额的总值;
判断所述用户在各个所述银行下的所述存款余额的所述总值是否大于或等于所述存款证明金额;
在所述用户在各个所述银行下的所述存款余额的所述总值小于所述存款证明金额的情况下,向所述用户的所述移动客户端,发送存款证明开立失败提示;
所述在所述用户在第一银行下的所述存款余额小于所述存款证明金额的情况下,依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息,包括:
在所述用户在各个所述银行下的所述存款余额的所述总值大于或等于所述存款证明金额的情况下,如果所述用户在第一银行下的所述存款余额小于所述存款证明金额的情况下,依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息。
可选的,所述存款证明开立请求还包括所述用户的个人信息;
所述通过预设的联盟链中各个成员提供的存款查询接口,获取所述用户在各个银行下的存款信息,包括:
对所述个人信息进行加密,将加密后的所述个人信息进行打包,得到区块;
将所述区块追加到所述联盟链中,使得所述联盟链中的成员触发智能合约,获得所述区块,解密所述区块得到所述个人信息,并对所述个人信息进行验证,所述成员用于表示所述银行在所述联盟链中对应的区块链节点;
在所述个人信息验证通过的情况下,通过所述联盟链中各个所述成员提供的存款查询接口,获取所述用户在各个所述银行下的存款信息。
可选的,所述依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息,包括:
统计所述用户在所述第一银行和第二银行下的所述冻结金额;
依据所述用户在所述第一银行和所述第二银行下的所述冻结金额,生成第一存款冻结信息;
其中,所述第二银行为除所述第一银行外的其他银行,所述用户在所述第一银行和所述第二银行下的所述存款余额的总值大于或等于所述存款证明金额;
所述第一存款冻结信息包括:所述用户在所述第一银行下的所述冻结金额、和所述第一银行的银行标识之间的对应关系,以及所述用户在所述第二银行下的所述冻结金额、和所述第二银行的银行标识之间的对应关系;
所述用户在所述第一银行下的所述冻结金额等于第一数值,所述第一数值为所述用户在所述第一银行下的所述存款余额;
所述用户在第N-j个所述第二银行下的所述冻结金额等于第二数值,所述第二数值为所述用户在第N-j个所述第二银行下的所述存款余额,N表示所述第二银行所指示的银行的数量,j为小于N的整数,i表示所述第二银行所指示的所述银行的索引;
所述用户在第N个所述第二银行下的所述冻结金额等于第三数值,所述第三数值为所述存款证明金额与第四数值之差,所述第四数值为所述用户在所述第一银行和前N-1个所述第二银行下的所述存款余额的总和。
可选的,所述获取所述用户在各个银行下的存款信息之后,还包括:
判断所述用户在第一银行下的所述存款余额是否大于或等于所述存款证明金额;
在所述用户在所述第一银行下的所述存款余额大于或等于所述存款证明金额的情况下,依据所述用户在所述第一银行下的所述存款余额,生成第二存款冻结信息;
其中,所述第二存款冻结信息包括所述用户在所述第一银行下的所述冻结金额、和所述第一银行的银行标识之间的对应关系;
所述用户在所述第一银行下的所述冻结金额等于第五数值,所述第五数值为所述存款证明金额。
可选的,所述调用所述联盟链中目标成员提供的存款冻结接口,触发目标银行对所述冻结金额进行存款冻结,包括:
对所述存款冻结信息进行加密,将加密后的所述存款冻结信息进行打包,得到区块;
将所述区块追加到所述联盟链中,使得所述联盟链中的目标成员触发智能合约,获得所述区块,解密所述区块得到所述存款冻结信息,所述目标成员用于表示目标银行在所述联盟链中对应的区块链节点,所述目标银行为与所述银行标识对应的所述银行;
调用所述联盟链中所述目标成员提供的存款冻结接口,触发所述目标银行冻结目标冻结金额,所述目标冻结金额为所述用户在所述目标银行下的所述冻结金额。
可选的,所述联盟链的预设过程,包括:
搭建所述用户名下各个所述银行的联盟链,开发各个所述银行之间的智能合约,并将所述智能合约部署到所述联盟链的各个成员中,所述成员用于表示所述银行在所述联盟链中对应的区块链节点。
一种基于联盟链的存款证明开立装置,包括:
接收单元,用于接收用户基于移动客户端发送的存款证明开立请求,所述存款证明开立请求至少包括存款证明金额;
获取单元,用于通过预设的联盟链中各个成员提供的存款查询接口,获取所述用户在各个银行下的存款信息,所述成员用于表示所述银行在所述联盟链中对应的区块链节点,所述存款信息至少包括存款余额;
生成单元,用于在所述用户在第一银行下的所述存款余额小于所述存款证明金额的情况下,依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息,所述存款冻结信息包括冻结金额和进行存款冻结的多个所述银行的银行标识之间的对应关系,所述第一银行为所述用户指定的所述银行,或者,所述用户名下各个所述银行中的任意一个;
第一冻结单元,用于调用所述联盟链中目标成员提供的存款冻结接口,触发目标银行对所述冻结金额进行存款冻结,所述目标成员用于表示所述目标银行在所述联盟链中对应的区块链节点,所述目标银行为与所述银行标识对应的所述银行;
发送单元,用于在接收到所述目标银行发送的存款冻结成功提示的情况下,向所述用户的所述移动客户端发送存款证明开立成功信息,所述存款证明开立成功信息包括所述存款冻结成功提示与所述存款证明开立请求的对应关系。
一种计算机存储介质,所述计算机存储介质包括存储的程序,其中,所述程序执行所述的基于联盟链的存款证明开立方法。
一种电子设备,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行所述的基于联盟链的存款证明开立方法。
本申请提供的技术方案,接收用户基于移动客户端发送的存款证明开立请求,存款证明开立请求至少包括存款证明金额。通过预设的联盟链中各个成员提供的存款查询接口,获取用户在各个银行下的存款信息,成员用于表示银行在联盟链中对应的区块链节点,存款信息至少包括存款余额。在用户在第一银行下的存款余额小于存款证明金额的情况下,依据用户在各个银行下的存款余额,生成存款冻结信息,存款冻结信息包括冻结金额和进行存款冻结的多个银行的银行标识之间的对应关系,第一银行为用户指定的银行,或者,用户名下各个银行中的任意一个。调用联盟链中目标成员提供的存款冻结接口,触发目标银行对冻结金额进行存款冻结,目标成员用于表示目标银行在联盟链中对应的区块链节点,目标银行为与银行标识对应的银行。在接收到目标银行发送的存款冻结成功提示的情况下,向用户的移动客户端发送存款证明开立成功信息,存款证明开立成功信息包括存款冻结成功提示与存款证明开立请求的对应关系。
可见,通过预先搭建用户名下各个银行的联盟链各个成员的提供的存款查询接口,获取用户在各个银行下的存款信息,当用户在第一银行下的存款余额无法满足存款证明金额的情况下,依据存款信息,选取需进行存款冻结的多个银行,生成存款冻结信息,通过联盟链中目标成员提供的存款冻结接口,触发目标银行对存款冻结信息中所指示的冻结金额进行存款冻结,以满足存款证明金额的冻结需求,从而实现存款证明的跨行开立。并且,由于移动客户端与银行之间通过联盟链进行信息交互,因此,在进行存款查询和存款冻结的过程中,安全性得到有效提高。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的一种基于联盟链的存款证明开立系统的架构示意图;
图1b为本申请实施例提供的一种基于联盟链的存款证明开立系统实现存款证明跨行开立的流程示意图;
图1c为本申请实施例提供的另一种基于联盟链的存款证明开立系统实现存款证明跨行开立的流程示意图;
图2为本申请实施例提供的一种基于联盟链的存款证明开立方法的示意图;
图3为本申请实施例提供的一种基于联盟链的存款证明开立装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的流程应用于银行的移动应用的服务端,具体的,可由服务器执行,用于实现存款证明的跨行开立。
如图1a所示,为本申请实施例提供的一种基于联盟链的存款证明开立系统的架构示意图,包括:
业务受理及查询模块100、存款数据聚合模块200和存款冻结模块300。
其中,图1b和图1c共同示出了基于联盟链的存款证明开立系统实现存款证明跨行开立的流程示意图,包括如下步骤:
S101:存款数据聚合模块搭建用户名下各个银行的联盟链,开发各个银行之间的智能合约,并将智能合约部署到联盟链的各个成员中。
其中,成员用于表示银行在联盟链中对应的区块链节点,即联盟链中的各个成员与用户名下各个银行之间存在对应关系,搭建用户名下各个银行的联盟链的具体实现过程,为本领域技术人员所熟悉的公知常识。具体的,可以采用现有的区块链底层平台,针对用户名下的各个银行建立区块链节点,集合各个区块链节点组成区块链网络,并将各个银行的数字证书写入区块链网络的创始区块中,形成各个银行的联盟链。
需要说明的是,介于区块链技术有不可篡改、可追源、集体维护、以及公开透明等优良特性,在各个银行之间建立联盟链,能够形成基于数据的信任关系。每个银行建立一个或多个区块链节点,区块链节点中预存有银行提供的各个业务接口(例如存款查询接口),将这些区块链节点共同组成区块链网络,以使每个银行通过区块链建立连接,通过P2P协议维护区块链中的数据(具体是指各个区块链节点之间传输的数据,例如,下述S104提及的个人信息),为数据建立共识,保证各个区块链节点的数据一致,数据不可抵赖以及不可篡改。建立联盟链的时候,将各个银行的数字证书(是指在互联网通讯中标志通讯各方身份信息的一个数字认证)写入创始区块(也就是区块链的第一个区块)中。只有将数字证书写入区块链的节点才能成为联盟链的成员,若后续如果有新成员(即用户名下新增的银行)加入区块链网络中,通过智能合约(是一种旨在以信息化方式传播、验证或执行合同的计算机协议)控制,只有超过预设数目(例如1/3)的联盟链中现有成员同意,才可以将新成员的数字证书写入区块链,使得新成员加入区块链网络,成为联盟链中的一员。
S102:业务受理及查询模块接收用户基于移动客户端发送的存款证明开立请求。
其中,存款证明开立请求至少包括:用户的个人信息(例如用户的姓名和身份证号)、存款证明金额、存款冻结开始日期、存款冻结截止日期、以及存款证明的用途。
S103:业务受理及查询模块向存款数据聚合模块,发送存款证明开立请求。
S104:存款数据聚合模块对用户的个人信息进行加密,将加密后的用户的个人信息进行打包,得到第一区块,并将第一区块追加到联盟链中,使得联盟链中的各个成员触发智能合约,获得第一区块,解密第一区块得到个人信息。
S105:存款数据聚合模块在接收到各个银行基于用户的个人信息发送的验证通过提示的情况下,通过联盟链中各个成员提供的存款查询接口,获取用户在各个银行下的存款信息。
其中,存款信息包括用户的账号、存款类别、存款余额、可冻结金额(在本实施例中,可冻结金额等同于存款余额)、以及银行的标识之间的对应关系。
需要说明的是,用户名下各个银行触发智能合约,从联盟链中获取并解密用户的个人信息,并对用户的个人信息进行共识校验。在用户的个人信息验证通过的情况下,各个银行触发智能合约,生成验证通过提示,将验证通过提示进行打包,得到目标区块,并将目标区块追加到联盟链中,存款数据聚合模块触发智能合约,获取目标区块中的验证通过提示。
需要强调的是,通过联盟链上各个成员提供的存款查询接口,获取用户在各个银行下的存款信息的具体实现过程,为本领域技术人员所熟悉的公知常识,这里不再赘述。
S106:存款数据聚合模块统计用户在各个银行下的存款余额的总值,并判断总值是否大于或等于存款证明金额。
其中,若用户在各个银行下的存款余额的总值大于或等于存款证明金额,则执行S110,否则执行S107。
S107:存款数据聚合模块生成存款证明开立失败提示。
S108:存款数据聚合模块向业务受理及查询模块,发送存款证明开立失败提示。
S109:业务受理及查询模块向用户的移动客户端,发送存款证明开立失败提示。
S110:存款数据聚合模块判断用户在第一银行下的存款余额是否大于或等于存款证明金额。
其中,第一银行可以为用户指定的银行,或者,用户名下各个银行中的任意一个。用户在第一银行下的存款余额大于或等于存款证明金额,则执行S113,否则执行S111。
S111:存款数据聚合模块统计用户在第一银行和第二银行下的冻结金额。
其中,第二银行为除第一银行外的其他银行,并且,用户在第一银行和第二银行下的存款余额的总值大于或等于存款证明金额。
S112:存款数据聚合模块依据用户在第一银行和第二银行下的冻结金额,生成并加密第一存款冻结信息,将加密后的第一存款冻结信息进行打包,得到第二区块,并将第二区块追加到联盟链中,使得联盟链中第一成员和第二成员各自触发智能合约,获得第二区块,解密第二区块得到第一存款冻结信息。
其中,第一存款冻结信息包括:用户在第一银行下的账号、存款类别、存款余额、冻结金额、以及第一银行的银行标识之间的对应关系,以及用户在第二银行下的账号、存款类别、存款余额Qi(i表示第二银行所指示的银行的索引)、冻结金额Mi、以及第二银行的银行标识之间的对应关系。第一成员用于表示第一银行在联盟链中对应的区块链节点,第二成员用于表示第二银行在联盟链中对应的区块链节点。
需要说明的是,用户在第一银行下的冻结金额等于第一数值,第一数值为用户在第一银行下的存款余额。
用户在第N-j(N表示第二银行所指示的银行的数量,j为小于N的整数)个第二银行下的冻结金额Mi=N-j等于第二数值,第二数值为用户在第N-j个第二银行下的存款余额Qi=N-j。
用户在第N个第二银行下的冻结金额Mi=N等于第三数值,第三数值为存款证明金额与第四数值之差,第四数值为用户在第一银行和前N-1个第二银行下的存款余额的总和。
执行S112之后,存款数据聚合模块继续执行S114。
S113:存款数据聚合模块确定用户在第一银行下的冻结金额,生成并加密第二存款冻结信息,将加密后的第二存款冻结信息进行打包,得到第三区块,并将第三区块追加到联盟链中,使得联盟链中的第一成员触发智能合约,获得第三区块,解密第三区块得到第二存款冻结信息。
其中,第二存款冻结信息包括用户在第一银行下的账号、存款类别、存款余额、冻结金额、以及第一银行的银行标识之间的对应关系。
需要说明的是,用户在第一银行下的冻结金额,等于第五数值,第五数值为存款证明金额。
执行S113之后,存款数据聚合模块继续执行S114。
S114:存款数据聚合模块向存款冻结模块,发送存款冻结请求。
其中,存款冻结请求包括第一存款冻结信息或第二存款冻结信息。
S115:存款冻结模块根据存款冻结请求中所指示的银行标识,调用联盟链中目标成员提供的存款冻结接口,触发目标银行冻结存款冻结请求中所指示的目标冻结金额。
其中,目标成员用于表示目标银行在联盟链中对应的区块链节点,目标银行为与存款冻结请求中所指示的银行标识对应的银行,目标冻结金额为用户在目标银行下的冻结金额。
S116:存款冻结模块接收目标银行发送的存款冻结成功提示。
S117:存款冻结模块向业务受理及查询模块,发送存款冻结成功提示。
S118:业务受理及查询模块生成存款证明开立成功信息,并将存款证明开立成功信息发送给用户的移动客户端。
其中,存款证明开立成功信息包括存款冻结成功提示与存款证明开立请求的对应关系。
综上所述,本实施例通过预先搭建的联盟链,获取用户名下各个银行的存款信息,当用户在第一银行下的存款余额无法满足存款证明金额的情况下,通过联盟链,冻结用户名下其它银行的存款余额,以满足存款证明金额的冻结需求,从而实现存款证明的跨行开立。并且,通过联盟链中各个成员提供的存款查询接口与存款冻结接口,实现存款查询和存款冻结,由于移动客户端与银行之间通过联盟链进行信息交互,安全性得到有效提高。
需要说明的是,上述实施例中,提供的基于联盟链的存款证明开立系统实现存款证明跨行开立的具体实现过程,可以概括为图2所示的流程。
如图2所示,为本申请实施例提供的一种基于联盟链的存款证明开立方法的示意图,包括如下步骤:
S201:接收用户基于移动客户端发送的存款证明开立请求。
其中,存款证明开立请求至少包括存款证明金额。
需要说明的是,S201的具体执行过程和实现原理,与上述图1b示出的S102-S103的具体执行过程和实现原理一致,这里不再赘述。
S202:通过预设的联盟链中各个成员提供的存款查询接口,获取用户在各个银行下的存款信息。
其中,成员用于表示银行在联盟链中对应的区块链节点,存款信息至少包括用户的个人信息和存款余额。
需要说明的是,S202的具体执行过程和实现原理,与上述图1b示出的S104-S105的具体执行过程和实现原理一致,这里不再赘述。
可选的,获取用户在各个银行下的存款信息之后,统计用户在各个银行下的存款余额的总值。判断用户在各个银行下的存款余额的总值是否大于或等于存款证明金额。在用户在各个银行下的存款余额的总值小于存款证明金额的情况下,向用户的移动客户端,发送存款证明开立失败提示。在用户在各个银行下的存款余额的总值大于或等于存款证明金额的情况下,如果用户在第一银行下的存款余额小于存款证明金额的情况下,依据用户在各个银行下的存款余额,生成存款冻结信息。具体的执行过程和实现原理,与上述图1b示出的S106-S109的具体执行过程和实现原理一致,这里不再赘述。
需要说明的是,联盟链的预设过程,与上述1b示出的S101的具体执行过程和实现原理一致,这里不再赘述。
S203:在用户在第一银行下的存款余额小于存款证明金额的情况下,依据用户在各个银行下的存款余额,生成存款冻结信息。
其中,存款冻结信息包括冻结金额和进行存款冻结的多个银行的银行标识之间的对应关系,第一银行为用户指定的银行,或者,用户名下各个银行中的任意一个。
需要说明的是,S203的具体执行过程和实现原理,与上述图1c示出的S111-S112的具体执行过程和实现原理一致,这里不再赘述。
可选的,在用户在第一银行下的存款余额大于或等于存款证明金额的情况下,依据用户在第一银行下的存款余额,生成第二存款冻结信息。需要说明的是,生成第二存款冻结信息的具体实现过程可参见上述S113、以及S113的解释说明。
S204:调用联盟链中目标成员提供的存款冻结接口,触发目标银行对冻结金额进行存款冻结。
其中,目标成员用于表示目标银行在联盟链中对应的区块链节点,目标银行为与银行标识对应的银行。
需要说明的是,S204的具体执行过程和实现原理,与上述图1c示出的S115的具体执行过程和实现原理一致,这里不再赘述。
S205:在接收到目标银行发送的存款冻结成功提示的情况下,向用户的移动客户端发送存款证明开立成功信息。
其中,存款证明开立成功信息包括存款冻结成功提示与存款证明开立请求的对应关系。
需要说明的是,S205的具体执行过程和实现原理,与上述图1c示出的S116-S118的具体执行过程和实现原理一致,这里不再赘述。
综上所述,接收用户基于移动客户端发送的存款证明开立请求,通过预设的联盟链中各个成员提供的存款查询接口,获取用户在各个银行下的存款信息。依据用户在各个银行下的存款余额,生成存款冻结信息。调用联盟链中目标成员提供的存款冻结接口,触发目标银行对冻结金额进行存款冻结。向用户的移动客户端发送存款证明开立成功信息。可见,通过预先搭建用户名下各个银行的联盟链各个成员的提供的存款查询接口,获取用户在各个银行下的存款信息,当用户在第一银行下的存款余额无法满足存款证明金额的情况下,依据存款信息,选取需进行存款冻结的多个银行,生成存款冻结信息,通过联盟链中目标成员提供的存款冻结接口,触发目标银行对存款冻结信息中所指示的冻结金额进行存款冻结,以满足存款证明金额的冻结需求,从而实现存款证明的跨行开立。并且,由于移动客户端与银行之间通过联盟链进行信息交互,因此,在进行存款查询和存款冻结的过程中,安全性得到有效提高。
与上述实施例提供的基于联盟链的存款证明开立方法相对应,如图3所示,为本申请实施例提供的一种基于联盟链的存款证明开立装置的结构示意图,包括:
接收单元301,用于接收用户基于移动客户端发送的存款证明开立请求,存款证明开立请求至少包括存款证明金额。
获取单元302,用于通过预设的联盟链中各个成员提供的存款查询接口,获取用户在各个银行下的存款信息,成员用于表示银行在联盟链中对应的区块链节点,存款信息至少包括存款余额。
其中,获取单元302通过预设的联盟链中各个成员提供的存款查询接口,获取用户在各个银行下的存款信息的具体实现过程包括:对个人信息进行加密,将加密后的个人信息进行打包,得到区块。将区块追加到联盟链中,使得联盟链中的成员触发智能合约,获得区块,解密区块得到个人信息,并对个人信息进行验证,成员用于表示银行在联盟链中对应的区块链节点。在个人信息验证通过的情况下,通过联盟链中各个成员提供的存款查询接口,获取用户在各个银行下的存款信息。
联盟链的预设过程包括:搭建用户名下各个银行的联盟链,开发各个银行之间的智能合约,并将智能合约部署到联盟链的各个成员中,成员用于表示银行在联盟链中对应的区块链节点。
生成单元303,用于在用户在第一银行下的存款余额小于存款证明金额的情况下,依据用户在各个银行下的存款余额,生成存款冻结信息,存款冻结信息包括冻结金额和进行存款冻结的多个银行的银行标识之间的对应关系,第一银行为用户指定的银行,或者,用户名下各个银行中的任意一个。
其中,生成单元303依据用户在各个银行下的存款余额,生成存款冻结信息的具体实现过程包括:统计用户在第一银行和第二银行下的冻结金额。依据用户在第一银行和第二银行下的冻结金额,生成第一存款冻结信息。其中,第二银行为除第一银行外的其他银行,用户在第一银行和第二银行下的存款余额的总值大于或等于存款证明金额。第一存款冻结信息包括:用户在第一银行下的冻结金额、和第一银行的标识之间的对应关系,以及用户在第二银行下的冻结金额、和第二银行的标识之间的对应关系。用户在第一银行下的冻结金额等于第一数值,第一数值为用户在第一银行下的存款余额。用户在第N-j个第二银行下的冻结金额等于第二数值,第二数值为用户在第N-j个第二银行下的存款余额,N表示第二银行所指示的银行的数量,j为小于N的整数,i表示第二银行所指示的银行的索引。用户在第N个第二银行下的冻结金额等于第三数值,第三数值为存款证明金额与第四数值之差,第四数值为用户在第一银行和前N-1个第二银行下的存款余额的总和。
第一冻结单元304,用于调用联盟链中目标成员提供的存款冻结接口,触发目标银行对冻结金额进行存款冻结,目标成员用于表示目标银行在联盟链中对应的区块链节点,目标银行为与银行标识对应的银行。
其中,第一冻结单元304调用联盟链中目标成员提供的存款冻结接口,触发目标银行对冻结金额进行存款冻结的具体实现过程包括:对存款冻结信息进行加密,将加密后的存款冻结信息进行打包,得到区块。将区块追加到联盟链中,使得联盟链中的目标成员触发智能合约,获得区块,解密区块得到存款冻结信息,目标成员用于表示目标银行在联盟链中对应的区块链节点,目标银行为与银行标识对应的银行。调用联盟链中目标成员提供的存款冻结接口,触发目标银行冻结目标冻结金额,目标冻结金额为用户在目标银行下的冻结金额。
发送单元305,用于在接收到目标银行发送的存款冻结成功提示的情况下,向用户的移动客户端发送存款证明开立成功信息,存款证明开立成功信息包括存款冻结成功提示与存款证明开立请求的对应关系。
提示单元306,用于统计用户在各个银行下的存款余额的总值。判断用户在各个银行下的存款余额的总值是否大于或等于存款证明金额。在用户在各个银行下的存款余额的总值小于存款证明金额的情况下,向用户的移动客户端,发送存款证明开立失败提示。
第二冻结单元307,用于判断用户在第一银行下的存款余额是否大于或等于存款证明金额。在用户在第一银行下的存款余额大于或等于存款证明金额的情况下,依据用户在第一银行下的存款余额,生成第二存款冻结信息。其中,第二存款冻结信息包括用户在第一银行下的冻结金额、和第一银行的银行标识之间的对应关系。用户在第一银行下的冻结金额等于第五数值,第五数值为存款证明金额。
综上所述,通过预先搭建用户名下各个银行的联盟链各个成员的提供的存款查询接口,获取用户在各个银行下的存款信息,当用户在第一银行下的存款余额无法满足存款证明金额的情况下,依据存款信息,选取需进行存款冻结的多个银行,生成存款冻结信息,通过联盟链中目标成员提供的存款冻结接口,触发目标银行对存款冻结信息中所指示的冻结金额进行存款冻结,以满足存款证明金额的冻结需求,从而实现存款证明的跨行开立。并且,由于移动客户端与银行之间通过联盟链进行信息交互,因此,在进行存款查询和存款冻结的过程中,安全性得到有效提高。
本申请还提供了一种计算机存储介质,计算机存储介质包括存储的程序,其中,程序执行上述本申请提供的基于联盟链的存款证明开立方法。
本申请还提供了一种电子设备,包括:处理器、存储器和总线。处理器与存储器通过总线连接,存储器用于存储程序,处理器用于运行程序,其中,程序运行时执行上述本申请提供的基于联盟链的存款证明开立方法。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于联盟链的存款证明开立方法,其特征在于,包括:
接收用户基于移动客户端发送的存款证明开立请求,所述存款证明开立请求至少包括存款证明金额;
通过预设的联盟链中各个成员提供的存款查询接口,获取所述用户在各个银行下的存款信息,所述成员用于表示所述银行在所述联盟链中对应的区块链节点,所述存款信息至少包括存款余额;
在所述用户在第一银行下的所述存款余额小于所述存款证明金额的情况下,依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息,所述存款冻结信息包括冻结金额和进行存款冻结的多个所述银行的银行标识之间的对应关系,所述第一银行为所述用户指定的所述银行,或者,所述用户名下各个所述银行中的任意一个;
调用所述联盟链中目标成员提供的存款冻结接口,触发目标银行对所述冻结金额进行存款冻结,所述目标成员用于表示所述目标银行在所述联盟链中对应的区块链节点,所述目标银行为与所述银行标识对应的所述银行;
在接收到所述目标银行发送的存款冻结成功提示的情况下,向所述用户的所述移动客户端发送存款证明开立成功信息,所述存款证明开立成功信息包括所述存款冻结成功提示与所述存款证明开立请求的对应关系。
2.根据权利要求1所述的方法,其特征在于,所述获取所述用户在各个所述银行下的存款信息之后,还包括:
统计所述用户在各个所述银行下的所述存款余额的总值;
判断所述用户在各个所述银行下的所述存款余额的所述总值是否大于或等于所述存款证明金额;
在所述用户在各个所述银行下的所述存款余额的所述总值小于所述存款证明金额的情况下,向所述用户的所述移动客户端,发送存款证明开立失败提示;
所述在所述用户在第一银行下的所述存款余额小于所述存款证明金额的情况下,依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息,包括:
在所述用户在各个所述银行下的所述存款余额的所述总值大于或等于所述存款证明金额的情况下,如果所述用户在第一银行下的所述存款余额小于所述存款证明金额的情况下,依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息。
3.根据权利要求1所述的方法,其特征在于,所述存款证明开立请求还包括所述用户的个人信息;
所述通过预设的联盟链中各个成员提供的存款查询接口,获取所述用户在各个银行下的存款信息,包括:
对所述个人信息进行加密,将加密后的所述个人信息进行打包,得到区块;
将所述区块追加到所述联盟链中,使得所述联盟链中的成员触发智能合约,获得所述区块,解密所述区块得到所述个人信息,并对所述个人信息进行验证,所述成员用于表示所述银行在所述联盟链中对应的区块链节点;
在所述个人信息验证通过的情况下,通过所述联盟链中各个所述成员提供的存款查询接口,获取所述用户在各个所述银行下的存款信息。
4.根据权利要求1所述的方法,其特征在于,所述依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息,包括:
统计所述用户在所述第一银行和第二银行下的所述冻结金额;
依据所述用户在所述第一银行和所述第二银行下的所述冻结金额,生成第一存款冻结信息;
其中,所述第二银行为除所述第一银行外的其他银行,所述用户在所述第一银行和所述第二银行下的所述存款余额的总值大于或等于所述存款证明金额;
所述第一存款冻结信息包括:所述用户在所述第一银行下的所述冻结金额、和所述第一银行的银行标识之间的对应关系,以及所述用户在所述第二银行下的所述冻结金额、和所述第二银行的银行标识之间的对应关系;
所述用户在所述第一银行下的所述冻结金额等于第一数值,所述第一数值为所述用户在所述第一银行下的所述存款余额;
所述用户在第N-j个所述第二银行下的所述冻结金额等于第二数值,所述第二数值为所述用户在第N-j个所述第二银行下的所述存款余额,N表示所述第二银行所指示的银行的数量,j为小于N的整数,i表示所述第二银行所指示的所述银行的索引;
所述用户在第N个所述第二银行下的所述冻结金额等于第三数值,所述第三数值为所述存款证明金额与第四数值之差,所述第四数值为所述用户在所述第一银行和前N-1个所述第二银行下的所述存款余额的总和。
5.根据权利要求1所述的方法,其特征在于,所述获取所述用户在各个银行下的存款信息之后,还包括:
判断所述用户在第一银行下的所述存款余额是否大于或等于所述存款证明金额;
在所述用户在所述第一银行下的所述存款余额大于或等于所述存款证明金额的情况下,依据所述用户在所述第一银行下的所述存款余额,生成第二存款冻结信息;
其中,所述第二存款冻结信息包括所述用户在所述第一银行下的所述冻结金额、和所述第一银行的银行标识之间的对应关系;
所述用户在所述第一银行下的所述冻结金额等于第五数值,所述第五数值为所述存款证明金额。
6.根据权利要求1-5任意一项所述的方法,其特征在于,所述调用所述联盟链中目标成员提供的存款冻结接口,触发目标银行对所述冻结金额进行存款冻结,包括:
对所述存款冻结信息进行加密,将加密后的所述存款冻结信息进行打包,得到区块;
将所述区块追加到所述联盟链中,使得所述联盟链中的目标成员触发智能合约,获得所述区块,解密所述区块得到所述存款冻结信息,所述目标成员用于表示目标银行在所述联盟链中对应的区块链节点,所述目标银行为与所述银行标识对应的所述银行;
调用所述联盟链中所述目标成员提供的存款冻结接口,触发所述目标银行冻结目标冻结金额,所述目标冻结金额为所述用户在所述目标银行下的所述冻结金额。
7.根据权利要求6所述的方法,其特征在于,所述联盟链的预设过程,包括:
搭建所述用户名下各个所述银行的联盟链,开发各个所述银行之间的智能合约,并将所述智能合约部署到所述联盟链的各个成员中,所述成员用于表示所述银行在所述联盟链中对应的区块链节点。
8.一种基于联盟链的存款证明开立装置,其特征在于,包括:
接收单元,用于接收用户基于移动客户端发送的存款证明开立请求,所述存款证明开立请求至少包括存款证明金额;
获取单元,用于通过预设的联盟链中各个成员提供的存款查询接口,获取所述用户在各个银行下的存款信息,所述成员用于表示所述银行在所述联盟链中对应的区块链节点,所述存款信息至少包括存款余额;
生成单元,用于在所述用户在第一银行下的所述存款余额小于所述存款证明金额的情况下,依据所述用户在各个所述银行下的所述存款余额,生成存款冻结信息,所述存款冻结信息包括冻结金额和进行存款冻结的多个所述银行的银行标识之间的对应关系,所述第一银行为所述用户指定的所述银行,或者,所述用户名下各个所述银行中的任意一个;
第一冻结单元,用于调用所述联盟链中目标成员提供的存款冻结接口,触发目标银行对所述冻结金额进行存款冻结,所述目标成员用于表示所述目标银行在所述联盟链中对应的区块链节点,所述目标银行为与所述银行标识对应的所述银行;
发送单元,用于在接收到所述目标银行发送的存款冻结成功提示的情况下,向所述用户的所述移动客户端发送存款证明开立成功信息,所述存款证明开立成功信息包括所述存款冻结成功提示与所述存款证明开立请求的对应关系。
9.一种计算机存储介质,其特征在于,所述计算机存储介质包括存储的程序,其中,所述程序执行权利要求1-7任意一项所述的基于联盟链的存款证明开立方法。
10.一种电子设备,其特征在于,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1-7任意一项所述的基于联盟链的存款证明开立方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010269870.4A CN111489252B (zh) | 2020-04-08 | 2020-04-08 | 一种基于联盟链的存款证明开立方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010269870.4A CN111489252B (zh) | 2020-04-08 | 2020-04-08 | 一种基于联盟链的存款证明开立方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111489252A CN111489252A (zh) | 2020-08-04 |
CN111489252B true CN111489252B (zh) | 2023-04-04 |
Family
ID=71812591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010269870.4A Active CN111489252B (zh) | 2020-04-08 | 2020-04-08 | 一种基于联盟链的存款证明开立方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111489252B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113724076A (zh) * | 2021-09-15 | 2021-11-30 | 中国银行股份有限公司 | 基于联盟链和5g的存款证明解冻方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016191970A1 (zh) * | 2015-05-29 | 2016-12-08 | 深圳市银信网银科技有限公司 | 借贷方法和借贷系统 |
WO2017012005A1 (zh) * | 2015-07-21 | 2017-01-26 | 深圳市银信网银科技有限公司 | 资金管理服务器、跨行开电子凭证的数据处理方法及系统 |
CN107862600A (zh) * | 2017-10-24 | 2018-03-30 | 深圳四方精创资讯股份有限公司 | 基于区块链的银行汇款方法及其系统 |
CN109361688A (zh) * | 2018-11-16 | 2019-02-19 | 大唐高鸿信息通信研究院(义乌)有限公司 | 一种基于5g架构和区块链的存证方法及系统 |
CN110689348A (zh) * | 2019-09-30 | 2020-01-14 | 腾讯云计算(北京)有限责任公司 | 基于联盟链的收入验证方法、装置、终端及介质 |
-
2020
- 2020-04-08 CN CN202010269870.4A patent/CN111489252B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016191970A1 (zh) * | 2015-05-29 | 2016-12-08 | 深圳市银信网银科技有限公司 | 借贷方法和借贷系统 |
WO2017012005A1 (zh) * | 2015-07-21 | 2017-01-26 | 深圳市银信网银科技有限公司 | 资金管理服务器、跨行开电子凭证的数据处理方法及系统 |
CN107862600A (zh) * | 2017-10-24 | 2018-03-30 | 深圳四方精创资讯股份有限公司 | 基于区块链的银行汇款方法及其系统 |
CN109361688A (zh) * | 2018-11-16 | 2019-02-19 | 大唐高鸿信息通信研究院(义乌)有限公司 | 一种基于5g架构和区块链的存证方法及系统 |
CN110689348A (zh) * | 2019-09-30 | 2020-01-14 | 腾讯云计算(北京)有限责任公司 | 基于联盟链的收入验证方法、装置、终端及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111489252A (zh) | 2020-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112214780B (zh) | 一种数据处理方法、装置、智能设备及存储介质 | |
CN108805656B (zh) | 供需匹配方法、平台、系统和计算机可读存储介质 | |
CN110046996B (zh) | 数据处理方法和装置 | |
CN110032545A (zh) | 基于区块链的文件存储方法、系统及电子设备 | |
CN112507363A (zh) | 基于区块链的数据监管方法、装置、设备及存储介质 | |
CN110580245B (zh) | 隐私数据的共享方法及装置 | |
CN111770198B (zh) | 一种信息共享方法、装置及设备 | |
CN110580411B (zh) | 基于智能合约的权限查询配置方法及装置 | |
CN109300038B (zh) | 一种资源流的交易系统 | |
CN109889497A (zh) | 一种去信任的数据完整性验证方法 | |
CN111222841B (zh) | 一种基于区块链的数据分配方法及其设备、存储介质 | |
CN111127021B (zh) | 基于区块链的服务请求方法及装置 | |
CN109951490A (zh) | 基于区块链的网页防篡改方法、系统及电子设备 | |
CN111274597B (zh) | 一种数据处理方法以及设备 | |
EP3543887A1 (en) | Incentivized delivery network of iot software updates based on trustless proof-of-distribution | |
CN111489252B (zh) | 一种基于联盟链的存款证明开立方法及装置 | |
KR101120059B1 (ko) | 클라우드 컴퓨팅 과금 공증장치, 과금 시스템 및 과금방법 | |
CN112347516A (zh) | 基于区块链的资产证明方法及装置 | |
CN115456619B (zh) | 一种基于区块链技术的虚拟预付卡发行系统和方法 | |
CN113869901B (zh) | 密钥生成方法、装置、计算机可读存储介质及计算机设备 | |
CN115953244A (zh) | 基于区块链的交易监管方法、装置、电子设备和存储介质 | |
CN115908001A (zh) | 基于区块链的交易监管方法、装置、电子设备和存储介质 | |
Etemad et al. | Efficient key authentication service for secure end-to-end communications | |
CN114418769A (zh) | 一种区块链交易计费方法、装置及可读存储介质 | |
Blömer et al. | Personal cross-platform reputation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |