一种基于区块链的贷款处理方法转让专利

申请号 : CN202210781179.3

文献号 : CN114881772B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张金琳高航

申请人 : 浙江数秦科技有限公司

摘要 :

本发明涉及信息技术领域,具体涉及一种基于区块链的贷款处理方法,提供经营数据模板,企业将经营数据依照经营数据模板周期性将经营数据通过区块链存证;建立可信服务器,若干个金融机构公布若干个贷款产品,为贷款产品关联电子贷款合同和审批机;企业选定贷款产品后,提交贷款申请材料;可信服务器调用相应贷款产品的审批机审核贷款申请材料;若审核通过则可信服务器调用相应的电子贷款合同,企业签署电子贷款合同;可信服务器提取签署后的电子贷款合同的哈希值;企业使用私钥签名签署哈希值,将签署哈希值及相应签名上传区块链存储;将电子贷款合同反馈金融机构,金融机构发放贷款。本发明的实质性效果是:提高了贷款业务的办理效率。

权利要求 :

1.一种基于区块链的贷款处理方法,其特征在于,包括:

提供经营数据模板,企业将经营数据依照经营数据模板周期性将经营数据通过区块链存证;

建立可信服务器,若干个金融机构在可信服务器上公布若干个贷款产品,为每种贷款产品关联电子贷款合同和审批机;

企业选定贷款产品后,提交贷款申请材料至可信服务器;

所述可信服务器调用相应贷款产品的审批机审核贷款申请材料;

若审核通过则所述可信服务器调用相应的电子贷款合同,企业签署所述电子贷款合同;

所述可信服务器提取签署后的电子贷款合同的哈希值,记为签署哈希值;

企业使用私钥签名所述签署哈希值,所述可信服务器将签署哈希值及相应签名上传区块链存储;

所述可信服务器将电子贷款合同反馈金融机构,金融机构依据电子贷款合同填写的企业账户发放贷款;

企业将经营数据依照经营数据模板周期性生成经营数据,提取经营数据的哈希值,将经营数据的哈希值关联时间戳上传区块链存储,将经营数据加密存储在本地;

当企业申请贷款时,将预设时间长度内的经营数据复制出副本,将副本使用限时加密算法加密后存储在网络存储设备,将副本的存储地址和限时解密秘钥作为贷款申请材料提交给金融机构;

所述可信服务器将贷款申请材料、签署哈希值及签名均反馈给金融机构,金融机构将贷款申请材料、签署哈希值、签名及电子贷款合同打包作为签署包,为签署包分配唯一标识,将签署包关联电子贷款合同的编号后存储;

将签署包拆分为若干个子包,为子包赋予子包编号,将子包关联电子贷款合同的编号和子包编号后分散存储;

金融机构分散存储子包的方法包括:

在存储设备内开辟专用存储区,在专用存储区内划分存储单元,存储单元大小与子包大小相匹配,存储单元的起始地址为存储单元的寻址地址;

建立地址索引字符串,所述地址索引字符串记录已被存储的子包关联的电子贷款合同的编号,相邻编号之间以数值间隔,所述数值代表相邻子包之间未被使用的存储单元的数量;

随机选择数量与子包数量匹配的未被使用的存储单元,将相应子包及子包编号存入存储单元;

将子包关联的电子贷款合同的编号添加到地址索引字符串中,并修改相邻编号之间的数值,使数值与相应未被使用的存储单元数量相符。

2.根据权利要求1所述的一种基于区块链的贷款处理方法,其特征在于,金融机构为每个贷款产品关联审批机,所述审批机包括数据提取部和审批条件部,所述数据提取部包括提取经营数据的数据提取单元、识别贷款申请材料文字的文字识别单元和数据统计单元,所述数据统计单元根据数据提取单元获得的经营数据统计预设时间长度内企业的总销售额和总利润,所述数据统计单元根据文字识别单元获得的内容,罗列贷款申请材料提供的材料字段名称和字段值,所述审批条件部预存相应贷款产品的需提供字段表及字段条件,所述审批条件部判断总销售额及总利润是否满足预设条件,若不满足,则判定审批不通过,反之,则判断获得的材料字段名称是否覆盖需提供字段表,若覆盖需提供字段表,则进一步判断字段值是否符合相应字段条件,若符合全部字段条件,则判定审批通过,若未覆盖需提供字段表或者存在不满足的字段条件,则判定审批不通过。

