一种征信数据共享与交易系统的制作方法

文档序号:12470822阅读:218来源:国知局
一种征信数据共享与交易系统的制作方法与工艺

本发明涉及一种数据共享与交易系统,特别是涉及一种基于区块链技术的征信数据共享与交易系统。



背景技术:

央行征信主导的征信体系无法满足金融市场运行需求,截止到2014年,自然人信用档案数8.57亿减去有贷款记录的人数3.5亿,有5亿人的央行征信数据是空白的。征信数据大致可以分为以下几类:

第一是身份属性,指个人身份识别与认证信息,包括姓名、性别、身份证、年龄、婚姻家庭、住址、职业、文化程度等。

第二是履约能力,指用于评估个人还款意愿的信息,包括收入、存款、有价证券、商业保险等。

第三是信用记录,即用于评估个人还款意愿的信息,包括个人在商业银行贷款、信用卡、消费金融信贷、P2P网贷、贷记卡、担保等金融信用活动中发生的活动,此外也有非金融机构的个人赊购、缴费信息等,这些可以显示一个人在信用方面的行为。

第四是行为特征,即反映个人行为特点并据此评估个人信用变迁趋势的信息,包括居住地变迁、消费行为习惯、工作学习变迁、通信行为特点、互联网行为记录与偏好等信息。

第五是社交资料,即反映个人交际关系、社交言行特点的信息。

第六是公共记录信息,例如民事、刑事、行政诉讼判决、行政处罚等信息。

目前获取征信数据有两种方式,第一种是有牌照的征信公司,第二种是公司联盟,即业界有征信数据及需求的几家企业自发组成一个联盟,在联盟内进行数据共享。但是各家拥有的征信数据各不相同,各有特色,因此如果一个征信数据使用方需要完整征信数据的时候,就需要对接若干家第三方征信公司。

征信公司受制于数据来源渠道,一般信息比较单一,且通常只能提供查询服务。这些征信公司一般采用传统的IT技术方案,数据一般保存在关系型数据库中(例如Oracle),然后通过Web Service接口供第三方查询。这些接口及数据交互标准一般由征信公司自己定义,没有统一的标准。数据查询都是有偿的,一般按照查询次数收费。而且其征信数据量少,且种类单一;大部分只提供单向查询,无法由数据使用方补充数据;从数据使用方来看,为了完善风控,必须对接多家征信公司,费时且费力。

第二种是公司联盟,例如互联网金融公司自发组成一个联盟,在联盟内共享黑名单数据,防止恶意用户骗贷。公司联盟方案则存在数据交换与查询缺乏统一的标准,同时缺乏一系列的机制,使得各家参与方能够方便的共享数据和查询数据。而且其缺乏数据保护机制,缺乏基于技术的信任机制,缺乏激励机制来吸引更多的人共享数据。

联盟的技术方案有多种形式,(1)文件共享方式即黑名单数据通过文件的方式在联盟内共享(邮件,FTP等方式),联盟成员自己负责把数据持久化及和自己的业务系统同步;(2)统一数据平台,联盟各方使用传统IT构建一个数据共享平台,这个共享平台一般部署在某个联盟会员或者公有云上,大家通过接口的方式上传数据和查询数据。



技术实现要素:

本发明的目的是提出一种征信数据共享与交易系统,提供一个可被各方基于技术而非平台背书信任的征信数据共享系统,能够让参与方便捷的共享数据,并且在技术上保证数据不被滥用,保障数据所有者的权益,并且在技术上保证公平性,保障数据提供者在共享数据之后获得某种收益,激励参与方共享更多的数据。

为实现上述目的,本发明提供了一种征信数据共享与交易系统,所述征信数据共享与交易系统包括至少两个P2P的网络节点,所述网络节点中包括底层区块链系统以及运行在所述底层区块链系统上的征信数据共享平台,所述征信数据共享平台包括:

数据共享模块,供数据提供者共享征信元数据;

数据查询交易模块,供数据需求者查询征信元数据,并用于与数据提供者进行交易;

