Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Management APIs

Management APIs

作者头像
Al1ex
发布于 2023-09-07 02:19:56
发布于 2023-09-07 02:19:56
3051
举报
文章被收录于专栏:网络安全攻防网络安全攻防
文章前言

以太坊是目前最流行的智能合约平台之一,其开放的管理API使得开发者可以轻松地管理和监控以太坊网络。本文将介绍以太坊的管理API,包括如何使用它们来管理以太坊网络、监控节点和查询以太坊区块链的状态,无论你是初学者还是经验丰富的以太坊开发者,本文都将为你提供有价值的信息和指导

接口介绍

除了官方公开的DAPP API名称空间(eth、shh、web3)之外,geth还提供了以下额外的管理API名称空间:

  • admin:Geth节点管理
  • debug:Geth节点调试
  • miner:矿工和DAG管理
  • personal: 帐户管理
  • txpool:事务池检查

https://geth.ethereum.org/docs/interacting-with-geth/rpc

Amdin模块
admin_addPeer

功能介绍:增加一个新的远程节点到节点列表中。

详细说明:节点将始终尝试保持与这些节点的连接,如果远程连接断开则每隔一段时间重新连接一次,该方法接受单个参数,即远程对等机的enode url以开始跟踪并返回一个bool,指示是否接受该对等机进行跟踪或发生了某些错误。

调用方式:

执行示例:

admin_datadir

功能介绍:查询datadir管理属性

详细说明:获取正在运行的geth节点用于存储其所有数据库的绝对路径。

调用方式:

例子:

admin_nodeInfo

功能介绍:查询nodeInfo管理属性值

详细说明:获取在网络上运行的geth节点的所有已知信息。包括作为_VP2P P2P覆盖协议参与者的节点本身的一般信息,以及由每个正在运行的应用程序协议(例如:ETH、LES、SHH、BZZ)添加的专门信息

调用方式:

执行示例:

admin_peers

功能介绍:查询peers管理属性

详细说明:获取有关网络上已连接远程节点的所有已知信息,这些信息包括作为_VP2P P2P覆盖协议参与者的节点本身的一般信息以及由每个正在运行的应用程序协议(例如:ETH、LES、SHH、BZZ)添加的专门信息

调用方式:

执行示例:

admin_startHTTP

功能介绍:startrpc管理方法启动一个基于http的json-rpc-api-webserver来处理客户端请求。

详细说明:该方法返回一个布尔标志,指定是否打开了HTTP RPC侦听器。请注意,任何时候只允许一个HTTP端点处于活动状态。 参数与使用方式:

  • host:打开侦听器套接字的网络接口(默认为"localhost")
  • port:打开侦听器套接字的网络端口(默认为8545)
  • cors:要使用的跨域资源共享标头(默认为"")
  • apis:通过此接口提供的API模块(默认为"eth,net,web3")

执行实例:

admin_startWS

功能介绍:startws管理方法启动一个基于websocket的json-rpc-api-webserver来处理客户端请求。

详细说明:方法返回一个布尔标志,指定WebSocket RPC侦听器是否已打开。请注意,任何时候只允许一个WebSocket端点处于活动状态

调用方式:

  • host:打开侦听器套接字的网络接口(默认为"localhost")
  • port:打开侦听器套接字的网络端口(默认为8546)
  • cors:要使用的跨域资源共享标头(默认为"")
  • apis:通过此接口提供的API模块(默认为"eth,net,web3")

实例:

amdin_sotpRPC

功能介绍:StopRPC管理方法关闭当前打开的HTTP RPC终结点。由于节点只能运行一个HTTP端点,因此此方法不接受任何参数,返回一个布尔值,无论端点是否已关闭。

使用方式:

实例:

admin_stopWS

功能介绍:stopws管理方法关闭当前打开的WebSocket RPC终结点,由于节点只能有一个WebSocket终结点在运行,因此此方法不接受任何参数,返回一个布尔值,无论终结点是否已关闭。

调用方式:

示例:

Debug模块

DebugAPI允许您访问几个非标准的RPC方法,这些方法允许您在运行时检查、调试和设置某些调试标志。

debug_backtraceAt

功能介绍:设置日志回溯位置,当设置了回溯位置并在该位置发出日志消息时,执行LOG语句的goroutine堆栈将打印到stderr,位置被指定为<filename>:<line>

使用方式:

实例:

debug_blockProfile

功能介绍:在给定的持续时间内打开块分析并将配置文件数据写入磁盘,它使用1的配置率来获取最准确的信息,如果需要不同的速率,请使用debug_WriteBlockProfile手动设置速率并写入配置文件。