3.根据权利要求2所述的一种基于区块链的贷款处理方法,其特征在于,所述需提供字段表包括若干个证明材料字段,相应的字段条件为证明材料为真,所述审批机预存有若干种证明材料参照表,所述证明材料参照表记录证明材料种类、记载字段和字段内容条件,所述审批条件部列举贷款申请材料中被识别出的证明材料,将证明材料记载的材料字段名称及字段值与相应的证明材料参照表对比,若对比通过,则判定相应证明材料字段的字段条件被满足,反之,则判定相应证明材料字段的字段条件未被满足。

4.根据权利要求1或2所述的一种基于区块链的贷款处理方法,其特征在于,所述审批机预存有若干组与贷款产品类型对应的证明材料字段,若存在至少一组证明材料字段的字段条件被满足,则判定全部证明材料字段的字段条件均被满足。

5.根据权利要求1所述的一种基于区块链的贷款处理方法,其特征在于,所述地址索引字符串记载电子贷款合同的编号的哈希值。

6.根据权利要求1所述的一种基于区块链的贷款处理方法,其特征在于,金融机构读取签署包的步骤包括:设置临时变量,临时变量的值为零,存储单元的大小记为K;

读取所述地址索引字符串,依次取出所述地址索引字符串记录的电子贷款合同的编号或者数值;

若为电子贷款合同的编号,则临时变量加1,若为数值,则临时变量加所述数值;

直到读取到与当前需读取的签署包关联的电子贷款合同的编号,计算临时变量与K的乘积,即为当前子包所在存储单元的寻址地址;

取出地址索引字符串中记录的全部内容后,将读取获得全部的子包,按照子包编号排序拼接获得签署包。

说明书 :

一种基于区块链的贷款处理方法

技术领域

[0001] 本发明涉及信息技术领域,具体涉及一种基于区块链的贷款处理方法。

背景技术

[0002] 贷款指贷款、贴现、透支等出贷资金的总称。银行通过贷款的方式将所集中的货币和货币资金投放出去,可以满足社会扩大再生产对补充资金的需要,促进经济的发展。在贷款过程中,贷款公司的审查人员需要根据借款人的信用情况和还款能力对贷款人的资格审查和评定,评测贷款风险度,在根据具体情况进行贷款决策和额度设定,以降低贷款风险;但就目前而言,贷款审批的过程主要通过人工审核的方式来实现,一方面浪费大量的人力物力,容易出现人为误差;另一方面,审批过滤规则变化的情况下,往往需要审批操作人员重新修改发布规则,并重新进行审核,浪费了大量的人力,不利于贷款审批的迅速进行。因此有必要研究一种能够自动进行贷款审批及相关后续处理的技术,以提高贷款业务办理的效率,适应经济发展的节奏。
[0003] 如中国专利CN104854614A,公开日2015年8月19日,一种用于处理借贷事务的系统和方法,其可有助于以安全方式进行到个人的资金即时转账。自适应支付服务器可接收第一标识信息,第二标识信息和资金转账请求。自适应支付服务器可确定与第一标识信息相关联的账户。自适应支付服务器可基于第二标识信息验证该账户的身份。自适应支付服务器可发起与请求相关联的资金量到被识别的账户中的存入,其中在被识别的账户已被验证之后资金量被基本立即存入。其技术方案虽然能够实现贷款资金的自动发放,但不能解决贷款申请的审批和后续业务的办理。

发明内容

[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] 设置临时变量,临时变量的值为零,存储单元的大小记为K;
[0029] 读取所述地址索引字符串,依次取出所述地址索引字符串记录的电子贷款合同的编号或者数值;
[0030] 若为电子贷款合同的编号,则临时变量加1,若为数值,则临时变量加所述数值;
[0031] 直到读取到与当前需读取的签署包关联的电子贷款合同的编号,计算临时变量与K的乘积,即为当前子包所在存储单元的寻址地址;
[0032] 取出地址索引字符串中记录的全部内容后,将读取获得全部的子包,按照子包编号排序拼接获得签署包。
[0033] 作为优选,贷款产品记录贷款种类、贷款金额区间和贷款期限区间,所述贷款种类包括信用贷款、抵押贷款和票据贴现。
[0034] 作为优选,所述经营数据模板记录企业的设备运行信息和产品销售信息,所述设备运行信息包括设备启停时刻记录,所述产品销售信息包括每个产品型号的进货量、库存量、售出量和日售出总额信息。
[0035] 本发明的实质性效果是:借助区块链提供经营数据的真实性证明,使在线审核申请贷款企业的经营状况,评估企业还款能力能够实现,继而实现了贷款的在线审批,提高了贷款业务的办理效率;通过分散存储相关贷款业务材料,提高了贷款业务材料的安全性。

附图说明

[0036] 图1为实施例一贷款处理方法流程示意图。
[0037] 图2为实施例一提供经营数据方法示意图。
[0038] 图3为实施例一审批机示意图。
[0039] 图4为实施例二将副本进行限时加密方法示意图。
[0040] 图5为实施例二解密副本方法示意图。
[0041] 图6为实施例二使用加密多项式加密副本方法示意图。
[0042] 图7为实施例三金融机构分散存储子包方法示意图。
[0043] 图8为实施例三金融机构读取签署包方法示意图。
[0044] 其中:10、数据提取部,11、数据提取单元,12、文字识别单元,13、数据统计单元,20、审批条件部。

具体实施方式

[0045] 下面通过具体实施例,并结合附图,对本发明的具体实施方式作进一步具体说明。
[0046] 实施例一:
[0047] 一种基于区块链的贷款处理方法,请参阅附图1,包括:
[0048] 步骤A01)提供经营数据模板,企业将经营数据依照经营数据模板周期性将经营数据通过区块链存证。经营数据模板记录企业的设备运行信息和产品销售信息,如表1所示,设备运行信息包括设备启停时刻记录,产品销售信息包括每个产品型号的进货量、库存量、售出量和日售出总额信息。
[0049] 表1经营数据模板
[0050] 设备或产品型号 记录设备一 {启:20200101‑09:32:20停:20200101‑18:02:13}
设备二 {启:20200101‑11:05:10停:20200101‑18:22:41}
… …
产品型号一 {进货量721:0库存量722:60售出量723:32日售出总额:6400.00}产品型号二 {进货量721:10库存量722:30售出量723:12日售出总额:4800.00}… …
[0051] 本实施例中企业通过区块链存证经营数据的周期为1日,即企业每日依照经营数据模板生成经营数据,打包为日经营数据包,企业存储日经营数据包并建立目录索引,目录索引记录日经营数据包的企业标识、日期标识、存证哈希值和区块高度。如表2所示,为企业甲在2020年一年的全部经营数据的列表,记载了1年的经营情况。当前企业申请贷款时,主要提交相关资质材料、资产情况和银行流水,但缺乏一手的企业经营数据。导致银行对企业的实际经营情况缺乏准确的掌握,影响了贷款的审批。对企业进行贷款审批的过程,是对贷款风险管控的过程。对企业数据,包括资质数据和经营数据掌握越全面细致,就越有利于有效的控制贷款风险。
[0052] 表2企业甲的日经营数据包列表
[0053] 序号 日经营数据包1 日经营数据包1:{经营数据70,企业甲标识,2020年1月1日}
2 日经营数据包2:{经营数据70,企业甲标识,2020年1月2日}
3 日经营数据包3:{经营数据70,企业甲标识,2020年1月3日}
… …
366 日经营数据包366:{经营数据70,企业甲标识,2020年12月31日}
[0054] 步骤A02)建立可信服务器,若干个金融机构在可信服务器上公布若干个贷款产品,为每种贷款产品关联电子贷款合同和审批机。
[0055] 表3可信服务器上公布的贷款产品列表
[0056] 序号 贷款种类 贷款金额区间 贷款期限区间 电子贷款合同 审批机1 信用贷款 50~100 6~12 DN2020002105 审批机1
2 信用贷款 200~300 12~36 DN2020013421 审批机2
3 抵押贷款 500~2000 12~36 DN2020052154 审批机3
4 抵押贷款 3000~5000 12~48 DN2020031175 审批机4
5 票据贴现 50~1000 6~24 DN2020011287 审批机5
… … … … … …
[0057] 如表3所示,贷款产品记录贷款种类、贷款金额区间和贷款期限区间,贷款种类包括信用贷款、抵押贷款和票据贴现。贷款金额区间和贷款期限区间的单位分别为万元和月。关联的电子贷款合同和审批机并不显示,仅在可信服务器后台关联即可。每个贷款产品均有相应的电子贷款合同和审批机。电子贷款合同和审批机由金融机构制定。
[0058] 步骤A03)企业选定贷款产品后,提交贷款申请材料至可信服务器。企业在贷款产品列表中选择相应的贷款产品,填写贷款申请材料时,填写的贷款金额应处于贷款产品的贷款金额区间内,填写的贷款期限也应处于贷款产品的贷款期限区间内。如企业甲选择抵押贷款,贷款金额为4000万元,贷款期限为3年,则应该选择序号为4的贷款产品。提交的贷款申请材料中,包含企业甲的资质信息,如营业执照等,企业甲填写的贷款合同,记录欲申请的贷款金额和贷款期限,企业甲填写的抵押合同,记录相关抵押条款,抵押物的物权证明文件。贷款申请材料均使用电子版即可。
[0059] 步骤A04)可信服务器调用相应贷款产品的审批机审核贷款申请材料。审批机审核企业的资质并判断企业的偿债能力,是否能够与申请的贷款金额和期限相符。
[0060] 步骤A05)若审核通过则可信服务器调用相应的电子贷款合同,企业签署电子贷款合同。审批机审批通过后进入贷款签订阶段,企业核对电子贷款合同并签署。电子贷款合同会将企业提交的贷款金额和贷款期限自动填入。
[0061] 步骤A06)可信服务器提取签署后的电子贷款合同的哈希值,记为签署哈希值。签署的电子贷款合同需要进行存证,以作为贷款业务的凭证。哈希值是有散列函数计算获得。常用的散列函数有SHA‑256和SM3,如SHA‑256计算获得的哈希值为256位十六进制数,如
0xED256…25DC65,哈希值具有唯一性。当内容有微小改动时,哈希值也会发生显著的变化。
[0062] 步骤A07)企业使用私钥签名签署哈希值,可信服务器将签署哈希值及相应签名上传区块链存储。私钥签名是使用非对称加密秘钥的私钥对数据进行加密的过程,经过私钥签名后的内容,只有使用相应的公钥才能正确解密。通过私钥签名能够起到身份证明的作用。
[0063] 步骤A08)可信服务器将电子贷款合同反馈金融机构,金融机构依据电子贷款合同填写的企业账户发放贷款。金融机构获得电子贷款合同后即可进行贷款的发放,将相应资金转入电子贷款合同内填写的账户即可。从而完成贷款申请的自动在线处理,即完成了贷款申请的审批,同时又实现了电子贷款合同的存证。提高贷款业务办理的效率,减少人工参与,为经济发展做出贡献。
[0064] 请参阅附图2,企业将经营数据提供给金融机构的方法包括:步骤B01)业将经营数据依照经营数据模板周期性生成经营数据,提取经营数据的哈希值,将经营数据的哈希值关联时间戳上传区块链存储,将经营数据加密存储在本地;步骤B02)当企业申请贷款时,将预设时间长度内的经营数据复制出副本,将副本使用限时加密算法加密后存储在网络存储设备,将副本的存储地址和限时解密秘钥作为贷款申请材料提交给金融机构。
[0065] 企业甲向金融机构A申请贷款,金融机构A即会要求查看企业甲近一年的经营数据。企业甲将近一年的经营数据,即日经营数据包,复制一份,作为副本。将副本使用限时加密算法加密后,存储在网络存储设备。网络存储设备反馈存储地址,根据存储地址能够读取到加密后的副本。设置限时解密时长为10天,即要求金融机构A在10天内解密经营数据,进行贷款申请的审批。若超过10天金融机构未处理,则金融机构A将不能再获得企业甲的经营数据。保护企业甲的经营数据的安全。
[0066] 金融机构为每个贷款产品关联审批机,请参阅附图3,审批机包括数据提取部10和审批条件部20,数据提取部10包括提取经营数据的数据提取单元11、识别贷款申请材料文字的文字识别单元12和数据统计单元13,数据统计单元13根据数据提取单元11获得的经营数据统计预设时间长度内企业的总销售额和总利润,数据统计单元13根据文字识别单元12获得的内容,罗列贷款申请材料提供的材料字段名称和字段值,审批条件部20预存相应贷款产品的需提供字段表及字段条件,审批条件部20判断总销售额及总利润是否满足预设条件,若不满足,则判定审批不通过,反之,则判断获得的材料字段名称是否覆盖需提供字段表,若覆盖需提供字段表,则进一步判断字段值是否符合相应字段条件,若符合全部字段条件,则判定审批通过,若未覆盖需提供字段表或者存在不满足的字段条件,则判定审批不通过。企业甲向金融机构A申请抵押贷款,则需要提供抵押合同,抵押合同为要式合同,要式合同的字段为已知,因此企业甲提供的抵押合同应当包含全部要式合同具有的材料字段名称。相应的格式也应与要式格式相符,格式问题不影响本实施例的实施,对格式的审核不在本实施例讨论。抵押合同不仅要包括全部要式合同具有的材料字段名称,相应的字段值也应符合。比如抵押合同中抵押方的名称应与申请贷款的企业甲名称相符。抵押物的价值应大于或者至少与贷款金额相当。同时还应当提供抵押物的物权证明。物权证明中应包含抵押物标识、估值和评估方的材料字段名称,相应的字段值也应与其他材料相符合。这些判定通过识别出材料字段名称,读取相应字段值进行比对即可。相应的审批机由人工罗列全部可能的情况,进行规则的设定后,即可完成审批机的建立。若审批机无法审批,则判定审批不通过,此时企业可以申请人工审批或者中止贷款的申请。
[0067] 需提供字段表包括若干个证明材料字段,相应的字段条件为证明材料为真,审批机预存有若干种证明材料参照表,证明材料参照表记录证明材料种类、记载字段和字段内容条件,审批条件部20列举贷款申请材料中被识别出的证明材料,将证明材料记载的材料字段名称及字段值与相应的证明材料参照表对比,若对比通过,则判定相应证明材料字段的字段条件被满足,反之,则判定相应证明材料字段的字段条件未被满足。如抵押物的物权证明材料,由金融机构预先公布若干种类型供企业参考。企业提交的物权证明文件与其中预先公布的类型之一相符,则审批机能够借助人工预先设置的字段表进行审批。若不在预先公布的类型内,则判定审批不通过,企业可以申请人工审批或者重新提供物权证明文件后再次提交审批或者中止贷款的审批。
[0068] 审批机预存有若干组与贷款产品类型对应的证明材料字段,若存在至少一组证明材料字段的字段条件被满足,则判定全部证明材料字段的字段条件均被满足。在审批机中设置若干个证明材料的类型,每个类型具有一组证明材料字段。当企业提供的证明能够满足任一组证明材料字段,则其他组的证明材料字段不再需要被满足。
[0069] 本实施例的实质性效果是:借助区块链提供经营数据的真实性证明,使在线审核申请贷款企业的经营状况,评估企业还款能力能够实现,继而实现了贷款的在线审批,提高了贷款业务的办理效率。
[0070] 实施例二:
[0071] 一种基于区块链的贷款处理方法,本实施例在实施例一的基础上,提供了具体的对经营数据进行限时加密的方案。请参阅附图4,将副本进行限时加密的过程包括:步骤C01)为副本生成加密多项式,加密多项式为一元多项式;步骤C02)使用加密多项式加密副本;步骤C03)将加密多项式的N个项系数使用预设变量替代获得暂态多项式;步骤C04)将暂态多项式使用金融机构的公钥加密后上传区块链存储;步骤C05)生成加密多项式的N个样本点;步骤C06)申请贷款的企业在区块链上发布智能合约;步骤C07)智能合约显示N个样本点和限时剩余时长,当剩余时长为0时,智能合约更新N个样本点。
[0072] 生成加密多项式为f(x)=12*x^6+2*x^5‑8*x^4‑5*x^3+4*x^2‑6*x+8,使用加密多项式加密副本。本实施例中N取值为3,将加密多项式中的3个项系数使用预设的变量替代,获得暂态多项式:g(x)=12*x^6+2*x^5+a*x^4‑5*x^3+b*x^2+c*x+8。将副本的存储地址和暂态多项式g(x)使用金融机构的公钥加密上传区块链存储。金融机构查询区块链,使用私钥解密即可获得副本的存储地址和暂态多项式g(x)。生成加密多项式f(x)的3个样本点,分别为:(15,137785193)、(20,773081488)和(30,8789988428)。申请贷款的企业区块链上发布智能合约显示这3个样本点,如表4所示。
[0073] 表4智能合约显示内容表
[0074]序号 标识 样本点
1 39DF…9E02 (10,330)(12,510)(16,990)
2 698A…2BC7 (15,137785193)(20,773081488)(30,8789988428)
3 CE3D…60B4 (3,690)(5,1350)(12,950)
… … …
[0075] 其中标识为副本的存储地址的哈希值。金融机构提取副本的存储地址的哈希值与标识对比,获得与副本对应的样本点。这样即能起到标识作用,又不会泄露副本的存储地址。
[0076] 请参阅附图5,金融机构在限时时长内解密副本的方法包括:步骤D01)在限时时长内,轮询区块链,解密获得暂态多项式;步骤D02)读取智能合约显示的N个样本点;步骤D03)使用N个样本点解算暂态多项式的N个项系数,获得加密多项式;步骤D04)使用加密多项式解密获得经营数据的副本。
[0077] 将这3个样本点代入暂态多项式g(x)能够求解出a、b和c的值,从而获得加密多项式f(x)。同时显示限时剩余时长,当限时剩余时长为0时,更新这3个样本点,如更新为(6,25)、(10,51)和(12,36)。更新后的样本点代入暂态多项式,将无法获得正确的项系数值。继而无法获得正确的加密多项式,从而阻止了经营数据的正确解密,实现了解密的时间限制。
将(15,56953043)代入暂态多项式,将获得‑50625a+225b‑15c=‑404190,类似的获得样本点(20,773081488)和(30,8789988428)代入暂态多项式g(x)得到的等式为‑160000a+400b‑
20c=‑1278520和‑810000a+900b‑30c=‑6476580。3个等式构成3元一次方程组,能够轻易的进行解算。获得a=‑8,b=4和c=‑6。
[0078] 请参阅附图6,使用加密多项式加密副本的方法包括:步骤E01)生成对称加密秘钥Key,使用对称加密秘钥Key加密副本;步骤E02)将秘钥Key转换为二进制流,并按预设长度截断为若干个将二进制段转换为整数D;步骤E03)生成数据组合(b1,x1,b2,x2,…,bN,xN,△),bi为正整数,使得D=∑(‑1)^bi*floor(bi/2)*f(xi)+△,其中i∈[1,N],△为修正值,floor()为向下取整函数,f(x)为加密多项式;步骤E04)将数据组合按顺序组合作为Key密文,将Key密文和加密后的副本打包作为副本密文;步骤E05)金融机构复原加密多项式后,使用加密多项式解密Key密文获得秘钥Key,使用秘钥Key解密获得副本。
[0079] 如秘钥Key为“EuWk”,使用“EuWk”加密副本。在ASCII编码下,将字符串EuWk转为二进制为:01000101011101010101011101101011,按照2字节的长度截断为两个整数,分别为D1=17781,D2=22379。加密多项式f(x)为:f(x)=15*x^2‑32*x+64。则D1可以表示为D1=6*f(7)+f(31)+844,对应的数据组合为(12,7,2,31,844)。同样的方式能够获得整数D2的数据组合,D2=2*f(5)+4*f(20)+125,对应的数据组合为(4,5,8,20,125)。每个整数的数据组合是不唯一的。金融机构复原加密多项式时,将数据组合(12,7,2,31,844)代入D=∑(‑1)^bi*floor(bi/2)*f(xi)+△,可得D1=17781和D2=22379。将数字直接以二进制表示,并按照ASCII编码转换为字符,获得秘钥Key为“EuWk”。使用“EuWk”解密获得副本。使用秘钥Key加密和解密副本均采用对称加密算法。相对于实施例一,本实施例通过改进的限时加密和限时解密算法,提高了限时加解密的效率。
[0080] 实施例三:
[0081] 一种基于区块链的贷款处理方法,本实施例在实施例一的基础上,提供了保障签署包存储安全的具体方案。在本实施例中,可信服务器将贷款申请材料、签署哈希值及签名均反馈给金融机构,金融机构将贷款申请材料、签署哈希值、签名及电子贷款合同打包作为签署包,为签署包分配唯一标识,将签署包关联电子贷款合同的编号后存储。将签署包拆分为若干个子包,为子包赋予子包编号,将子包关联电子贷款合同的编号和子包编号后分散存储。
[0082] 请参阅附图7,金融机构分散存储子包的方法包括:
[0083] 步骤F01)在存储设备内开辟专用存储区,在专用存储区内划分存储单元,存储单元大小与子包大小相匹配,存储单元的起始地址为存储单元的寻址地址;
[0084] 步骤F02)建立地址索引字符串,地址索引字符串记录已被存储的子包关联的电子贷款合同的编号,相邻编号之间以数值间隔,数值代表相邻子包之间未被使用的存储单元的数量;
[0085] 步骤F03)随机选择数量与子包数量匹配的未被使用的存储单元,将相应子包及子包编号存入存储单元;
[0086] 步骤F04)将子包关联的电子贷款合同的编号添加到地址索引字符串中,并修改相邻编号之间的数值,使数值与相应未被使用的存储单元数量相符。
[0087] 将电子贷款合同的编号为DN2020002105的电子贷款合同对应的签署包进行存储时,将签署包拆分为5个子包。将5个子包存入存储设备后,本实施例在步骤F02)中建立的地址索引字符串为:“128‑DN2020002105‑62‑DN2020002105‑35‑DN2020002105‑10‑DN2020002105‑156‑DN2020002105‑69850”。地址索引字符串的含义为起始存在128个未被使用的存储单元,而后第129个存储单元则存储了一个子包,但存储的子包的子包编号不确定。而后与下一个子包之间存在62个未被使用的存储单元。以此类推,最后一个子包之后,则存在69850个存储单元未被使用。根据地址索引字符串能够直接找到相应的子包的存储位置,通过计算存储单元占用空间与存储单元的顺序的乘积,就可以计算出相应存储单元的寻址地址,从而直接读取出相应的子包。
[0088] 进行下一个签署包的子包的存储时,首先读取地址索引字符串。如将电子贷款合同的编号为DN2020013421的电子贷款合同的一个子包存入存储设备时。首先读取地址索引字符串,选择一个数值,如选择前两个电子贷款合同编号为DN2020002105的子包之间的数值62,从这62个未被使用的存储单元中选择一个。如选择62个中的第30个存储单元,用于存储新的子包。则计算选择的存储单元的序号为128+1+30,即第159个存储单元。计算获得第159个存储单元的寻址地址,将新的子包存入。更新地址索引字符串,将数值62替换为DN2020013421,而后在DN2020013421前添如数值29,表示与前一个被使用的存储单元之间,有29个未被使用的存储单元。在DN2020013421后添加数值32,表示与后一个被使用的存储单元之间,有29个未被使用的存储单元。如此不断进行,即可完成子包的分散存储,同时也方便子包的读取。
[0089] 更为有利的,存储单元的大小保密存储,仅在使用时解密获得。存储单元的大小与子包大小相符,即包含与子包大小相等,也包含稍大于子包的大小。更优的实施方式是采用比子包更大一些作为存储单元的大小。存储单元大小保密且存储在其他的存储设备中,使得只有金融机构自己能够准确找到子包的起止位置。当存储设备意外暴露在网络中时,由于存储单元的大小是未知的,导致无法确定子包的起止位置,继而实现子包的保护,确保签署包的存储安全。
[0090] 更为有利的,地址索引字符串记载电子贷款合同的编号的哈希值。即使用0x62A40DBD3A689EDBC4EA559816E1E2FA0F86BD45BF6F1EB574B735DF096257E4,代替DN2020002105,能够进一步提高子包存储的安全性。为减少地址索引字符串的长度,可以采用哈希值的末尾6位。但末尾6位有重复时,则增加1位,使用哈希值的末尾7位作为电子贷款合同编号的替代纳入地址索引字符串中。
[0091] 请参阅附图8,金融机构读取签署包的步骤包括:
[0092] 步骤G01)设置临时变量,临时变量的值为零,存储单元的大小记为K;
[0093] 步骤G02)读取地址索引字符串,依次取出地址索引字符串记录的电子贷款合同的编号或者数值;
[0094] 步骤G03)若为电子贷款合同的编号,则临时变量加1,若为数值,则临时变量加数值;
[0095] 步骤G04)直到读取到与当前需读取的签署包关联的电子贷款合同的编号,计算临时变量与K的乘积,即为当前子包所在存储单元的寻址地址;
[0096] 步骤G05)取出地址索引字符串中记录的全部内容后,将读取获得全部的子包,按照子包编号排序拼接获得签署包。
[0097] 如读取DN2020002105对应的签署包时,首先读取地址索引字符串:“128‑DN2020002105‑29‑  DN2020002105‑32‑DN2020002105‑35‑DN2020002105‑10‑DN2020002105‑156‑DN2020002105‑69850”。设置临时变量的值为0。读取第一个为数值,则临时变量增加数值128,临时变量的值当前为128,而后读取获得“DN2020002105”,与要读取的签署包相符,则计算临时变量与K的乘积,加上专用存储区的起始地址,即为当前存储单元的起始地址,读取即可获得一个子包。而后将临时变量的值增加1,临时变量的值变为129。继续读取地址索引字符串,读取到数值29,临时变量的值增加29,变为158。继续读取地址索引字符串,读取到“DN2020013421”,与需要读取的签署包不符,则临时变量加1,变为
159,而后读取获得数值32,临时变量增加32,得191,继续读取地址索引字符串,得到“DN2020002105”,即可获得下一个子包的索引地址。以此类推,可以获得全部子包,按照子包编号排序拼接即可完成签署包的读取。相对于实施例一,本实施例通过分散存储相关贷款业务材料,提高了贷款业务材料的安全性。
[0098] 以上所述的实施例只是本发明的一种较佳的方案,并非对本发明作任何形式上的限制,在不超出权利要求所记载的技术方案的前提下还有其它的变体及改型。