问题标签 [geth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4083 浏览

ethereum - Geth Error: could not decrypt key with given passphrase

While following this tutorial I ran into an error message. After inputting personal.unlockAccount(eth.accounts[0]) I am asked for my password. Once entered the Geth console gives me Error: could not decrypt key with given passphrase. I know that the password is correct and some googling suggests that the error message text may be wrong. It seems it may be the case that my newly created account doesn't have enough ETH yet but, if this is the case, how can we know how much we need to be able to unlock an account?

0 投票
6 回答
9423 浏览

ethereum - 混音 | 无法连接到 Web3 提供程序

我在 web3 提供程序 (localhost:8545) 上运行时出错

所以我想出如下。

我在本地运行 geth,并提供了一些连接 remix 和 testnet 的选项。

我给了 -rpccorsdomain 因为混音是在 https 上。

无论如何,请检查 remix IDE 中“运行”选项卡上的“web3 证明者”。

然后,将地址修改为“ http://127.0.0.1:8545 ”而不是“ http://localhost:8545 ”。

我不知道为什么,但是当我这样修复时它仍然有效。我做了我的帐户并做了一些事情。

但是,由于某种原因,我不得不再次重新下载 geth。(我已经改变了我的电脑)。我现在正在同步块。我认为同步尚未完成,因为 blockNumber 为 0。

所以...我现在正在等待,但我想知道当 eth.syncing 未完全完成时可能会发生错误。

0 投票
1 回答
3783 浏览

rpc - 去以太坊 | 如何连接到在本地运行的公共 Ropsten(testnet)

基本上我想连接到公共的 Ropsten 测试网。我在本地运行 geth 有几个选项。(--testnet, --rpc, --rpcapi, console).

我想我可以获取我的(ropsten)帐户并检查我在 ropsten 测试网上有多少“以太”或“erc20 代币”。但是,它无法识别我帐户中的以太币。

例如,我使用“以太坊钱包”成功地将一些“以太”和“自定义 erc20 代币”发送到我的账户。当我连接到“Ropsten 测试网络”以单击元掩码窗口顶部的下拉栏时,我可以在元掩码上看到正确的数量。但是,如果我将其更改为下拉栏的第 4 个“Localhost 8545”并连接到“localhost:8545”,则以太币和令牌更改为 0 数量。

数量不一样,这很奇怪。总之,我认为在我本地运行的 geth 没有连接到公共 ropsten testnet 网络。因为这意味着我有不同的私钥和相同的公共地址。我认为,ropsten 测试网上的相同公共地址必须具有相同的私钥。

有没有人有这样的经验,或者我可以知道如何(geth)命令连接到公共测试网网络。

哦,我还有另一个问题!

我在本地运行 go-ethereum,如下所示。

但我无法再连接到元掩码上的 localhost:8545 了。

我找不到 8545 开放的端口。为什么有时rpc端口不开放?

0 投票
1 回答
1128 浏览

private-key - WEB3 | 使用公共地址导入私钥

我用一些命令创建了几个帐户,personal.newAccount() 创建的帐户被推送到列表中。我想要做的是,出于getAccount()安全原因,使用具有功能的公钥获取私钥。

我不想显示我的所有者地址和公钥,所以我想使用该函数从列表中获取地址。

然后,我想像下面这样获取具有该地址的私钥。

有没有办法使用 web3 做到这一点?有什么方法可以访问 javascript 文件上的密钥库吗?我必须sendTransaction()在 javascript 代码中使用函数,但它需要 privateKey 来签名。现在我将 privateKey 存储为静态的,我认为这很危险。我想在代码中隐藏我的所有者公钥和私钥。如果有人有好主意,请告诉我。太感谢了。

0 投票
1 回答
1334 浏览

ethereum - 调用部署在 Ropsten 测试网上的 SmartContract

我是智能合约开发的新手。我在以太坊区块链 Ropsten 测试网上部署了一个智能合约。我有智能合约地址和 ABI。我不确定如何从 geth 终端调用该智能合约的功能。

  1. 我是否必须同步整个区块链才能调用部署的任何智能合约功能?我尝试同步,但它从未完成。自一周以来,它一直停留在最后 100 个街区。当我在本地连接到 TestNet 时,我的以太币余额显示为 0。

  2. 反正我可以在网上做这个吗?通过 Remix IDE 或任何其他方式调用已部署的智能合约?

非常感谢任何帮助。

0 投票
1 回答
370 浏览

json - 运行 geth personal.newAccount() 密码后,以太坊 geth cli 被破坏

我在 OS X 上。

按照本教程https://medium.freecodecamp.org/from-what-is-blockchain-to-building-a-blockchain-within-an-hour-4e738efc819d

我遇到了一些麻烦,作者说要geth personal.newAccount()在 geth 控制台中运行:

创建区块链 下面创建区块链,将 maxpeers 命令设置为 0 以禁用网络。mkdir eth-data geth --datadir eth-new genesis.json init eth-new/genesis.json --networkid 123 --nodiscover --maxpeers 0 控制台 在 geth 控制台中,键入以下内容来创建一个新帐户并创建一个输入任何你想要的新密码。您必须输入两次新密码。个人.newAccount()

我没有看到控制台光标将其插入命令行,然后是密码。

现在,当我尝试运行任何 geth 命令时,我得到了这个:

geth:129:找不到命令:密码。

我删除brew uninstall,重新安装,同样的问题。我杀死了所有进程并在各个地方寻找配置文件。 

关于如何重新开始或解决此问题的任何想法?

0 投票
1 回答
481 浏览

ethereum - 以太坊部署的合约未在 Geth Javascript 控制台中定义

我无法从 Geth Javascript 控制台访问私有网络上部署和挖掘的以太坊合约。不知道问题出在哪里,感谢任何帮助。

提前感谢您的宝贵时间。

设想

我启动了我的 Geth 如下

我已经部署并挖掘了一个以太坊合约(为了简单起见,我使用了 Truffle 提供的默认 MetaCoin 合约),我得到了 trx 和合约地址。我可以从 Truffle 控制台访问它,但如果我从 Geth Javascript 控制台尝试,我会收到错误消息。

请参考以下图片:

松露控制台

Geth JavaScript 控制台

使用的软件

  • Geth (v1.7.3-stable)
  • NodeJS (v6.12.3)
  • TestRPC (v6.0.3 (ganache-core:2.0.2))
  • 松露 (v4.0.5)
0 投票
1 回答
9080 浏览

ethereum - 如何使用 geth 获取以太坊区块的数据

如何使用 geth 或 nodejs 或任何其他语言从正在运行的以太坊节点获取块信息?例如,要从比特币获取块数据,有一个配置文件在确认交易时运行 blocknotify.sh 文件,并且在该 blocknotify.sh 文件中有以下命令:bitcoin-cli getblock "$@" >> "$@.json"获取块数据然后我可以发送帖子将该块数据请求到 api。所以我想做同样的事情,即从 ETH 节点获取块数据,并在确认交易时向 api 发送发布请求。我怎样才能做到这一点 ?

0 投票
0 回答
719 浏览

python - Transactions created using web3.py are stuck in geth queue and not broadcasted to rinkeby

I am running a geth node synched to rinkeby network. I set up some automated services that filter solidity events and create transactions(web3.py) when certain events are received. This worked fine for a while, but at the moment all my new transactions are stuck in geth's queue. I can see them if I do txpool.content.pending['0x190Af0A202e7464340A140D6C59ee755b6D27829'], or eth.pendingTransactions. However, I cannot see my transactions at all on etherscan which makes me thing geth didn't broadcast to network.

I tried overwriting the first transaction stuck by making a new one with the same nonce. I tried clean reinstalling geth. I tried waiting. I am out of ideas. Please help.

0 投票
2 回答
486 浏览

ethereum - 如何在 mac 上将 EthereumMist 与专用网络连接起来

我做了创世纪块并像这样用geth打开

和...用这个命令检查: eth.accounts'&'eth.getBalance(eth.accounts[0])

它有效,但我不知道如何与雾连接

我试过/Applications/Mist.app/Contents/MacOS/Mist --rpc http://localhost:8123了,但我只能看到下面的错误消息

错误启动节点和/或同步错误:无法启动 swarm 进程。在 Timeout.error [as _onTimeout] (/Applications/Mist.app/Contents/Resources/app.asar/node_modules/swarm-js/lib/swarm.js:451:23) 在 ontimeout (timers.js:386:14 ) 在 tryOnTimeout (timers.js:250:5) 在 Timer.listOnTimeout (timers.js:214:5)"

我认为 geth 是 CLI 客户端,而 Mist 是以太坊网络的 GUI 客户端,我什至不确定它是否正确

我需要同时打开它们吗?还是只打开一个?请帮我!