区块链适配层,用于将征信数据共享平台适配到底层区块链系统;

所述数据提供者调用数据共享模块上传征信元数据并进行数据记录;所述数据需求者调用数据查询交易模块查询征信元数据,并和数据提供者进行交易,生成的征信交易数据;所述区块链适配层将征信元数据或征信交易数据进行广播,在得到大于50%的网络节点验证后,新生成的征信元数据或征信交易数据将存入到底层区块链系统中。

优选地,所述区块链适配层包括共识算法适配模块、数据适配模块以及智能合约适配模块。

优选地,所述共识算法适配模块采用抽象共识算法抽象出一套共识算法的公共接口,并根据底层算法匹配适配器;所述适配器至少包括工作证明算法适配器、权益证明算法适配器。

优选地,所述数据适配模块定义区块链数据的抽象模型,并根据区块链数据格式进行适配。

优选地,所述智能合约适配模块定义智能合约的抽象模型,并根据智能合约的实现方式进行适配。

优选地,所述数据提供者共享征信元数据的步骤如下:

a)数据提供者按照定义的格式组装征信元数据,并调用数据共享模块的上传接口上传征信元数据;

b)所述数据共享模块调用共识算法适配模块进行数据记录,并且所述共识算法适配模块根据选定的共识算法,定期得到新生成的区块;

c)所述共识算法适配模块将征信元数据进行广播,在得到大于50%的网络节点验证后,将新生成的征信元数据存入到新生成的区块中,新生成的区块调用数据适配模块写入到区块链中;

d)共识算法适配模块将最终的区块信息返回到数据共享模块,并且所述数据共享模块将最终的区块信息返回给数据提供者。

优选地,所述数据需求者进行数据查询交易的步骤如下:

a)数据需求者根据需求数据的主标识生成散列值,并根据主标识的散列值和需求数据的类型调用数据查询交易模块上的查询接口;

b)所述数据查询交易模块调用数据适配模块,并且所述数据适配模块根据主标识的散列值和需求数据的类型查询保存在本地区块链上的征信元数据;

c)所述数据适配模块将征信元数据返回给数据查询交易模块,所述数据查询交易模块将征信元数据返回给数据需求者;

d)所述数据需求者根据返回的征信元数据中的数据提供者ID得到数据提供者的公钥,并根据数据提供者的公钥验证征信元数据中数据提供者的签名;

e)在公钥验证后,数据需求者从征信元数据中提取数据提供者完整数据访问接口的列表信息;

f)数据需求者根据数据提供者完整数据访问接口发送访问请求,访问请求的数据根据数据提供者的公钥进行加密,其中,所述访问请求中至少包含主标识、数据类型、数据需求者ID及数据需求者签名。

g)在收到访问请求后,所述数据提供者用私钥进行解密,提取查询请求中的数据需求者ID,并在获取数据需求者的公钥后根据数据需求者的公钥验证查询数据中数据需求者的签名;

h)所述数据提供者验证通过之后,根据完整征信数据、交易价格以及数据提供者签名调用智能合约适配模块生成交易的智能合约;

i)在对交易价格确认后,所述数据需求者使用私钥对所述智能合约签名确认,并且所述智能合约将生成的交易数据广播到每一个网络节点,在得到大于50%的网络节点验证后,调用所述数据适配模块写入到区块链中,并将完整数据发送给数据需求者。

优选地,所述征信数据共享平台还包括密钥管理分发模块,所述密钥管理分发模块用于管理用户ID与公钥之间的对应关系,所述密钥管理分发模块还用于生成密钥对。

基于上述技术方案,本发明的优点是:

本发明的征信数据共享与交易系统使用区块链技术构建了一个可信的征信数据共享与交易平台,所述征信数据共享与交易系统使用特殊的数据共享机制,数据查询机制,数据交易机制,能够吸引征信数据拥有者和征信数据需求者使用,以使得征信数据提供者在数据被保护的情况下可以获得一定的经济补偿,征信数据查询方则可以获取征信数据,完善自己的风控水平。

