playground

The world is a playground.

DApps

web3.js で Ethereum のトランザクション詳細を取得

web3.js@1.0.0 で Ethereum のトランザクション詳細を取得する方法です。 Ethereum のトランザクション詳細を取得するには、トランザクションの発行時に得ることのできるトランザクションハッシュが必要になります。トランザクションハッシュを引数に、web3.…

Web3.js でEthereum の残高を取得

web3.eth.getBalance を使用します。 サンプルコード web3.eth.getBalance(walletAddress, (error, balance) => { console.log(balance); ); ここで取得できる balance の単位は wei なので、ether 単位で表示したい場合は、次のようにします。 var ethBalan…

Ethernaut

ブラウザ上で、実際にコードを実行しながら Ethereum スマートコントラクトの脆弱性をみつけることで、スマートコントラクトのセキュリティについて学ぶことができるサイト https://ethernaut-devcon3.zeppelin.solutions/

Ethereum のトランザクション作成時に必要な nonce を得る

ローカルで Ethereum のトランザクションに署名する際には、nonce を指定する必要があります。 このときに必要な nonce を取得する方法をメモしておきます。 nonce とは Ethereum のトランザクションにおける nonce は、ある Ethereum のアドレス(アカウン…

MetaMask のネットワーク変更を検知する

MetaMask の仕様変更 MetaMask のネットワークを変更したときに、これまではブラウザを自動的にリロードしていたが、自動的にリロードしないようになるとのことです。 詳細: https://medium.com/metamask/breaking-change-no-longer-reloading-pages-on-netw…

MetaMask を使用した Web3 の初期化

MetaMask は Chrome プラグインとして使える大変便利な Ethereum ウォレットです。 MetaMask を使用するとボタン 1 つでトランザクションに署名ができるので、エンドユーザーが DApps を使用する際に重宝します。 MetaMask を使用した Web3 の初期化 MetaMas…

ローカルで Ethereum のトランザクションに署名してからブロードキャスト

ローカルで秘密鍵を管理していてる場合、次のような 2 ステップで Ethereum のトランザクションを実行可能です。 Ethereum のトランザクションの作成から署名まではローカルで行います。 署名済みトランザクションは JSON RPC API 等を通じて Ethereum ネッ…

Web3.js を使って ERC20 トークンを送信

この記事のサンプルで使用している Web3.js のバージョンは 0.20.6 です。 スマートコントラクトを扱うための ABI を用意 ABI は、スマートコントラクトがどのような関数や状態変数を持っているかといった情報をもったインタフェースです。 プログラムからス…