たのしい工学

プログラミングを学んで、モノをつくりたいひと、効率的に仕事をしたい人のための硬派なブログになりました

【Ethereum開発】トランザクションの概念

   

Ethereumネットワークとのやりとり

以下のツールをつかってEthereumネットワークと通信します。

・開発者向け
Web3.js

・コンシューマ向け
Metamask
MistBrowser

があります。

今回は開発者向けのWeb3.jsについて説明していきます。

Web3.js (開発者向け)

開発者が特定の理論やネット枠とやりとりするために使用するツール(ライブラリ)です。 このweb3.jsライブラリをつかって、transactionオブジェクトを作成します。

で、そのtransactionを図にすると、こちらのようになります。

https://gyazo.com/6d389dbaf53fc5de4b3da36237962e1a

transactionとは、あるアカウントから別のアカウントへの資金の移転を記述するオブジェクトのことです。

そのtransactionがEthereumネットワークを形成するNodeの一部に接続して、ネットワークに取り込まれます。

https://gyazo.com/12d2500ef43a11a5ea553f3a8251e7b7

Nodeはブロックチェーン全体のコピーをもっています。ブロックチェーンは本質的にはデータベースみたいなものだとおもってください。

https://gyazo.com/7dcad8dee2be25bed4360956db05214c

nodeにとりこまれるtransactionは自分のものだけではありません。ここでは、そのほかにとりこまれるtransactionがふたつあったとします。
https://gyazo.com/174bff3414720a7fbb96ed4b28f61ff0

Node内にとりこまれたtransactionはBlockとして組み立てられると、ノードはブロック上でいくつかの計算を開始します。
この計算プロセスはみなさんもきいたことがあるかもしれませんが、
「マイニング」といいます。

今回はここまでですが、じぶんで勉強してみたいってひとは、
世界最大級のオンライン学習サイトUdemyから「Ethereum and Solidity: The Complete Developer's Guide」を探してみてください。

 - BlockChain, テクノロジー