本发明的征信数据共享与交易系统可以与现有的征信数据形成互补,有效的扩大征信数据范围及覆盖的人群。所述征信数据共享与交易系统建设成功后,可以部分解决目前征信体系不完善的问题,能够起到很好的补充作用,可以更好地为银行、小贷公司、消费金融、网络借贷、大数据公司和其他互联网金融机构服务降低因征信数据不完全引起的逾期率,提高业务运作效率。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为区块链逻辑结构示意图;

图2为交易数据记录过程中的区块链工作逻辑;

图3为一种典型区块链的技术栈示意图;

图4为征信数据共享与交易系统拓扑图;

图5为网络节点逻辑结构示意图;

图6为征信数据共享平台结构示意图;

图7为共识算法适配模块逻辑示意图;

图8为数据结构示意图;

图9为共享征信元数据信令交互示意图;

图10为数据查询交易信令交互示意图。

具体实施方式

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

本发明的征信数据共享与交易系统底层基于区块链技术形成,所述区块链技术是一种利用去中心化和去信任方式集体维护一本数据簿的可靠性的技术,其需要让参与系统中的任意多个节点,通过一串使用密码学方法相关联产生的数据块(block)中每个数据中都包含了一定时间内的系统全部信息交流的数据,并生成数据指纹用于验证其信息的有效性和链接下一个数据库块。

图1的区块链逻辑示意是对区块链中间一段的简单描述。其中每个区块都有指向前一个区块的链接,一直到最初创建的区块即创始区块;而在区块链系统上发生的每一笔交易都会存在于某一个区块中,并被永久保存。例如区块54中包含了链接,链接到区块53;区块53中包含了链接,链接到区块52;区块52中包含了链接,链接到区块51,以此类推,直到最初的创始区块。

在区块链系统上,以交易数据记录过程为例解释区块链的工作机制,其能够有效地解决双重消费和拜占庭将军问题。如图2所示,其具体过程如下:

(1)、区块链的最后一个环节是Owner1,其采用Owner0的公钥验证了前一笔交易数据;

(2)、Owner1用自身的密钥签署所述交易数据;

(3)、交易数据从Owner1传送到Owner2,并向全网广播;

(4)、交易数据在广播的时候,需要得到足够多节点的确认,才能被认为交易完成;而在整个P2P网络中最早打上时间戳的那个交易数据被认定为是成功的交易;

(5)、交易成功后,数据记录到区块中。

本实施例提供了一种典型区块链的技术栈,如图3所示,包括:

(1)、网络层。一般采用P2P网络技术,因此在区块链网络中没有中心服务器,如果任何一个或多个节点从区块链网络中丢失,数据也不会丢失,同时其中包括广播机制和数据验证机制,保证数据传输安全性和高效性。

(2)、数据层。核心是数据区块及链式的数据结构,同时生成的数据都会加上时间戳,并使用散列算法,防止数据被篡改。同时还使用加密算法(如非对称加密算法),以保护数据的安全性及用户的隐私。

(3)、共识层。共识方式可采用工作量证明,其是一种能够确保正确答案很难被获取,却又能够很容易被验证的一种方式,它用于确保生成的区块符合某种数据特征,防止数据被伪造或者篡改。而权益证明机制是另外一种达成共识的方式。如在比特币的区块链系统中,基于权益证明机制的系统上“挖矿”是以货币的持有量为基础的。

(4)、智能合约。传统合约是指双方或者多方协议做或不做某事来换取某些东西,每一方必须信任彼此会履行义务。而智能合约无须彼此信任,因为智能合约不仅是由代码进行定义的,也是由代码强制执行的,完全自动且无法干预。

本发明针对征信数据共享这一领域,提出了一种基于区块链技术的征信数据共享与交易系统。其中,所述征信数据共享与交易系统底层采用区块链的P2P(即对等计算机网络,是一种在对等者之间分配任务和工作负载的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式)的网络结构,每个节点包含了本方案独特的征信数据共享平台以及使用的区块链技术的底层区块链系统。

