ブロックチェーン技術ブログ

ブロックチェーンと英語、数学に関するブログ

Ethereum

Ethereum クライアント < Go Ethereum / Prysm >

今回は、Ethereumクライアントについてみていきます. Ethereumクライアントは、Ethereumのブロックチェーンをダウンロードし、各ブロックを検証し、Ethereumのネットワークにアクセスするのに使用するソフトウェアです. また、Ethereumクライアントが他のEth…

ERC20を実装したトークンを作成する

今回は、ERC20の規格に準拠したトークンを作成してみましょう. ERC20は、FT(Fungible Token)のためのインタフェースです。 ERC20に準拠することで、スマートコントラクトから扱いやすくなり、別の種類のトークンとの交換が容易になります。 ここで、FTとは代…

スマートコントラクトを作成して、Hardhatでテストをしてみる

今回は、Solidityで作成したスマートコントラクトをHardhatでテストしてみたいと思います. スマートコントラクトの概要 作成したスマートコントラクトは、クイズを題材にしたものです. まず、問題の出題者がETHの送金とともに、問題を作成するトランザクショ…

Hardhatを使って、EtherWalletと対話してみる

今回は、Hardhatを利用して、Contractをデプロイをして、コンソールでいろいろ試してみたいと思います. デプロイするコントラクトは、下記のリンクから引用したEtherWalletです. https://solidity-by-example.org/app/ether-wallet 送金とオーナーによる引き…

Ethereumウォレット < MetaMask >

Ethereumウォレット Ethereumウォレットは、Ethereumアカウントを管理するためのアプリです. このアプリを使用することで、アカウントの残高の取得やトランザクションの送信をおこなうことが可能になります. 単一のウォレットで、複数のアカウントを管理する…

Solidity入門2 <Functions, Events, Errors>

Functions 関数は、呼び出し可能なコードの単位です. Solidityでも、他の言語と同様に関数を定義できます. 関数には、引数と返り値を定義できます. 返り値がない場合、returns (T) を省略可能です. function multiply(uint _a, uint _b) public view returns…

Solidity入門1 <Pragmas, Contracts, Types>

Solidityは、スマートコントラクトを実装するのに利用されるオブジェクト指向言語です. Solidityの文法や基本的な機能についてみていきます. Pragmas Solidityのソースコードは、ファイルの先頭に Version Pragma を書く必要があります. Version Pragmaは、…

Ethereum入門1 <アカウント、トランザクション、ブロック、ガス>

Ethereumは、Bitcoinと同様に仮想通貨の一種です. 仮想通貨とは、ブロックチェーンの分散台帳に記録された交換可能な電子データです. 仮想通貨は、仲介業者を介することなく、当事者間で送金や商品の売買をおこなうことができます. また、特定の団体が中央主…