首页 > 专利 > 安徽师范大学 > 基于信任区块链节点的信任度计算方法专利详情

基于信任区块链节点的信任度计算方法   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2019-08-15
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2019-12-24
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2021-09-28
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2039-08-15
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201910753834.2 申请日 2019-08-15
公开/公告号 CN110519246B 公开/公告日 2021-09-28
授权日 2021-09-28 预估到期日 2039-08-15
申请年 2019年 公开/公告年 2021年
缴费截止日
分类号 H04L29/06H04L29/08G06Q40/04 主分类号 H04L29/06
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 6
权利要求数量 7 非专利引证数量 1
引用专利数量 3 被引证专利数量 0
非专利引证 1、2017.11.29王醒.基于信誉值创建数字资产的区块链系统《.信息网络安全》.2018,(第05期),全文. Richard Dennis.Rep on the block : Anext generation reputation system basedon the blockchain《.The 10th InternationalConference for Internet Technology andSecured Transactions (ICITST-2015)》.2016,全文.;
引用专利 WO2018142948A、US2019097807A、EP3249599A 被引证专利
专利权维持 3 专利申请国编码 CN
专利事件 事务标签 公开、实质审查、授权
申请人信息
申请人 第一申请人
专利权人 安徽师范大学 当前专利权人 安徽师范大学
发明人 张佩云、孙鋆哲、赵启熙、张爱清、何昕、祝玉军、谢杰敏、汪丽翠、李晨曦 第一发明人 张佩云
地址 安徽省芜湖市弋江区花津南路安徽师范大学 邮编 241000
申请人数量 1 发明人数量 9
申请人所在省 安徽省 申请人所在市 安徽省芜湖市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
芜湖安汇知识产权代理有限公司 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
钟雪
摘要
本发明适用于区块链技术领域,提供一种基于信任区块链节点的信任度计算方法,包括如下步骤:S1、针对信任区块链网络中的节点,基于节点的交易信任值Cd及行为信任值Fb来计算节点的综合信任值;S2、对节点的综合信任值加入时间戳,形成带有时间戳的综合信任值。综合节点交易产生的信任值与节点行为产生的信任值来计算节点的综合信任值,基于综合信任值选出可信节点,有效保证区块链网络环境的安全,同时降低平均事务延时和提高出块速率。
  • 摘要附图
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图1
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图2
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图3
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图4
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图5
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图6
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图7
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图8
    基于信任区块链节点的信任度计算方法
  • 说明书附图:图9
    基于信任区块链节点的信任度计算方法
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2021-09-28 授权
2 2019-12-24 实质审查的生效 IPC(主分类): H04L 29/06 专利申请号: 201910753834.2 申请日: 2019.08.15
3 2019-11-29 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种基于信任区块链节点的信任度计算方法,其特征在于,所述方法具体包括如下步骤:
S1、针对信任区块链网络中的节点,基于节点的交易信任值Cd及行为信任值Fb来计算节点的综合信任值;
S2、对节点的综合信任值加入时间戳,形成带有时间戳的综合信任值;
交易信任值Cd的计算公式具体如下:
其中,Cd为节点u在时段k内由于交易产生的信任值,SO(u)为节点u时段k内的稳定运行率,Cr(p(u,i))为节点p在第i次交易后对节点u的推荐可信值,节点p与节点u的第i次交易发生在时段k内,TS(u)为节点u时段k内的转发率,AT(u)为节点u时段k内的记账率,VC(u)为节点u时段k内的验证率,CP(u)节点u时段k内的响应率。

2.如权利要求1所述基于信任区块链节点的信任度计算方法,其特征在于,行为信任值Fb的计算方法具体如下:
S11、定义节点行为及节点行为的属性,基于节点行为的属性对节点行为进行赋值,称为行为值;
S12、捕获节点在当前时段内发生的所有行为Ai;
S13、基于行为对应行为值来计算节点当前的行为信任值。

3.如权利要求2所述基于信任区块链节点的信任度计算方法,其特征在于,行为信任值Fb的计算公式具体如下:
n‑k
f(k)=θ
其中,F(Ai)表示行为Ai的行为值,i的取值为[1,6],F(ANNt)表示节点NN在时间t段所有行为值的总和,n表示时间段总数,k表示第k个时间段,θ取值根据当前交易行为的重要程度来取值,θ取值范围为0到1,越重要的行为θ越接近0,相反越接近1。

4.如权利要求1所述基于信任区块链节点的信任度计算方法,其特征在于,综合信任值的计算公式具体如下:
在本发明实施例中,Trust表示区块链节点的综合信任值,Cd表示节点的交易信任值,Fb表示节点的行为信任值,α为权重参数值。

5.如权利要求1所述基于信任区块链节点的信任度计算方法,其特征在于,带有时间戳的综合信任值Trustt计算方法具体如下:
其中,Trustfirst为新节点的初始信任值,取值为0.5,Trustend为时段的结束时间点,tfirst为节点进入区块链网络的时刻或者是时段的起始时间点,tEND为节点离开区块链网络的时刻,t0为时段的设定时长,[k]表示k值取整。

6.如权利要求1所述基于信任区块链节点的信任度计算方法,其特征在于,在步骤S1之后还包括:
S3、将综合信任值与信任阈值进行比较;
S4、存在恶性行为,且总信任值低于信任阈值的节点定义为恶意节点,将不存在恶意行为,但综合信任值低于信任阈值的节点定义为普通节点,综合信任值大于或等于信任阈值的节点定义为可信节点;
S5、将可信节点放入可信列表,将恶意节点从可信列表中剔除,可信列表用于记录可信节点的列表。

7.如权利要求1所述基于信任区块链节点的信任度计算方法,其特征在于,在步骤S1之前还包括:
对请求加入信任区块链网络的节点进行验证,其验证过程具体如下:
节点在请求加入信任区块链网络时,向信任区块链网络中的所有节点发送节点属性向量,包括:信任评价、交易次数、成功交易次数、稳定运行时间、运行总时间及处理时间;
当验证合法后,将节点标识及对应的节点属性向量发送至信任区块链中的所有区块。
说明书

技术领域

[0001] 本发明属于区块链技术领域,提供了一种基于信任区块链节点的信任度计算方法。

背景技术

[0002] 区块链网络是去中心化的P2P网络,每个节点都需要和连接他本身的节点执行操作,在节点交互的过程中就会存在信任问题。区块链被认为是互联网的价值,它存在于解决生产关系的信任问题。问题在于,所谓“无需信任”的区块链并没有改善人与他们的信任关系。虽然有很多关于区块链、分布账本和智能合约的技术优势,其中是有不可篡改、可追溯、开放、透明、加密算法和信任关系等特点,但仍需面对区块链技术本身的信任危机,即区块链节点的行为是否可信。智能合约是基于区块链技术的核心功能,将智能合约用于实际的信任评估机制,可以保证收集的数据与计算结果不被更改和伪造。
[0003] 随着比特币的广泛使用,庞大的交易数据和一些隐私数据越来越多,区块链信任问题导致交易延迟、交易失败等问题。国内有针对网上租车的场景中个人隐私保护的问题上,提出了个人隐私保护机制,分析了泄露个人隐私的原因设计解决方案,通过对数据库设计,租车用户的描述和性能的分析,从读取写入数据到授予撤销权限等方面研究该类模型框架和实现,最后在区块链系统中证明了隐私保护机制的可实现性。祝烈煌等学者分别从网络层、交易层和应用层详细描述了区块链的个人隐私保护存在的威胁以及预防的对策,展望了未来隐私保护的研究方向。
[0004] 国外区块链的信任研究大多是基于一些平台。电子病历(EHRs)是基于安全签名方案,在ABS中引入多个权限,提出MA‑ABS方案,满足区块链结构的需求,保证了信息的匿名性和不变性。区块链和物联网结合的应用也很多,比如,在区块链和BIoT(Blockchain Internet of Things)平台上实现可信事务的安全,该事务依赖于32位字节密钥的ECDSA签名,并使用javacard安全元素防止密钥被盗。汽车在人们的日常生活中越来越普遍,随着智能汽车的研究,传统的方法无法在通信方面做出可靠的数据和数据的准确,在车载云中研究使用了区块链技术Trust Bit存储所有可信的信息。公告网络CreditCoin,是一种基于区块链的新型保密激励公告网络,可以在不完全可信的环境中生成签名并匿名发送公告,同时在区块链中鼓励用户分享交通信息。随着物联网的发展与普及,物联网通信设备被安置在城市任意位置并且是无人看管,很难保证信息的真实性和安全性。文献提出了“信任表”代表IoT相关利益之间的信任分布,在私有区块链链上实施信任表的实验,实验结果证明了信任表的良好实践。各种平台结合区块链的实现,不仅以区块链实现与万物互联,更需要从区块链本身构建信任体系,构建信任区块链。
[0005] 区块链网络是基于P2P网络模型的,但区块链网络有以下特点:
[0006] (1)区块链网络节点多样性。区块链节点可以运行在笔记本电脑、台式电脑、手机、iPad等智能设备。这些设备的CUP、内存、网络延迟、待机能力等都有差别。造成节点性能的巨大差异。
[0007] (2)区块链节点动态性。区块链节点加入、退出区块链网络频繁,主观改变节点状态与本身网络环境优劣都会影响节点的动态。
[0008] 3)区块链网络自主传播性。当网络中一笔交易发生,区块链网络自主进行广播式传播,直到所有节点接收到此信息并验证。
[0009] 由于区块链网络节点的多样性、移动性,以及区块链网络的去中心化特性,导致无法直接使用传统的信任值评价方法来对网络中的节点进行评价。

发明内容

[0010] 本发明实施例提供了一种基于信任区块链节点的信任度计算方法,综合节点交易产生的信任值与节点行为产生的综合信任值,选出可信节点,有效保证区块链网络环境的安全,同时降低平均事务延时和提高出块速率。
[0011] 为了实现上述目的,本发明提供一种基于信任区块链节点的信任度计算方法,所述方法具体包括如下步骤:
[0012] S1、针对信任区块链网络中的节点,基于节点的交易信任值Cd及行为信任值Fb来计算节点的综合信任值;
[0013] S2、对节点的综合信任值加入时间戳,形成带有时间戳的综合信任值。
[0014] 进一步的,交易信任值Cd的计算公式具体如下:
[0015]
[0016] 其中,Cd为节点u在时段k内由于交易产生的信任值,So(u)为节点u时段k内的稳定运行率,Cr(p(u,i))为节点p在第i次交易后对节点u的推荐可信值,节点p与节点u的第i次交易发生在时段k内,TS(u)为节点u时段k内的转发率,AT(u)为节点u时段k内的记账率,VC(u)为节点u时段k内的验证率,CP(u)节点u时段k内的响应率。
[0017] 进一步的,行为信任值Fb的计算方法具体如下:
[0018] S11、定义节点行为及节点行为的属性,基于节点行为的属性对节点行为进行赋值,称为行为值;
[0019] S12、捕获节点在当前时段内发生的所有行为Ai;
[0020] S13、基于行为对应行为值来计算节点当前的行为信任值。
[0021] 进一步的,行为信任值Fb的计算公式具体如下:
[0022]
[0023]
[0024] f(k)=θn‑k
[0025] 其中,F(Ai)表示行为Ai的行为值,i的取值为[1,6], 表示节点NN在时间t段所有行为值的总和,n表示时间段总数,k表示第k个时间段,θ取值根据当前交易行为的重要程度来取值,越重要的行为θ越接近0,相反越接近1。
[0026] 进一步的,综合信任值的计算公式具体如下:
[0027]
[0028] 在本发明实施例中,Trust表示区块链节点的综合信任值,Cd表示节点的交易信任值,Fb表示节点的行为信任值,α为权重参数值。
[0029] 进一步的,带有时间戳的综合信任值Trustt计算方法具体如下:
[0030]
[0031]
[0032]
[0033] 其中,Trustfirst为新节点的初始信任值,取值为0.5,Trustend为时段的结束时间点,tfirst为节点进入区块链网络的时刻或者是时段的起始时间点,tfirst为节点进入区块链网络的时刻,tEND为节点离开区块链网络的时刻,t0为时段的设定时长,[k]表示k值取整。
[0034] 进一步的,在步骤S1之后还包括:
[0035] S3、将综合信任值与信任阈值进行比较;
[0036] S4、存在恶性行为,且总信任值低于信任阈值的节点定义为恶意节点,将不存在恶意行为,但综合信任值低于信任阈值的节点定义为普通节点,综合信任值大于或等于信任阈值的节点定义为可信节点;
[0037] S5、将可信节点放入可信列表,将恶意节点从可信列表中剔除,可信列表用于记录可信节点的列表。
[0038] 进一步的,在步骤S1之前还包括:
[0039] 对请求加入信任区块链网络的节点进行验证,其验证过程具体如下:
[0040] 节点在请求加入信任区块链网络时,向信任区块链网络中的所有节点发送节点属性向量,包括:信任评价、交易次数、成功交易次数、稳定运行时间、运行总时间及处理时间;
[0041] 当验证合法后,将节点标识及对应的节点属性向量发送至信任区块链中的所有区块。
[0042] 本发明提供的基于信任区块链节点的信任度计算方法具有如下有益效果:
[0043] 综合节点交易产生的信任值与节点行为产生的信任值来计算节点的综合信任值,基于综合信任值选出可信节点,有效保证区块链网络环境的安全,同时降低平均事务延时和提高出块速率。

实施方案

[0053] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0054] 将信任区块链网络模型构建成一个无向图G=(V,E),每个顶点描述网络中的一个节点,每条边连接两个彼此传输范围内的节点,如图1所示,在这个模型中,定义了两个实体,它们被形式化为一组特征向量
[0055] 网络节点(Network Node)包括一个节点属性向量(Node Attributes)和节点能力向量(Node Capacity);节点属性向量包括信任评价、交易次数、成功交易次数、稳定运行时间、运行总时间及处理时间,节点能力向量有下载、交易、转发和验证等。用NA表示节点属性向量,NC表示节点能力向量,给出了区块链网络节点NN的表达式:
[0056] NN={nodei|i∈{1,2,…m}}
[0057] nodei=<NA,NC>
[0058]
[0059] NC=<下载区块链,交易,操作类型(记账、验证、转发、存储)>
[0060] 节点分类包括:可信节点、可信节点、普通节点及恶意节点,其定义具体如下:
[0061] 可信节点:综合信任值达到信任阈值的节点;
[0062] 超级可信节点:可信列表中选出的可信节点;
[0063] 普通节点:由于外界不可控因素影响节点的综合信任值,比如停电或者断网等会影响节点的工作,导致节点的综合信任值低,低于信任阈值,但不存在恶意行为,这样的节点称为普通节点;
[0064] 恶意节点:综合信任值低于信任阈值,且存在行为恶意的节点。
[0065] 为了实现节点信任值计算的可信度度量,需要保证节点身份唯一性,需要给每个节点一个编号ID。同时为节点加入时间戳time,使得消息具有时效性。当网络节点NN首次请求加入信任区块链网络时,将向所有的信任区块链网络节点发出特定的凭据NA。NA包含这个节点在网络中操作的一些节点属性信息。当经过身份验证的NN将NA包含在一个有效的块中时,身份验证请求被批准。NN的凭据状态随后可以通过信任值评估来重新更新或者是遗弃;当遗弃其凭据时,NN必须提供新的凭据NA才能在网络中保持身份验证,节点的验证过程见算法2:
[0066]
[0067] 图2为本发明实施例提供的基于信任区块链节点的信任度计算方法流程图,该方法具体如下:
[0068] S1、针对信任区块链网络中的节点,基于节点的交易信任值Cd及行为信任值Fb来计算各节点的综合信任值;
[0069] 在本发明实施例中,节点交易产生的信任值Cd的计算公式具体下所示:
[0070]
[0071] 其中,Cd为节点u在时段k内由于交易产生的信任值,So(u)为节点u时段k内的稳定运行率,Cr(p(u,i))为节点p在第i次交易后对节点u的推荐可信值,节点p与节点u的第i次交易发生在时段k内,TS(u)为节点u时段k内的转发率,AT(u)为节点u时段k内的记账率,VC(u)为节点u时段k内的验证率,CP(u)节点u时段k内的响应率。
[0072] 在本发明实施例中,稳定运行率=稳定运行时间/总时间,SO(u)=Ss/Stotal,Ss为节点u时段k内的稳定运行时间,Stotal为节点u时段k内的运行总时间;
[0073] 转发率=成功转发交易数/总转发交易数,TS(u)=Ts/Ttotal,Ts为节点u时段k内成功转发的交易数,Ttotal为节点u时段k内的总转发交易数;
[0074] 记账率=成功记账交易数/总记账交易数,AT(u)=As/Atotal,As为节点u时段k内成功记账的交易数,Atotal为节点u时段k内的总记账交易数;
[0075] 验证率=成功验证交易数/总验证交易数,VC(u)=Vs/Vtotal,Vs为节点u时段k内成功验证的交易数,Vtotal为节点u时段k内的总验证交易数;
[0076] 响应率=记账、验证、转发交易数/处理时长,CP(u)=Cs/Ctotal,Cs为节点u时段k内的记账、验证、转发交易数,Ctotal节点u时段k内的处理时长。
[0077] 在本发明实施例中,节点行为产生的信任值Fb的具体如下:
[0078] S11、定义节点行为及节点行为的属性,基于节点行为的属性对节点行为进行赋值,称为行为值,节点行为值{‑1,1}区间内进行赋值;
[0079] 行为属性包括:积极行为和消极行为,对于积极行为赋予正的节点行为值,对消极行为赋予负的节点行为值;消极行为的属性又包括:恶意行为和非恶意行为,由于不可控因素导致的消极行为一般定义为非恶意行为,由于人为因素导致的消极行为定义为恶意行为。
[0080] 在本发明实施例中,节点行为的信任值是在节点加入区块链网络之后,节点的交互过程中可能发布虚假资源、攻击邻居节点等恶意行为。节点进行检查交易块、区块链同步、记账同步等时间的快慢影响行为信任值。
[0081] 节点行为信任值模型的信誉因素为Abehavior={A1,A2,...,Ai,...,A6},表1为节点行为与参数映射表,表1如下:
[0082] 表1节点行为与参数映射表
[0083] Abehavior 动态行为 参数取值范围A1 检查交易块时间 permissionAlloc;licenseProcess;allowObject
A2 区块链同步时间 forbidClose;banProcessHeap;prohibitThread
A3 记账同步时间 revokeAlloc;repealHeap;backoutAlloc;
A4 响应延迟 renewThread;updateProcess;
A5 发布虚假资源 grumbleExA;complainExA
A6 攻击邻居节点 amendFile;modifierFile;revampFile
[0084] S12、捕获节点在当前时段[tfrist,tend]内发生的所有行为Aevt;
[0085] 若当前时段为节点进入区块链的第一个时段,则tfirst为对应节点进入区块链网络的时刻,tend为第一个时段的结束时间点,若当前时段为节点进入区块链的第k(k≥2)个时段,则tfirst为对应时段的起始时间点,tend为对应时段的结束时间点;节点行为捕捉算法件算法1:
[0086]
[0087] S13、基于行为对应行为值来计算节点当前的行为信任值;
[0088] 在本发明实施例中,各节点的行为信任值Fb的计算公式具体如下
[0089]
[0090]
[0091] f(k)=θn‑k
[0092] 其中,F(Ai)表示行为Ai的行为值,i的取值为[1,6], 表示节点NN在时间t段所有行为值的总和,n表示时间段总数,k表示第k个时间段,θ取值根据当前交易行为的重要程度来取值,θ取值范围0到1,越重要的行为θ越接近0,相反越接近1。
[0093] 在本发明实施例中,综合信任值的计算公式具体如下:
[0094]
[0095] 在本发明实施例中,Trust表示区块链节点的综合信任值,Cd表示节点的交易信任值,Fb表示节点的行为信任值,通过对交易信任值及行为信用值进行加权得到节点的综合信任值,其中α权重参数值。
[0096] 在本发明实施例中,新节点是指刚加入区块链网络节点,针对新节点加入区块链网络,区块链网络节点没有此节点的行为记录,若将新节点的初始信任度设置为0,可能对其信任度太低无法正常的交互通信操作,如若将新节点的初始信任度设置为1,那么在通信中因为过高的信任值并不能准确反映此节点的真实表现,所以折中考虑,将新节点的初始信任度设置为0.5,但是符合信任值的数量级,可以同等级放大或者缩小,随着相关事件的发生,综合信任值会不断更新。
[0097] S2、对节点的综合信任值加入时间戳,形成带有时间戳的综合信任值。
[0098] 在本发明实施例中,带有时间戳的综合信任值Trustt计算方法具体如下:
[0099]
[0100]
[0101]
[0102] 其中,Trustfirst为新节点的初始信任值,取值为0.5,Trustend为时段的结束时间点,tfirst为节点进入区块链网络的时刻或者是时段的起始时间点,若前时段为节点进入区块链的第一个时段,则tfirst为对应节点进入区块链网络的时刻,若当前时段为节点进入区块链的第k(k≥2)个时段,则tfirst为对应时段的起始时间点,tEND为节点离开区块链网络的时刻,t0为时段的设定时长,[k]表示k值取整,将时间等分成t0时段,每隔一段时间衰减一次。
[0103] 节点信任度评估过程见算法3;
[0104]
[0105]
[0106] 将综合信任值与信任阈值进行比较;
[0107] 存在恶性行为,且总信任值低于信任阈值的节点定义为恶意节点,将不存在恶意行为,但综合信任值低于信任阈值的节点定义为普通节点,综合信任值大于或等于信任阈值的节点定义为可信节点;
[0108] 将可信节点放入可信列表,将恶意节点从可信列表中剔除,可信列表用于记录可信节点的列表。
[0109] 本发明提供的基于信任区块链节点的信任度计算方法具有如下有益效果:
[0110] 综合节点交易产生的信任值与节点行为产生的信任值来计算节点的综合信任值,基于综合信任值选出可信节点,有效保证区块链网络环境的安全,同时降低平均事务延时和提高出块速率。
[0111] 本专利申请主要运用以太坊平台,运用solidity语言进行智能合约的编写,web3.0技术进行系统交互。
[0112] 硬件设备
[0113] LENOVO ideapad Y700 64‑bit,windows OS,Inter Core i5‑6300HQ,CUP@2.30GHz,RAM 8G,NVIDIA GEFORCE GTX 960m Graphics
[0114] 软件环境
[0115] Git:Git可用于从GitHub获取源代码;NodeJS以太坊开发框架Truffle需要;
[0116] NodeJS:NodeJS允许使用JavaScript开发服务端程序,同时因为以太坊开发需要使用开发框架需要使用NodeJS;
[0117] Solc:Solc用于编译以太坊智能合约;
[0118] Testrpc:testrpc是在本地使用内存模拟的一个以太坊环境,对于开发调试来说,更为方便快捷,当合约在testrpc中测试通过后,再可以部署到geth中去;
[0119] Truffle:truffle是一个以太坊的开发和测试框架。使用它可以方便我们快速的在以太坊上开发;
[0120] Geth:是以太坊官方提供的节点,我们利用geth创建一个私有链,并通过Web3.js API连接geth节点,然后操作该私有区块链。
[0121] (1)创建创世区块配置文件并初始化区块;
[0122] (2)启动以太坊节点
[0123] (3)通过Web3.js连接geth节点,并可查询geth节点中的账户
[0124] (4)在另一台机器(windows)上通过IP连接本机的geth节点
[0125] (5)私有链创建完成,测试均可以进行创建账户、挖矿、转账等基本操作。接下来使用Web3.js API发布智能合约。
[0126] (6)使用fs模块中的API装载*.bin和*.abi文件
[0127] (7)unlockAccount解锁用于发布合约的账户
[0128] (8)使用contarct.new方法通过异步调用发布智能合约
[0129] 实验参数设置
[0130] 本实验交易产生信任值更能直观反映此节点的信任度,节点产生信任值权重更大。因此α取0.7,β取0.3。本实验正式开始前做了一次初始试验,确定信任值数量级,正式试验初始信任值取0.5。时间衰减函数中的θ是当前交易行为的重要程度,越重要的行为θ越接近0,相反越接近1,本实验取0.5。其中信任评测指标的Abehavior中{A1,A2,A3,A4,A5,A6}取值范围分别为[0.3,0.7],[0.1,0.5],[0.2,0.6],[‑0.3,0.3],[‑0.8,‑0.2],[‑0.8,‑0.2]。设置节点数量为500,始终在线节点占比为10%,通常在线节点占比为40%,有时在线节点占比为40%,从不在线节点占比10%。可信节点占比为40%,积极节点占比为30%,恶意节点占比为30%。
[0131] 表2仿真参数设置
[0132]
[0133]
[0134] 实验方法
[0135] 基于Ethereum平台使用可靠的脚本语言编写智能合约,并使用Truffle框架和Testrpc来模拟信任区块链的信任值计算。先创建一条私有链,编写并测试成功的智能合约通过web3.js API部署到该私有链上。模拟区块链事务并记录节点行为,包括交易、记账、转发、验证等,模拟时间为24h。
[0136] 节点加入区块链网络的节点随着时间的变化趋势图
[0137] 节点加入区块链网络的节点随着时间的变化趋势如图3所示,该图分为12个时间段。24小时内有496个节点加入区块链网络,4个节点出现故障等原因无法加入。图7为每个时间段区块链网络中在线的节点数目。
[0138] 从图5可以看出,对于传统的区块链交易速度与以信任为基础的支付模式,随着交易频率的增加,节点的平均总交易速度比传统的区块链交易速度与以信任为基础的支付快得多。由于信任区块链计算节点信任值并选出超级可信节点快速处理验证转发等,大大提高了节点处理事务的能力。
[0139] 在此说明,积极节点并不代表是完全可信的节点,积极节点只是说明此节点可能因为外界因素如断网断电等情况导致信任度没那么高,也可能存在多次权重低的交易增加信任度而通过最后一次恶意攻击来达到目的。
[0140] 表3对抗攻击比较表
[0141]
[0142]
[0143] 表3中看出,PCB模型引文对比其他多种模型方法抗攻击显著,但是无法抗多假名攻击,而信任区块链计算方法可以抗多假名攻击。
[0144] 表4给出以下模拟实验,对区块链网络进行1000次交易的实验数据。
[0145] 表4三类节点1000次交易数据
[0146]
[0147] 三类节点处理交易次数折线统计
[0148] 表5三类节点信任等级分布表
[0149]
[0150] 从图6和表5中可以看出,积极节点与恶意节点处理交易的比率差不多,积极节点的交易比例不超过3%,大部分交易的都是可信节点。从表4可以看出,积极节点与恶意节点的信任等级很低,没有最高等级,而最高等级都处于可信节点。
[0151] 区块增长趋势折线统计图
[0152] 从图7中明显的看出,本专利方案的出块速率比比特币的出块速率要高。因为筛选出可信节点直接进行验证记账等操作,大大减少了节点共识验证的时间,增加了打包速率,同时增加了出块效率。
[0153] 区块链平均事务延迟比较
[0154] 从图8中可以看出,在不同的时间段内,平均事务的延迟基本保持稳定,传统区块链的平均事务延迟为53ms左右,而信任区块链的平均事务延迟仅为24ms左右。信任区块链的事务延迟相比传统区块链的事务延迟优化了一半左右,这信任区块链筛选出信任节点对事务的处理速度大大增加,反映了此方案的优越性。
[0155] 平均吞吐量
[0156] 事务的吞吐量表示区块链系统并发的能力。因此,对比了信任区块链下与传统区块链机制下的吞吐量。如图9所示,基于信任区块链方案的平均吞吐量随着并发增加而稳定增长,并逐渐发到稳定峰值。基于传统区块链的曲线变平时间要早的多,最大值基本维持在1500左右。所以信任区块链的吞吐量要优于传统区块链的方案。
[0157] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

附图说明

[0044] 图1为本发明实施例提供的信任区块链网络模型构示意图;
[0045] 图2为本发明实施例提供的基于信任区块链节点的信任度计算方法流程图;
[0046] 图3为本发明实施例提供的节点加入数量随时间变化趋势图;
[0047] 图4为本发明实施例提供的网络节点在线数量随时间变化趋势图;
[0048] 图5为本发明实施例提供的不同交易方案的平均交易速度对比图;
[0049] 图6为本发明实施例提供的不同类型节点交易次数对比图;
[0050] 图7为本发明实施例提供的不同方案出块增长率趋势图;
[0051] 图8为本发明实施例提供的不同方案区块链平均事务延迟比较图;
[0052] 图9为本发明实施例提供的不同方案平均吞吐量对比图。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号