本发明提供了一种征信数据共享与交易系统,如图4~图所示,所述征信数据共享与交易系统包括至少两个P2P的网络节点,所述网络节点中包括底层区块链系统以及运行在所述底层区块链系统上的征信数据共享平台,所述征信数据共享平台包括:

数据共享模块,供数据提供者共享征信元数据;

数据查询交易模块,供数据需求者查询征信元数据,并用于与数据提供者进行交易;

区块链适配层,用于将征信数据共享平台适配到底层区块链系统。

所述数据提供者调用数据共享模块上传征信元数据并进行数据记录;所述数据需求者调用数据查询交易模块查询征信元数据,并和数据提供者进行交易,生成的征信交易数据;所述区块链适配层将征信元数据或征信交易数据进行广播,在得到大于50%的网络节点验证后,新生成的征信元数据或征信交易数据将存入到底层区块链系统中。

如图6所示,所述征信数据共享平台包含数据共享模块、数据查询交易模块、数据评价模块、成员管理模块、密钥管理分发模块以及区块链适配层。采用区块链适配层用于适配不同的底层区块链技术实现,使得系统可以不依赖于底层具体的区块链技术。

本发明的征信数据共享与交易系统最核心模块包括:数据共享模块以及数据查询交易模块,其是整个系统的核心。其次,数据评价模块用于对数据进行评价,能够提高平台的数据质量。成员管理模块和密钥管理分发模块是基础模块,而区块链适配层模块可以使得本方案不依赖于具体的底层区块链技术实现方式。

优选地,所述征信数据共享平台还包括密钥管理分发模块,所述密钥管理分发模块用于管理用户ID(包括数据提供者,数据需求者或者数据评价者)与公钥之间的对应关系,同时它还能够生成密钥对,并安全分发给相关用户。

所述区块链适配层包括共识算法适配模块、数据适配模块以及智能合约适配模块。优选地,所述共识算法适配模块采用抽象共识算法抽象出一套共识算法的公共接口,并根据底层算法匹配适配器;所述适配器至少包括工作证明算法适配器、权益证明算法适配器。平台会抽象出一套共识算法的公共接口,同时使用不同的适配器适配不同的底层算法,如图7所示。

所述抽象共识算法主要包括两个抽象接口:

a)ProofgenerateProof():该接口用于生成证明,该证明会用于生成区块;

b)Block generateBlock(Proof p,...args):根据证明生成区块。

以脱胎于比特币的区块链技术为例,其生成证明就是一个“挖矿”的过程。“挖矿”就是找到一个具有以下特征的值:用SHA-256进行两次散列计算后,得到散列值以若干个0开头。那比特币区块链技术的generateProof适配实现就是找到这样的值。而比特币区块链的generateBlock实现就是根据挖到的散列值及其他数据组成一个区块并存放到区块链中。

优选地,所述数据适配模块定义区块链数据的抽象模型,并根据区块链数据格式进行适配。底层区块链数据也存在不同实现,通过定义区块链数据的抽象模型,屏蔽底层的差异。同时定义不同的适配模块适配不同的区块链数据格式,例如比特币的区块链数据格式、以太坊的区块链数据格式。

优选地,所述智能合约适配模块定义智能合约的抽象模型,并根据智能合约的实现方式进行适配。同样的,底层智能合约也存在不同的实现,通过定义智能合约的抽象模型,屏蔽底层的差异。同时定义不同的适配模块适配不同的智能合约实现技术,例如以太坊的智能合约。

存储在底层区块链中主要有三类数据:征信元数据、征信交易数据以及征信评价数据。大致的数据结构如下:

[类型,数据]

其中,类型用于标识该数据的类型,可以用数据字典表示。数据则是征信元数据、征信交易数据或者征信评价数据,其示意图如图8所示。

为了确保数据拥有者的权益,存储在征信数据共享平台的征信数据将会是征信元数据,格式如下:

[类型,主标识散列值,完整数据散列值,数据生成时间戳,数据版本号,数据提供者ID,数据提供者完整数据访问接口列表信息,数据提供者签名]

