Web3.0 個人的入門まとめ①
個人的に、今までブロックチェーンやらビットコインやらは「別世界の出来事」だったのですが、流石にそろそろ追いかけたほうがいいよなぁということで勉強をスタート。
まとめて整理する、というよりはどういう軌跡で学んでいったのか、どんな疑問を解消していったのかを並べていきます。
勉強前のステータス
暗号資産周りが盛り上がっているのは知っているが、仕組みは知らない
IT関連の技術の知識は、1〜2年エンジニアやってました〜という人とおそらく同じぐらい
どう動いているのか、何がありがたいのか、というのを自分で判断できるようになるのを一旦目指しています。
まずは概要を知る
この本を半分ぐらいよみました。ブロックチェーンってなんぞ?というレベルから、最近話題のDeFi(分散型金融)、NFT、メタバース…、といったバズワードの仕組みが解説されているようです…が、そこまでたどり着かずw
全体観を掴むのに適しているなと思い読み始めたのですが、わからないことが多すぎた。
わかったこととしては以下のようなもの。
ブロックチェーン自体はただの「データの構造」で、暗号資産の基盤となる技術
ブロックの中に「タイムスタンプ」「取引(トランザクション)情報」だけでなく「前のブロックのハッシュ値」を持っている
これにより、過去のブロックの情報が改ざんされると、そのブロック以降のハッシュ値が狂うので改ざん不能
マイニング(今回はビットコインが例)とは
ブロックチェーン技術に付加されて暗号資産として機能を得るっぽい
ビットコインのブロックチェーンのブロックには、複数のトランザクションの情報が入っている
トランザクションを「ブロック」として閉じるのは10分に1回程度。「マイニング」と呼ばれる作業の難易度でこの時間を調整している
具体的にはブロックのハッシュ計算のハッシュに「ゼロがXX個並ぶ」などのルールを設ける。
マイナーと呼ばれる人は、トランザクションの情報だけでなく、特定の情報(ナンス)を付加してブロックのハッシュを作成しまくる
「ゼロがXX個並ぶハッシュ」をみつけたら、ブロックを作成できる。そのマイナーは報酬としてビットコインを得る。この計算作業をマイニングという
高速くじ引きみたいな感じ。だから計算力勝負って言われるのね
しかも「10分に1回」になるように難易度調整されるなら、競争相手によって無限に計算力が必要?エコじゃないなこれw
合意形成(今回はビットコインとイーサリアムが例)
誰かがマイニングしてブロックを作成したとして、そのブロックのハッシュが正しいといえるか?
ビットコインは、攻撃によってブロックチェーンが分岐してしまった場合、長い方を優先する
適当なトランザクションを入れたブロックを生成しまくるみたいな
ただ、分岐させたチェーンを、正常なチェーンより長く維持するには、理論上全マイナーの51%以上の計算力が必要
そりゃそうか。くじ引きのあたりを多く引きつづけるってこと
この合意形成の仕組みをPoWという
これ遅いっぽい。イーサリアムはPoSという仕組みに変える予定
ビットコインとイーサリアムが今の流れを作った
ビットコインはデータに資産性を持たせる意味合い
イーサリアムはスマートコントラクトによりアプリケーションとして機能させる意味合い
スマートコントラクトを持つ暗号資産は他にもいっぱい出てきている
Web3の実態はDAppという、スマートコントラクトをベースにしたアプリケーションの総称
DAppにブラウザとかファイルストレージとかが登場!
イーサリアムのPoWの遅さを解決するためにロールアップという仕組みがあり、これは「オフチェーン」とかをつかうぜ!
…ここでわけが解らなくなる
途中まではまあ理解できましたが、DAppあたりから理解ができなくなってきました。なんで「コイン」が「アプリ」になるんだろう。スマートコントラクトか鍵っぽいけど。
一旦今日は疑問点をまとめるだけにしておきます。むず〜
ブロックチェーン自体は分散じゃなくてもいいのでは?分散はビットコインの話?
ビットコイン = ブロックチェーン + 分散技術 + 合意形成アルゴリズム
みたいなイメージなのかな。
分散したブロックチェーンのデータはどこにある?
分散処理したあとの整合性はどうやってとるの?
トランザクションが一定溜まったらブロックにする、とあったけど、そのトリガーはなに?
手数料、ガス代はどのタイミングで、誰がもらえるんだろう。
PoSとかNPoSとかはなにが優れているんだろう?計算スピードが早いのは理解したけど、デメリットもあるはず。
スマートコントラクトってなんだろう
スマートコントラクトのスクリプト(Solidity)はどこにある?誰が実装するの?
ブロックチェーン上の前提ルール(参加者の権限とか)や各種イベント(トランザクション、ブロック生成など)で動くスクリプトみたいなもの?
ということは、ETHの取引がスマートコントラクトの起動を担っている?
それならETHが資産性をもつのはあまりよろしくないのでは?
例えばETHを使うDAppがあったとして、一方でETHは暗号資産として売り買いもされてる。
「イーサリアムの基盤上」でDeFiとかNFTが動いているってどういう意味?
同じイーサリアムの基盤上で複数のDAppが動いている状況がよくわからない
オフチェーンってなんだ
トランザクションの完了ってなんだ
有効性証明ってなんだ
疑問点が多すぎて頭がパンクしそう。Web3に限らず、独学の難しさってこういうところなんだろうな。理解度にあったカリキュラムだけでもほしいところ。
他読んだ記事とか(雑メモ)
ウォレット = 公開鍵らしい
UTXOってなんだろう。なんで送金額との差が手数料になるの?
UTXOはまた↓を読んで理解したいところ。
この記事が気に入ったらサポートをしてみませんか?