一种以太坊公链模拟系统构建方法与流程

文档序号:37178373发布日期:2024-03-01 12:33阅读:16来源:国知局
一种以太坊公链模拟系统构建方法与流程

本发明属于区块链,具体涉及一种以太坊公链模拟系统构建方法。


背景技术:

1、区块链技术在数字经济的发展中起着重要支撑作用,区块链电子加密货币通过区块链技术对交易进行记录,具有匿名性、可追溯性、不可篡改性等特点。以太坊是区块链的第二大交易平台,支持部署智能合约,对于提高区块链应用的可扩展性起着不可或缺的作用。

2、以太坊节点通过加入p2p网络发现其它节点,从而实现交易收发以及区块验证。目前,多数研究者在针对以太坊的研究中,特别是针对智能合约的研究中,仅局限于智能合约的有效性而忽略了所处环境的真实性,无法在真实的模拟环境中对智能合约进行深入研究。真实场景中,网络状况可能影响着智能合约的部署以及调用。另外,网络中可能存在若干恶意节点针对智能合约进行攻击,破坏智能合约的安全性。

3、针对在单一环境中无法深入分析网络状况及恶意节点对以太坊影响的问题,本专利提出了一种以太坊公链模拟系统构建的实现方法。

4、以太坊公链模拟系统功能示意图如图1所示,本方法在基于以太坊pow共识机制的情况下,搭建包括全节点、轻节点以及中继节点在内的以太坊公链模拟系统,该系统能够模拟真实公链组建网络拓扑,全节点能够使用真实cpu资源与内存资源产生区块,支持自主可控的账户生成与交易收发,并且能够进行时延模拟与链路毁坏模拟,提高模拟的真实性。


技术实现思路

1、(一)要解决的技术问题

2、本发明要解决的技术问题是如何提供一种以太坊公链模拟系统构建方法,以解决在单一环境中无法深入分析网络状况及恶意节点对以太坊影响的问题。

3、(二)技术方案

4、为了解决上述技术问题,本发明提出一种以太坊公链模拟系统构建方法,该方法包括如下步骤:

5、步骤1,基于开源deepin镜像使用开源软件geth 1.10.19客户端,编写dockerfile,制作以太坊节点镜像;

6、步骤2,基于步骤1所述以太坊节点镜像,使用docker部署以太坊中继节点、全节点容器和轻节点容器,将节点信息以及对应ip地址的地理位置信息存入数据库;

7、步骤3,根据数据库中以太坊节点信息,调用geth 1.10.19api接口,依次启动中继节点、全节点以及轻节点,并自动建立网络拓扑,将拓扑信息存入数据库;

8、步骤4,根据数据库中以太坊节点信息,调用geth 1.10.19api接口,基于指数分布自动化生成以太坊地址,将地址信息存入数据库;

9、步骤5,根据数据库中以太坊全节点信息,自定义选择在线以太坊全节点启动工作量证明运算,将区块信息存入数据库;

10、步骤6,根据数据库中以太坊节点信息与地址信息,调用geth 1.10.19api接口,基于指数分布自动化创建转账交易,将交易信息存入数据库;

11、步骤7,根据数据库的节点网络拓扑信息,使用tc软件对建立网络连接的以太坊节点配置虚拟网卡流量进出口策略,进行时延模拟与链路毁坏模拟。

12、(三)有益效果

13、本发明提出一种以太坊公链模拟系统构建方法,本发明的优势之处在于:(1)该方案使用以太坊公链真实客户端,支持全节点、轻节点、中继节点模拟;(2)该方案能够实现自主可控的账户生成与交易收发,具备以太坊公链的主要功能。(3)该方案能够进行时延模拟以及链路毁坏模拟,使得模拟公链的网络状态更加贴近真实公链。



技术特征:

1.一种以太坊公链模拟系统构建方法,其特征在于,该方法包括如下步骤:

2.如权利要求1所述的以太坊公链模拟系统构建方法,其特征在于,所述步骤2的具体过程为:

3.如权利要求2所述的以太坊公链模拟系统构建方法,其特征在于,所述步骤3的具体过程为:

4.如权利要求3所述的以太坊公链模拟系统构建方法,其特征在于,所述步骤4的具体过程为:

5.如权利要求4所述的以太坊公链模拟系统构建方法,其特征在于,所述步骤5的具体过程为:

6.如权利要求5所述的以太坊公链模拟系统构建方法,其特征在于,

7.如权利要求5所述的以太坊公链模拟系统构建方法,其特征在于,所述步骤6的具体过程为:

8.如权利要求7所述的以太坊公链模拟系统构建方法,其特征在于,所述步骤7的具体过程为:

9.如权利要求7所述的以太坊公链模拟系统构建方法,其特征在于,所述步骤73的具体过程为:

10.如权利要求1-9任一项所述的以太坊公链模拟系统构建方法,其特征在于,基于开源deepin镜像使用开源软件geth 1.10.19客户端制作以太坊节点镜像;使用以太坊节点镜像部署以太坊节点容器,利用以太坊节点ip地址进行全球地理位置定位;利用中继节点自动化建立网络拓扑;自动化进行工作量证明运算;调用geth 1.10.19api接口,基于指数分布自动化生成以太坊账户;调用geth1.10.19api接口,基于指数分布自动化创建以太坊转账交易;使用linuxtc软件配置以太坊节点容器虚拟网卡流量进出策略,进行时延模拟或链路毁坏模拟。


技术总结
本发明涉及一种以太坊公链模拟系统构建方法,属于区块链技术领域。本发明基于开源deepin镜像使用开源软件geth 1.10.19客户端制作以太坊节点镜像;使用以太坊节点镜像部署以太坊节点容器,利用节点IP地址进行全球地理位置定位;利用中继节点自动化建立网络拓扑;自动化进行工作量证明运算;基于指数分布自动化生成以太坊账户;基于指数分布自动化创建以太坊转账交易;使用LinuxTC软件配置以太坊节点容器虚拟网卡流量进出策略。该方法能够在本地局域网中模拟以太坊公链的运行机制与网络质量,具有较高的真实性。

技术研发人员:韩磊,唐延辉,陈志,雷宇田,王斌,岳振帅
受保护的技术使用者:北京计算机技术及应用研究所
技术研发日:
技术公布日:2024/2/29
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1