例如:[001(类型),d84ec802c340723837c20aff27b8cafd(主标识散列值),73f56896e2be166695e47d6f91da80f7(完整数据散列值),61436073600000(数据生成时间戳),v0.0.1(版本号),15Xgq5xjUf77ibHZkJu9qKPbw9jPKNeCt1(数据提供者ID),https://www.madailicai.com/api/users/{id}/edu(数据提供者完整数据访问接口列表信息),iEYEARECAAYFAjdYCQoACgkQJ9S6ULt1dqz6IwCfQ7wP6i(数据提供者签名)]

其中,d84ec802c340723837c20aff27b8cafd是某人的身份证号码的MD5散列值。

73f56896e2be166695e47d6f91da80f7是“身份证号码:毕业学校”的MD5散列值。

61436073600000时间戳代表了2016-10-1 00:00:00。

iEYEARECAAYFAjdYCQoACgkQJ9S6ULt1dqz6IwCfQ7wP6i是数据提供者使用私钥对该条征信元数据内容(不包括签名部分)进行签名操作后得到的值,第三方可以使用数据提供者的公钥进行验证数据是否有该数据提供者提供。

以下为征信元数据类型说明:

类型:可以用数据字典来表示该征信数据的类型,例如0001代表个人最高学历。

主标识散列值:主标识用于唯一标记该数据所有者,例如个人身份证ID,姓名加手机号码,企业注册号或者统一社会信用代码等。主标识用标准的散列函数(例如MD5)得到唯一标识,该唯一标识不可逆,即从唯一标识反推出主标识。

完整数据散列值:数据提供者会将征信完整数据用标准散列函数(例如MD5)得到一个散列值,用作数字签名,数据访问者可以用这个散列值来验证数据提供者之后提供的原始数据是否发生过变化。

数据生成时间戳:用于标明数据生成时的时间,方便用户进行选择。

数据版本号:因为同一个数据提供者提供的同一原始数据随着时间的变化,数据可能发生变化,因此用版本号来进行区分,用于标明修改的顺序。

数据提供者ID:相当于比特币钱包地址,用于在平台内唯一标识数据提供者。

数据提供者完整数据访问接口列表信息:数据使用方为了获取完整原始数据,需要通过调用数据提供者提供的接口,这个接口信息包括输入参数,接口访问方法和输出结果。同时查询过程中涉及到交易过程,因此也会包含数据交易接口信息。

数据提供者签名:数据提供者会使用自己的密钥对共享的征信元数据进行签名,而数据使用者可以使用数据提供者的公钥来进行验证。

所述征信数据共享平台运行在底层区块链系统上,通过区块链适配层调用底层区块链系统的功能。其中,数据共享模块会提供一系列的接口供数据提供者共享征信元数据,其具体流程如图9所示,具体步骤如下:

a)数据提供者按照上述定义的格式组装征信元数据。

b)数据提供者调用数据共享模块的上传接口上传征信元数据。

c)所述数据共享模块调用共识算法适配模块进行数据记录。

d)所述共识算法适配模块根据选定的共识算法,定期得到区块。

e)同时共识算法适配模块会将征信元数据进行广播,在得到大于50%的网络节点验证后,就会把新生成的征信元数据存入到新生成的区块中。

f)新生成的区块最后会调用数据适配模块写入到区块链中。

g)共识算法适配模块将最终的区块信息返回到数据共享模块。

h)数据共享模块将最终的区块信息返回到数据提供者。

进一步,数据查询交易模块会提供一系列的接口供数据需求者查询征信元数据,并和数据提供者进行交易,交易结果也会存入到底层区块链系统中。交易数据的格式如下:

[数据提供者ID,数据需求者ID,完整数据散列值,数据交易时间戳,交易价格,数据提供者签名,数据需求者签名]

数据提供者ID:相当于比特币钱包地址,用于在平台内唯一标识数据提供者。

数据需求者ID:相当于比特币钱包地址,用于在平台内唯一标识数据需求者。

