CN108898475B - 基于属性加密的联盟区块链实现信贷方法及系统 - Google Patents

基于属性加密的联盟区块链实现信贷方法及系统 Download PDF

Info

Publication number
CN108898475B
CN108898475B CN201810432800.9A CN201810432800A CN108898475B CN 108898475 B CN108898475 B CN 108898475B CN 201810432800 A CN201810432800 A CN 201810432800A CN 108898475 B CN108898475 B CN 108898475B
Authority
CN
China
Prior art keywords
bank
user
node
credit
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810432800.9A
Other languages
English (en)
Other versions
CN108898475A (zh
Inventor
阚海斌
张亮
文捷
吴小川
马环宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Zhongan Information Technology Service Co ltd
Original Assignee
Zhongan Information Technology Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongan Information Technology Service Co Ltd filed Critical Zhongan Information Technology Service Co Ltd
Priority to CN201810432800.9A priority Critical patent/CN108898475B/zh
Publication of CN108898475A publication Critical patent/CN108898475A/zh
Application granted granted Critical
Publication of CN108898475B publication Critical patent/CN108898475B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/03Credit; Loans; Processing thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明公开一种基于属性加密的联盟区块链实现信贷方法及系统,涉及区块链技术领域,方法包括:构建多个银行节点的联盟链及共识机制;由中心银行节点生成主私钥和主公钥,并根据主私钥和分别分配给各银行节点的属性集,生成各银行节点各自的私钥并对应分发给各银行节点,广播主公钥;用户A的信贷信息由其借贷的银行节点N利用主公钥和预设的访问控制结构进行加密,并将密文CT基于共识机制记录于区块链,在用户A向银行节点M借贷时,若银行节点M的属性集满足访问控制结构,则由银行节点M利用其私钥解密区块链中的与用户A相关的密文CT,并根据解密结果,确定是否贷款给用户A,本发明能够提高信贷评估效率,保证信贷信息的隐私性和安全性。

Description

基于属性加密的联盟区块链实现信贷方法及系统
技术领域
本发明涉及区块链技术领域,特别涉及一种基于属性加密的联盟区块链实现信贷方法及系统。
背景技术
传统的信贷评估方法是由金融机构的工作人员对借款用户的借款请求进行人工审核评估,在评估过程中需要工作人员核对借款用户的大量数据信息,以判别贷款交易的风险情况,例如借款用户借得起多少钱、贷款周期内能否偿还等,信贷评估的成本和冗余工作量较高,导致信贷评估效率较低;另外,由于借款用户的信贷信息会被记录到金融机构的中心服务器上,信贷信息存在篡改和丢失的技术性可能,同时交易各方以及信用评级机构和平台方在数据真实性和完整性上也会存在信任问题,信贷信息的隐私性和安全性无法得到保障。
发明内容
有鉴于此,本发明实施例提供了一种基于属性加密的联盟区块链实现信贷方法及系统,通过结合属性加密和联盟区块链技术,能够减少信贷评估的成本和冗余工作,提高信贷评估效率,同时也能够保证信贷信息的隐私性和安全性。
本发明实施例提供的具体技术方案如下:
第一方面,提供了一种基于属性加密的联盟区块链实现信贷方法,所述方法基于CP-ABE加密,所述方法包括:
构建多个银行节点的联盟链及共识机制,所述多个银行节点初始设置有一个中心银行节点;
由所述中心银行节点生成主私钥和主公钥,并根据所述主私钥和分别分配给各银行节点的属性集,生成所述各银行节点各自的私钥并对应分发给所述各银行节点,以及广播所述主公钥;
用户A的信贷信息由其借贷的银行节点N利用所述主公钥和预设的访问控制结构进行加密,并将加密得到的密文CT基于所述共识机制记录于区块链中;
在所述用户A向银行节点M借贷时,若所述银行节点M的属性集满足所述访问控制结构,则由所述银行节点M利用其私钥解密所述区块链中的与所述用户A相关的所述密文CT,并根据解密结果,确定是否贷款给所述用户A。
在一些实施例中,所述由中心银行节点生成主私钥和主公钥包括:
所述中心银行节点确定椭圆曲线参数,并根据所述椭圆曲线参数初始化系统,生成所述主私钥和所述主公钥。
在一些实施例中,所述信贷信息包括所述银行节点N对用户A的信用评估结果及所述用户A的借贷信息。
在一些实施例中,所述将加密得到的密文CT基于所述共识机制记录于区块链中包括:
所述银行节点N广播所述密文CT至其他的银行节点Ni,以使所述银行节点Ni在缓冲池中记录所述密文CT;
所述银行节点Ni在预设的共识时间点上,对截止到上一个所述共识时间点的时间段内所述缓冲池中所记录的包含所述密文CT的所有密文,按密文生成时间进行排序,得到排序后的所述所有密文;
所述银行节点Ni对排序后的所述所有密文进行哈希运算得到哈希值,并广播所述哈希值至所有的银行节点;
在所述所有的银行节点中,若超过预设数量的银行节点接收到的所述哈希值一致,则将包含所述密文CT的所述所有密文写入所述区块链。
在一些实施例中,所述银行节点Ni对排序后的所述所有密文进行哈希运算得到哈希值包括:
将排序后的所述所有密文构成预设格式的数组,并做压缩;
利用预设哈希算法对压缩后的所述数组进行哈希,得到所述哈希值。
第二方面,提供了一种基于属性加密的联盟区块链实现信贷方法,所述方法基于KP-ABE加密,所述方法包括:
构建多个银行节点的联盟链及共识机制,所述多个银行节点初始设置有一个中心银行节点;
由所述中心银行节点生成主私钥和主公钥,并根据所述主私钥和预设的访问控制结构,生成各银行节点各自的私钥并对应分发给所述各银行节点,以及广播所述主公钥;
用户A的信贷信息由其借贷的银行节点N利用所述主公钥和分配给所述信贷信息的属性集进行加密,并将加密得到的密文CT基于所述共识机制记录于区块链中;
在所述用户A向银行节点M借贷时,若所述信贷信息对应的属性集满足所述访问控制结构,则由所述银行节点M利用其私钥解密所述区块链中的与所述用户A相关的所述密文CT,并根据解密结果,确定是否贷款给所述用户A。
在一些实施例中,所述由中心银行节点生成主私钥和主公钥包括:
所述中心银行节点确定椭圆曲线参数,并根据所述椭圆曲线参数初始化系统,生成所述主私钥和所述主公钥。
在一些实施例中,所述信贷信息包括所述银行节点N对用户A的信用评估结果及所述用户A的借贷信息。
在一些实施例中,所述将加密得到的密文CT基于所述共识机制记录于区块链中包括:
所述银行节点N广播所述密文CT至其他的银行节点Ni,以使所述银行节点Ni在缓冲池中记录所述密文CT;
所述银行节点Ni在预设的共识时间点上,对截止到上一个所述共识时间点的时间段内所述缓冲池中所记录的包含所述密文CT的所有密文,按密文生成时间进行排序,得到排序后的所述所有密文;
所述银行节点Ni对排序后的所述所有密文进行哈希运算得到哈希值,并广播所述哈希值至所有的银行节点;
在所述所有的银行节点中,若超过预设数量的银行节点接收到的所述哈希值一致,则将包含所述密文CT的所述所有密文写入所述区块链。
在一些实施例中,所述银行节点Ni对排序后的所述所有密文进行哈希运算得到哈希值包括:
将排序后的所述所有密文构成预设格式的数组,并做压缩;
利用预设哈希算法对压缩后的所述数组进行哈希,得到所述哈希值。
第三方面,提供了一种基于属性加密的联盟区块链实现信贷系统,所述系统执行上述第一方面任一所述的基于属性加密的联盟区块链实现信贷方法。
第四方面,提供了一种基于属性加密的联盟区块链实现信贷系统,所述系统执行上述第二方面任一所述的基于属性加密的联盟区块链实现信贷方法。
本发明实施例提供一种基于属性加密的联盟区块链实现信贷方法及系统,通过基于联盟链内的各个银行节点达成的共识机制,能够确保联盟内部的各个银行节点的存证信贷信息和信用信息的安全性、一致性;通过结合属性加密(Attribute-Based Encryption,ABE)和联盟区块链技术,由于属性密码的加密解密技术,确保每条信贷信息均由其借贷的银行节点利用属性加密方案进行加密,且只能由具有权限的数据访问者解密,由此能够避免银行机构的用户信贷信息由不适当的用户访问或者由不完全受信任的数据中心或服务提供者泄露,进而能够保证敏感数据的安全性和隐私性,并通过属性密码的安全机制控制解密范围保持加密过程中的安全性;另外,由于区块链去中心化、不可篡改、可追溯的特性,因此在信贷评估过程中,能够减少信贷评估的成本和冗余工作,提高信贷评估效率,同时也能够保证信贷信息的隐私性和安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于属性加密的联盟区块链实现信贷方法的流程图;
图2为本发明实施例提供的一种基于属性加密的联盟区块链实现信贷方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的一种基于属性加密的联盟区块链实现信贷方法及系统,应用于信贷评估的场景,通过结合属性加密(Attribute-Based Encryption,ABE)和联盟区块链技术的方式,确保每条信贷信息均由其借贷的银行节点利用属性加密方案进行加密,且只能由具有权限的数据访问者解密,由此能够避免银行机构的用户信贷信息由不适当的用户访问或者由不完全受信任的数据中心或服务提供者泄露,此外,由于区块链去中心化、不可篡改、可追溯的特性,因此在信贷评估过程中,能够减少信贷评估的成本和冗余工作,提高信贷评估效率,同时也能够保证信贷信息的隐私性和安全性。
图1为本发明实施例提供的一种基于属性加密的联盟区块链实现信贷方法的流程图,方法基于CP-ABE(Ciphertext Policy Attribute-Based Encryption)加密,参照图1所示,该方法包括如下步骤:
101、构建多个银行节点的联盟链及共识机制,多个银行节点初始设置有一个中心银行节点。
具体的,联盟链的多个银行结构各提供节点接入联盟链,并达成区块链的共识机制,其中,多个银行节点初始设置有一个中心银行节点,该中心银行节点自定义设置,比如,设置中国银行的联盟链节点为中心银行节点。
102、由中心银行节点生成主私钥和主公钥,并根据主私钥和分别分配给各银行节点的属性集,生成各银行节点各自的私钥并对应分发给各银行节点,以及广播主公钥。
其中,属性集由中心银行节点任意设定,可以包括但不限于银行名称、银行类型和银行地址中的一个或多个。
具体的,由中心银行节点生成主私钥和主公钥,该过程可以包括:
中心银行节点确定椭圆曲线参数,并根据椭圆曲线参数运行Setup函数产生中心银行节点的主私钥MSK和主公钥MPK。
其中,根据主私钥和分别分配给各银行节点的属性集,生成各银行节点各自的私钥并对应分发给各银行节点,该过程可以包括:
运行keygen函数,将主私钥和分别分配给各银行节点的属性集作为keygen函数的输入,生成各银行节点各自的私钥,其中,keygen函数包含为各银行节点分别选取的一个随机数。需要说明的是,中心银行节点同时为自己也分配属性集,因此步骤102中也包括中心银行节点根据主私钥和为自己分配的属性集生成自己的私钥的过程。
103、用户A的信贷信息由其借贷的银行节点N利用主公钥和预设的访问控制结构进行加密,并将加密得到的密文CT基于共识机制记录于区块链中。
其中,信贷信息包括银行节点N对用户A的信用评估结果及用户A的借贷信息,用户A的借贷信息包括用户A是否借贷的信息和成功借贷的贷款信息。
其中,访问控制结构是一种树形结构,每个叶子节点代表一个属性,非叶子节点为与/或运算操作,通过从下往上可以构造成中缀表达式。比如,访问控制结构的表达式设定为(banka or level>=20),当某属性结合是{banka},{level=23},{bankb,level=21}等时,可使表达式为真,当属性结合为{bankb},{level=12}等时,表达式结果为假,在属性密码中,通过用某一属性集合来验证访问控制结构对应的表达式是否为真,限制解密者能否有权解密。
具体的,用户A的信贷信息由其借贷的银行节点N利用主公钥和预设的访问控制结构进行加密,该过程可以包括:
执行Encrypt函数,将中心银行节点广播的主公钥和预设的访问控制结构作为Encrypt函数的输入对用户A的信贷信息进行加密,得到加密后的密文。
由于区块链是分布式的存储,因此达成一致即共识算法尤为重要,共识算法决定了区块链能否正常工作和是否安全,同时由于信贷系统运行在联盟成员内部,因此可以考虑“绝大部分”(比如定为50%以上)节点是不会欺诈的,不被攻击的,稳定可信的。基于此,本发明的共识机制采用PoST(Proof Of Sequence and Time)共识机制,即在世界时钟的某些刻度处,节点对前一时间段内所有未确认的消息按时间排序再哈希,然后广播至其他节点,在半数以上的节点接收到的哈希值一致时,即完成共识,记录至区块链。
基于PoST共识机制,在步骤103中,将加密得到的密文CT基于共识机制记录于区块链中,具体可以包括步骤:
a)银行节点N广播密文CT至其他的银行节点Ni,以使银行节点Ni在缓冲池中记录密文CT。
b)银行节点Ni在预设的共识时间点上,对截止到上一个共识时间点的时间段内缓冲池中所记录的包含密文CT的所有密文,按密文生成时间节进行排序,得到排序后的所有密文。
其中,预设的共识时间点可以根据实际需要进行设定,比如可以设定共识时间点为每小时的0分0秒,截止到上一个共识时间点的时间段内可以截止到上一个共时间点的一个小时内,本发明实施例对此不加以限定。
其中,密文生成时间可以根据密文附带的时间戳来确定。
c)银行节点Ni对排序后的所有密文进行哈希运算得到哈希值,并广播哈希值至所有的银行节点。
其中,银行节点Ni对排序后的所有密文进行哈希运算得到哈希值的过程是:
将排序后的所有密文构成预设格式的数组,并做压缩;利用预设哈希算法对压缩后的数组进行哈希,得到哈希值。其中,预设格式数组可以是json数组,预设哈希算法可以是任意安全可靠哈希算法,例如SHA256、国密SM3或国密SM4等。
示例性的,压缩后的数组如下:
msgArr=
{"ts":1524545593114099,"encrypted_msg":"qwertyuiopasdfafasdghjklzxcvbnm"},{"ts":1524555593114099,"encrypted_msg":"poiuytrewqasdfasdflkjhgfdsamnasdfasdfbvcxz"},{"ts":1524565593114099,"encrypted_msg":"poiuytrewqadsfasdflkjhgfdsamnbvasdfascxz"},{"ts":1524575593114099,"encrypted_msg":"paasdfiuytrewqlkjasdfadsfhgfdsamnbasdfasdfvcxz"}];
利用SHA256函数对压缩后的数组进行哈希,函数记为hash(input),哈希结果为hash(msgArr),最终得到哈希算法的一组字符如下:
"e0527f8e02b6b83d7a41fa9fd78757eb0e2ae8f0e8d289eecbfcd98e036c93e6"。
d)在所有的银行节点中,若超过预设数量的银行节点接收到的哈希值一致,则将包含密文CT的所有密文写入区块链。
其中,预设数量可以设定为银行节点总数量的一半,若超过半数以上的银行节点接收到的哈希值一致,按少数服从多数,将包含密文CT的所有密文写入区块链。
本发明实施例中,通过将加密得到的密文CT基于共识机制记录于区块链中,该共识机制为PoST共识机制,因此能够避免使用PoW共识算法(Proof of Work)消耗大量计算机资源且交易速度慢至不足10个/秒存在的问题,且由于采用和计算机拥有相同的世界时间,因此采用PoST(Proof Of Sequence and Time)共识机制,既不存在计算资源过度消耗的问题,也能够大幅提升区块链消息确认的速度,同时能够确保记录的数据一致性,进行能够使得联盟内部安全一致的存证信贷信息和信用信息。
需要说明的是,在本发明实施例中,若用户A与多个银行节点存在借贷关系时,用户A的信贷信息则由对应的各银行节点利用主公钥和各银行节点预设的访问控制结构分别进行加密,并将密文CT分别基于所述共识机制记录于区块链中。
104、在用户A向银行节点M借贷时,若银行节点M的属性集满足访问控制结构,则由银行节点M利用其私钥解密区块链中的与用户A相关的密文CT,并根据解密结果,确定是否贷款给用户A。
其中,银行节点M与银行节点N为相同或不相同的银行节点。
具体的,该过程可以包括:
银行节点M基于用户A的借贷请求,在区块链中查询与用户A相关的密文CT;若查询到密文CT,执行Decrypt函数,将银行节点M的属性集和银行节点M的私钥作为Decrypt函数的输入对用户A相关的密文CT进行解密。当解密成功后,获取信贷信息,当信贷信息中用户A的信用评估结果指示用户A的信用良好,则允许贷款给用户A,否则,不允许贷款给用户A。
本发明实施例提供一种基于属性加密的联盟区块链实现信贷方法,该方法基于CP-ABE加密,包括:构建多个银行节点的联盟链及共识机制,多个银行节点初始设置有一个中心银行节点;由中心银行节点生成主私钥和主公钥,并根据主私钥和分别分配给各银行节点的属性集,生成各银行节点各自的私钥并对应分发给各银行节点,以及广播主公钥;用户A的信贷信息由其借贷的银行节点N利用主公钥和预设的访问控制结构进行加密,并将加密得到的密文CT基于共识机制记录于区块链中;在用户A向银行节点M借贷时,若银行节点M的属性集满足访问控制结构,则由银行节点M利用其私钥解密区块链中的与用户A相关的密文CT,并根据解密结果,确定是否贷款给用户A;其中,银行节点M与银行节点N为相同或不相同的银行节点。由此通过基于联盟链内的各个银行节点达成的共识机制,能够确保联盟内部的各个银行节点的存证信贷信息和信用信息的安全性、一致性;通过结合CP-ABE(Ciphertext Policy Attribute-Based Encryption)加密和联盟区块链技术,由于CP-ABE的加密解密技术的加密解密技术,确保每条信贷信息均由其借贷的银行节点利用属性加密方案进行加密,且只能由具有权限的数据访问者解密,由此能够避免银行机构的用户信贷信息由不适当的用户访问或者由不完全受信任的数据中心或服务提供者泄露;另外,由于区块链去中心化、不可篡改、可追溯的特性,因此在信贷评估过程中,能够减少信贷评估的成本和冗余工作,提高信贷评估效率,同时也能够保证信贷信息的隐私性和安全性。
图2为本发明实施例提供的一种基于属性加密的联盟区块链实现信贷方法的流程图,方法基于KP-ABE(Key Policy Attribute-Based Encryption)加密,参照图2所示,该方法包括如下步骤:
201、构建多个银行节点的联盟链及共识机制,多个银行节点初始设置有一个中心银行节点。
具体的,该步骤与步骤101的过程相同,此处不再赘述。
202、由中心银行节点生成主私钥和主公钥,并根据主私钥和预设的访问控制结构,生成各银行节点各自的私钥并对应分发给各银行节点,以及广播主公钥。
具体的,由中心银行节点生成主私钥和主公钥的过程可参照步骤102,此处不再赘述。
其中,根据主私钥和预设的访问控制结构,生成各银行节点各自的私钥的过程可以包括:
运行keygen函数,将主私钥和预设的访问控制结构作为keygen函数的输入,生成各银行节点各自的私钥,其中,keygen函数包含为各银行节点分别选取的一个随机数。
203、用户A的信贷信息由其借贷的银行节点N利用主公钥和分配给信贷信息的属性集进行加密,并将加密得到的密文CT基于共识机制记录于区块链中。
其中,属性集由进行加密的银行节点N任意设定,可以包括但不限于银行名称、银行类型和银行地址中的一个或多个。
其中,信贷信息包括银行节点N对用户A的信用评估结果及用户A的借贷信息,用户A的借贷信息包括用户A是否借贷的信息和成功借贷的贷款信息。
具体的,用户A的信贷信息由其借贷的银行节点N利用主公钥和分配给信贷信息的属性集进行加密,该过程可以包括:
执行Encrypt函数,将中心银行节点广播的主公钥和分配给信贷信息的属性集作为Encrypt函数的输入对用户A的信贷信息进行加密,得到加密后的密文。
其中,将加密得到的密文CT基于共识机制记录于区块链中的过程可参照步骤103,此处亦不再赘述。
204、在用户A向银行节点M借贷时,若信贷信息对应的属性集满足访问控制结构,则由银行节点M利用其私钥解密区块链中的与用户A相关的密文CT,并根据解密结果,确定是否贷款给用户A。
其中,银行节点M与银行节点N为相同或不相同的银行节点。
具体的,该过程可以包括:
银行节点M基于用户A的借贷请求,在区块链中查询与用户A相关的密文CT;若查询到密文CT,则执行Decrypt函数,将银行节点M的属性集和银行节点M的私钥作为Decrypt函数的输入对用户A相关的密文CT进行解密。当解密成功后,获取信贷信息,当信贷信息中用户A的信用评估结果指示用户A的信用良好,则允许贷款给用户A,否则,不允许贷款给用户A。
本发明实施例提供一种基于属性加密的联盟区块链实现信贷方法,该方法基于KP-ABE加密,包括:构建多个银行节点的联盟链及共识机制,多个银行节点初始设置有一个中心银行节点;由中心银行节点生成主私钥和主公钥,并根据主私钥和预设的访问控制结构,生成各银行节点各自的私钥并对应分发给各银行节点,以及广播主公钥;用户A的信贷信息由其借贷的银行节点N利用主公钥和分配给信贷信息的属性集进行加密,并将加密得到的密文CT基于共识机制记录于区块链中;在用户A向银行节点M借贷时,若信贷信息对应的属性集满足访问控制结构,则由银行节点M利用其私钥解密区块链中的与用户A相关的密文CT,并根据解密结果,确定是否贷款给用户A。由此通过基于联盟链内的各个银行节点达成的共识机制,能够确保联盟内部的各个银行节点的存证信贷信息和信用信息的安全性、一致性;通过结合KP-ABE(Key Policy Attribute-Based Encryption)加密和联盟区块链技术,由于KP-ABE的加密解密技术,确保每条信贷信息均由其借贷的银行节点利用属性加密方案进行加密,且只能由具有权限的数据访问者解密,由此能够避免银行机构的用户信贷信息由不适当的用户访问或者由不完全受信任的数据中心或服务提供者泄露;另外,由于区块链去中心化、不可篡改、可追溯的特性,因此在信贷评估过程中,能够减少信贷评估的成本和冗余工作,提高信贷评估效率,同时也能够保证信贷信息的隐私性和安全性。
此外,本发明实施例还提供一种基于属性加密的联盟区块链实现信贷系统,系统执行上述实施例一中的基于属性加密的联盟区块链实现信贷方法。
此外,本发明实施例还提供一种基于属性加密的联盟区块链实现信贷系统,系统执行上述实施例二中的基于属性加密的联盟区块链实现信贷方法。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。在本发明所提供的几个实施例中,应该理解到,所揭露的方法和系统,可以通过其他的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
需要说明的是,在本发明的描述中,术语“第一”、“第二”、“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
需要说明的是:上述实施例提供的基于属性加密的联盟区块链实现信贷系统在执行基于属性加密的联盟区块链实现信贷方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于属性加密的联盟区块链实现信贷系统与基于属性加密的联盟区块链实现信贷方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种基于属性加密的联盟区块链实现信贷方法,其特征在于,所述方法基于CP-ABE加密,所述方法包括:
构建多个银行节点的联盟链及共识机制,所述多个银行节点初始设置有一个中心银行节点;
由所述中心银行节点生成主私钥和主公钥,并根据所述主私钥和分别分配给各银行节点的属性集,生成所述各银行节点各自的私钥并对应分发给所述各银行节点,以及广播所述主公钥;
用户A的信贷信息由其借贷的银行节点N利用所述主公钥和预设的访问控制结构进行加密,并将加密得到的密文CT基于所述共识机制记录于区块链中,所述信贷信息包括银行节点N对用户A的信用评估结果及用户A的借贷信息;
在所述用户A向银行节点M借贷时,若所述银行节点M的属性集满足所述访问控制结构,则由所述银行节点M利用其私钥解密所述区块链中的与所述用户A相关的所述密文CT,并根据解密结果获取所述信贷信息,当所述信贷信息中用户A的信用评估结果指示用户A的信用良好,则允许贷款给所述用户A。
2.根据权利要求1所述的方法,其特征在于,所述由中心银行节点生成主私钥和主公钥包括:
所述中心银行节点确定椭圆曲线参数,并根据所述椭圆曲线参数初始化系统,生成所述主私钥和所述主公钥。
3.根据权利要求1所述的方法,其特征在于,所述信贷信息包括所述银行节点N对用户A的信用评估结果及所述用户A的借贷信息。
4.根据权利要求1所述的方法,其特征在于,所述将加密得到的密文CT基于所述共识机制记录于区块链中包括:
所述银行节点N广播所述密文CT至其他的银行节点Ni,以使所述银行节点Ni在缓冲池中记录所述密文CT;
所述银行节点Ni在预设的共识时间点上,对截止到上一个所述共识时间点的时间段内所述缓冲池中所记录的包含所述密文CT的所有密文,按密文生成时间进行排序,得到排序后的所述所有密文;
所述银行节点Ni对排序后的所述所有密文进行哈希运算得到哈希值,并广播所述哈希值至所有的银行节点;
在所述所有的银行节点中,若超过预设数量的银行节点接收到的所述哈希值一致,则将包含所述密文CT的所述所有密文写入所述区块链。
5.根据权利要求4所述的方法,其特征在于,所述银行节点Ni对排序后的所述所有密文进行哈希运算得到哈希值包括:
将排序后的所述所有密文构成预设格式的数组,并做压缩;
利用预设哈希算法对压缩后的所述数组进行哈希,得到所述哈希值。
6.一种基于属性加密的联盟区块链实现信贷方法,其特征在于,所述方法基于KP-ABE加密,所述方法包括:
构建多个银行节点的联盟链及共识机制,所述多个银行节点初始设置有一个中心银行节点;
由所述中心银行节点生成主私钥和主公钥,并根据所述主私钥和预设的访问控制结构,生成各银行节点各自的私钥并对应分发给所述各银行节点,以及广播所述主公钥;
用户A的信贷信息由其借贷的银行节点N利用所述主公钥和分配给所述信贷信息的属性集进行加密,并将加密得到的密文CT基于所述共识机制记录于区块链中,所述信贷信息包括银行节点N对用户A的信用评估结果及用户A的借贷信息;
在所述用户A向银行节点M借贷时,若所述信贷信息对应的属性集满足所述访问控制结构,则由所述银行节点M利用其私钥解密所述区块链中的与所述用户A相关的所述密文CT,并根据解密结果获取所述信贷信息,当所述信贷信息中用户A的信用评估结果指示用户A的信用良好,则允许贷款给所述用户A。
7.根据权利要求6所述的方法,其特征在于,所述中心银行节点生成主私钥和主公钥包括:
所述中心银行节点确定椭圆曲线参数,并根据所述椭圆曲线参数初始化系统,生成所述主私钥和所述主公钥。
8.根据权利要求6所述的方法,其特征在于,所述信贷信息包括所述银行节点N对用户A的信用评估结果及所述用户A的借贷信息。
9.根据权利要求6所述的方法,其特征在于,所述将加密得到的密文CT基于所述共识机制记录于区块链中包括:
所述银行节点N广播所述密文CT至其他的银行节点Ni,以使所述银行节点Ni在缓冲池中记录所述密文CT;
所述银行节点Ni在预设的共识时间点上,对截止到上一个所述共识时间点的时间段内所述缓冲池中所记录的包含所述密文CT的所有密文,按密文生成时间进行排序,得到排序后的所述所有密文;
所述银行节点Ni对排序后的所述所有密文进行哈希运算得到哈希值,并广播所述哈希值至所有的银行节点;
在所述所有的银行节点中,若超过预设数量的银行节点接收到的所述哈希值一致,则将包含所述密文CT的所述所有密文写入所述区块链。
10.根据权利要求9所述的方法,其特征在于,所述银行节点Ni对排序后的所述所有密文进行哈希运算得到哈希值包括:
将排序后的所述所有密文构成预设格式的数组,并做压缩;
利用预设哈希算法对压缩后的所述数组进行哈希,得到所述哈希值。
11.一种基于属性加密的联盟区块链实现信贷系统,其特征在于,所述系统执行如权利要求1~5中任意一项所述的基于属性加密的联盟区块链实现信贷方法。
12.一种基于属性加密的联盟区块链实现信贷系统,其特征在于,所述系统执行如权利要求6~10中任意一项所述的基于属性加密的联盟区块链实现信贷方法。
CN201810432800.9A 2018-05-08 2018-05-08 基于属性加密的联盟区块链实现信贷方法及系统 Active CN108898475B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810432800.9A CN108898475B (zh) 2018-05-08 2018-05-08 基于属性加密的联盟区块链实现信贷方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810432800.9A CN108898475B (zh) 2018-05-08 2018-05-08 基于属性加密的联盟区块链实现信贷方法及系统

