1.本技术涉及区块链技术领域,尤其涉及一种基于区块链的风险评估方法、装置及设备。
背景技术:2.随着经济的发展与技术的进步,各个融资机构所提供的融资产品也越来越多。在融资业务运营过程中,通常需要针对各个用户的融资申请进行风险控制,以降低风险事件发生的可能性,保障企业及用户权益。目前,各个融资机构通常会自行设置该机构所需使用的风险控制策略,并从可信机构处请求获取相关用户信用数据,以利用其风险控制策略及相关用户信息数据,去评估用户的融资申请所存在的风险。
3.基于此,如何兼顾对于用户融资申请的风险评估的效率及准确性,成为了亟待解决的技术问题。
技术实现要素:4.本说明书实施例提供的一种基于区块链的风险评估方法、装置及设备,可以提升针对用户的融资申请进行风险评估时的效率及准确性。
5.为解决上述技术问题,本说明书实施例是这样实现的:
6.本说明书实施例提供的一种基于区块链的风险评估方法,包括:
7.区块链系统获取用户的第一区块链交易;所述第一区块链交易中携带有所述用户的融资申请信息;
8.调用所述区块链系统中部署的第一类智能合约,根据所述融资申请信息及第一链上信用数据进行风险识别处理,得到第一风险识别结果;
9.判断所述第一风险识别结果表示的融资风险程度是否低于预设融资风险程度;
10.若是,则根据所述第一风险识别结果,确定所述用户的融资风险;
11.若否,则调用所述区块链系统中部署的第二类智能合约,根据所述融资申请信息及所述用户的第二链上信用数据进行风险识别处理,得到第二风险识别结果;所述第二类智能合约的风险识别处理速度小于所述第一类智能合约的风险识别处理速度;
12.根据所述第二风险识别结果,确定所述用户的融资风险。
13.本说明书实施例提供的一种基于区块链的风险评估装置,包括:
14.第一获取模块,用于令区块链系统获取用户的第一区块链交易;所述第一区块链交易中携带有所述用户的融资申请信息;
15.第一调用模块,用于调用所述区块链系统中部署的第一类智能合约,根据所述融资申请信息及第一链上信用数据进行风险识别处理,得到第一风险识别结果;
16.判断模块,用于判断所述第一风险识别结果表示的融资风险程度是否低于预设融资风险程度;
17.第一确定模块,用于当所述第一风险识别结果表示的融资风险程度低于预设融资
风险程度时,根据所述第一风险识别结果,确定所述用户的融资风险;
18.第二调用模块,用于当所述第一风险识别结果表示的融资风险程度不低于预设融资风险程度时,调用所述区块链系统中部署的第二类智能合约,根据所述融资申请信息及所述用户的第二链上信用数据进行风险识别处理,得到第二风险识别结果;所述第二类智能合约的风险识别处理速度小于所述第一类智能合约的风险识别处理速度;
19.第二确定模块,用于根据所述第二风险识别结果,确定所述用户的融资风险。
20.本说明书实施例提供的一种基于区块链的风险评估设备,包括:
21.至少一个处理器;以及,
22.与所述至少一个处理器通信连接的存储器;其中,
23.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
24.获取用户的第一区块链交易;所述第一区块链交易中携带有所述用户的融资申请信息;
25.调用所述区块链系统中部署的第一类智能合约,根据所述融资申请信息及第一链上信用数据进行风险识别处理,得到第一风险识别结果;
26.判断所述第一风险识别结果表示的融资风险程度是否低于预设融资风险程度;
27.若是,则根据所述第一风险识别结果,确定所述用户的融资风险;
28.若否,则调用所述区块链系统中部署的第二类智能合约,根据所述融资申请信息及所述用户的第二链上信用数据进行风险识别处理,得到第二风险识别结果;所述第二类智能合约的风险识别处理速度小于所述第一类智能合约的风险识别处理速度;
29.根据所述第二风险识别结果,确定所述用户的融资风险。
30.本说明书中提供的至少一个实施例能够实现以下有益效果:
31.区块链系统获取携带有用户的融资申请信息的第一区块链交易后,首先调用区块链系统中部署的风险识别处理速度较快的第一类智能合约,根据第一链上信用数据和所述融资申请信息,对用户的融资申请进行第一次风险识别处理,若第一次风险识别处理结果表示的融资风险程度低于预设融资风险程度,则根据该第一风险识别结果,确定用户的融资风险,如此,有利于提高风险评估效率,以及,若第一次风险识别处理结果表示的融资风险程度不低于预设融资风险程度,则调用区块链系统中部署的第二类智能合约,根据融资申请信息及更全面的第二链上信用数据,对用户的融资申请进行第二次风险识别处理,并根据第二次风险识别处理结果,确定用户的融资风险,如此,有利于提高风险评估结果的准确性,从而可以兼顾对于用户融资申请的风险评估的效率及准确性。
附图说明
32.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
33.图1为本说明书实施例提供的一种基于区块链的风险评估方法的应用场景示意图;
34.图2为本说明书实施例提供的一种基于区块链的风险评估方法的流程示意图;
35.图3为本说明书实施例提供的对应于图2中的基于区块链的风险评估方法的泳道流程示意图;
36.图4为本说明书实施例提供的对应于图2的一种基于区块链的风险评估装置的结构示意图;
37.图5为本说明书实施例提供的对应于图2的一种基于区块链的风险评估设备的结构示意图。
具体实施方式
38.为使本说明书一个或多个实施例的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书一个或多个实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书一个或多个实施例保护的范围。
39.以下结合附图,详细说明本说明书各实施例提供的技术方案。
40.现有技术的融资业务运营过程中,为了降低风险事件发生的概率,以及保障企业及用户权益,通常需要针对各个用户的融资申请进行风险控制。具体的,各个融资机构通常会自行设置该机构所需使用的风险控制策略,由于这些风险控制策略依赖于单个融资机构处的工作人员的人工经验,从而影响融资风险评估结果的准确性。同时,由于单个融资机构处的相关用户信息数据量较少,从而需要融资机构去从可信机构处请求获取相关用户信用数据,可信机构对于相关用户信用数据的反馈耗时,会严重影响融资风险评估的效率。基于此,如何兼顾对于用户融资申请的风险评估的效率及准确性,成为了亟待解决的技术问题。
41.为了解决现有技术中的缺陷,本方案给出了以下实施例:
42.图1为本说明书实施例提供的一种基于区块链的风险评估方法的应用场景示意图。
43.如图1所示,区块链系统101中可以包含多个区块链节点设备。终端设备102在获取智能合约部署人员的智能合约部署操作后,可以响应于所述智能合约部署操作,向区块链系统101发送携带有智能合约部署信息的区块链交易。区块链系统101在接收到该区块链交易后,可以根据所述智能合约部署信息在区块链系统101中部署相应智能合约。
44.在实际应用中,区块链系统101中可以部署有第一类智能合约、第二类智能合约、第三类智能合约及第四类智能合约。其中,第一类智能合约和所述第二类智能合约均可以用于识别金融申请存在的风险,且所述第一类智能合约的风险识别处理速度比第二类智能合约要快一些。第三类智能合约则能针对第一类智能合约和所述第二类智能合约本身、所使用的数据及所生成的风险识别结果进行有效性验证,以解决系统性风险。第四类智能合约可以提供目标运算符的程序代码,以便于第一类智能合约、第二类智能合约、第三类智能合约在运行时调用,不仅能够使得多个智能合约共用同一段程序代码,以节省区块链系统处的存储资源,且能够令各个智能合约的编写格式相同,便于智能合约的部署及解析。
45.终端设备103在获取到融资申请用户的融资申请操作后,可以响应于所述融资申请操作,向区块链系统101发送携带有融资申请信息的第一区块链交易。区块链系统101在
接收到所述第一区块链交易后,首先调用所述第一类智能合约,根据根据所述融资申请信息及第一链上信用数据对用户的融资申请进行风险识别处理,得到第一风险识别结果,若第一风险识别结果结果表示的融资风险程度低于预设融资风险程度,则利用第三类智能合约对第一风险识别结果进行有效性验证,并仅根据有效的第一风险识别结果,确定用户的融资风险,如此,有利于提高风险评估效率;若第一风险识别结果结果表示的融资风险程度不低于预设融资风险程度,则调用所述第二类智能合约,根据融资申请信息及更全面的第二链上信用数据再次对用户的融资申请进行风险识别处理,得到第二风险识别结果,然后,利用第三类智能合约对第二风险识别结果进行有效性验证,并仅根据有效的第二风险识别结果,确定用户的融资风险,如此,有利于提高风险评估结果的准确性,从而可以兼顾对于用户融资申请的风险评估的效率及准确性。
46.接下来,将针对说明书实施例提供的一种基于区块链的风险评估方法结合附图进行具体说明:
47.图2为本说明书实施例提供的一种基于区块链的风险评估方法的流程示意图。从程序角度而言,该流程的执行主体可以为区块链系统,或者区块链系统中运行的应用程序。如图2所示,该流程可以包括以下步骤:
48.步骤202:区块链系统获取用户的第一区块链交易;所述第一区块链交易中携带有所述用户的融资申请信息。
49.在本说明书实施例中,区块链(block chain),可以理解为是多个区块顺序存储构成的数据链,每个区块的区块头都包含有本区块的时间戳、前一个区块信息的哈希值和本区块信息的哈希值,由此实现区块与区块之间的相互验证,构成不可篡改的区块链。每个区块都可以理解为是一个数据块(存储数据的单元)。区块链作为一种去中心化的数据库,是一串使用密码学方法相互关联产生的数据块,每一个数据块中包含了一次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块与区块首尾相连形成的链,即为区块链。若需要修改块内数据,则需要修改此区块之后所有区块的内容,并将区块链网络中所有节点备份的数据进行修改。因此,区块链具有难以篡改、删除的特点,在数据已保存至区块链后,其作为一种保持内容完整性的方法具有可靠性。
50.本说明书实施例中,可以预先在多个设备上分别部署区块链的相关程序代码,从而创建包含多个区块链节点的区块链系统。在实际应用中,该区块链系统既可以用于运行联盟链,也可以用于运行公有链或私有链,对此不作具体限定。
51.本说明书实施例中,用户可以通过分布式应用(decentralized application,dapp)生成携带有融资申请信息的第一区块链交易,并将第一区块链交易发送给区块链系统,以通过第一区块链交易向区块链系统发起融资请求。
52.其中,用户既可以是企业,也可以是个人。而融资申请信息可以包括用户身份信息、质押物信息、预期贷款金额等信息。在实际应用中,用户身份信息既可以是用户当前输入的身份信息,例如,企业营业执照等,或者,也可以是用户预先在区块链系统处注册的去中心化身份(decentralized identity,did)信息等。而质押物信息可以是用于反映该用户的资产的信息,例如,用于证明该用户具有指定设备的设备购买发票信息,用于证明客户的待付款的发票信息,房产信息等,对此不作具体限定。
53.dapp具有交易安全性高的优点,本说明书实施例支持用户通过dapp生成第一区块
链交易,有利于提高用户的交易安全。而did具有可验证的优点,可信度高,本说明书实施例支持did作为用户身份信息,有利于保证用户身份信息的真实性,以及,did还具有申请方便,以及能够有效保护用户隐私的优点,本说明书实施例支持did作为用户身份信息,有利于提升用户体验。
54.融资申请信息还可以包括用户自定义信息。用户自定义信息没有格式限制,这使得不同用户写入的用户自定义信息的格式可能不同,为了使得区块链系统能够成功识别各用户的用户自定义信息,区块链系统接收到用户自定义信息后,可以通过区块链系统部署的申请数据标准化转化合约,将各用户的用户自定义信息转化为特定格式的信息数据,以令区块链系统根据转化后的用户自定义信息进行风险识别处理。
55.步骤204:调用所述区块链系统中部署的第一类智能合约,根据所述融资申请信息及第一链上信用数据进行风险识别处理,得到第一风险识别结果。
56.在本说明书实施例中,区块链系统中可以部署有进行融资风险识别的第一类智能合约和第二类智能合约,其中,第一类智能合约的风险识别处理速度大于第二类智能合约的风险识别处理速度。且通常情况下,第一类智能合约所需使用的链上信息数据的数据类型及数据量均少于第二类智能合约。
57.具体的,第一类智能合约根据第一链上信用数据和用户的融资申请信息可以确定用户的类别,用户类别包括可信用户和可疑用户,其中,针对可信用户,可直接确定其融资风险程度低于预设融资风险程度,如此,提高了可信用户的风险识别处理效率,进而提高了本说明书实施例的风险评估效率;针对可疑用户,需要通过调用区块链系统中部署的第二类智能合约,再次对其进行风险识别处理,以提高可疑用户的风险识别处理结果的准确性,进而提高了本说明书实施例的风险评估结果的准确性。
58.步骤206:判断所述第一风险识别结果表示的融资风险程度是否低于预设融资风险程度,若是,执行步骤208,否则,执行步骤210。
59.步骤208:根据所述第一风险识别结果,确定所述用户的融资风险。
60.在本说明书实施例中,当第一风险识别结果表示的融资风险程度低于预设融资风险程度时,可以调用区块链系统中部署的第一风险决策智能合约,根据第一风险识别结果最终确定用户的融资风险。在实际应用中,第一风险决策智能合约的合约代码在执行时,可以将第一风险识别结果作为输入参数,以根据第一风险识别结果和用户的融资申请信息最终确定用户的融资风险。
61.步骤210:调用所述区块链系统中部署的第二类智能合约,根据所述融资申请信息及所述用户的第二链上信用数据进行风险识别处理,得到第二风险识别结果;所述第二类智能合约的风险识别处理速度小于所述第一类智能合约的风险识别处理速度。
62.在本说明书实施例中,针对第一风险识别结果表示的融资风险程度不低于预设融资风险程度的用户,还可以通过调用第二类智能合约对这类用户进行第二次风险识别处理,以更准确地确定这类用户的融资风险程度,有利于提高风险评估结果的准确性。
63.用户的第二链上信用数据至少包括如下一种信息数据:用户在区块链系统中已完成的融资产品订单、用户与其他用户进行业务往来的信息、融资机构认可的征信中心反馈的用户融资风险数据、区块链系统中存储的基于预言机获取的用户的链下信用数据。
64.其中,用户在区块链系统中已完成的融资产品订单,可以用于确定用户本次融资
申请时提交的目标质押物是否已被质押。具体的,当用户在区块链系统中已完成的融资产品订单中包括用户的目标质押物时,可以认为用户的目标质押物已被质押;当用户在区块链系统中已完成的融资产品订单中不包括用户的目标质押物时,可以认为用户的目标质押物未被质押的可能性较大。其次,用户与其他用户进行业务往来的信息可以是关于质押物的合同和/或收付款凭证等,根据用户与其他用户进行业务往来的信息可以确定用户的质押物信息的真实性。需要说明的是,用户的质押物可以为多个,本说明书实施例对用户的质押物进行估价,具体为对用户的所有质押物的进行估价,以确定总估价的数值。
65.当然,融资机构认可的征信中心反馈的用户融资风险数据、区块链系统中存储的基于预言机获取的用户的链下信用数据也可以用于验证质押物的真实性及是否已被质押,同时,还可以用于确定用户的信用度。
66.在实际应用中,调用所述区块链系统中部署的第二类智能合约,根据所述融资申请信息及所述用户的第二链上信用数据进行风险识别处理,得到第二风险识别结果,具体可以包括:
67.执行所述第二类智能合约的合约代码,得到第二风险识别结果;所述第二类智能合约的合约代码在执行时,用于根据所述用户的身份信息,获取所述区块链系统中存储的所述用户的第二链上信用数据,根据所述第二链上信用数据,生成针对所述质押物信息的估价结果,根据所述估价结果及所述第二链上信用数据进行风险识别处理,得到第二风险识别结果。
68.具体的,在对质押物信息的进行估价的过程中,可以是:首先根据用户与其他用户进行业务往来的信息判断质押物的真实性,若质押物为假,则结束对质押物的估价过程,若质押物为真,则根据用户在区块链系统中已完成的融资产品订单,判断质押物是否已被质押,若质押物已被质押,则对质押物进行折价,折价结果最低为0,若质押物未被质押,则对质押物进行估价,得到估价结果。后续,还可以根据质押物的估价结果及第二链上信用数据,对用户的融资申请进行风险识别处理,得到第二风险识别结果。
69.步骤212:根据所述第二风险识别结果,确定所述用户的融资风险。
70.在本说明书实施例中,第二风险识别结果可以为能够表示用户融资风险程度的数据,例如,第二风险识别结果可以为用户的信用分值数据或信用等级数据。区块链系统在确定出第二风险识别结果后,可以调用区块链系统中部署的第二风险决策智能合约,并将第二风险识别结果作为输入数据,以确定用户的最终融资风险。
71.图2中的方法,区块链系统在获取用户的第一区块链交易后,首先调用区块链系统中部署的风险识别处理速度较快的第一类智能合约进行第一次风险识别处理,以快速确定出融资风险程度低于预设融资风险程度的用户,针对该类用户,直接根据第一次风险识别处理结果确定其融资风险,使得本说明书实施例的风险评估效率提高,而对于融资风险程度不低于预设融资风险程度的用户,调用区块链系统中部署的第二类智能合约进行第二次风险识别处理,并根据第二次风险识别处理结果,确定这类用户的融资风险,使得本说明书实施例的风险评估结果的准确性提高,最终使得本说明书实施例兼顾了对于用户融资申请的风险评估的效率及准确性。
72.基于图2中的方法,本说明书实施例还提供了该方法的一些具体实施方案,下面进行说明。
73.在本说明书实施例中,在调用区块链系统中部署的第一类智能合约,根据融资申请信息及第一链上信用数据对用户的融资申请进行风险识别处理后,若得到第一风险识别结果表示的融资风险程度低于预设融资风险程度,则直接根据该用户的第一风险识别结果确定用户的融资风险,以提高对用户进行风险评估的效率。可见,如何根据融资申请信息及第一链上信用数据快速且准确地对用户的融资申请进行风险识别处理,是提高本说明书实施例的风险评估效率的关键。
74.基于此,所述第一链上信用数据可以包括链上风险名单数据。
75.对应的,步骤204,调用所述区块链系统中部署的第一类智能合约,根据所述融资申请信息及第一链上信用数据进行风险识别处理,得到第一风险识别结果,具体可以包括:
76.执行所述第一类智能合约的合约代码,得到第一风险识别结果;所述第一类智能合约的合约代码在执行时,用于将所述用户的身份信息与所述链上风险名单数据进行比对,得到比对结果,根据所述比对结果,生成第一风险识别结果。
77.在本说明书实施例中,链上风险名单数据可以为存储于区块链系统中的链上风险名单中的数据。该链上风险名单的类型可以有多种,例如,用户类名单、设备类名单等。其中,用户类名单可以包括:企业名称名单和个人名称名单。设备类名单可以包括:互联网协议地址(internet protocol address,ip)名单、设备唯一标识(unique device identifier)名单等。
78.在实际应用中,链上风险名单的数量可以是至少一张,第一类智能合约的数量可以是至少一条,各链上风险名单的验证方式决定了第一类智能合约的数量,具体的,若各链上风险名单的验证方式一样,则第一类智能合约的数量为一条,即各链上风险名单公用一条第一类智能合约;若各链上风险名单的验证方式不一样,则每种验证方式对应一条第一类智能合约。如此,减少了第一类智能合约的数量,降低了开发人员的工作量。
79.链上风险名单的验证方式包括:若用户在链上风险名单中,则确定用户的融资风险程度低于预设融资风险程度,以及,若用户在链上风险名单中,则确定用户的融资风险程度不低于预设融资风险程度等。本说明书实施例的各链上风险名单的验证方式可以相同,也可以不同,本说明书实施例在此不做限定。
80.本说明书实施例采用上述方案,通过比对用户的身份信息与链上风险名单数据,根据比对结果,生成包含用户的融资风险程度的第一风险识别结果,使得本说明书实施例能够快速且准确地确定出用户的融资风险程度,进而有利于提高本说明书实施例的风险评估的效率。
81.在实际应用中,链上风险名单可能需要进行更改,例如,某用户拒绝按时还款,被列为失信用户,该情况下,需要根据该某用户的情况更改链上风险名单。在更改链上风险名单时,若能只更改链上风险名单,而不用更改对应的第一类智能合约,将有利于降低开发人员的工作量,进而降低区块链系统的运维成本。
82.基于此,当所述链上风险名单数据为所述区块链系统中存储的风险名单中的数据时,本说明书实施例的方法还可以包括:
83.所述区块链系统获取第二区块链交易;所述第二区块链交易用于在所述风险名单中添加若干用户身份信息,或者,所述第二区块链交易用于标识所述风险名单中的若干用户身份信息已失效。
84.根据所述第二区块链交易,对所述风险名单进行更新,得到更新后的链上风险名单数据。
85.在本说明书实施例中,第一链上信用数据并未以硬编码的形式写入第一类智能合约的合约代码中,而是令第一类智能合约具有调用可更新的第一链上信用数据的能力,如此,可以通过便捷地更新第一链上信用数据(链上风险名单),而无需更改并重新部署第一类智能合约,就可以利用第一类智能合约基于更新后的第一链上信息数据,准确地确定出信用情况发生变动的各个用户的当前融资风险,有利于降低本说明书实施例的区块链系统的运维成本。
86.在本说明书实施例中,若通过第一类智能合约和第一链上信用数据确定出用户的融资风险程度不低于预设融资风险程度,则需要对该用户进行进一步的风险识别处理,以使本说明书实施例在提高风险评估效率的情况下,兼顾风险评估结果的准确性。可见,如何精确地对融资风险程度不低于预设融资风险程度的用户融资申请进行风险识别处理是本说明书实施例需要解决的技术问题。
87.基于此,步骤210中提及的第二类智能合约可以包括:第一智能合约、第二智能合约及第三智能合约中的至少一种。其中,所述第一智能合约用于基于机器学习模型进行风险识别处理,所述第二智能合约用于基于评分卡模型进行风险识别处理,所述第三智能合约用于基于预设策略进行风险识别处理。
88.在本说明书实施例中,第一智能合约的合约代码在执行时,可以将用户的第二链上信用数据输入至预先训练好的机器学习模型,以使机器学习模型输出第一风险识别子结果。由于机器学习模型风险识别效率高,且风险识别结果准确性高,有利于提高本说明书实施例的风险评估效率和风险评估结果的准确性。
89.第二智能合约的合约代码在执行时,可以将用户的第二链上信用数据输入至评分卡模型,并根据评分卡模型的评分标准确定第二风险识别子结果。具体的,评分卡模型中设置有多个评分策略,每个评分策略可以独立对应一个评分标准,例如,评分策略为:用户的违约次数是否大于5次,对应的评分标准为:若用户的违约次数大于5次,则该用户得1分,否则,该用户得5分等。从而基于评分卡模型可以确定用户的信用分数或信用等级。评分卡模型可以通过设置全面且详细的评分策略来精确地进行融资风险识别处理,有利于提高本说明书实施例的风险评估结果的准确性。
90.第三智能合约的合约代码在执行时,可以根据用户的第二链上信用数据和预设策略,确定第三风险识别子结果。具体的,第一智能合约及第二智能合约通常较为稳定,不会频繁变化,当融资业务运营过程中,往往存在需要临时实施的风险控制策略,因此可以根据实际需求,设置第三智能合约处的预设策略,以满足业务需求。例如,当需要临时限制a类企业的贷款金额不超过指定金额时,预设策略可以设置为若申请融资的企业的企业类型为a类企业,则将该企业的融资额度的最大值设置为指定金额。后续,若不再限制a类企业的贷款金额的最大值,则可以针对该预设策略生成的风险识别处理结果设置无效标识,从而不再限制该企业的融资额度的最大值。如此,满足了融资机构需要根据实际情况更改风险控制策略的需求,方便快捷。
91.在本说明书实施例中,若目标风险识别结果(为第一风险识别结果或第二风险识别结果)是无效数据,则根据目标风险识别结果,确定出的用户的融资风险将与用户的实际
融资风险不符,因此,为了提高本说明书实施例的风险评估结果的准确性,在根据目标风险识别结果,确定用户的融资风险过程中,需要对目标风险识别结果进行有效性验证。
92.基于此,步骤208,所述根据所述第一风险识别结果,确定所述用户的融资风险,具体可以包括:
93.调用所述区块链系统中部署的第三类智能合约,针对所述第一风险识别结果进行有效性验证,得到第一验证结果。
94.若所第一验证结果符合第一验证通过条件,则根据所述第一风险识别结果,确定所述用户的融资风险。
95.对应的,步骤212,所述根据所述第二风险识别结果,确定所述用户的融资风险,具体包括:
96.调用所述第三类智能合约,针对所述第二风险识别结果进行有效性验证,得到第二验证结果。
97.若所述第二验证结果符合第二验证通过条件,则根据所述第二风险识别结果,确定所述用户的融资风险。
98.在本说明书实施例中,还可以在区块链系统中部署第三类智能合约,以针对第一类智能合及第二类智能合约生成的风险识别结果进行有效性验证。
99.在实际应用中,针对第一风险识别结果,可以是验证出第一风险识别结果中的至少部分风险识别结果无效,针对无效的这部分第一风险识别结果添加无效标识,从而使得后续可以仅根据未携带无效标识的第一风险识别结果去确定用户的融资风险。同理,针对第二风险识别结果,可以是验证出第二风险识别结果中的至少部分风险识别结果无效,针对无效的这部分第二风险识别结果添加无效标识,从而使得后续可以仅根据未携带无效标识的第二风险识别结果去确定用户的融资风险。
100.本说明书实施例通过验证目标风险识别结果(为第一风险识别结果或第二风险识别结果)的有效性,并仅根据验证有效的风险识别结果确定用户的融资风险,以提高本说明书实施例的风险评估结果的准确性。同时有利于解决由于全局风险导致的系统性风险的决策。
101.在本说明书实施例中,由于第一风险识别结果是根据第一类智能合约和第一链上信用数据确定出,因此,可以通过验证第一类智能合约和第一链上信用数据的安全性,以准确地确定第一风险识别结果的有效性。同理,第二风险识别结果是根据第二类智能合约和第二链上信用数据确定出的,因此,可以通过验证第二类智能合约和第二链上信用数据的安全性,以准确地确定第二风险识别结果的有效性。
102.基于此,基于步骤208,所述调用所述区块链系统中部署的第三类智能合约,针对所述第一风险识别结果进行有效性验证,具体可以包括:
103.调用所述第三类智能合约,针对所述第一类智能合约及所述第一链上信用数据进行安全性验证;其中,所述第一类智能合约包括跨链智能合约,所述第一链上信用数据包括跨链数据。
104.基于步骤212,所述调用所述第三类智能合约,针对所述第二风险识别结果进行有效性验证,具体可以包括:
105.调用所述第三类智能合约,针对所述第二类智能合约及所述第二链上信用数据进
行安全性验证;其中,所述第二类智能合约包括跨链智能合约,所述第二链上信用数据包括跨链数据。
106.在本说明书实施例中,针对目标链上信用数据(为第一链上信用数据或第二链上信用数据)进行安全性验证,具体可以包括:验证获取到的链上信用数据是否被篡改,以及验证链上信用数据的提交机构是否是可信机构等。针对目标智能合约(为第一类智能合约或第二类智能合约)进行安全性验证,具体可以包括:验证智能合约的合约代码是否被篡改和验证部署智能合约的用户是否可靠等。
107.需要说明的是,一个目标智能合约(例如,第一类智能合约及第二类智能合约)可以用于实现多条风险控制策略,在针对目标智能合约进行安全性验证时,具体可以为验证目标智能合约中的各风险控制策略是否被篡改和/或策略部署用户是否可靠,验证结果可以是目标智能合约中的全部风险控制策略有效、部分风险控制策略有效或者全部风险控制策略无效。如此,实现对目标智能合约的安全性进行精确验证的目的,避免了有效的风险控制策略被无效掉。
108.具体的,目标智能合约生成的风险识别结果会以消息形式推送至第三类智能合约,第三类智能合约还可以从状态树中获取目标智能合约的合约信息,从而能够实现对于目标智能合约本身及目标智能合约运行时所使用的链上信用数据的安全性验证,并基于验证结果,确定目标智能合约生成的风险识别结果的有效性。
109.在实际应用中,第一类智能合约及第二类智能合约可以包括跨链智能合约,第一链上信用数据及第二链上信用数据也可以包括跨链数据,从而利用第三类智能合约还能够实现跨链风险管控。当然,第一类智能合约及第二类智能合约还可以包括区块链系统内的智能合约,第一链上信用数据及第二链上信用数据还可以包括本区块链系统上的链上信用数据。如此,以使本说明书实施例能够更准确地验证第一风险识别结果和第二风险识别结果的有效性。
110.在本说明书实施例中,若智能合约被验证无效,则需要对该智能合约所生成的风险识别结果设置失效标识。
111.基于此,基于步骤208,所述调用所述区块链系统中部署的第三类智能合约,针对所述第一风险识别结果进行有效性验证,具体可以包括:
112.调用所述第三类智能合约,针对所述第一风险识别结果中的第三风险识别结果设置失效标识;所述第三风险识别结果为所述第一类智能合约中的失效智能合约所生成的风险识别结果。
113.基于步骤212,所述调用所述第三类智能合约,针对所述第二风险识别结果进行有效性验证,具体可以包括:
114.调用所述第三类智能合约,针对所述第二风险识别结果中的第四风险识别结果设置失效标识;所述第四风险识别结果为所述第二类智能合约中的失效智能合约所生成的风险识别结果。
115.由上述分析可知,在针对目标智能合约(为第一类智能合约或第二类智能合约)进行安全性验证时,验证结果可以是目标智能合约中的全部风险控制策略无效或者部分风险控制策略无效,本说明书实施例具体对无效的风险控制策略所生成的风险识别结果设置失效标识,以使有效的风险控制策略所生成的风险识别结果均能够用于评估用户的融资风
险,有利于提高本说明书实施例的风险评估结果的准确性。
116.在本说明书实施例中,即使智能合约的合约代码没有被篡改,且该智能合约的部署用户是可靠的,该智能合约也可能因为本身设置不合理而使得该智能合约需要被无效掉。在实际应用中,可以是区块链系统根据预设失效条件和智能合约的运行数据验证智能合约无效,也可以是相关人员(例如智能合约部署人员)根据预设失效条件和智能合约的运行数据确定智能合约无效。
117.基于此,步骤208,所述针对所述第一风险识别结果中的第三风险识别结果设置失效标识之前,本说明书实施例的方法还可以包括:
118.根据所述第一类智能合约在预设时间段内的执行结果,确定所述第一类智能合约中的符合预设失效条件的智能合约,得到所述第一类智能合约中的失效智能合约;或者,根据接收到的第三区块链交易中携带的失效智能合约的标识信息,确定所述第一类智能合约中的失效智能合约。
119.对应的,步骤212,所述针对所述第二风险识别结果中的第四风险识别结果设置失效标识之前,还可以包括:
120.根据所述第二类智能合约在预设时间段内的执行结果,确定所述第二类智能合约中的符合预设失效条件的智能合约,得到所述第二类智能合约中的失效智能合约;或者,根据接收到的第四区块链交易中携带的失效智能合约的标识信息,确定所述第二类智能合约中的失效智能合约。
121.在本说明书实施例中,预设失效条件可以是智能合约在预设时间段内的策略失败率是否满足预设失败率标准,其中,策略失败率可以基于智能合约确定出的不满足订购融资产品条件的用户占所有提交融资申请的用户的比值(百分比)。预设失败率标准可以由融资机构根据实际情况设定,以不影响融资机构的正常业务执行为准。例如,预设失效条件可以是:在预设时间段内,当基于某智能合约确定出的不满足订购融资产品条件的用户占所有提交融资申请的用户的比值大于50%,则确定该某智能合约无效。如此,使得不合理的智能合约能够及时被无效掉,有利于提高智能合约的有效性。
122.其次,在实际应用中,也可以是智能合约的部署人员或其他相关人员发现智能合约部署的不合理,其运行结果影响了融资机构正常业务的运行,此时,发现智能合约不合理的人员可以主动向区块链系统提交携带的失效智能合约的标识信息的第三区块链交易,以使区块链系统根据第三区块链交易确定失效智能合约,如此,满足了用户需要将不合理的智能合约无效掉的需求,同时,提高了智能合约的有效性。
123.在本说明书实施例中,各智能合约运行过程中所需使用的运算符可能会有重复,若在各智能合约中重复部署用于实现同一运算符的程序代码,会使区块链系统的存储空间产生不必要的浪费,以及,增加智能合约部署人员的工作量,因此,有必要减少在各智能合约中重复部署相同的运算符对应的程序代码。
124.基于此,所述调用所述区块链系统中部署的第一类智能合约之前,本说明书实施例的方法还可以包括:
125.获取用于部署第四类智能合约的第五区块链交易;所述第四类智能合约的合约代码中包含用于执行预设运算符对应的计算的程序代码。
126.存储所述第四类智能合约的合约代码至所述区块链系统。
127.获取用于部署目标智能合约的第六区块链交易;所述目标智能合约包括所述第一类智能合约、所述第二类智能合约及所述第三类智能合约中的至少一种,所述目标智能合约在运行时,通过调用所述第四类智能合约的合约代码,以执行所述预设运算符对应的计算。
128.响应于所述第六区块链交易,在所述区块链系统中部署所述目标智能合约。
129.在本说明书实施例中,第四类智能合约的程序代码中可以包含若干方法对应的运算符的程序代码。具体的,每个方法里可以包含若干运算符,且每个方法中的运算符为一类运算符,例如,第一方法包括大于、等于和小于这三个运算符,第二方法包括and和or这两个运算符等。通过部署第四类智能合约的程序代码至区块链系统,并令第一类智能合约、第二类智能合约及第三类智能合约在运行过程中需要调用指定运算符的程序代码时,可以直接调用第四类智能合约的程序代码,从而实现同一运算符对应的程序代码的复用,有利于避免区块链系统的存储空间的浪费。
130.具体的,通常需要先部署第四类智能合约,并将第四类智能合约的合约地址写入第一类智能合约、第二类智能合约及第三类智能合约的程序代码中,从而在部署第一类智能合约、第二类智能合约及第三类智能合约后,使得其可以通过第四类智能合约的合约地址去调用第四类智能合约的合约代码,进而执行指定运算符对应的计算。
131.由于第一类智能合约、第二类智能合约及第三类智能合约用于实现融资风险控制策略,因处,在部署第一类智能合约、第二类智能合约及第三类智能合约时,除了需要提交合约框架代码以外,还可以在合约框架代码中携带部分用于执行预设风险控制策略的信息。当然,也可以仅提交合约框架代码,并在部署成功上述智能合约后,再更新各个智能合约所需执行的风险控制策略,对此不作具体限定。
132.本说明书实施例中,当需要更新目标智能合约,以使更新后的目标智能合约执行新增风险控制策略,以满足相关风险识别处理要求时,具体可以,在所述区块链系统中部署所述目标智能合约之后执行以下步骤:
133.获取用于更改所述目标智能合约的第七区块链交易;所述第七区块链交易用于新增所述目标智能合约所需执行的风险控制策略,所述第七区块链交易中携带有所述风险控制策略的目标运算符、所述目标运算符的左值信息及所述目标运算符的右值信息。
134.响应于所述第七区块链交易,对所述目标智能合约进行更改,得到更新后的目标智能合约;所述更新后的目标智能合约在运行时,通过调用所述第四类智能合约中的用于执行所述目标运算符对应的计算的程序代码,根据所述左值信息与所述右值信息,生成针对所述风险控制策略的执行结果。
135.具体的,第七区块链交易可由区块链系统的管理方向区块链系统发送,第七区块链交易中可以携带有管理方的did、账户信息和签名,以使区块链系统根据这些信息确认管理方具有修改智能合约的权限;需要说明的是,管理方在发起第七区块链交易之前,第七区块链交易中的风险控制策略需要在链下经过各融资机构的审核,即第七区块链交易中的风险控制策略为通过审核的风险控制策略,以保障各融资机构的权益。
136.其次,所述第七区块链交易中可以在指定字段中携带所述风险控制策略的目标运算符、所述目标运算符的左值信息及所述目标运算符的右值信息,以便于区块链系统解析、识别执行所述风险控制策略。为便于理解,针对目标运算符的左值信息及右值信息进行举
例说明。例如,假定,需要判断用户的违约次数是否大于5次,则目标运算符可以为大于运算符,其左值信息可以为用户的违约次数,右值信息可以为5。
137.所述第七区块链交易中还可携带有目标智能合约的合约地址、交易接收方的账户信息、交易发起方的账户信息和目标运算符所属的方法的名称,使得区块链系统能够根据目标智能合约的合约地址确定目标智能合约,根据交易接收方的账户信息和交易发起方的账户信息确定交易的合法性,以及根据目标运算符所属的方法的名称在第四类智能合约中快速查找到目标运算符对应的程序代码。
138.本说明书实施例中,如果仅根据用户的融资风险确定用户是否可以订购融资产品,例如,低于预设融资风险的用户可以订购所有融资产品,不低于预设融资风险的用户不能订购所有融资产品,这会使得区块链系统的运行结果影响融资机构正常的业务运营。因此,在确定出用户的融资风险之后,还需要根据用户的融资风险和预设融资条件确定该用户的可用融资产品。
139.基于此,所述确定所述用户的融资风险之后,本说明书实施例的方法还可以包括:
140.根据所述用户的融资风险,确定所述用户符合预设融资条件的可用融资产品。
141.获取所述用户的第八区块链交易;所述第八区块链交易用于指示订购所述可用融资产品中的目标融资产品。
142.基于所述第八区块链交易,生成所述用户对于所述目标融资产品的订单。
143.具体的,区块链系统中可以存储有各融资机构的预设放款总额、已放款总额和融资产品信息,预设融资条件可以包括:融资机构的剩余放款总额大于用户的预期贷款金额、用户的融资风险符合目标融资产品的融资风险要求、用户在融资机构处的可用额度大于用户的预期贷款金额等。
144.用户可以通过dapp向区块链系统提交第八区块链交易。第八区块链交易中可以携带有目标金融产品的标识和用户的订购请求信息,以使区块链系统根据第八区块链交易生成对于目标融资产品的订单。目标融资产品的订单用于使得区块链系统根据目标融资产品的订单的订单信息,可以生成用于指示提供目标融资产品的贷款机构去根据目标融资产品的订单的订单信息向用户发放贷款的区块链交易,而无需令提供目标融资产品的贷款机构针对用户再次进行融资审批,不仅方便快捷,且由于融资风险审批过程基于区块链技术实现,从而可以保证融资审批结果的透明度,避免作弊。
145.本说明书实施例采用上述技术方案,根据用户的融资风险,确定用户符合预设融资条件的可用融资产品,然后,根据用户的选择目标融资产品操作为用户生成相关订单,使得用户的融资产品订购结果更合理和更符合实际情况,有利于融资机构的正常业务的运营。
146.图3为本说明书实施例提供的对应于图2中的基于区块链的风险评估方法的泳道流程示意图。如图3所示,该基于区块链的风险评估流程可以涉及用户设备和区块链系统等执行主体。
147.在融资风险确定模块,用户设备响应于用户的融资申请操作,向区块链系统发送携带有融资申请信息的第一区块链交易。区块链系统获取到该第一区块链交易后,首先,调用风险识别处理速度较快的第一类智能合约,根据融资申请信息及第一链上信用数据进行风险识别处理,得到第一风险识别结果,判断第一风险识别结果表示的融资风险程度是否
低于预设融资风险程度,若第一风险识别结果表示的融资风险程度低于预设融资风险程度,则调用区块链系统中部署的第三类智能合约,针对第一风险识别结果进行有效性验证,得到第一验证结果;若第一验证结果符合第一验证通过条件,则根据第一风险识别结果,确定用户的融资风险;若第一风险识别结果表示的融资风险程度不低于预设融资风险程度,则调用区块链系统中部署的第二类智能合约,根据融资申请信息及更全面的第二链上信用数据进行风险识别处理,得到第二风险识别结果,然后,调用第三类智能合约,针对第二风险识别结果进行有效性验证,得到第二验证结果;若第二验证结果符合第二验证通过条件,则根据第二风险识别结果,确定用户的融资风险。
148.在融资产品订购阶段,区块链系统根据用户的融资风险,确定用户符合预设融资条件的可用融资产品,以及将包含该可用融资产品的信息反馈给用户设备,以使用户根据用户设备的显示信息在可用融资产品中选中目标融资产品,并针对目标融资产品执行对应的订购操作。用户设备响应于用户的订购操作,向区块链系统发送第八区块链交易。区块链系统获取到该第八区块链交易后,基于该第八区块链交易,生成用户对于目标融资产品的订单。
149.基于同样的思路,本说明书实施例还提供了上述方法对应的装置。图4为本说明书实施例提供的对应于图2的一种基于区块链的风险评估装置的结构示意图。如图4所示,该装置可以包括:
150.第一获取模块402,用于令区块链系统获取用户的第一区块链交易;所述第一区块链交易中携带有所述用户的融资申请信息。
151.第一调用模块404,用于调用所述区块链系统中部署的第一类智能合约,根据所述融资申请信息及第一链上信用数据进行风险识别处理,得到第一风险识别结果;
152.判断模块406,用于判断所述第一风险识别结果表示的融资风险程度是否低于预设融资风险程度;
153.第一确定模块408,用于当所述第一风险识别结果表示的融资风险程度低于预设融资风险程度时,根据所述第一风险识别结果,确定所述用户的融资风险;
154.第二调用模块410,用于当所述第一风险识别结果表示的融资风险程度不低于预设融资风险程度时,调用所述区块链系统中部署的第二类智能合约,根据所述融资申请信息及所述用户的第二链上信用数据进行风险识别处理,得到第二风险识别结果;所述第二类智能合约的风险识别处理速度小于所述第一类智能合约的风险识别处理速度;
155.第二确定模块412,用于根据所述第二风险识别结果,确定所述用户的融资风险。
156.基于图4的装置,本说明书实施例还提供了该装置的一些具体实施方案,下面进行说明。
157.所述用户的融资申请信息可以包括所述用户的身份信息;所述第一链上信用数据可以包括链上风险名单数据。
158.所述第一调用模块410,具体可以用于:
159.执行所述第一类智能合约的合约代码,得到第一风险识别结果;所述第一类智能合约的合约代码在执行时,用于将所述用户的身份信息与所述链上风险名单数据进行比对,得到比对结果,根据所述比对结果,生成第一风险识别结果。
160.所述链上风险名单数据为所述区块链系统中存储的风险名单中的数据,本说明书
实施例的装置还可以包括:
161.第二获取模块,用于令所述区块链系统获取第二区块链交易;所述第二区块链交易用于在所述风险名单中添加若干用户身份信息,或者,所述第二区块链交易用于标识所述风险名单中的若干用户身份信息已失效。
162.更新模块,用于根据所述第二区块链交易,对所述风险名单进行更新,得到更新后的链上风险名单数据。
163.所述用户的融资申请信息可以包括:所述用户的身份信息及质押物信息。
164.所述第二调用模块,具体可以用于:
165.执行所述第二类智能合约的合约代码,得到第二风险识别结果;所述第二类智能合约的合约代码在执行时,用于根据所述用户的身份信息,获取所述区块链系统中存储的所述用户的第二链上信用数据,根据所述第二链上信用数据,生成针对所述质押物信息的估价结果,根据所述估价结果及所述第二链上信用数据进行风险识别处理,得到第二风险识别结果。
166.所述第二类智能合约可以包括:第一智能合约、第二智能合约及第三智能合约中的至少一种。
167.其中,所述第一智能合约用于基于机器学习模型进行风险识别处理,所述第二智能合约用于基于评分卡模型进行风险识别处理,所述第三智能合约用于基于预设策略进行风险识别处理。
168.所述第一确定模块,可以包括:
169.第一调用子模块,用于调用所述区块链系统中部署的第三类智能合约,针对所述第一风险识别结果进行有效性验证,得到第一验证结果。
170.第一确定子模块,用于若所第一验证结果符合第一验证通过条件,则根据所述第一风险识别结果,确定所述用户的融资风险。
171.所述第二确定模块,可以包括:
172.第二调用子模块,用于调用所述第三类智能合约,针对所述第二风险识别结果进行有效性验证,得到第二验证结果。
173.第二确定子模块,用于若所述第二验证结果符合第二验证通过条件,则根据所述第二风险识别结果,确定所述用户的融资风险。
174.所述第一调用子模块,具体可以用于:
175.调用所述第三类智能合约,针对所述第一类智能合约及所述第一链上信用数据进行安全性验证;其中,所述第一类智能合约包括跨链智能合约,所述第一链上信用数据包括跨链数据;
176.所述第二调用子模块,具体可以用于调用所述第三类智能合约,针对所述第二类智能合约及所述第二链上信用数据进行安全性验证;其中,所述第二类智能合约包括跨链智能合约,所述第二链上信用数据包括跨链数据。
177.所述第一调用子模块,具体可以用于调用所述第三类智能合约,针对所述第一风险识别结果中的第三风险识别结果设置失效标识;所述第三风险识别结果为所述第一类智能合约中的失效智能合约所生成的风险识别结果;
178.所述第二调用子模块,具体可以用于调用所述第三类智能合约,针对所述第二风
险识别结果中的第四风险识别结果设置失效标识;所述第四风险识别结果为所述第二类智能合约中的失效智能合约所生成的风险识别结果。
179.本说明书实施例的装置还可以包括:
180.第三确定模块,用于根据所述第一类智能合约在预设时间段内的执行结果,确定所述第一类智能合约中的符合预设失效条件的智能合约,得到所述第一类智能合约中的失效智能合约;或者,根据接收到的第三区块链交易中携带的失效智能合约的标识信息,确定所述第一类智能合约中的失效智能合约。
181.第四确定模块,用于根据所述第二类智能合约在预设时间段内的执行结果,确定所述第二类智能合约中的符合预设失效条件的智能合约,得到所述第二类智能合约中的失效智能合约;或者,根据接收到的第四区块链交易中携带的失效智能合约的标识信息,确定所述第二类智能合约中的失效智能合约。
182.本说明书实施例的装置还可以包括:
183.第三获取模块,用于获取用于部署第四类智能合约的第五区块链交易;所述第四类智能合约的合约代码中包含用于执行预设运算符对应的计算的程序代码。
184.存储模块,用于存储所述第四类智能合约的合约代码至所述区块链系统。
185.第四获取模块,用于获取用于部署目标智能合约的第六区块链交易;所述目标智能合约包括所述第一类智能合约、所述第二类智能合约及所述第三类智能合约中的至少一种,所述目标智能合约在运行时,通过调用所述第四类智能合约的合约代码,以执行所述预设运算符对应的计算。
186.第一响应模块,用于响应于所述第六区块链交易,在所述区块链系统中部署所述目标智能合约。
187.本说明书实施例的装置还可以包括:
188.第五获取模块,用于获取用于更改所述目标智能合约的第七区块链交易;所述第七区块链交易用于新增所述目标智能合约所需执行的风险控制策略,所述第七区块链交易中携带有所述风险控制策略的目标运算符、所述目标运算符的左值信息及所述目标运算符的右值信息。
189.第二响应模块,用于响应于所述第七区块链交易,对所述目标智能合约进行更改,得到更新后的目标智能合约;所述更新后的目标智能合约在运行时,通过调用所述第四类智能合约中的用于执行所述目标运算符对应的计算的程序代码,根据所述左值信息与所述右值信息,生成针对所述风险控制策略的执行结果。
190.本说明书实施例的装置还可以包括:
191.第五确定模块,用于根据所述用户的融资风险,确定所述用户符合预设融资条件的可用融资产品。
192.第六获取模块,用于获取所述用户的第八区块链交易;所述第八区块链交易用于指示订购所述可用融资产品中的目标融资产品。
193.生成模块,用于基于所述第八区块链交易,生成所述用户对于所述目标融资产品的订单。
194.基于同样的思路,本说明书实施例还提供了上述方法对应的设备。
195.图5为本说明书实施例提供的对应于图2的一种基于区块链的风险评估设备的结
构示意图。如图5所示,设备500可以包括:
196.至少一个处理器510;以及,
197.与所述至少一个处理器通信连接的存储器530;其中,
198.所述存储器530存储有可被所述至少一个处理器510执行的指令520,所述指令被所述至少一个处理器510执行,以使所述至少一个处理器510能够:
199.获取用户的第一区块链交易;所述第一区块链交易中携带有所述用户的融资申请信息;
200.调用所述区块链系统中部署的第一类智能合约,根据所述融资申请信息及第一链上信用数据进行风险识别处理,得到第一风险识别结果;
201.判断所述第一风险识别结果表示的融资风险程度是否低于预设融资风险程度;
202.若是,则根据所述第一风险识别结果,确定所述用户的融资风险;
203.若否,则调用所述区块链系统中部署的第二类智能合约,根据所述融资申请信息及所述用户的第二链上信用数据进行风险识别处理,得到第二风险识别结果;所述第二类智能合约的风险识别处理速度小于所述第一类智能合约的风险识别处理速度;
204.根据所述第二风险识别结果,确定所述用户的融资风险。
205.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于图5所示的设备而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
206.在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字符系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very-high-speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
207.控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理
器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
208.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字符助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
209.为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本技术时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
210.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
211.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
212.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
213.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
214.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
215.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或
非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
216.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字符多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
217.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
218.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
219.本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
220.以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。