G06Q40/02 G06F21/60 G06F21/62
1.一种基于企业经营数据限时共享的贷款审批系统,其特征在于,
包括接入单元、限时加密单元、贷款申请单元、共享请求单元和审批单元,所述接入单元接入企业的经营数据,将经营数据关联企业标识和日期标识后打包为日经营数据包,提取日经营数据包的存证哈希值上传区块链存储,获得对应的区块高度,
所述限时加密单元接收经营数据调用请求和接收公钥,读取调用请求涉及的日经营数据包,制作日经营数据包的副本,使用限时加密算法加密副本后,将副本的存储地址和限时解密秘钥使用接收公钥加密,并关联调用者标识上传区块链存储,
所述贷款申请单元接收企业的贷款申请请求,所述共享请求单元接收银行的经营数据共享请求和接收公钥,所述共享请求单元向所述限时加密单元发送经营数据调用请求,在预设的限时时长内,所述共享请求单元查询区块链,获得副本的存储地址和限时解密秘钥,将副本和限时解密秘钥发送给审批单元,所述审批单元将日经营数据包的副本和限时解密秘钥提供给审批人员。
2.根据权利要求1所述的一种基于企业经营数据限时共享的贷款审批系统,其特征在于,
所述经营数据包括企业的设备运行信息和产品销售信息,所述设备运行信息包括设备启停时刻记录,所述产品销售信息包括每个产品型号的进货量、库存量、售出量和日售出总额信息,企业将每日的经营数据提交所述接入单元。
3.根据权利要求1或2所述的一种基于企业经营数据限时共享的贷款审批系统,其特征在于,
所述限时加密单元为副本生成加密多项式,所述加密多项式为一元多项式,使用加密多项式加密副本,将加密多项式的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用接收公钥加密后上传区块链存储,生成加密多项式的N个样本点,所述限时加密单元在区块链上发布智能合约,所述智能合约显示N个样本点和限时剩余时长,当剩余时长为0时,所述智能合约更新所述N个样本点,在限时时长内,银行轮询区块链,解密获得暂态多项式,读取智能合约显示的N个样本点,使用N个样本点解算暂态多项式的N个项系数,获得加密多项式,使用加密多项式解密获得经营数据的副本。
4.根据权利要求3所述的一种基于企业经营数据限时共享的贷款审批系统,其特征在于,
使用加密多项式加密副本的方法包括:
生成对称加密秘钥Key,使用对称加密秘钥Key加密副本;
将秘钥Key转换为二进制流,并按预设长度截断为若干个将二进制段转换为整数D;
生成数据组合(b1,x1,b2,x2,…,bN,xN,△),bi为正整数,使得D=∑(-1)^bi*floor(bi/2)*f(xi)+△,其中i∈[1,N],△为修正值,floor()为向下取整函数,f(x)为加密多项式;
将数据组合按顺序组合作为Key密文,将Key密文和加密后的副本打包作为副本密文;
银行复原加密多项式后,使用加密多项式解密Key密文获得秘钥Key,使用秘钥Key解密获得副本。
5.根据权利要求4所述的一种基于企业经营数据限时共享的贷款审批系统,其特征在于,
所述限时加密单元为副本的加密多项式设置取值序列H,取序列的前若干个取值构成加密集合h,生成数据组合时使xi∈h,将取值序列H去除加密集合h后上传智能合约保存,智能合约每日从取值序列H中选择N个取值,计算加密多项式的函数值,获得N个样本展示,
所述限时加密单元根据预设的限时时长,获得限时时长内将被展示的全部取值,计算取值相应的加密多项式函数值,记为限时样本集合,计算加密集合h对应的样本集合,记为加密样本集合,生成一元多项式,使一元多项式经过加密样本集合以及限时样本集合内的全部样本点,记为替代加密多项式,将替代加密多项式中的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用接收公钥加密后上传区块链存储,在限时时长内,银行轮询区块链,解密获得暂态多项式,读取智能合约显示的N个样本点,使用N个样本点解算暂态多项式的N个项系数,获得加密多项式,使用加密多项式解密获得经营数据的副本,当超过限时时长后,智能合约显示的N个样本点将不能求解出正确的替代加密多项式,实现解密的限时。
6.根据权利要求5所述的一种基于企业经营数据限时共享的贷款审批系统,其特征在于,
所述限时加密单元设立专用存储空间用于存储副本,接收到新的经营数据调用请求后,检查存储空间内是否已存在相同企业标识和相同日期区间的副本,若存在,则获取限时时长内智能合约将展示的全部取值,计算取值相应的加密多项式函数值,记为限时样本集合,根据限时样本集合和加密样本集合重新生成替代加密多项式,将重新生成的替代加密多项式中的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用新的调用请求的接收公钥加密后上传区块链存储。
7.根据权利要求1或2所述的一种基于企业经营数据限时共享的贷款审批系统,其特征在于,
所述审批单元根据获得的全部日经营数据包,建立每日的产品销量趋势图、日均产品销量、日均售出额和企业的月均销售额,展示给审批人员,审批人员根据所述审批单元显示的经营数据及企业线下提交的贷款申请材料完成贷款审批。
本发明涉及信息技术领域,具体涉及一种基于企业经营数据限时共享的贷款审批系统。
企业数据泛指所有与企业经营相关的信息、资料,包括公司概况、产品信息、经营数据、研究成果等。作为商业个体之间的一个桥梁,企业数据对于数据登载的企业和数据获取者均有作用。被登载的企业可以扩大企业自身的知名度、坐等商机、推广产品及品牌、增加潜在商业活动。企业数据的获取渠道分为集中式和分布式。集中式一般由统一的政府部门发布,如工商局数据、统计局数据,具有权威性和全面性,但数据内容比较粗略,缺乏精细度。分布式是由商业公司透过下属部门通过各种手段分散获取并统一整理,一般能使数据的精细度和准确度达到一定要求。但分布式获取渠道所得企业经营数据的可信度和实时性较低,尚不能支持更为严谨的应用要求。且目前的经营数据缺乏一手数据,获取企业信息不够全面。借助区块链技术能够为经营数据提供可信证明,但缺乏能够兼顾经营数据扩散管控的共享方案。因此有必要研究新的企业经营数据共享方案。
如中国专利CN113240514A,公开日2021年8月10日,记载了一种基于区块链的贷款管理方法及装置,涉及区块链领域,该方法包括:接收客户发送的贷款申请请求,并根据贷款申请请求检验客户的身份信息和经营证件信息;在客户的身份信息和经营证件信息检验通过的情况下,对客户的贷款申请请求进行额度审批操作,得到贷款信息;将贷款信息发送给用户,并上传至区块链;基于贷款信息,在用户进行用款或还款操作时,将用户的用款信息或还款信息发送给用户,并上传至区块链。其技术方案可以实现对贷款交易信息的全流程追朔,避免了客户事后否认和抵赖。但其并不能为贷款的审批提供数据支持。
本发明要解决的技术问题是:目前缺乏企业经营数据的共享方案的技术问题。提出了一种基于企业经营数据限时共享的贷款审批系统,提供了企业经营数据共享方案,能够为贷款审批提供更多有价值的参考信息。
为解决上述技术问题,本发明所采取的技术方案为:一种基于企业经营数据限时共享的贷款审批系统,包括接入单元、限时加密单元、贷款申请单元、共享请求单元和审批单元,所述接入单元接入企业的经营数据,将经营数据关联企业标识和日期标识后打包为日经营数据包,提取日经营数据包的存证哈希值上传区块链存储,获得对应的区块高度,所述限时加密单元接收经营数据调用请求,所述调用请求包括企业标识、日期区间和接收公钥,读取调用请求涉及的日经营数据包,制作日经营数据包的副本,使用限时加密算法加密副本后,将副本的存储地址和限时解密秘钥使用接收公钥加密,并关联调用者标识上传区块链存储,所述贷款申请单元接收企业的贷款申请请求,提取贷款申请请求的哈希值上传区块链存储,所述共享请求单元接收银行的经营数据共享请求,所述共享请求包括银行标识、接收公钥、企业标识和日期区间,所述共享请求单元向企业发送确认问询,所述确认问询包括银行标识和日期区间,企业确认后,所述共享请求单元向所述限时加密单元发送经营数据调用请求,在预设的限时时长内,所述共享请求单元查询区块链,获得副本的存储地址和限时解密秘钥,将副本和限时解密秘钥发送给审批单元,所述审批单元将日经营数据包的副本和限时解密秘钥提供给审批人员。
作为优选,所述经营数据包括企业的设备运行信息和产品的销售信息,所述设备运行信息包括设备启停时刻记录,所述产品销售信息包括每个产品型号的进货量、库存量、售出量和日售出总额信息,企业将每日的经营数据提交所述接入单元。
作为优选,所述限时加密单元为副本生成加密多项式,所述加密多项式为一元多项式,使用加密多项式加密副本,将加密多项式的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用接收公钥加密后上传区块链存储,生成加密多项式的N个样本点,所述限时加密单元在区块链上发布智能合约,所述智能合约显示N个样本点和限时剩余时长,当剩余时长为0时,所述智能合约更新所述N个样本点,在限时时长内,银行轮询区块链,解密获得暂态多项式,读取智能合约显示的N个样本点,使用N个样本点解算暂态多项式的N个项系数,获得加密多项式,使用加密多项式解密获得经营数据的副本。
作为优选,使用加密多项式加密副本的方法包括:生成对称加密秘钥Key,使用对称加密秘钥Key加密副本;将秘钥Key转换为二进制流,并按预设长度截断为若干个将二进制段转换为整数D;生成数据组合(b1,x1,b2,x2,…,bN,xN,△),bi为正整数,使得D=∑(-1)^bi*floor(bi/2)*f(xi)+△,其中i∈[1,N],△为修正值,floor()为向下取整函数,f(x)为加密多项式;将数据组合按顺序组合作为Key密文,将Key密文和加密后的副本打包作为副本密文;银行复原加密多项式后,使用加密多项式解密Key密文获得秘钥Key,使用秘钥Key解密获得副本。
作为优选,所述限时加密单元为副本的加密多项式设置取值序列H,取序列的前若干个取值构成加密集合h,生成数据组合时使xi∈h,将取值序列H去除加密集合h后上传智能合约保存,智能合约每日从取值序列H中选择N个取值,计算加密多项式的函数值,获得N个样本展示,所述限时加密单元根据预设的限时时长,获得限时时长内将被展示的全部取值,计算取值相应的加密多项式函数值,记为限时样本集合,计算加密集合h对应的样本集合,记为加密样本集合,生成一元多项式,使一元多项式经过加密样本集合以及限时样本集合内的全部样本点,记为替代加密多项式,将替代加密多项式中的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用接收公钥加密后上传区块链存储,在限时时长内,银行轮询区块链,解密获得暂态多项式,读取智能合约显示的N个样本点,使用N个样本点解算暂态多项式的N个项系数,获得加密多项式,使用加密多项式解密获得经营数据的副本,当超过限时时长后,智能合约显示的N个样本点将不能求解出正确的替代加密多项式,实现解密的限时。
作为优选,所述限时加密单元设立专用存储空间用于存储副本,接收到新的经营数据调用请求后,检查存储空间内是否已存在相同企业标识和相同日期区间的副本,若存在,则获取限时时长内智能合约将展示的全部取值,计算取值相应的加密多项式函数值,记为限时样本集合,根据限时样本集合和加密样本集合重新生成替代加密多项式,将重新生成的替代加密多项式中的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用新的调用请求的接收公钥加密后上传区块链存储。
作为优选,所述审批单元根据获得的全部日经营数据包,建立每日的产品销量趋势图、日均产品销量、日均售出额和企业的月均销售额,展示给审批人员,审批人员根据所述审批单元显示的经营数据及企业线下提交的贷款申请材料完成贷款审批。
本发明的实质性效果是:对企业的经营数据进行接收和存证,提供更加完整和可信的企业经营数据,为贷款的审批提供更多参考信息,更好的管控贷款风险;通过限时经营数据共享管控经营数据的扩散范围,在提供经营数据共享的同时,兼顾经营数据的安全。
图1为实施例一贷款审批系统示意图。
图2为实施例一经营数据示意图。
图3为实施例一限时加密单元加密示意图。
图4为实施例一解密经营数据示意图。
图5为实施例一加密多项式加密副本示意图。
图6为实施例二限时加密单元加密示意图。
图7为实施例三限时加密智能合约加密示意图。
图8为实施例三限时加密智能合约解密示意图。
其中:10、接入单元,20、区块链,30、贷款申请单元,40、限时加密单元,50、共享请求单元,60、审批单元,70、经营数据,71、设备运行信息,711、设备启停时刻记录,72、销售信息,721、进货量,722、库存量,723、售出量,724、日售出总额信息。
下面通过具体实施例,并结合附图,对本发明的具体实施方式作进一步具体说明。
实施例一:
一种基于企业经营数据限时共享的贷款审批系统,请参阅附图1,包括接入单元10、限时加密单元40、贷款申请单元30、共享请求单元50和审批单元60,接入单元10接入企业的经营数据70,将经营数据70关联企业标识和日期标识后打包为日经营数据包,提取日经营数据包的存证哈希值上传区块链20存储,获得对应的区块高度,接入单元10存储日经营数据包并建立目录索引,目录索引记录日经营数据包的企业标识、日期标识、存证哈希值和区块高度,限时加密单元40接收经营数据70调用请求,调用请求包括企业标识、日期区间和接收公钥,读取调用请求涉及的日经营数据包,制作日经营数据包的副本,使用限时加密算法加密副本后,将副本的存储地址和限时解密秘钥使用接收公钥加密,并关联调用者标识上传区块链20存储,贷款申请单元30接收企业的贷款申请请求,提取贷款申请请求的哈希值上传区块链20存储,共享请求单元50接收银行的经营数据70共享请求,共享请求包括银行标识、接收公钥、企业标识和日期区间,共享请求单元50向企业发送确认问询,确认问询包括银行标识和日期区间,企业确认后,共享请求单元50向限时加密单元40发送经营数据70调用请求,在预设的限时时长内,共享请求单元50查询区块链20,获得副本的存储地址和限时解密秘钥,将副本和限时解密秘钥发送给审批单元60,审批单元60将日经营数据包的副本和限时解密秘钥提供给审批人员。
本实施例提供一种借助企业经营数据70限时共享的贷款辅助审批系统。对企业进行贷款审批的过程,是对贷款风险管控的过程。对企业数据,包括资质数据和经营数据70掌握越全面细致,就越有利于有效的控制贷款风险。当前企业申请贷款时,主要提交相关资质材料、资产情况和银行流水,但缺乏一手的企业经营数据70。导致银行对企业的实际经营情况缺乏准确的掌握,影响了贷款的审批。本实施例通过接入单元10将企业每日的经营数据70接入存证并建立目录索引,提供了经营数据70的可信证明,同时方便进行查。如表1所示,接入单元10接入企业甲2020年一年的经营数据70,建立全部日经营数据包,每个日经营数据包含有经营数据70、企业标识和日期标识。接入单元10提取日经营数据包的存证哈希值上传区块链20存储。
表1 企业甲的日经营数据包列表
序号 日经营数据包 1 日经营数据包1:{经营数据70,企业甲标识,2020年1月1日} 2 日经营数据包2:{经营数据70,企业甲标识,2020年1月2日} 3 日经营数据包3:{经营数据70,企业甲标识,2020年1月3日} … … 366 日经营数据包366:{经营数据70,企业甲标识,2020年12月31日}
接入单元10建立目录索引,如表2所示,目录索引记录日经营数据包的的企业标识、日期标识、存证哈希值和区块高度。同时接入单元10存储日经营数据包时,会为日经营数据包分配唯一的文件名称,并记录日经营数据包文件的存放地址。
表2 目录索引
日经营数据包 企业标识 日期标识 存证哈希值 区块高度 日经营数据包1 企业甲标识 2020年1月1日 D1F5…DECD 235806 日经营数据包2 企业甲标识 2020年1月2日 6A15…C824 238512 … … … … … 日经营数据包366 企业甲标识 2020年12月31日 EA02…C35C 289670
限时加密单元40接收经营数据70调用请求,调用请求包括企业标识、日期区间和接收公钥。如银行乙接收到企业甲的贷款申请,银行乙首先将企业甲的贷款申请请求的哈希值上传区块链20,将贷款申请进行存证。贷款审批完成并放款后,银行乙还会将贷款合同的放款交易记录的哈希值上传区块链20存储。银行乙向共享请求单元50发送经营数据70共享请求,发送的共享请求包括银行乙标识、银行乙的公钥作为接收公钥、企业甲标识和2020年1月1日至2020年12月31日。共享请求单元50将共享请求转发给企业甲,并发送确认问询。企业甲反馈确认后,共享请求单元50向限时加密单元40发送经营数据70调用请求。共享请求单元50和限时加密单元40部署在同一个网络环境中,共享请求单元50向限时加密单元40发送经营数据70调用请求可以通过内网通信完成。限时加密单元40没有必要再对调用请求进行审核。限时加密单元40根据经营数据70调用请求的企业标识和日期区间,调取企业甲在2020年1月1日至2020年12月31日的全部日经营数据包,并整体打包后,制作出副本。将副本存储在专用的存储空间内,并设置限时加密时长为30天。即要求银行乙在30天内解密出经营数据70。如果银行乙惰于核查企业甲的经营数据70,未在30天内及时解密,则将无法查看企业甲的经营数据70。副本存在60天后,也将被清理。副本之所以存在更长时间,是为了在出现调用请求调用的是同一家企业的同日期区间的经营数据70时,需要重新生成副本,造成额外工作量。
经过限时加密的副本被存储在专用的存储空间,存储地址和限时解密秘钥使用接收公钥加密,关联调用者标识上传区块链20存储。即关联银行乙的标识后上传区块链20存储。银行乙轮询区块链20发现关联有银行乙标识的数据,使用私钥解密获得副本的存储地址和限时解密秘钥。读取加密后的副本,并使用限时解密秘钥解密即可获得副本,即获得相应日期区间的企业甲经营数据70。
请参阅附图2,经营数据70包括企业的设备运行信息71和产品的销售信息72,设备运行信息71包括设备启停时刻记录711,产品销售信息72包括每个产品型号的进货量721、库存量722、售出量723和日售出总额信息724,企业将每日的经营数据70提交接入单元10。
表3 日经营数据70记录表
设备或产品型号 记录 设备一 {启: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} … …
设备存在多次启停,则将每次启停时刻罗列在记录中,产品的进货量721指当日入库的产品数量,售出量723指当日售出的产品数量,库存量722指完成进货入库及出售出库后,仓库内剩余的产品数量。日售出总额指当日售出产品的总金额。对日经营数据70的格式不作要求,包含全部字段即可。
限时加密单元40进行限时加密的过程请参阅附图3,包括:步骤A01)限时加密单元40为副本生成加密多项式,加密多项式为一元多项式;步骤A02)使用加密多项式加密副本;步骤A03)将加密多项式的N个项系数使用预设变量替代获得暂态多项式;步骤A04)将暂态多项式使用接收公钥加密后上传区块链20存储;步骤A05)生成加密多项式的N个样本点;步骤A06)限时加密单元40在区块链20上发布智能合约;步骤A07)智能合约显示N个样本点和限时剩余时长,当剩余时长为0时,智能合约更新N个样本点。
生成加密多项式为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)使用接收公钥加密上传区块链20存储。生成加密多项式f(x)的3个样本点,分别为:(15,137785193)、(20,773081488)和(30,8789988428) 。区块链20上发布智能合约显示这3个样本点。
表4 智能合约显示内容表
序号 标识 样本点 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) …
如表4所示,为区块链上智能合约显示内容表。其中标识为副本的存储地址的哈希值。银行提取副本的存储地址的哈希值与标识对比,获得与副本对应的样本点。这样即能起到标识作用,又不会泄露副本的存储地址。
请参阅附图4,银行在限时时长内解密副本的方法包括:步骤B01)在限时时长内,银行轮询区块链20,解密获得暂态多项式;步骤B02)读取智能合约显示的N个样本点;步骤B03)使用N个样本点解算暂态多项式的N个项系数,获得加密多项式;步骤B04)使用加密多项式解密获得经营数据70的副本。将这3个样本点代入暂态多项式g(x)能够求解出a、b和c的值,从而获得加密多项式f(x)。同时显示限时剩余时长,当限时剩余时长为0时,更新这3个样本点,如更新为(6,25)、(10,51)和(12,36)。更新后的样本点代入暂态多项式,将无法获得正确的项系数值。继而无法获得正确的加密多项式,从而阻止了经营数据70的正确解密,实现了解密的时间限制。
将(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。
请参阅附图5,使用加密多项式加密副本的方法包括:步骤C01)生成对称加密秘钥Key,使用对称加密秘钥Key加密副本;步骤C02)将秘钥Key转换为二进制流,并按预设长度截断为若干个将二进制段转换为整数D;步骤C03)生成数据组合(b1,x1,b2,x2,…,bN,xN,△),bi为正整数,使得D=∑(-1)^bi*floor(bi/2)*f(xi)+△,其中i∈[1,N],△为修正值,floor()为向下取整函数,f(x)为加密多项式;步骤C04)将数据组合按顺序组合作为Key密文,将Key密文和加密后的副本打包作为副本密文;步骤C05)银行复原加密多项式后,使用加密多项式解密Key密文获得秘钥Key,使用秘钥Key解密获得副本。如秘钥Key为“EuWk”,使用“EuWk”加密副本。在ASCII编码下,将字符串EuWk转为二进制为:01000101 0111010101010111 01101011,按照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加密和解密副本均采用对称加密算法。
审批单元60根据获得的全部日经营数据包,建立每日的产品销量趋势图、日均产品销量、日均售出额和企业的月均销售额,展示给审批人员,审批人员根据审批单元60显示的经营数据70及企业线下提交的贷款申请材料完成贷款审批。制作出产品销量趋势图、日均产品销量、日均售出额和企业的月均销售额能够方便审批人员了解企业的实际经营情况。通过对企业的日常经营数据70的直接查看,能够了解到最为真实的企业经营情况,有助于核实企业贷款申请的材料,降低贷款审批的风险。
本实施例的有益技术效果是:对企业的经营数据70进行接收和存证,提供更加完整和可信的企业经营数据70,为贷款的审批提供更多参考信息,更好的管控贷款风险;通过限时经营数据70共享管控经营数据70的扩散范围,在提供经营数据70共享的同时,兼顾经营数据70的安全。
实施例二:
一种基于企业经营数据限时共享的贷款审批系统,本实施例在实施例一的基础上提出了具体的改进。实施例一记载技术方案在多个银行请求共享相同企业的相同日期区间的经营数据70时,会重复生成多个日经营数据包的副本,浪费存储资源。本实施例采取了具体的技术手段,使不同银行对享相同企业的相同日期区间的经营数据70,分别具有不同的限时时长时,能够共用同一个副本密文。请参阅附图6,包括:步骤D01)限时加密单元40为副本的加密多项式设置取值序列H;步骤D02)取序列的前若干个取值构成加密集合h,生成数据组合时使xi∈h;步骤D03)将取值序列H去除加密集合h后上传智能合约保存;步骤D04)智能合约每日从取值序列H中选择N个取值,计算加密多项式的函数值,获得N个样本展示;步骤D05)限时加密单元40根据预设的限时时长,获得限时时长内将被展示的全部取值;步骤D06)计算取值相应的加密多项式函数值,记为限时样本集合;步骤D07)计算加密集合h对应的样本集合,记为加密样本集合;步骤D08)生成一元多项式,使一元多项式经过加密样本集合以及限时样本集合内的全部样本点,记为替代加密多项式;步骤D09)将替代加密多项式中的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用接收公钥加密后上传区块链20存储;步骤D10)在限时时长内,银行轮询区块链20,解密获得暂态多项式;步骤D11)读取智能合约显示的N个样本点,使用N个样本点解算暂态多项式的N个项系数,获得加密多项式;步骤D12)使用加密多项式解密获得经营数据70的副本,当超过限时时长后,智能合约显示的N个样本点将不能求解出正确的替代加密多项式,实现解密的限时。
限时加密单元40根据经营数据70调用请求的企业标识和日期区间,调取企业甲在2020年1月1日至2020年12月31日的全部日经营数据包,并整体打包后,制作出副本。为副本生成加密多项式为f(x)=5*x^2-20*x+30,生成取值序列H为:(2,3,4,5,6,8,10,12,16,18,20,25,30,32,36,40,45,48,50,55,60,68),取前4位用于加密副本。即{2,3,4,5}构成加密集合h,秘钥Key为“EuWk”,使用“EuWk”加密副本。在ASCII编码下,将字符串EuWk转为二进制为:01000101 01110101 01010111 01101011,按照2字节的长度截断为两个整数,分别为D1=17781,D2=22379。则D1可以表示为D1=100*f(2)+60*f(3)+400*f(4)+60*f(5)+581,对应的数据组合为(200,2,120,3,800,4,120,5,581)。同样的方能够获得整数D2的数据组合,D2=200*f(2)+50*f(3)+220*f(4)+230*f(5)+379,对应的数据组合为(400,2,100,3,440,4,460,5,379)。N取值为3,设置限时时长为3天。取值序列H去除加密集合h后,每日依次显示3个样本点。3天共显示9个取值,为{6,8,10,12,16,18,20,25,30},即限时样本集合为{6,8,10,12,16,18,20,25,30}。计算加密集合h和限时样本集合对应的样本点:(2,10)、(3,15)、(4,30)、(5,55)、(6,90)、(8,190)、(10,330)、(12,510)、(16,990)、(18,1290)、(20,1630)、(25,2655)以及(30,3930)。
生成一元多项式,使一元多项式经过加密样本集合以及限时样本集合内的全部样本点。生成的一元多项式为f(x)= 4.468665620275273*e-14*x^12-6.3406822477524005*e-12*x^11+3.9165970082738594*e-10*x^10-1.3897464379519992*e-8*x^9+3.1493698301890763*e-7*x^8-0.000004794466057275043*x^7+0.00005021268081384367*x^6-0.00036412270206431785*x^5+0.0018127786288619774*x^4-0.006036809014378974*x^3+5.0127508396614715*x^2-20.015316063693916*x+30.007896892720762,记为替代加密多项式。将替代加密多项式中的3个项系数使用预设变量替代获得暂态多项式。得到暂态多项式为:g(x)= 4.468665620275273*e-14*x^12-6.3406822477524005*e-12*x^11+3.9165970082738594*e-10*x^10-1.3897464379519992*e-8*x^9+3.1493698301890763*e-7*x^8-0.000004794466057275043*x^7+a*x^6-0.00036412270206431785*x^5+b*x^4-0.006036809014378974*x^3+c*x^2-20.015316063693916*x+30.007896892720762。将暂态多项式g(x)使用接收公钥加密后上传区块链20存储。
智能合约每日依次从去除加密集合h后的取值序列H中读取3个数,计算一元多项式的值,形成并显示3个样本点。在限时时长内,每日的3个样本点代入暂态多项式g(x)均能够解算出a、b和c的值。
在第一天时,智能合约显示的3个样本点为(6,90)、(8,190)和(10,330),代入暂态多项式g(x)得到3个等式,分别为:46656*a+1296*b+36*c=185.15111418685、262144*a+4096*b+64*c=341.40414871846和1000000*a+10000*b+100*c=569.61555417571。联立后求解获得a=0.00005021268081384367,b=0.0018127786288619774及c=5.0127508396614715。
在第二天时,智能合约显示的3个样本点为(12,510)、(16,990)和(18,1290),代入暂态多项式g(x)得到3个等式,分别为:2985984*a+20736*b+144*c=909.36020775435、16777216*a+65536*b+256*c=2244.495267447和34012224*a+104976*b+324*c=3522.2777816319。联立后同样能够求解获得相应的项系数,获得复原的加密多项式f(x)。
但至第4天时,显示的3个样本点并不在加密多项式f(x)上,因此解密出的a、b和c的值将是错误的,导致此时无法获得正确的加密多项式,实现限时解密。第4天显示的3个样本点为(32,4510)、(36,5790)和(40,7230)。将这三个样本点代入暂态多项式g(x)获得3个等式,分别为:1073741824*a+1048576*b+1024*c=60926.835222897、2176782336*a+1679616*b+1296*c=118306.72859824和4096000000*a+2560000*b+1600*c=213271.91789868。求解获得a=3.48565174125*e-12,b=16173.54094408,c=23871706.94606636。显然无法复原出正确的替代多项式,代入数据组合(200,2,120,3,800,4,120,5,581)自然无法获得正确的D1的值。
基于上述的限时加密方法,本实施例中限时加密单元40还设立专用存储空间用于存储副本,接收到新的经营数据70调用请求后,检查存储空间内是否已存在相同企业标识和相同日期区间的副本,若存在,则获取限时时长内智能合约将展示的全部取值,计算取值相应的加密多项式函数值,记为限时样本集合,根据限时样本集合和加密样本集合重新生成替代加密多项式,将重新生成的替代加密多项式中的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用新的调用请求的接收公钥加密后上传区块链20存储。
当第二天时,智能合约显示的3个样本点为(12,510)、(16,990)和(18,1290)。此时银行丙也因收到了企业甲的贷款申请,于是也通过共享请求单元50发送经营数据70共享请求,发送的共享请求包括银行丙标识、银行丙的公钥作为接收公钥、企业甲标识和2020年1月1日至2020年12月31日。共享请求单元50将共享请求转发给企业甲,并发送确认问询。企业甲反馈确认后,共享请求单元50向限时加密单元40发送经营数据70调用请求。
限时加密单元40接收到新的经营数据70调用请求后,检查存储空间内是否已存在相同企业标识和相同日期区间的副本。发现已存在企业甲在2020年1月1日至2020年12月31日期间的日经营数据包的副本。同时为银行柄设置的限时时长同样为3天。
限时加密单元40获取3天内智能合约将展示的全部取值,即为{12,16,18,20,25,30,32,36,40}。计算取值相应的加密多项式函数值,记为限时样本集合。限时样本集合为{(12,510),(16,990),(18,1290),(20,1630),(25,2655),(30,3930),(32,4510),(36,5790),(40,7230)}。根据限时样本集合和加密样本集合重新生成替代加密多项式。即新生成的替代加密多项式需要经过如下样本点:(2,10),(3,15),(4,30),(5,55),(12,510),(16,990),(18,1290),(20,1630),(25,2655),(30,3930),(32,4510),(36,5790),(40,7230)。生成的一元多项式为:f(x)=2.5589784795167434*e-14*x^12-4.977516141910853*e-12*x^11+4.217441760115802*e-10*x^10-2.049251468195195*e-8*x^9+6.32754191538489*e-7*x^8-0.000013003618981054493*x^7+0.00018120162179808413*x^6-0.001713435200849489*x^5+0.010841763836198837*x^4-0.04453735987604546*x^3+5.11242107096221*x^2-20.15642023296832*x+30.090732410896486。
选择其中的3个项系数,使用预设变量替代,获得新的暂态多项式。暂态多项式为:g(x)=2.5589784795167434*e-14*x^12-4.977516141910853*e-12*x^11+4.217441760115802*e-10*x^10-2.049251468195195*e-8*x^9+6.32754191538489*e-7*x^8-0.000013003618981054493*x^7+0.00018120162179808413*x^6-0.001713435200849489*x^5+a*x^4+b*x^3+5.11242107096221*x^2+c*x+30.090732410896486。
将重新生成的替代加密多项式中的N个项系数使用预设变量替代获得暂态多项式,将暂态多项式使用新的调用请求的接收公钥加密后上传区块链20存储。银行丙使用私钥解密获得新生成的暂态多项式。若银行乙未及时访问智能合约,在第4天时,银行乙将无法再获得加密多项式,也就无法解密副本。而当天银行丙尚处于限时时长内。银行并读取第4天智能合约显示的3个样本点:(32,4510)、(36,5790)和(40,7230)。代入银行丙获得的暂态多项式,获得3个等式:1048576*a+32768*b+32*c=9260.1686983272、1679616*a+46656*b+36*c=15401.580563214和2560000*a+64000*b+40*c=24046.818661922。解算获得a、b和c的值,能够获得替代多项式,正确解密出秘钥Key。由于计算过程中存在误差,在实施时需要对结果进行近似取证操作,同时应尽可能保留更多的有效数字。如银行丙获得的替代多项式f(x)计算D1时,将数据组合(200,2,120,3,800,4,120,5,581)代入替代多项式f(x)得结果为D1=100*f(2)+60*f(3)+400*f(4)+60*f(5)+581=17781.000000151。与D1=17781的差值仅为0.000000151,具有足够高的精度,进行四舍五入取整即可。本实施例通过更新替代多项式和暂态多项式,能够使同一个副本以不同的限时时长进行共享,提高了副本的利用次数,省去了重复生成相同副本的操作。
相对于实施例一,本实施例能够对同企业和同日期区间经营数据70共享共用一个副本,同时不影响多个调用请求具有独立的共享限时时长,能够提高经营数据70共享的效率。
实施例三:
一种基于企业经营数据限时共享的贷款审批系统,包括接入单元10、限时加密单元40、贷款申请单元30、共享请求单元50和审批单元60,接入单元10、贷款申请单元30、共享请求单元50和审批单元60与实施例一相同。区别在于本实施例中限时加密单元40使用限时加密算法加密副本的过程包括:限时加密单元40在区块链上发布限时加密智能合约,限时加密智能合约包括加密接收栏、解密接收栏、输出栏和若干个加解密栏。如表5 所示,加解密栏包括栏标识、加密函数和时钟,时钟记录加密函数的更新剩余时长,更新剩余时长为0时,加解密栏更新加密函数并重置时钟。限时加密单元40使用对称加密算法加密副本,对称加密秘钥为Key,将Key提交限时加密智能合约进行加密,获得秘钥Key的密文。将秘钥Key的密文关联加密后的副本存储地址使用接收公钥加密,并关联调用者标识上传区块链存储。银行轮询区块链,使用私钥解密获得秘钥Key的密文和加密后的副本。将秘钥Key的密文提交限时加密智能合约,解密获得秘钥Key。使用秘钥Key解密副本获得副本的明文。加密函数为现有技术披露的对称加密算法,如DES、 3DES(TripleDES)和AES。加解密栏使用的加密秘钥由限时加密智能合约随机生成,并在时钟倒计时为0时,更新使用的加密秘钥,完成加密函数的更新。
表5 限时加密智能合约示意图
加解密栏1 {栏标识1,加密函数1,时钟1} 加解密栏2 {栏标识2,加密函数2,时钟2} … … 加解密栏60 {栏标识60,加密函数60,时钟60} 加密接收栏 {30d,DATA1.Pub_Key1} 解密接收栏 NULL 输出栏 NULL
加密接收栏收到的数据为{30d,DATA1.Pub_Key1},检查发现没有加解密栏的时钟与30d相符,因此限时加密智能合约,将处于初始状态的加解密栏5的时钟设置为30d,时钟为倒计时时钟,当加解密栏5的时钟倒计时至0时,加解密栏5将更新加密函数并重置时钟。在时钟倒计时至0前,加密函数不变,因此能够加密数据DATA1,同样的,也能够将加密后的数据解密回明文。但加解密栏5的时钟一旦倒计时至0,加密函数将被更新。此时再提交旧的加密函数加密过的DATA1,就无法正确解密。当第10天时,加解密栏5的时钟倒计时至20d,此时加密接收栏收到了限时时长为20d的数据。于是限时加密智能合约就将新写入的数据,交由加解密栏5进行加密。
限时加密智能合约进行加密时,请参阅附图7,执行以下步骤:步骤E01),当加密接收栏被写入数据时,检查写入的数据是否包含限时时长、待加密数据和接收公钥,若缺少限时时长、待加密数据或接收公钥则不做操作,反之,则使用限时加密智能合约的私钥解密获得待加密数据,进入步骤E02)进行加密;步骤E02),检查全部加解密栏的时钟,若存在时钟与限时时长相符,则将待加密数据关联加密标识符,提交给对应的加解密栏,获得经加解密栏的加密函数加密后的数据;步骤E03),限时加密智能合约使用私钥签名栏标识、限时时长和时间戳,将加密后的数据关联签名后,作为限时密文,将限时密文使用加密接收栏内的接收公钥加密后,写入输出栏,限时加密单元40读取输出栏,使用相应私钥解密获得限时密文。
限时加密智能合约进行解密时,请参阅附图8,执行以下步骤:步骤F01),当解密接收栏被写入数据时,检查写入的数据是否包含经限时加密智能合约公钥加密后的限时密文和接收公钥,若缺少限时密文或接收公钥,则不做操作,反之,则进入步骤F02);步骤F02),使用限时加密智能合约的私钥解密获得限时密文,使用限时加密智能合约的公钥解密限时密文中的签名,获得栏标识、限时时长和时间戳;步骤F03),限时加密智能合约判断当前时刻距离签名中的时间戳是否超出限时时长,若超出则将超时标识符写入输出栏,反之,则进入步骤F04);步骤F04),将加密后的数据关联解密标识符后,提交给签名中栏标识对应的加解密栏,获得经加解密栏的加密函数解密的数据,将数据使用接收公钥加密后,写入输出栏。
限时加密智能合约的加密接收栏、解密接收栏或输出栏被写入数据时,限时加密智能合约锁定加密接收栏、解密接收栏和输出栏,在预设的时长内,加密接收栏、解密接收栏和输出栏不接受新数据的写入,当加密接收栏写入的数据缺少限时时长、待加密数据或公钥时,限时加密智能合约立即解除加密接收栏、解密接收栏和输出栏的锁定,当解密接收栏写入的数据缺少限时密文或公钥时,限时加密智能合约立即解除加密接收栏、解密接收栏和输出栏的锁定。
相对于实施例一和实施例二,本实施例记载的限时加密方案具有更高的安全性。但因加解密均需要限时加密智能合约在区块链上完成,导致对区块链资源的占用比较多。在区块链业务比较拥挤时,会影响限时加解密的时效。
以上所述的实施例只是本发明的一种较佳的方案,并非对本发明作任何形式上的限制,在不超出权利要求所记载的技术方案的前提下还有其它的变体及改型。
本文发布于:2023-04-14 15:59:53,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/3/86704.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |