版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单元五区块链中节点间的通信CommunicaitoninNodesPART1区块链网络基础公有链区块链网络一般具有数量多、分布广、自治以及开发自由等特点,一般采用P2P对等网络通信的方式区块链网络中的节点均会承担网络路由、验证数据、传播数据以及发现节点等功能采用的网络拓扑结构为Mesh网络(即网状拓扑结构)联盟链区块链网络适用于企业间进行高频的数据交换以及工业生产中存在的高频数据记录等业务将多个参与者构建为独立的联盟,在联盟内的成员采用区块链的形式管理数据联盟与联盟间将以物理的形式实现“数据隔离”,降低区块链网络的拓扑复杂,提升效率私有链区块链网络集中于公司或组织的内部使用,类似于传统中心化网络构建私有链网络,所有数据都保存于一个中心节点中。借助区块链技术实现数据的安全和隐私保护PART2Networkx实现区块链网络绘制区块链网络1.安装Networkx确保Python版本为3.6+,使用pip可直接安装,确保具体命令如下:$pipinstallnetworkx若要升级到较新版本,请使用--upgrade,具体操作如下:$pipinstall--upgradenetworkx绘制区块链网络2.创建图形(Graph)使用工具的第一步,创建一个没有节点和边的空图形,具体代码如下:importnetworkxasnxG=nx.Graph()绘制区块链网络3.添加节点(Node)(1)直接添加节点如下为直接添加一个节点的代码示例:G.add_node(1)(2)通过可迭代对象添加节点如下为添加的代码示例:G.add_nodes_from([2,3])绘制区块链网络4.添加边(Edge)(1)直接添加如下为直接添加边的代码示例:G.add_edge(1,2)(2)通过可迭代对象添加如下为具体代码示例:G.add_edges_from([(1,2),(1,3)])绘制区块链网络5.检查图的元素信息
完成图、节点和边信息添加后,可通过相关方法检查。具体操作如下:print(list(G.nodes))#显示图中的节点信息print(list(G.edges))#显示图中的边信息print(G.number_of_nodes())#显示图中节点数量print(G.number_of_edges()) #显示图中边数量print(G.nodes()[1])#获取名称为1的节点完整信息绘制区块链网络6.从图中删除元素如下代码可实现从已存在的图中删除节点和边:G.remove_node(2)#删除名称为2的节点G.remove_edge(1,3)#删除节点1和节点3的边绘制区块链网络7.向图形、节点和边缘添加属性(1)向图形添加属性通过向nx.Graph()函数中添加参数可以实现属性的添加具体的属性设置和获取代码如下:G=nx.Graph(name="test_network")print(G.graph['name'])或者可以直接通过G.graph设置图形的属性,具体代码如下:G.graph['location']='china'print(G.graph['location'])绘制区块链网络7.向图形、节点和边缘添加属性(2)向节点添加属性与图形添加属性的方法类似,节点添加也有两种方式,具体代码示例如下:G.add_node(4,name='test4')#直接添加节点和对应属性G.add_nodes_from([5,6],location='jiangsu')#通过迭代的方式添加节点和属性print(list(G.nodes.data()))#输出添加节点后的节点及属性信息绘制区块链网络7.向图形、节点和边缘添加属性(3)向边添加属性参照图形以及节点的属性添加方法,边设置属性可以有如下代码示例:G.add_edge(4,5,weight=4)#直接添加边属性G.add_edges_from([(1,2,{'color':'blue'}),(4,6,{'weight':'5'})])#通过添加可迭代对象G[1][2]['weight']=8#给已存在的边添加属性绘制区块链网络8.绘制简单网络如下代码为使用networkx生成示例图和绘制图形的示例代码:importnetworkxasnximportmatplotlib.pyplotaspltG=nx.Graph()G.add_node(1)G.add_node(2)G.add_node(3)G.add_edges_from([(1,2),(2,3),(3,1)])nx.draw(G)plt.show()实战练习:绘制不同类型的区块链网络1.练习目标使用networkx绘制不同类型的区块链网络,包括公有链网络、联盟链网络以及私有链网络。2.任务内
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中三年级历史《寻找国家出路的探索-辛亥革命》
- 驻马店2025年河南驻马店市确山县选聘37名人事代理教师为在编教师笔试历年参考题库附带答案详解
- 金华2025年浙江金华市检察机关司法雇员招录32人笔试历年参考题库附带答案详解
- 赣州2025年江西赣州市石城县招聘高层次人才笔试历年参考题库附带答案详解
- 温州2025年下半年浙江温州市鹿城区事业单位招聘(选调)42人笔试历年参考题库附带答案详解
- 职业人群颈椎病分级干预方案
- 新疆2025年新疆阿合奇县招聘编制外卫生专业技术及辅助人员11人笔试历年参考题库附带答案详解
- 宁波浙江宁波慈溪市第七人民医院招聘派遣制工作人员4人笔试历年参考题库附带答案详解
- 嘉兴2025年浙江嘉兴海宁市第二人民医院编外岗位合同制人员招聘5人笔试历年参考题库附带答案详解
- 2025 小学六年级科学上册问题导向学习方法指导课件
- 体检中心工作总结10
- 股权转让法律意见书撰写范本模板
- 修建羊舍合同(标准版)
- 北京市5年(2021-2025)高考物理真题分类汇编:专题15 实验(原卷版)
- 2025湖南郴州市百福投资集团有限公司招聘工作人员8人笔试题库历年考点版附带答案详解
- 5年(2021-2025)高考1年模拟历史真题分类汇编选择题专题01 中国古代的政治制度演进(重庆专用)(原卷版)
- 机关单位普通密码设备管理制度
- 【指导规则】央企控股上市公司ESG专项报告参考指标体系
- 融资租赁实际利率计算表
- 民爆物品仓库安全操作规程
- von frey丝K值表完整版
评论
0/150
提交评论