Publications (2)

Publication Number Publication Date
CN108898475A CN108898475A (zh) 2018-11-27
CN108898475B true CN108898475B (zh) 2021-04-06

Family

ID=64342636

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810432800.9A Active CN108898475B (zh) 2018-05-08 2018-05-08 基于属性加密的联盟区块链实现信贷方法及系统

Country Status (1)

Country Link
CN (1) CN108898475B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109474430B (zh) * 2019-01-10 2022-03-22 四川虹微技术有限公司 一种集群密钥生成方法、装置及其存储介质
CN109547218B (zh) * 2019-01-18 2021-10-15 北京工业大学 一种改进bip协议的联盟链节点秘钥分配及备份系统
CN109903033A (zh) * 2019-02-25 2019-06-18 重庆邮电大学 一种区块链分布式能源安全交易方法
CN110060148A (zh) * 2019-04-23 2019-07-26 浙江泰链科技有限公司 基于区块链的资产共享数据流转方法、装置、设备及介质
CN110113203B (zh) * 2019-04-30 2021-10-22 创新先进技术有限公司 一种用于加密模型的安全性评估的方法和设备
CN110084602B (zh) * 2019-04-30 2021-07-06 杭州复杂美科技有限公司 一种隐私信息受保护的借贷方法和系统、设备及存储介质
CN110224808B (zh) * 2019-05-07 2022-10-04 深圳壹账通智能科技有限公司 基于区块链的银行数据共享方法、装置、计算机设备和存储介质
CN112181976A (zh) * 2019-08-08 2021-01-05 北京天德博源科技有限公司 基于区块链的小额贷款存证
CN111159745B (zh) * 2019-12-30 2023-04-07 深圳前海微众银行股份有限公司 一种适用于区块链的验证方法及装置
US11228423B2 (en) 2020-01-12 2022-01-18 Advanced New Technologies Co., Ltd. Method and device for security assessment of encryption models
CN111402029B (zh) * 2020-03-06 2023-07-04 同盾控股有限公司 基于区块链和知识联邦的智能评估的方法及装置
CN111857093B (zh) * 2020-06-29 2021-12-07 华东师范大学 基于dag区块链的自动驾驶预期功能安全评估方法、设备
CN111862486A (zh) * 2020-07-22 2020-10-30 中国工商银行股份有限公司 基于联盟链的制卡方法、装置及系统
CN112152778B (zh) * 2020-09-22 2022-03-15 腾讯科技(深圳)有限公司 一种节点管理方法、装置、及电子设备
CN112202612B (zh) * 2020-09-29 2023-06-20 东软集团股份有限公司 区块链节点管理方法、存储介质、节点以及区块链系统
CN112380179A (zh) * 2020-12-14 2021-02-19 河钢数字技术股份有限公司 一种基于区块链的钢铁供应链信息秘密共享方法及系统
CN113516548A (zh) * 2021-05-14 2021-10-19 牛少侠科技(山西)有限公司 一种基于区块链的金融借贷方法及系统
CN114745201B (zh) * 2022-05-07 2023-05-23 北京航空航天大学 基于区块链与属性加密的数据访问隐私保护系统及方法
CN114638697B (zh) * 2022-05-18 2022-11-15 浙江数秦科技有限公司 基于区块链的小额贷款管理系统
CN116527230B (zh) * 2023-07-03 2023-09-15 湖南君创融信科技有限公司 一种金融信贷征信数据防泄露方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104135473B (zh) * 2014-07-16 2017-06-23 北京航空航天大学 一种由密文策略的属性基加密实现身份基广播加密的方法
CN106503994B (zh) * 2016-11-02 2020-07-28 西安电子科技大学 基于属性加密的区块链隐私数据访问控制方法
CN107483198B (zh) * 2017-09-25 2019-11-12 中国科学院信息工程研究所 一种可监管的区块链系统及方法