调用方式:

debug_cpuProfile

功能介绍:在给定的持续时间内打开CPU配置文件并将配置文件数据写入磁盘

调用方式:

debug_dumpBlock

功能介绍:检索与块号对应的状态并返回帐户列表(包括存储和代码)

详细说明:

执行实例:

debug_gcStats

功能介绍:返回GC统计信息

详细说明:

执行示例:

debug_goTrace

功能介绍:在给定的持续时间内打开运行时跟踪,并将跟踪数据写入磁盘。

调用方式:

......

Miner模块

Miner API允许您远程控制节点的挖掘操作并设置各种挖掘特定设置

miner_setExtra

功能介绍:设置当矿工可以包含的额外数据。上限为32字节

调用方式:

miner_setGasPrice

功能介绍:设置采矿交易时可接受的最低gas价格,低于此限制的任何事务都将从挖掘过程中排除

调用方式:

miner_start

功能介绍:使用给定的线程数启动CPU挖掘进程,并在需要时生成新的DAG

调用方式:

miner_stop

功能介绍:停止挖矿

调用方式:

miner_setEtherBase

功能介绍:设置EtherBase,用于奖励采矿

调用方式:

Personal模块

个人API管理密钥存储区中的私钥

personal_importRawKey

功能介绍:将给定的未加密私钥(十六进制字符串)导入密钥存储并用密码短语对其进行加密

调用方式:

personal_listAccounts

功能介绍:返回密钥存储区中所有密钥的所有以太坊帐户地址。

调用方式:

personal_lockAccount

功能介绍:锁定账户,使帐户不能再用于发送事务

personal_newAccount

功能介绍:创建账户

personal_unlockAccount

功能介绍:解锁账户

personal_sendTransaction

功能介绍:交易信息

personal_sign

功能介绍:使用"sign(keccack256("\x19Ethereum Signed Message:\n" + len(message) + message)))"计算sign签名

personal_ecRecover

功能介绍:反解地址

Txpool模块

TxPool API允许您访问几个非标准的RPC方法,以检查包含当前所有挂起事务的事务池的内容以及排队等待将来处理的事务池的内容。

txpool_content

功能介绍:查询Content Inspection属性,以列出当前待包含在下一个块中的所有事务的确切详细说明信息以及仅计划将来执行的事务的详细说明信息

详细说明:结果是一个对象,其中有两个字段挂起并排队,每个字段都是关联数组,其中每个条目都将源地址映射到一批计划事务,这些批本身就是将nonce与实际事务关联起来的映射,请注意可能有多个事务与同一帐户和随机数关联,如果用户广播多个具有不同天然气配额(甚至完全不同的交易)的多个许可证就会发生这种情况

执行示例:

txpool_inspect

功能介绍:查询inspect inspection属性以列出当前待包含在下一个块中的所有事务的文本摘要,以及仅计划将来执行的事务的文本摘要,这是一种专门为开发人员定制的方法,用于快速查看池中的事务并发现任何潜在问题

详细说明:结果是一个对象,其中有两个字段等待和排队,每个字段都是关联数组,其中每个条目都将源地址映射到一批计划事务,这些批本身就是将nonce与事务摘要字符串关联起来的映射,请注意可能有多个交易与同一帐户和nonce关联,如果用户广播多个具有不同天然气配额(甚至完全不同的交易)的多个许可证就会发生这种情况

执行示例:

txpool_status

功能介绍:状态检查属性可以查询当前待在下一个块中包含的事务数量,以及仅用于将来执行的事务,结果是一个对象,其中有两个字段挂起并排队,每个字段都是一个计数器,表示处于该特定状态的事务数

