版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章溯源系统的实现与测试4.1系统环境本系统开发模式采用前后端分离的方式,系统开发环境介绍见表4.1,系统运行环境介绍见表4.2。表4.1系统开发环境名称开发框架开发工具操作系统-Ubuntu18.04前端系统Vue3.0,springVScode后端系统java1.8,springboot2.1.4,Mybatis2.0.1数据库MySQL5.7SQLyog区块链HyprelederFabric2.0名称运行环境操作系统Ubuntu18.04前端系统NodeJS后端系统java虚拟机HyperledgerFabricDocker19.03.9表4.2系统运行环境4.2HyperledgerFabric环境搭建4.2.1HyperledgerFabric网络搭建在设计的溯源系统中,HyperledgerFabric区块链网络是搭建在云服务器上的,开发环境如表4.3所示。表4.3fabric开发环境开发环境工具操作系统ubuntu18.04系统平台阿里云服务器区块链运行容器Docker20.10.7数据库couchDB系统开发语言gol.16.5智能合约jave1.8fabric-SDkIntel1iJIDEA2021.3.2由于Fabric网络必须运行在Docker容器中,因此需要提前拉取特殊的Docker镜像文件。表4.4为必需的镜像文件。表4.4Docker镜像文件项镜像名称镜像版本hyperledger/fabric-toolslatesthyperledger/fabric-ccenvlatesthyperledger/fabric-ordererlatesthyperledger/fabric-peerlatesthyperledger/fabric-couchdblatesthyperledger/fabric-baseosamd64-0.4.21hyperledger/fabric-javaenvlatest4.2.2Fabric区块链网络部署开始于证书文件的生成,通过配置网络拓扑结构明确节点角色后,利用加密工具为Peer节点和Orderer节点创建身份证书,确保节点间的通信安全。随后,生成交易相关文件时需定义共识机制与网络参数,创建包含初始配置的创世区块,并生成通道配置交易文件及锚节点交易文件,为后续节点协同奠定基础。在节点启动阶段,依次激活Orderer节点(负责交易排序)、Peer节点(存储区块链副本)和管理节点(监控网络状态),确保各组件按预设角色运行。网络配置环节通过创建通道实现不同参与者间的私密通信,并将节点加入通道以建立连接,同时更新锚节点配置以维持网络拓扑的连通性。最终的测试阶段安装并初始化链码(智能合约),执行调用与查询操作验证网络功能,确保从证书生成到链码运行的全流程完整且稳定,从而完成区块链网络的部署。完整流程图见下图4.2.1.图4.2Fabric区块链网络部署图Fabric网络初始化通过Shell脚本自动化实现,首先配置Docker环境并拉取镜像,随后基于configtx.yaml和crypto-config.yaml生成系统通道创世区块及组织证书,利用cryptogen和configtxgen工具完成身份认证与网络参数定义。接着启动Orderer排序节点和Peer节点容器集群,通过docker-compose编排服务依赖关系,设置资源限制与网络映射。待节点就绪后,执行通道创建交易并更新锚节点配置,确保跨组织通信。最后部署链码并初始化数据,验证交易执行与查询功能,形成完整的去中心化网络架构。部分代码见图4.3到图4.6。图4.3创建crypto-config图4.4启动网络图4.5更新锚节点图4.6链码进行实例化4.3登录管理模块登录管理模块是用户登录系统并进入主页面的第一站,负责身份验证和权限分配两项工作。登录前需完成注册操作,注册界面设置了角色选择窗口用户的注册身份是在“消费者”、“消费者”、“消费者”、“消费者”以及“消费者”中选择一种唯一角色:系统根据智能合约自动判断其身份合法与否,完成角色认证之后填写账号、密码、再次输入密码,确认无误之后才显示注册成功的提示信息,然后根据用户的注册身份由系统为其发放并创建对应的数字证书,并根据不同角色在区块链平台搭建不同的访问控制规则。用户跳转到登录界面后,勾选登录角色,直接进入不同的模块。过程如图4-7和图4-8所示。图4.7角色类型选择图4.8填写账号密码4.4农产品管理模块农产品管理模块主要用于采集农产的种植户、加工、运输、销售以及消费者的资讯,然后以地理标志方式绑定到原始产地,赋予唯一代码,把该批次的相关信息提交平台后生成批次编号。4.4.1种植管理户模块农户要填写的内容有农产品名称、产地信息、种植/采摘时间等相关基本资料,完成上传后,待售的农产品就会生成溯源码。如图4-9所示。图4.9种植户界面4.4.2加工管理模块加工商使用平台上溯源信息査询功能(如图4-10所示),通过其提供的农产品信息生成溯源码作为凭证,并将加工环节产生的一些数据(如商品名称、生产批次、生产时间、工厂名称和地址、工厂电话等)上传到系统当中,经由哈希处理之后将链上链下的数据同时进行存储。每一个农产品对应一种唯一的溯源码使用者只需输入该码便能查得所有原材料从种植开始到加工完成的全程信息。供应商前端界面如图4-11所示。图4.10溯源码查询图4.11加工商界面4.4.3运输管理模块通过HyperledgerFabric记录了运输状态变更事件,并将该变更事件信息上载到物流多方云平台,以供物流多方云平台在溯源信息查询(如图4.10所示)中向运输司机展示农产品加工商所对应的溯源码为运输司机提供证明,再由运输司机选择农产品品类、获取系统自动生成的批次号,最后,运输司机将农产品的信息录入给系统信息上传云服务器;后台将各种源数据结构化后存储到分布式的数据库里面完成整个的从产地-终端全链的数据锚定,作为以后溯源查询可信赖的基础,运输界面如图4.12所示。图4.12运输界面4.4.4商店管理模块商店人员通过溯源系统向加工商购买农产品,商店人员和加工商之间的农产品交易会通过智能合约进行,交易中产生的信息会被智能合约存储到区块链中。农产品溯源码绑定了商店人员和加工商之间的农产品交易信息和物流信息,商店人员可以使用溯源系统向消费者出售农产品,农产品交易会通过智能合约进行,农产品溯源码绑定了商店人员和消费者之间的农产品交易信息和物流信息,链上的其他节点用户也可以通过溯源码可以查询商店人员和农民之间的交易信息和物流信息。商店界面见图4.13。图4.13商店界面4.4.5消费者管理模块以农产品溯源码作为信息聚合载体,让消费者通过系统上溯源的信息查询,获知农产品从生产端(农作物种植参数)、加工端(加工工艺记录)流通端(物流轨迹)三个环节所产生的全生命周期信息图谱。消费者界面如图4.14所示。图4.14消费者界面4.5区块链网络测试本系统基于Fabric分布式架构(多节点部署)开展性能与稳定性测试,结果详见表4.5。表4.5网络测试详情测试功能测试操作预期现象实际现象测试结果网络稳定性往A节点写入记录1B节点能够读取记录1B节点能够读取记录1正常往A节点写入记录2A节点能够读取记录2A节点能够读取记录2正常往A节点写入记录3往B节点写入记录4A节点能够读取记录4B节点能够读取记录3A节点能够读取记录4B节点能够读取记录3正常网络可靠性A节点宕机正常提供区块链服务正常提供区块链服务正常B节点宕机正常提供区块链服务正常提供区块链服务正常A,B节点同时宕机无法提供区块链服务无法提供区块链服务正常测试表明,Fabric架构具备分布式特性,节点存活即可正常服务,保障系统稳定运行。4.5.1测试环境基于Docker容器作为区块链共识节点的实验环境,见下图4.15.将区块链节点代码以及依赖组件打包成单独的容器,在资源限制方面使用Docker资源限制功能针对各个节点容器分别配置,内存分配最大值设为2G,CPU核数为0.05,相当于单核处理器的5%的资源配额。由此可见,在利用容器技术的资源隔离特点的同时能保证每个节点都运行于自己的独立的命名空间这样可以避免出现因系统占用其他进程或者其他进程占用该节点的资源而影响测试结果的情况。图4.5docker容器配置4.6本章小结本章以第三章完成的需求分析为指导,在第三章完成的详细设计方案的基础上,成功地实现了系统的开发与测试工作。首先介绍了系统运行环境和开发环境,然后接着进行了详细的网络部署,接着对各个应用界面进行展示,完成了基于区块链的农产品溯源系统,最后对区块链网络进行了测试,验证了该系统满足实际应用的网络需求。第5章总结与展望5.1总结当前农产品供应链溯源系统面临信息共享能力弱、数据易遭篡改及追溯性差等严峻挑战,构建一个高效、透明的农产品溯源体系显得尤为迫切。本论文旨在设计并实现一种基于改进PBFT共识算法(RBFT)的农产品供应链溯源系统,以区块链技术为支撑,确保从农田到消费者的各环节数据完整性与可追溯性,从而保障消费者的食品安全。该设计首先针对PBFT算法因其O(n²)的通信复杂度导致大规模节点组网性能显著下降,且动态节点增删与故障恢复机制的不足和Raft算法因其顺序提交机制限制了高并发场景下的吞吐量。从而提出RBFT算法通过融合PBFT的拜占庭容错特性与Raft的高效领导架构,采用动态主节点选举与星型网络拓扑优化通信复杂度至O(n),既支持拜占庭容错又突破顺序提交瓶颈,在万级节点规模下仍能保持毫秒级延迟与高吞吐量,实验表明:RBFT在交易时延和吞吐量性能上均表现出色。在系统设计层面,首先进行了详尽的系统需求分析,以及RBFT共识算法的特定需求。随后,论文详细阐述了系统的整体架构设计,重点对系统各功能模块进行细化设计,并设计了智能合约以确保数据交互的安全与规范。系统实现阶段,配置了必要的软硬件开发环境,部署并启动了Fabric网络,开发了RBFT算法、智能合约及前后端系统,实现了农产品信息管理与溯源的各功能模块。通过网络测试,验证了系统运行的稳定性和可靠性,证明该系统能够为供应链各环节用户提供准确可信的农产品信息管理与溯源服务。综上所述,成功地将区块链技术与改进的共识算法融合应用于农产品供应链溯源系统,有效解决了现有系统的诸多问题,为提升农产品质量安全提供了技术支撑与实践参考。5.2展望当前,区块链技术仍处于发展完善阶段,其相关研究正不断向纵深推进。在此背景下,所提出的基于Fabric区块链的农产品溯源系统也亟待进一步深化研究。基于此,后续研究着重从以下两个维度展开改进与拓展:(1)提升RBFT算法容错性后续研究的关键目标在于,在确保算法运行效率不受显著影响的前提下,将拜占庭节点的容错能力提升至(n-1)/2。如此,可使该算法更好地适配大规模公有链环境,增强其在复杂网络条件下的稳定性与可靠性,为农产品可信溯源系统提供更为坚实的技术支撑。(2)研发区块链溯源APP与微信小程序随着智能手机的快速更新换代,手机在社会各阶层的普及率持续攀升,已成为人们日常生活中不可或缺的工具。为进一步提升农产品可信溯源系统的实用性和用户体验,下一阶段积极开展区块链溯源APP和微信小程序的研发工作。借助这些移动端应用,用户可以不受时间和空间限制,随时随地对农产品溯源系统进行操作,查询农产品的详细溯源信息。这不仅能够增强用户对农产品质量安全的信任度,还能促进农产品市场的健康发展,为农产品可信溯源系统的广泛应用奠定坚实的用户基础。参考文献郭天一,谷利芬.基于区块链的农产品溯源系统的研究及探索[J].电脑与电信,2023,(09):46-49.DOI:10.15966/ki.dnydx.2023.09.016.[2]于淑悦.基于区块链的农产品溯源系统设计[D].河北大学,2023.DOI:10.27103/ki.ghebu.2023.000977.[3]王丹蕾,王传钊.基于区块链技术的溯源系统助力农产品实现“真”绿色[J].产业创新研究,2023,(18):79-81.[4]张冰茹,周功建,杨文丽,等.基于区块链技术的漳州农产品溯源体系分析与构建研究[J].海峡科技与产业,2021,34(11):51-54+68.[5]王振棋.基于区块链的农产品溯源系统的隐私保护技术研究[D].山东工商学院,2023.DOI:10.27903/ki.gsdsg.2023.000128.[6]王鸿杰.基于区块链技术的农产品供应链溯源系统[D].吉林农业大学,2023.DOI:10.27163/ki.gjlnu.2023.000913.[7]曹磊颖.基于区块链技术的食用农产品溯源系统[D].南昌大学,2022.DOI:10.27232/ki.gnchu.2022.003877.[8]黄玥.区块链技术在农产品溯源分析中的应用[J].数字技术与应用,2021,39(11):70-72.DOI:10.19695/12-1369.2021.11.22.[9]ShannanL,RonghuaZ,ChangzhengL,etal.P-PBFT:Animprovedblockchainalgorithmtosupportlarge-scalepharmaceuticaltraceability.[J].Computersinbiologyandmedicine,2023,154106590-106590.[10]CaoS,XuH,BrycesonPK.BlockchainTraceabilityforSustainabilityCommunicationinFoodSupplyChains:AnArchitecturalFramework,DesignPathwayandConsiderations[J].Sustainability,2023,15(18).[11]TouhidulAH,ShabnamS,ApubraD,etal.Apeer-to-peerblockchain-basedarchitecturefortrustedandreliableagriculturalproducttraceability[J].DecisionAnalyticsJournal,2023,9.[12]XieH,ZhangK.Dynamicevaluationofapost-pandemicagriculturaltraceabilitysystem,basedontheHFLTS-DEMATELmethod[J].InternationalJournalofQualityReliabilityManagement,2023,40(8):1963-1982.[13]RongkuanW,XiC.ResearchonAgriculturalProductTraceabilityTechnology(EconomicValue)BasedonInformationSupervisionandCloudComputing[J].ComputationalIntelligenceandNeuroscience,2022,20224687639-4687639.[14]DongL,DongR.ResearchonBlockchain-basedTraceabilitySystemforAgriculturalProducts[J].AsianJournalofResearchinAgricultureandForestry,2022.[15]MoyixiL,ShuangyinL,NaL,etal.Trusted-auditingchain:Asecurityblockchainpr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏沭阳高级中学2025-2026学年高一下学期3月阶段检测化学试题(含解析)
- 江西赣州市会昌县2026年中考第二次模拟考试道德与法治(含解析)
- 2025年报关员《海关法规》真题解析选择题满分技巧配套
- 2021冀北电网研究生面试综合能力题题库及高分参考答案
- 2020滕州初中语文面试试讲易错点配套题库及答案
- 2023甘肃法宣在线刷题小程序配套试题及正确答案
- 2026年开发主管面试题及答案 3天突击专用 零基础也能面过管理岗
- 2024年恶意代码分析方向面试题及答案 技术大牛岗专属备考资料
- 2021徐州首创水务劳务派遣岗面试题库及参考答案
- 第2课时平面与平面垂直课件2025-2026学年高二下学期数学湘教版选择性必修第二册
- (2025版)血液净化模式选择专家共识解读
- 2026年北京市丰台区高三一模英语试卷(含答案)
- 2025上市公司股权激励100问-
- 急性心肌梗死并发心脏破裂的临床诊疗与管理
- 2026年国家队反兴奋剂准入教育考试试题及答案
- 第九章第一节压强课件2025-2026学年人教版物理八年级下学期
- 100以内看图写数专项练习题(每日一练共6份)
- 移动模架施工安全监理实施细则
- 2025-2026学年卖油翁教学设计初一语文
- 中兴新云2026年测评-B套题
- 2026年商丘职业技术学院单招职业技能测试题库带答案详解
评论
0/150
提交评论