[轉]用Go来做以太坊开发
https://github.com/miguelmota/ethereum-development-with-go-book https://goethereumbook.org/zh/
https://github.com/miguelmota/ethereum-development-with-go-book https://goethereumbook.org/zh/
https://github.com/gobitfly/etherchain-light https://github.com/gobitfly/erc20-explorer https://github.com/carsenk/explorer https://github.com/Capgemini-AIE/ethereum-docker/tree/master/monitored-geth-client https://github.com/cubedro/eth-net-intelligence-api https://github.com/cubedro/eth-netstats Browse blocks and transactions It’s nice to have some simple analogue of Etherscan for your local chain browsing. It will be useful to examine transactions, balances, blocks and etc. It appeared that it is quite difficult to find an open-source good solution for geth. After several tries I found an acceptable solution called ETHExplorer V2. Clone it into explorer-v2 folder. To Dockerize it I had to make 2 changes. First create a Dockerfile ...
https://github.com/ethereum/go-ethereum/issues/18405 That’s generally fine. The way clique works is that the in-turn sealer who should ideally sign next tries to sign and propagate the block immediately when the timer ticks. If no in-turn block appears within 500ms, the other signers start potentially creating alternative blocks (with random delays), this ensures that even if a signer is missing, the chain progresses more or less properly. Now, if the original in-turn signer does come around and publish its block with some delay, that might reorg out alternative blocks signer by out-of-turn signers. At that point those will complain that their block was lost. The scary smiley is mostly meant for ethash :) Clique blocks have no subsidy anyway :) ...
Use keythereum, web3 npm install keythereum npm install web3 .datadir need to correct. UTC/keystore/UTC–2019-03-25T09-10-35.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx .address need correct “0xooooooooooooooooooooooooo” .password need correct, this example is empty. .web3 localhost is fake, don’t need have geth. var keythereum = require("keythereum"); var datadir = "UTC"; var address= "0xooooooooooooooooooooooooo"; const password = ""; var keyObject = keythereum.importFromFile(address, datadir); var privateKey = keythereum.recover(password, keyObject); console.log(privateKey.toString('hex')); Web3 = require('web3') web3 = new Web3(new Web3.providers.HttpProvider("localhost")); var address = web3.eth.accounts.privateKeyToAccount("0x"+privateKey.toString('hex')); console.log(address);
https://solidity.readthedocs.io/en/v0.5.0/050-breaking-changes.html#example https://github.com/ethereum/solidity/blob/develop/Changelog.md