Also Published As

Publication number Publication date
CN108898475A (zh) 2018-11-27

Similar Documents

Publication Publication Date Title
CN108898475B (zh) 基于属性加密的联盟区块链实现信贷方法及系统
CA3061268C (en) Distributed key management for trusted execution environments
CN107240017B (zh) 区块链交易管理系统及方法
KR102263325B1 (ko) 신뢰 실행 환경에서 스마트 계약 동작을 안전하게 실행하는 방법
US20220391831A1 (en) Blockchain-Based Authentication And Authorization
US11410145B2 (en) Blockchain-implemented method for control and distribution of digital content
CN110417750B (zh) 基于区块链技术的文件读取和存储的方法、终端设备和存储介质
US20180183768A1 (en) Systems and methods for privacy in distributed ledger transactions
CN110915164A (zh) 基于可信执行环境中执行的智能合约操作处理区块链数据
JP2023539814A (ja) 遠隔アクセス制限ウォレットからの暗号通貨の移動
CN107682364B (zh) 一种许可链隐私交易方法
TW201733303A (zh) 決定用於資訊的安全交換的共同私密,及階層化的決定性加密金鑰
CN109284627A (zh) 一种基于区块链智能合约的征信信誉方法及装置
CN110111102A (zh) 一种基于区块链技术的虚拟交通卡系统及发行交易方法
CN110445840B (zh) 一种基于区块链技术的文件存储和读取的方法
US20210143995A1 (en) Systems and methods for blockchain-based automatic key generation
CN111429138A (zh) 区块链节点数据安全交互方法及第一交互节点
JP2023056011A (ja) ブラインド化された帰結選択のためのブロックチェーンで実装されるセキュリティー・システムおよび方法
CN110580411A (zh) 基于智能合约的权限查询配置方法及装置
WO2022068360A1 (zh) 基于共享根密钥的信息处理方法、装置、设备及介质
CN113393225B (zh) 数字货币加密支付方法及系统
CN110519040B (zh) 基于身份的抗量子计算数字签名方法和系统
Li et al. Blockchain-oriented privacy protection with online and offline verification in cross-chain system
CN113869901A (zh) 密钥生成方法、装置、计算机可读存储介质及计算机设备
CN106790100A (zh) 一种基于非对称密码算法的数据存储和访问控制方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240306

Address after: Room 1179, W Zone, 11th Floor, Building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai, 201702

Patentee after: Shanghai Zhongan Information Technology Service Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: ZHONGAN INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240415

Address after: Room 1179, W Zone, 11th Floor, Building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai, 201702

Patentee after: Shanghai Zhongan Information Technology Service Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: ZHONGAN INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right