执行示例:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-08-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 七芒星实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
大神 想您帮处理 这个帮管客不能数据导出问题
大神 想您帮处理 这个帮管客不能数据导出问题
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
快速学习-Geth 控制台命令
Geth Console 是一个交互式的 JavaScript 执行环境,里面内置了一些用来操作以太坊的 JavaScript 对象,我们可以直接调用这些对象来获取区块链上的相关信息。这些对象主要包括: eth:主要包含对区块链进行访问和交互相关的方法; net:主要包含查看 p2p 网络状态的方法; admin:主要包含与管理节点相关的方法; miner:主要包含挖矿相关的一些方法; personal:包含账户管理的方法; txpool:包含查看交易内存池的方法; web3:包含以上所有对象,还包含一些通用方法。 常用命令有: personal.newAccount():创建账户; personal.unlockAccount():解锁账户; eth.accounts:列出系统中的账户; eth.getBalance():查看账户余额,返回值的单位是 Wei; eth.blockNumber:列出当前区块高度; eth.getTransaction():获取交易信息; eth.getBlock():获取区块信息; miner.start():开始挖矿; miner.stop():停止挖矿; web3.fromWei():Wei 换算成以太币; web3.toWei():以太币换算成 Wei; txpool.status:交易池中的状态;
cwl_java
2020/04/10
2.1K0
以太坊私链入门
中国广东省深圳市龙华新区民治街道溪山美地 518131 +86 13113668890 <netkiller@msn.com>
netkiller old
2018/02/02
5.1K2
2019-08-01 geth + Wagon环境运行ewasm
参考ewasm/testnet、2018-11-26 ewasm在以太坊私有链测试和2019-07-04 ewasm在以太坊私有链测试(3)
oracle3
2022/04/22
1850
以太坊搭建私有链
在以太坊上部署智能合约、发起交易需要花费以太币。而私链和公有链没有关系,不用同步大量的数据,也不用花钱购买以太币,可以很好的满足智能合约的开发和测试要求,而且在私有链上开发的智能合约可以很容易的部署到以太坊的公有链上。
foochane
2019/05/23
1.7K0
以太坊win平台和Linux 私链搭建,交易,添加多节点
先上一篇的以太坊的私有搭建,交易,节点连接,结合搭建的步骤对以太坊进行深入介绍。本文介绍的方式在win10 和ubuntu16.04 的方式测试过。 第一步:geth的安装,请直接移步:https://github.com/ethereum/go-ethereum/wiki/Building-Ethereum 或者百度其他博客。为了方便操作,windows 平台在安装完成geth后 ,最好将geth.exe 所在的目录添加到Path环境变量中以便于开发。linux 的方式推荐使用ppa的方式安装。如果不是也推荐奖geth 添加到环境变量里面。 第二步:创建创世块 先不要想太多直接复制我的创世块用: 新建一个文件夹名为mynode,然后在mynode 文件夹里面创建一个文件
地球流浪猫
2018/08/02
5850
windows以太坊私有链开发环境搭建
我们使用官方长期支持的8.10.0LTS版本,点击这个链接下载32位安装包,32位安装包即可用于32位系统,也可用于64位系统。 如果你确认你的系统是64位,也可以下载64位包装包。 下载后直接安装即可。安装完毕,打开一个控制台窗口,可以使用node了:
用户1408045
2018/05/17
1.5K0
基于docker的以太坊集群的私有链开发环境
转载博文:https://www.jianshu.com/p/8af386ec5f9e
墨文
2020/02/28
2.8K0
Microsoft Azure 以太坊节点自动化部署方案漏洞分析
为了迎合以太坊区块链1发展需求,Microsoft Azure2早在2016年9月九推出了以太坊节点走自动部署的模块。部署情况如下:
Seebug漏洞平台
2018/07/12
1.1K0
探路以太坊
关键字:以太坊,加密货币,crowdsale,geth,console,web3.js 以太坊简介 一句话简介:以太坊是一个基于功能齐全的编程语言构建的众多去中心化区块链应用的平台。 下面来解读一下这句话: 平台:首先以太坊是一个平台,这个平台上面有很多应用。 应用:这些应用是是去中心化的,基于区块链技术。所以这些应用可以实现永不停歇,因为它是分布式的,去中心化的,基于P2P网络的,这些应用被管理在以太坊钱包上面。 钱包:以太坊钱包,本质上以太坊钱包也是其中一个应用,它是一个网关,可以管理所有基
文彬
2018/05/03
1.9K0
搭建以太坊智能合约测试环境
早就想学习区块链相关技术了,可惜因为懒惰一直没有付诸实践,最近随着诸如 God.Game,Fomo3D 等区块链游戏接连暴出安全漏洞,让我对智能合约的兴趣愈发强烈起来,于是利用周末搭建以太坊智能合约测试环境,原想应该很简单,实际却花了不少精力,记录一下以飨读者。
LA0WAN9
2021/12/14
9090
搭建以太坊智能合约测试环境
以太坊环境搭建
以太坊作为一个开源的区块链平台,已经在区块链领域中占有重要地位,对于想要了解和使用以太坊的人来说搭建一个以太坊开发环境是必不可少的步骤,本文将介绍如何搭建以太坊开发环境帮助读者更好地理解以太坊的工作原理和开发流程
Al1ex
2023/08/10
5330
以太坊环境搭建
以太坊介绍和使用
以太坊是一个能够在区块链上实现智能合约、开源的底层系统。换言之,以太坊是可编程的区块链,它并不是给用户一系列预先设定好的操作(例如比特币交易),而是允许用户按照自己的意愿创建复杂的操作。这样一来,以太坊是就可以作为多种类型去中心化区块链应用的平台,这些应用比如包括之前很火的各种代币但并不仅限于此,我们可以做很多除了代币之外的东西,比如你可以输出一行代表自己不是外行身份的hello world,或者在上面做一个简单的计算器,总之你可以在上面实现你想要的任何功能。
fnatic
2022/07/15
37.4K0
慢雾科技:EOS、以太坊网络攻防情报及智能合约安全分享
区块链生态中恶意攻击事件频发?冲击过后我们还应当如何搭建安全堡垒?安全是区块链行业发展背后的坚实力量,技术则是在攻防战争中矛与盾的力量转化。这里有一份以技术为导向的不完全安全指南,看一线网络安全攻防实战的团队如何做到负责任的披露,希望能够引领更多公链安全修习者共筑更为强大与健壮的数字未来。我们也许难以辩明黑暗丛林中的猎人,有人选择打开了潘多拉的魔盒,还应有人点燃寓意希望的圣火。
辉哥
2018/08/10
6230
慢雾科技:EOS、以太坊网络攻防情报及智能合约安全分享
以太坊客户端Geth命令用法-参数详解
Geth在以太坊智能合约开发中最常用的工具(必备开发工具),一个多用途的命令行工具。 熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。 如果你还不知道geth是什么,请先阅读入门篇:以太坊是什么。 以下开始正文。 命令用法 geth [选项] 命令 [命令选项] [参数…] 版本: 1.7.3-stable 命令: account 管理账户 attach 启动交互式JavaSc
Tiny熊
2018/06/21
2.4K0
理解以太坊: Go-Ethereum 源码剖析(0): Geth Start
Geth[2] 是基于 Go 语言开发以太坊的客户端,它实现了 Ethereum 协议(黄皮书)中所有需要的实现的功能模块,包括状态管理,挖矿,P2P 网络通信,密码学,数据库,EVM 解释器等。我们可以通过启动 Geth 来运行一个 Ethereum 的节点。Go-ethereum 是包含了 Geth 在内的一个代码库,它包含了 Geth,以及编译 Geth 所需要的其他代码。在本系列中,我们会深入 Go-ethereum 代码库,从 High-level 的 API 接口出发,沿着 Ethereum 主 Workflow,从而理解 Ethereum 具体实现的细节。
Tiny熊
2022/05/25
2.2K0
把700元的单片机改造成以太坊节点, 9步get起新技能!
智能合约,是指完全按照编程方式运行的应用程序,它排除了任何停机、审查、欺诈或第三方干扰的可能性。
区块链大本营
2019/12/03
1.3K0
区块链开发(三)以太坊客户端命令行选项汇总
本篇博客的内容可通过以下命令在客户端中进行查看: geth --help 也可以访问github上的wiki文档查看,地址为: https://github.com/ethereum/go-ethereum/wiki/Command-Line-Options 具体内容 NAME: geth - go-ethereum命令行接口 USAGE: geth [options] command [command options] [arguments...] VERSION: 1.4.11-s
程序新视界
2022/05/06
4730
搭建以太坊私有链
区块链技术正在逐渐走向成熟,以太坊作为区块链领域的重要代表被广泛应用于智能合约、去中心化应用等领域,然而公有链上的交易需要消耗大量的手续费,且数据的公开性也限制了其在某些场景下的应用。因此搭建以太坊私有链成为了一种更加灵活、高效、安全的解决方案,本文将介绍如何搭建以太坊私有链帮助读者更好地理解和应用区块链技术
Al1ex
2023/09/07
1.6K1
搭建以太坊私有链
用Geth设置基于POA权利证明的私有以太网网络
目标:逐步指导,帮助你使用权威证明共识引擎(也称为clique)设置本地私有以太网网络。
笔阁
2019/03/20
2.5K0
用Geth设置基于POA权利证明的私有以太网网络
Geth RPC API中文文档
Geth除了支持官方的DApp API开发接口,还支持额外的管理API接口。类似于DApp API,这些管理API也是通过JSON-PRC协议提供,并且遵循同样的规范。Geth内置的控制台支持所有这些额外的管理API。Geth管理API官方文档中文版由汇智网翻译整理,访问地址:Geth管理API文档
用户1408045
2019/03/12
3.8K0
相关推荐
快速学习-Geth 控制台命令
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档