完整数据散列值:数据提供者提供的完整征信数据的散列值。

数据交易时间戳:交易发生的时间。

交易价格:数据交易的价格。

数据提供者签名:数据提供者会使用自己的密钥对交易数据(不包括数据提供者签名和数据需求者签名)进行签名。

数据需求者签名:数据需求者会使用自己的密钥对交易数据(不包括数据提供者签名和数据需求者签名)进行签名。

优选地,所述数据需求者进行数据查询交易的步骤如图10所示,其具体流程如下:

a)数据需求者根据需求数据的主标识(如身份证、企业社会信用统一代码等),生成散列值。

b)数据需求者根据主标识的散列值和需求数据的类型,调用数据查询交易模块上的查询接口。

c)数据查询交易模块调用数据适配模块,所述数据适配模块根据主标识的散列值和需求数据的类型,查询保存在本地区块链上的征信元数据。

d)如果查询到对应的征信元数据,区块链数据适配模块会将征信元数据返回给数据查询交易模块。

e)数据查询交易模块会将征信元数据返回给数据需求者。

f)所述数据需求者根据返回的征信元数据中的数据提供者ID得到数据提供者的公钥;具体地,所述公钥可通过密钥管理分发模块得到。当然,本领域技术人员应当知晓,所述公钥也可以通过人工输入或邮件等常规方式得到。

g)数据需求者根据数据提供者的公钥验证征信元数据中数据提供者的签名。

h)在数据验证正确之后,数据需求者从征信元数据中提取数据提供者完整数据访问接口的列表信息。

i)数据需求者根据数据提供者完整数据访问接口发送访问请求,所述访问请求的数据中包含了主标识、数据类型、数据需求者ID及数据需求者签名,访问请求的数据会用数据提供者的公钥进行加密。

j)数据提供者收到查询请求后,用私钥进行解密。

k)数据提供者提取查询请求中的数据需求者ID,然后从密钥管理分发模块中获取数据需求者的公钥。相同地,数据提供者也可以通过人工输入或邮件等常规方式得到数据需求者的公钥。

l)数据提供者根据数据需求者的公钥验证查询数据中数据需求者的签名。

m)数据提供者验证通过之后,用完整征信数据、交易价格以及数据提供者签名等信息调用智能合约适配模块生成一个交易的智能合约。

n)数据提供者将智能合约发给数据需求者。

o)数据需求者在对价格进行确认后,使用私钥对交易的智能合约签名确认。

p)所述智能合约将生成一个交易数据,广播到每一个网络节点,待51%的节点确认后,在得到大于50%的网络节点验证后,调用所述数据适配模块写入到区块链中。

q)同时所述智能合约会将完整数据发给数据需求者,并从数据需求者账户中转约定金额到数据提供者账户中,完成交易。

所述征信数据共享平台还包括数据评价模块,所述数据评价模块会提供一系列接口,用于对数据提供者提供的单条数据或者某个类型的数据进行评价,生成征信评价数据。

进一步,所述征信数据共享平台还包括成员管理模块,所述成员管理模块主要负责成员的加入和离开,同时其还将提供平台安装包的安全分发。

本发明的征信数据共享与交易系统使用区块链技术构建了一个可信的征信数据共享与交易平台,所述征信数据共享与交易系统使用特殊的数据共享机制,数据查询机制,数据交易机制,能够吸引征信数据拥有者和征信数据需求者使用,以使得征信数据提供者在数据被保护的情况下可以获得一定的经济补偿,征信数据查询方则可以获取征信数据,完善自己的风控水平。

本发明的征信数据共享与交易系统可以与现有的征信数据形成互补,有效的扩大征信数据范围及覆盖的人群。所述征信数据共享与交易系统建设成功后,可以部分解决目前征信体系不完善的问题,能够起到很好的补充作用,可以更好地为银行、小贷公司、消费金融、网络借贷、大数据公司和其他互联网金融机构服务降低因征信数据不完全引起的逾期率,提高业务运作效率。

最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1