一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

预付费支付方法、装置、设备和存储介质与流程

2022-06-15 20:57:14 来源:中国专利 TAG:


1.本公开涉及信息安全领域,更具体地,涉及一种预付费支付方法、装置、设备、介质和程序产品。


背景技术:

2.预付费模式是指用户先对提供服务的机构进行付费,对所购买的服务延期消费或多次消费的模式。例如,在驾考培训、教育培训、美容、健身等行业通常采用预付费模式,然而,预付费模式存在机构”携款跑路”的风险。
3.对预付费资金进行监管的方式逐渐被采用,例如将预付费存入银行专门的资金监管账户,然后根据用户消费的进度来向机构支付预付费。其中,确定消费进度可以是通过连接监管方系统查询信息或机构提交纸质文件形式作为资金划转的依据。
4.发明人在实现本公开构思的过程中,发现相关技术中至少存在以下问题:目前资金监管方式涉及到将多方数据作为资金划转的依据,无论是电子化还是纸质方式都采用明文方式,存在数据隐私泄露的风险。


技术实现要素:

5.鉴于上述问题,本公开提供了一种防止数据隐私泄露的预付费支付方法、装置、设备、介质和程序产品。
6.本公开实施例的一个方面提供了一种用于银行侧的预付费支付方法,包括:根据多方安全计算算法处理第一银行数据,得到m个第二银行数据,m为大于或等于2的整数;基于所述m个第二银行数据向r个数据提供方分发数据,其中,所述r个数据提供方和所述银行侧中每方持有至少一个第二银行数据,r为大于或等于1的整数;接收所述r个数据提供方分发的至少一个预付费数据,其中,所述预付费数据包括与用户购买第一服务的预付费相关联的数据,所述银行侧存有所述预付费,所述第一银行数据与所述预付费数据相关联;对所述至少一个预付费数据和所述至少一个第二银行数据进行多方安全计算,得到第二计算结果,其中,所述第二计算结果用于作为支付所述预付费的依据。
7.根据本公开的实施例,所述r个数据提供方包括机构侧,所述机构侧用于提供所述第一服务,所述至少一个预付费数据包括至少一个第二机构数据,所述对所述至少一个预付费数据和所述至少一个第二银行数据进行多方安全计算,得到第二计算结果包括:对所述至少一个第二机构数据和所述至少一个第二银行数据进行多方安全计算,得到所述第二计算结果。
8.根据本公开的实施例,所述r个数据提供方还包括监管侧,所述监管侧用于监管所述预付费,所述至少一个预付费数据包括至少一个第二监管数据,所述对所述至少一个预付费数据和所述至少一个第二银行数据进行多方安全计算,得到第二计算结果包括:对所述至少一个第二机构数据、所述至少一个第二银行数据和所述至少一个第二监管数据进行多方安全计算,得到所述第二计算结果。
9.根据本公开的实施例,在接收所述机构侧分发的至少一个第二机构数据之前,还包括:接收所述机构侧发送的第一查数请求,其中,所述第一查数请求用于查询所述第一银行数据;响应于所述第一查询请求查询所述第一银行数据;根据所述第一银行数据的准备状态,向所述机构侧发送第一响应信息,其中,所述第一响应信息用于表征对所述第一银行数据的准备状态。
10.根据本公开的实施例,在根据多方安全计算算法处理第一银行数据之前,还包括:接收所述机构侧发送的支付请求,其中,所述支付请求包括所述多方安全计算算法。
11.根据本公开的实施例,所述支付请求还包括所述机构侧、所述监管侧和所述银行侧之间的多方安全计算规则,所述对所述至少一个第二机构数据、所述至少一个第二银行数据和所述至少一个第二监管数据进行多方安全计算,得到所述第二计算结果包括:根据所述多方安全计算规则进行所述多方安全计算,其中,所述多方安全计算规则包括向所述机构侧支付所述预付费的预设条件。
12.根据本公开的实施例,所述方法还包括:接收所述机构侧提供的第一计算结果和所述监管侧提供的第三计算结果;根据所述第一计算结果、所述第二计算结果和所述三计算结果进行计算,得到第四计算结果;在所述第四计算结果符合预设条件的情况下,向所述机构侧支付所述预付费。
13.根据本公开的实施例,所述多方安全计算算法包括秘密分享协议算法,所述根据多方安全计算算法处理第一银行数据,得到m个第二银行数据包括:根据所述秘密分享协议算法对所述第一银行数据进行分割,得到m个秘密份额,其中,所述m个秘密份额包括所述m个第二银行数据。
14.根据本公开的实施例,所述r个数据提供方包括监管侧,所述监管侧用于监管所述预付费,所述至少一个预付费数据包括至少一个第二监管数据,所述对所述至少一个预付费数据和所述至少一个第二银行数据进行多方安全计算,得到第二计算结果包括:对所述至少一个第二监管数据和所述至少一个第二银行数据进行多方安全计算,得到所述第二计算结果。
15.本公开实施例的另一方面提供了一种用于银行侧的预付费支付装置,包括:第二处理模块,用于根据多方安全计算算法处理第一银行数据,得到m个第二银行数据,m为大于或等于2的整数;第二分发模块,用于基于所述m个第二银行数据向r个数据提供方分发数据,其中,所述r个数据提供方和所述银行侧中每方持有至少一个第二银行数据,r为大于或等于1的整数;第二接收模块,用于接收所述r个数据提供方分发的至少一个预付费数据,其中,所述预付费数据与用户购买第一服务的预付费相关联的数据,所述银行侧存有所述预付费,所述第一银行数据与所述预付费数据相关联;第二计算模块,用于对所述至少一个预付费数据和所述至少一个第二银行数据进行多方安全计算,得到第二计算结果,其中,所述第二计算结果用于作为支付所述预付费的依据。
16.本公开实施例的另一方面提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行如上所述的方法。
17.本公开实施例的另一方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行如上所述的方法。
18.本公开实施例的另一方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上所述的方法。
19.上述一个或多个实施例具有如下有益效果:相对于现有技术中使用明文数据进行预付费支付的确认,本公开实施例利用多方安全计算的方式,将第一银行数据进行了分割得到m个第二银行数据,并进行了分发。r个数据提供方和银行侧中每方持有至少一个第二银行数据,并根据r个数据提供方分发的至少一个预付费数据进行多方安全计算,得到第二计算结果,以此作为支付预付费的依据。因此可以实现数据密文传输,且每一方没有掌握其他各方的完整数据,避免数据隐私泄露的技术效果。
附图说明
20.通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
21.图1示意性示出了根据本公开实施例的预付费支付方法的应用场景图;
22.图2示意性示出了根据本公开实施例的预付费支付方法的流程图;
23.图3示意性示出了根据本公开的另一实施例的预付费支付方法的流程图;
24.图4示意性示出了根据本公开的另一实施例的预付费支付方法的流程图;
25.图5示意性示出了根据本公开的另一实施例的预付费支付方法的流程图;
26.图6示意性示出了根据本公开实施例的实现预付费支付方法的多方安全计算系统的架构图;
27.图7示意性示出了根据本公开实施例的用于机构侧的预付费支付装置的结构框图;
28.图8示意性示出了根据本公开实施例的用于银行侧的预付费支付装置的结构框图;
29.图9示意性示出了根据本公开实施例的用于监管侧的预付费支付装置的结构框图;
30.图10示意性示出了根据本公开实施例的适于实现预付费支付方法的电子设备的方框图。
具体实施方式
31.为了便于理解本技术的技术方案,下面对本技术涉及的一些技术术语进行介绍。
32.数据提供方:在进行预付费支付过程中,用于提供相关数据的数据源。可以包括机构侧、监管侧或其他与预付费相关联的各方。
33.机构侧:用于向用户提供第一服务。第一服务可以是无实体的人力服务,也可以是提供实体产品。用户支付预付费购买第一服务。
34.银行侧:存有用户的预付费。示例性地,机构侧可以在银行侧开设有预付费监管账户,用于接收用户的预付费。机构侧对预付费监管账户中资金具有请求支付的权限,银行侧可以根据机构侧提供服务的情况,将预付费逐渐划转至机构侧的资金账户。
35.监管侧:用于监管预付费。具体地,监管侧可以包括用户消费第一服务的记录,也可以监管银行侧预付费的支付进度。
36.多方安全计算:指一组互不信任的参与者之间在保护数据隐私的前提下完成协同计算的过程。
37.多方安全计算算法:根据明文数据得到密文数据,以实现保护数据隐私的目的,并支撑完成多方安全计算的算法。
38.秘密分享协议:秘密分享之所以能够保护数据的安全,主要是靠将秘密分割存储实现的,即:秘密数据通过被分割成若干个秘密份额并且分发给多方掌管,以此达到风险分散和容忍入侵的目的。
39.以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
40.在本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供、公开和应用等处理,均获取了用户的授权或同意,符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
41.随着数据安全保护相关的配套法规逐步出台,数据隐私保护的重要性日趋显现。本公开的实施例克服了目前存在的数据隐私泄露的风险,提供了一种基于多方数据通过协同计算再进行预付费划转的方法、装置、设备、介质和程序产品。
42.本公开实施例的预付费支付方法可以由机构侧和银行侧进行多方安全计算,或可以由监管侧和银行侧进行多方安全计算,或可以由机构侧、银行侧和监管侧进行多方安全计算,因此可以实现数据密文传输,且每一方没有掌握其他各方的完整数据,避免数据隐私泄露的技术效果。
43.图1示意性示出了根据本公开实施例的预付费支付方法的应用场景图。
44.如图1所示,根据该实施例的应用场景100可以包括终端设备101、102、103,网络104,机构侧服务器105,银行侧服务器106和监管侧服务器107。网络104用以在终端设备101、102、103,网络104,机构侧服务器105,银行侧服务器106和监管侧服务器107中至少两方之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
45.用户可以使用终端设备101、102、103通过网络104与机构侧服务器105,银行侧服务器106和监管侧服务器107中至少一方交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
46.终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
47.机构侧服务器105,银行侧服务器106和监管侧服务器107可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
48.根据本公开的实施例,机构侧服务器105可以存储有用户购买机构侧所提供的服
务的预付费数据。银行侧服务器106可以存储与预付费数据关联的银行数据,例如预付费账户数据。监管侧服务器107可以存储有与预付费数据关联的监管数据,例如用户是否已经消费。
49.应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
50.以下将基于图1描述的场景,通过图2~图6对本公开实施例的预付费支付方法进行详细描述。
51.图2示意性示出了根据本公开实施例的预付费支付方法的流程图。
52.如图2所示,该实施例的预付费支付方法可以包括操作s210~操作s240。
53.在操作s210,根据多方安全计算算法处理第一银行数据,得到m个第二银行数据,m为大于或等于2的整数;
54.示例性地,多方安全计算算法可以包括同态加密算法、差分隐私算法、混淆电路算法、不经意传输算法和秘密分享协议算法等。
55.在操作s220,基于m个第二银行数据向r个数据提供方分发数据,其中,r个数据提供方和银行侧中每方持有至少一个第二银行数据,r为大于或等于1的整数;
56.在操作s230,接收r个数据提供方分发的至少一个预付费数据,其中,预付费数据包括与用户购买第一服务的预付费相关联的数据,银行侧存有预付费,第一银行数据与预付费数据相关联;
57.在操作s240,对至少一个预付费数据和至少一个第二银行数据进行多方安全计算,得到第二计算结果,其中,第二计算结果用于作为支付预付费的依据。
58.相对于现有技术中使用明文数据进行预付费支付的确认,本公开实施例利用多方安全计算的方式,将第一银行数据进行了分割得到m个第二银行数据,并进行了分发。r个数据提供方和银行侧中每方持有至少一个第二银行数据,并根据r个数据提供方分发的至少一个预付费数据进行多方安全计算,得到第二计算结果,以此作为支付预付费的依据。因此可以实现数据密文传输,且每一方没有掌握其他各方的完整数据,避免数据隐私泄露的技术效果。
59.图3示意性示出了根据本公开的另一实施例的预付费支付方法的流程图。
60.根据本公开的实施例,r个数据提供方包括机构侧,所述机构侧用于提供所述第一服务,所述至少一个预付费数据包括至少一个第二机构数据。下面结合图3进一步描述。
61.如图3所示,该实施例的预付费支付方法包括操作s301~操作s308。
62.在操作s301,机构侧根据多方安全计算算法处理第一机构数据,得到n个第二机构数据,其中,第一机构数据包括用户购买第一服务的预付费数据。
63.以秘密分享协议算法为例,可以利用秘密分割的方式,根据秘密分享协议算法对第一机构数据进行分割,得到n个秘密份额,其中,n个秘密份额包括n个第二机构数据。
64.可以将第一机构数据按照算法内容进行分割,得到多个第二机构数据。并且,该多个第二机构数据能够参与到后续的多方协同计算中。
65.示例性地,机构可以是指驾校、教育培训机构、职业培训机构、美容美发机构、健身机构或咨询机构提供的无实体服务,也可以是其他机构提供的实体服务,如实体产品。该实体产品可以是用户预付费,机构在未来一段时间内一次或多次提供产品。
66.以驾校为例,用户购买驾校的驾照考试培训服务,通常会一次性付费。驾校会根据科目1~科目4的考试分阶段培训,根据用户的通过进度来进行下一阶段的培训。其中,第一机构数据可以包括预付费数据,如用户标识、购买时间、已通过考试科目、已结算费用、未通过考试科目、待结算费用、预付费总金额等信息。第二结构数据可以是将其中的部分或全部数据进行分割,例如将待结算费用和预付费总金额进行分割,还可以将用户标识进行分割。以此来避免用户的个人隐私信息遭到泄露。
67.示例性地,例如第一机构数据为集合si,可以利用多个随机数得到n*k维生成矩阵gi。然后,利用k-1个随机数与集合si拼接得到k维向量ai。最后,将gi与ai进行运算,得到n个第二机构数据(仅为示例)。
68.在操作s302,机构侧基于n个第二机构数据向银行侧分发数据,其中,机构侧和银行侧中每方持有至少一个第二机构数据,n为大于或等于2的整数。
69.根据本公开的实施例,银行侧持有机构侧的部分数据,没有机构侧的全部数据。换言之,机构侧与银行侧之间的数据传输可以防止被攻击而令用户数据泄露,从而提升了数据的安全性。
70.在操作s303,银行侧接收机构侧分发的至少一个第二机构数据,其中,由于第二机构数据是第一机构数据分割而来,因此至少一个第二机构数据也包括用户购买第一服务的预付费数据。
71.在操作s304,银行侧根据多方安全计算算法处理第一银行数据,得到m个第二银行数据,m为大于或等于2的整数。
72.示例性地,第一银行数据可以包括机构侧标识、预付费监管账户、该账户总金额、已支付金额、支付方式、机构侧资金账户等数据。第二银行数据可以是将部分或全部第一银行数据进行分割得到的。
73.以秘密分享协议算法为例,机构侧和银行侧皆使用该算法。银行侧也利用秘密分割的方式,根据秘密分享协议算法对第一银行数据进行分割,得到m个秘密份额,其中,m个秘密份额包括m个第二银行数据。机构侧与银行侧使用的分割方式可以相同,在此不做赘述。
74.在操作s305,银行侧基于m个第二银行数据向机构侧分发数据,其中,机构侧和银行侧中每方持有至少一个第二银行数据。
75.根据本公开的实施例,机构侧可以持有银行侧关于第一服务的部分数据,该部分数据用于与机构侧的数据进行对比来确定是否符合预付费支付条件。银行侧向机构侧传输数据并非是明文数据,即使遭到攻击也能够保护数据隐私。由于机构侧没有持有第一银行数据,也能防止银行侧的数据被机构侧所知悉,而避免数据泄露。
76.在操作s306,机构侧接收银行侧分发的至少一个第二银行数据,其中,由于第一银行数据与预付费数据相关联,其分割而来的至少一个第二银行数据与预付费数据相关联。
77.在操作s307,对至少一个第二机构数据和至少一个第二银行数据进行多方安全计算,得到第一计算结果,其中,第一计算结果用于作为支付预付费的依据。
78.在操作s308,对至少一个第二机构数据和至少一个第二银行数据进行多方安全计算,得到第二计算结果,其中,第二计算结果用于作为支付预付费的依据。
79.示例性地,获得第二机构数据或第二银行数据的过程为密文处理阶段,协同计算
的过程为多方安全计算中的隐私计算阶段。通过银行侧和机构侧皆参与计算,可以在保护数据隐私的前提下得到计算结果。而第一计算结果和第二计算结果决定是否进行预付费支付。
80.根据本公开的实施例,例如在驾校培训的场景中,用户a在通过科目一之后,银行可以得到用户a的通过结果。并根据机构侧请求支付而提供的第一机构数据和第一银行数据进行计算。例如第一计算结果为银行支付科目一的费用为1000元。第二计算结果为机构请求支付科目一的费用为1000元。两者相匹配,则可以进行1000元的预付费支付。
81.需要说明的是,虽然上述实施例以先后顺序描述了各个操作,但是在能够实现本公开实施例的保护数据隐私效果的前提下,本公开对各个操作之间的顺序不做限定。例如操作s304可以在操作s301之前执行,也可以同时执行。
82.根据本公开的实施例,所述r个数据提供方还包括监管侧,所述监管侧用于监管所述预付费,所述至少一个预付费数据包括至少一个第二监管数据。下面结合图4进一步描述。
83.图4示意性示出了根据本公开的另一实施例的预付费支付方法的流程图。
84.如图4所示,该实施例的预付费支付方法包括操作s401~操作s408。
85.在操作s401,监管侧根据多方安全计算算法处理第一监管数据,得到s个第二监管数据,s为大于或等于2的整数。
86.示例性地,监管侧可以是行业协会、政府机构或第三方民间机构。例如在驾考培训的场景中,监管侧可以是交通管理部门,第一监管数据可以包括用户参加驾照考试的结果,例如是否通过科目二的结果。在教育培训的场景中,监管侧可以是行业协会,该协会可以获取教育机构给用户培训的课时数,并获取用户确认过的已经参加培训的课时数。银行侧可以定期与监管侧进行数据通信,来参照第一监管数据给机构侧支付预付费。
87.示例性地,多方安全计算算法包括秘密分享协议算法。监管侧利用秘密分割的方式,根据秘密分享协议算法对第一监管数据进行分割,得到s个秘密份额,其中,s个秘密份额包括s个第二监管数据。
88.在操作s402,监管侧基于s个第二监管数据向银行侧分发数据,其中,银行侧和监管侧中每方持有至少一个第二监管数据。
89.根据本公开的实施例,银行侧可以持有监管侧关于用户购买第一服务的预付费的部分监管数据。银行侧与监管侧之间的数据传输并非是明文传输,即使遭受攻击也能防止数据泄露。另外,也能避免原有方式中银行侧持有所有监管数据而可能导致的泄露情况。
90.在操作s403,银行侧接收监管侧分发的至少一个第二监管数据,其中,至少一个第二监管数据与预付费数据相关联。
91.在操作s404,银行侧根据多方安全计算算法处理第一银行数据,得到m个第二银行数据,m为大于或等于2的整数。
92.在操作s405,银行侧基于m个第二银行数据向监管侧分发数据,其中,机构侧、监管侧和银行侧中每方持有至少一个第二银行数据,m为大于或等于3的整数。
93.在操作s406,监管侧接收银行侧分发的至少一个第二银行数据。
94.示例性地,监管侧可以持有银行侧的部分数据便于进行预付费支付过程中的监管和审核。
95.在操作s407,监管侧对至少一个第二监管数据和至少一个第二银行数据进行多方安全计算,得到第二计算结果,其中,第二计算结果用于作为支付预付费的依据。
96.在操作s408,银行侧对至少一个第二监管数据和至少一个第二银行数据进行多方安全计算,得到第三计算结果,其中,第三计算结果用于作为支付预付费的依据。
97.根据本公开的实施例,银行侧和监管侧可以分别持有部分银行数据和部分监管数据进行协同计算,既能够提高数据的安全程度,又能根据第二计算结果和第三计算结果进行预付费支付。
98.需要说明的是,虽然上述实施例以先后顺序描述了各个操作,但是在能够实现本公开实施例的保护数据隐私效果的前提下,本公开对各个操作之间的顺序不做限定。
99.为便于理解,下面实施例中结合教育培训机构的20课时的英语培训课程的场景,通过图5和图6描述机构侧、银行侧和监管侧参与多方安全计算的预付费支付过程。其中,例如每个课时100元,每上完5课时的课程,可向教育培训机构进行一次预付费支付。用户购买英语培训课程的2000元学费存在了银行侧的预付费监管账户中。
100.图5示意性示出了根据本公开的另一实施例的预付费支付方法的流程图。图6示意性示出了根据本公开实施例的实现预付费支付方法的多方安全计算系统的架构图。
101.如图5所示,该实施例的预付费支付方法包括操作s501~操作s529。如图6所示,多方安全计算系统600可以包括部署在机构侧的数据服务单元a601和计算引擎单元a602,部署在银行侧的数据服务单元b603、计算引擎单元b604、调度单元605和算法单元606,部署在监管侧的数据服务单元c608和计算引擎单元c607。
102.在操作s501,机构侧数据服务单元a601向银行侧发送第一查数请求,其中,第一查数请求用于查询至少一个第二银行数据。向监管侧发送第二查数请求,其中,第二查数请求用于查询至少一个第二监管数据。
103.示例性地,第一查数请求的作用在于,确定银行侧是否准备好本次协同计算所需要的银行数据。第二查数请求的作用在于,确定监管侧是否准备好本次协同计算所需要的监管数据。若银行侧或监管侧未准备好数据,则以免浪费资源对第一机构数据进行处理
104.在操作s502,银行侧数据服务单元b603接收机构侧发送的第一查数请求,其中,第一查数请求用于查询第一银行数据。
105.示例性地,第一查数请求查询第一银行数据与上述查询第二银行数据实质上是相同的。第一查数请求可以包括机构侧标识、用户标识、第一服务的消费进度以及请求支付金额等信息,银行侧可以根据该些信息查询是否存在相关信息,以及是否可以进行协同计算。
106.在操作s503,监管侧数据服务单元c608接收机构侧发送的第二查数请求,其中,第二查数请求用于查询第一监管数据。
107.示例性地,第二查数请求查询第一监管数据与上述查询第二监管数据实质上是相同的。第二查数请求可以包括机构侧标识、用户标识、第一服务的消费进度以及请求支付金额等信息,监管侧可以根据该些信息查询是否存在相关信息,以及是否可以进行协同计算。
108.根据本公开的实施例,机构侧持有监管侧和银行侧中的部分数据,可以参与到协同计算中,以此确认了预付费支付结果,并提高了数据的安全性。
109.在操作s504,银行侧数据服务单元b603响应于第一查询请求查询第一银行数据。根据第一银行数据的准备状态,向机构侧发送第一响应信息,其中,第一响应信息用于表征
对第一银行数据的准备状态。
110.示例性地,银行侧可以查询教育培训机构的账户、该用户的预付费金额、已支付金额、未支付金额或总金额等信息。
111.在操作s505,机构侧数据服务单元a601接收银行侧根据查数请求返回的第一响应信息,其中,第一响应信息用于表征银行侧对至少一个第二银行数据的准备状态。
112.例如,第一响应信息可以是银行侧的数据准备就绪信息。
113.在操作s506,监管侧数据服务单元c608响应于第二查询请求查询第一监管数据。根据第一监管数据的准备状态,向机构侧发送第二响应信息,其中,第二响应信息用于表征对第一监管数据的准备状态。
114.示例性地,第一监管数据可以包括机构侧的标识、用户标识、英语培训课程信息、用户已参加的课时信息或单个课时的费用信息等。
115.在操作s507,机构侧数据服务单元a601接收监管侧根据查数请求返回的第二响应信息,其中,第二响应信息用于表征监管侧对至少一个第二监管数据的准备状态。
116.例如,第二响应信息可以是监管侧的数据准备就绪信息。
117.在操作s508,机构侧生成支付请求,其中,支付请求包括机构侧、监管侧和银行侧之间的多方安全计算规则,多方安全计算规则包括多方安全计算算法。
118.根据本公开的实施例,支付请求可以作为开启本次多方安全计算任务的触发开关,其中的多方安全计算算法便于各方统一数据处理过程,提高计算结果的准确性。
119.示例性地,机构侧数据服务单元a601接收监管机构侧和银行的准备就绪返回后,查询并处理本机构数据,向多方计算系统500发起任务请求。
120.调度单元605接收到任务请求后,向算法单元606请求多方安全计算规则内容,其中计算规则包括定义计算任务的数据提供方及数据源、结果接收方、计算逻辑(核对机构侧的预留信息与监管侧的预留信息是否一致,核对机构侧的待结算数量是否小于监管侧的可结算数量,核对机构侧的结算总金额是否等于机构侧的待结算数量*监管协会侧的科目单价,核对机构侧的结算总金额是否小于银行侧的账户余额,秘密份额传输顺序例如是每方将哪部分秘密份额传输给另一方,或者随机传输秘密份额)等内容。
121.在操作s509,在根据多方安全计算算法处理第一机构数据之前,还包括:将支付请求发送至银行侧和/或监管侧。
122.在一些实施例中,调度单元605获取计算规则后,可以返回给机构侧,由机构侧根据计算规则生成支付请求,并发送给计算引擎单元a602、计算引擎单元b604和计算引擎单元c607。
123.在一些实施例中,调度单元605获取计算规则后,可以直接分别向计算引擎单元a602、计算引擎单元b604和计算引擎单元c607发送。然后,机构侧可以生成支付请求,该支付请求中包括该计算规则或者与该计算规则相对应的标识。银行侧和监管侧可以根据支付请求执行计算规则。
124.在操作s510,银行侧接收机构侧发送的支付请求。
125.在操作s511,监管侧接收机构侧发送的支付请求。
126.在操作s512,机构侧计算引擎单元a602从数据服务单元a601得到第一机构数据(即机构数据文件),并根据多方安全计算算法处理,得到n个第二机构数据。
127.在操作s513,机构侧计算引擎单元a602基于n个第二机构数据向银行侧分发数据。和/或基于n个第二机构数据向监管侧分发数据,机构侧、监管侧和银行侧中每方持有至少一个第二机构数据。该情况下n为大于或等于3的整数。
128.例如机构侧数据服务单元a601接收到来自计算引擎单元a602的发送数据请求后,将用户标识、待结算数量\金额、预留信息、结算总金额通过多方安全计算的秘密分享协议进行密文化后,发送给计算引擎单元a602。计算引擎单元a602把秘密分享后的密文数据留存一份,其他两份分别发送到计算引擎单元b604和计算引擎单元c607。
129.在操作s514,银行侧计算引擎单元b604接收机构侧分发的至少一个第二机构数据。
130.在操作s515,监管侧计算引擎单元c607接收机构侧分发的至少一个第二机构数据。
131.在操作s516,银行侧计算引擎单元b604从数据服务单元b603得到第一银行数据(即银行数据文件),并根据多方安全计算算法处理第一银行数据,得到m个第二银行数据,m为大于或等于2的整数。
132.示例性地,数据服务单元b603接收到来自计算引擎单元b604的发送数据请求后,将身份id、账户余额通过多方安全计算的秘密分享协议进行密文化后,发送给计算引擎单元b604。计算引擎单元b604把秘密分享后的密文数据留存一份,其他两份分别发送到计算引擎单元a602、计算引擎单元c607。
133.在操作s517,银行侧计算引擎单元b604基于m个第二银行数据向机构侧分发数据,和/或基于m个第二银行数据向监管侧分发数据,其中,机构侧、监管侧和银行侧中每方持有至少一个第二银行数据,该情况下m为大于或等于3的整数。
134.在操作s518,机构侧计算引擎单元a602接收银行侧分发的至少一个第二银行数据。
135.在操作s519,监管侧计算引擎单元c607接收银行侧分发的至少一个第二银行数据。
136.在操作s520,监管侧计算引擎单元c607从数据服务单元c608得到第一监管数据(即监管数据文件),并根据多方安全计算算法处理第一监管数据,得到s个第二监管数据,s为大于或等于2的整数。
137.在操作s521,监管侧计算引擎单元c607基于s个第二监管数据向银行侧分发数据,和/或基于s个第二监管数据向机构侧分发数据,其中,机构侧、监管侧和银行侧中每方持有至少一个第二监管数据,s为大于或等于3的整数。
138.示例性地,数据服务单元c608接收到来自计算引擎单元c607的发送数据请求后,将身份id、预留信息、可结算数量、科目单价通过多方安全计算的秘密分享协议进行密文化后,发送给计算引擎单元c607。计算引擎单元c607把秘密分享后的密文数据留存一份,其他两份分别发送到计算引擎单元a602、计算引擎单元b604。
139.根据本公开的实施例,机构侧持有监管侧和银行侧中的部分数据,可以参与到协同计算中,以此确认了预付费支付结果,并提高了数据的安全性。
140.在操作s522,银行侧计算引擎单元b604接收监管侧分发的至少一个第二监管数据。
141.在操作s523,机构侧计算引擎单元a602接收监管侧分发的至少一个第二监管数据。
142.在操作s524,机构侧计算引擎单元a602对至少一个第二机构数据、至少一个第二银行数据和至少一个第二监管数据进行多方安全计算,得到第一计算结果。
143.根据本公开的实施例,机构侧根据多方安全计算规则进行多方安全计算,其中,多方安全计算规则包括向机构侧支付预付费的预设条件。
144.预设条件例如包括银行侧的预付费监管账户中是否存有大于500元的金额。监管侧向用户确认后的信息,如是否参加了5课时培训。即通过多方安全计算规则来确定是否满足进行预付费支付的条件
145.在操作s525,银行侧计算引擎单元b604对至少一个第二机构数据、至少一个第二银行数据和至少一个第二监管数据进行多方安全计算,得到第二计算结果。
146.根据本公开的实施例,银行侧根据支付请求中的多方安全计算规则进行多方安全计算。
147.在操作s526,监管侧计算引擎单元c607对至少一个第二机构数据、至少一个第二银行数据和至少一个第二监管数据进行多方安全计算,得到第三计算结果。
148.根据本公开的实施例,监管侧计算引擎单元c607根据支付请求中的多方安全计算规则进行多方安全计算。
149.在操作s527,机构侧计算引擎单元a602发送第一计算结果,如向银行侧发送。
150.在操作s528,监管侧计算引擎单元c607发送第三计算结果,如向银行侧发送。
151.在操作s529,调度单元605接收机构侧提供的第一计算结果和监管侧提供的第三计算结果。根据第一计算结果、第二计算结果和三计算结果进行计算,得到第四计算结果。在第四计算结果符合预设条件的情况下,向机构侧支付预付费。
152.示例性地,机构侧、监管侧、银行侧协同完成密文计算后,把各自的计算结果通知调度单元605,调度单元605把计算结果发送到银行侧数据服务单元b504。数据服务单元b504接收计算结果后若判断符合支付的预设条件,则反馈给资金管理系统进行预付费划转。
153.根据本公开的实施例,可以自动化处理机构方人员数据、行业协会或政务方人员培训或考试数据、银行资金数据,经过多方数据的安全融合,从而保护个各方数据的隐私。将多方安全计算技术融合到银行资金监管系统中,具有通用性强、可扩展性广、处理过程安全可控的特点。
154.在一些实施例中,例如比较机构侧请求支付的金额是否小于或等于银行侧监管账户中的金额,可以将各方的秘密份额进行差值计算,再对各方输出的结果进行融合计算。
155.首先,机构侧请求支付向用户培训5课时的预付费共500元,对其进行分割可以得到200元、100元和200元。然后,银行侧中资金监管账户中总金额为2000元,对其进行分割可以得到100元、50元和1850元。接着,机构侧、银行侧和监管侧可以分别持有请求支付金额中的200元、100元和200元,分别持有总金额中的100元、50元和1850元。其次,机构侧、银行侧和监管侧分别计算总金额和请求支付金额之间的差额,如-100元、-50元和1650元,即第一计算结果、第二计算结果和三计算结果。最后,银行侧将-100元、-50元和1650元进行求和得到1500元(即第四计算结果)。第四计算结果为正值,表明具有向机构侧支付500元的条件。
156.同理,可以将监管侧的已参加课时和机构侧的已参加课时进行计算,或者将其他数据进行协同计算。在满足预设条件的情况下,向机构侧支付预付费。
157.根据本公开的实施例,机构侧、银行侧和监管侧之间不再进行明文数据的传输。即使攻击者得到部分数据,也能避免用户隐私数据泄露。三方中每方存储的数据不一致,可能会将任两方之间的数据进行比较,由于第三方没有持有其他两方全部的数据,因此不会将数据泄露至第三方。实现了既能保护数据隐私,又能够进行预付支付的效果。
158.需要说明的是,虽然上述实施例以先后顺序描述了各个操作,但是在能够实现本公开实施例的保护数据隐私效果的前提下,本公开对各个操作之间的顺序不做限定。
159.基于上述预付费支付方法,本公开还分别提供了一种应用于机构侧、银行侧和监管侧的预付费支付装置。以下将结合图6~图8对该装置进行详细描述。
160.图7示意性示出了根据本公开实施例的用于机构侧的预付费支付装置的结构框图。
161.如图7所示,该实施例的预付费支付装置700包括第一处理模块710、第一分发模块720、第一接收模块730和第一计算模块740。
162.第一处理模块710可以执行操作s301,用于根据多方安全计算算法处理第一机构数据,得到n个第二机构数据,其中,第一机构数据包括用户购买第一服务的预付费数据。
163.第一分发模块720可以执行操作s302,用于基于n个第二机构数据向银行侧分发数据,其中,机构侧和银行侧中每方持有至少一个第二机构数据,n为大于或等于2的整数。
164.根据本公开的实施例,第一分发模块720可以执行操作s403,用于基于m个第二银行数据向监管侧分发数据,其中,机构侧、监管侧和银行侧中每方持有至少一个第二银行数据,m为大于或等于3的整数。
165.第一接收模块730可以执行操作s306,用于接收银行侧分发的至少一个第二银行数据,其中,至少一个第二银行数据与预付费数据相关联。
166.根据本公开的实施例,第一接收模块730可以执行操作s407,用于接收监管侧分发的至少一个第二监管数据,其中,至少一个第二监管数据与预付费数据相关联。
167.第一计算模块740可以执行操作s307,用于对至少一个第二机构数据和至少一个第二银行数据进行多方安全计算,得到第一计算结果,其中,第一计算结果用于作为支付预付费的依据。
168.根据本公开的实施例,第一计算模块740可以执行操作s524,用于对至少一个第二机构数据、至少一个第二银行数据和至少一个第二监管数据进行多方安全计算,得到第一计算结果。
169.图8示意性示出了根据本公开实施例的用于银行侧的预付费支付装置的结构框图。
170.如图8所示,该实施例的预付费支付装置800包括第二处理模块810、第二分发模块820、第二接收模块830和第二计算模块840。
171.第二处理模块810可以执行操作s210,用于根据多方安全计算算法处理第一银行数据,得到m个第二银行数据,m为大于或等于2的整数。
172.第二分发模块820可以执行操作s220,用于基于所述m个第二银行数据向r个数据提供方分发数据,其中,所述r个数据提供方和所述银行侧中每方持有至少一个第二银行数
据,r为大于或等于1的整数。
173.根据本公开的实施例,第二分发模块820可以执行操作s405,用于基于m个第二银行数据向监管侧分发数据。
174.第二接收模块830可以执行操作s230,用于接收所述r个数据提供方分发的至少一个预付费数据,其中,所述预付费数据包括与用户购买第一服务的预付费相关联的数据,所述银行侧存有所述预付费,所述第一银行数据与所述预付费数据相关联。
175.根据本公开的实施例,第二接收模块830可以执行操作s403,用于接收监管侧分发的至少一个第二监管数据。
176.第二计算模块840可以执行操作s240,用于对所述至少一个预付费数据和所述至少一个第二银行数据进行多方安全计算,得到第二计算结果,其中,所述第二计算结果用于作为支付所述预付费的依据。
177.根据本公开的实施例,第二计算模块840可以执行操作s525,对至少一个第二机构数据、至少一个第二银行数据和至少一个第二监管数据进行多方安全计算,得到第二计算结果。
178.根据本公开的实施例,预付费支付装置800还可以包括执行操作s529的融合计算模块,用于接收机构侧提供的第一计算结果和监管侧提供的第三计算结果。根据第一计算结果、第二计算结果和三计算结果进行计算,得到第四计算结果。在第四计算结果符合预设条件的情况下,向机构侧支付预付费。
179.图9示意性示出了根据本公开实施例的用于监管侧的预付费支付装置的结构框图。
180.如图9所示,该实施例的预付费支付装置900包括第三处理模块910、第三分发模块920、第三接收模块930和第三计算模块940。
181.第三处理模块910可以执行操作s401,用于根据多方安全计算算法处理第一监管数据,得到s个第二监管数据,s为大于或等于2的整数。
182.第三分发模块920可以执行操作s402,用于基于s个第二监管数据向银行侧分发数据,其中,银行侧和监管侧中每方持有至少一个第二监管数据,银行侧存有用户向机构侧购买第一服务的预付费。
183.根据本公开的实施例,第三分发模块920可以执行操作s521,用于基于s个第二监管数据向机构侧分发数据。
184.第三接收模块930可以执行操作s406,用于接收银行侧分发的至少一个第二银行数据,其中,第一监管数据和至少一个第二银行数据与预付费相关联。
185.根据本公开的实施例,第三接收模块930可以执行操作s503,用于接收机构侧分发的至少一个第二机构数据。
186.第三计算模块940可以执行操作s407,用于对至少一个第二监管数据和至少一个第二银行数据进行多方安全计算,得到第三计算结果,其中,第三计算结果用于作为支付预付费的依据。
187.根据本公开的实施例,第三计算模块940可以执行操作s526,用于对至少一个第二机构数据、至少一个第二银行数据和至少一个第二监管数据进行多方安全计算,得到第三计算结果。
188.需要说明的是,装置部分实施例中各模块/单元/子单元等的实施方式、解决的技术问题、实现的功能、以及达到的技术效果分别与方法部分实施例中各对应的步骤的实施方式、解决的技术问题、实现的功能、以及达到的技术效果相同或类似,在此不再赘述。
189.根据本公开的实施例,预付费支付装置700、预付费支付装置800或预付费支付装置900中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。
190.根据本公开的实施例,预付费支付装置700、预付费支付装置800或预付费支付装置900中的至少一个模块可以至少被部分地实现为硬件电路,例如现场可编程门阵列(fpga)、可编程逻辑阵列(pla)、片上系统、基板上的系统、封装上的系统、专用集成电路(asic),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,预付费支付装置700、预付费支付装置800或预付费支付装置900中的至少一个模块可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
191.图10示意性示出了根据本公开实施例的适于实现预付费支付方法的电子设备的方框图。
192.如图10所示,根据本公开实施例的电子设备1000包括处理器1001,其可以根据存储在只读存储器(rom)1002中的程序或者从存储部分1008加载到随机访问存储器(ram)1003中的程序而执行各种适当的动作和处理。处理器1001例如可以包括通用微处理器(例如cpu)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic))等等。处理器1001还可以包括用于缓存用途的板载存储器。处理器1001可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
193.在ram 1003中,存储有电子设备1000操作所需的各种程序和数据。处理器1001、rom 1002以及ram 1003通过总线1004彼此相连。处理器1001通过执行rom 1002和/或ram 1003中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,程序也可以存储在除rom 1002和ram 1003以外的一个或多个存储器中。处理器1001也可以通过执行存储在一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
194.根据本公开的实施例,电子设备1000还可以包括输入/输出(i/o)接口1005,输入/输出(i/o)接口1005也连接至总线1004。电子设备1000还可以包括连接至i/o接口1005的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1006。包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1007。包括硬盘等的存储部分1008。以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至i/o接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
195.本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的。也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被
执行时,实现根据本公开实施例的方法。
196.根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的rom 1002和/或ram 1003和/或rom 1002和ram1003以外的一个或多个存储器。
197.本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的方法。
198.在该计算机程序被处理器1001执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
199.在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分1009被下载和安装,和/或从可拆卸介质1011被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
200.在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被处理器1001执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
201.根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如java,c ,python,“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
202.以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献