![見出し画像](https://assets.st-note.com/production/uploads/images/53219644/rectangle_large_type_2_8e2eb5274340e77ec98e9201c3973b31.png?width=1200)
ノードとは、点です。【ブロックチェーン構造についても解説】
こんにちは!
仮想通貨にどっぷりな
るー(@Rapelucy1003)です。
今回は、メモです、はい。
ゼロ知識証明を学ぶ上で知っておきたい
メモです。
軽くサクッと呼んでくださいな!
ノードとは?
簡単に言えば「点」をノードというのですね。
私の大好きな、わわわ辞典さんから
引用させてもらいます。
だから、ブロックチェーンにおける
ノードは検証を行っている
一つ一つのコンピューターのこと。
そもそもノードの種類は?
いわゆる、いっぱいコンピューター
あるけど、みんな何に特化してるの?
データ量が異なる
・「フルノード」
・「SPVノード」
機能の違う
・「マイニング機能を持つノード」
・「ウォレット機能を持つノード」
と、大雑把に4つに分類できちゃうと。
で、今回メモりたいのは
SPVノードについて。
あとは、気が向いたら
調べようかな。(笑)
SPVノードとは?
SPVとは Simplified Payment Verification の略。
— るー (@Rapelucy1003) May 27, 2021
Simplified(簡潔化された)
Payment(支払い)
Verification(検証)
これ、説明するには
フルノードも理解しなきゃだな。
フルノードは、ブロックチェーン全部の
情報を持ってるコンピューターです。
一方でSPVノードは
フルノードを参照して、必要なデータだけ
取り出して持ってるコンピューターのこと。
どうやって、そんなことできるの?
ちょっとだけ小難しい話になると
ブロックチェーンの構造を知る必要有。
ビットコインで解説すると…
ブロックチェーンは
トランザクションの塊
&
ヘッダーと呼ばれるいろいろ大事なものが
入った塊で構成されてまする。
-----------------------
①トランザクションを作る
(「AさんがBさんへ1BTCを送金した」という取引明細)
-----------------------
②トランザクションを箱(ブロック)にしまう
-----------------------
③実際、ブロックの中には複数の
トランザクションが入ってる。
-----------------------
で、、
④ブロックがたくさん繋がっていると。
便宜上2つで堪忍。
-----------------------
このブロック全部の情報を持ってるのが
フルノードって呼ばれるやつね。
-----------------------
でも、これブロック多くなればなるほど
重くなるから、トランザクションを
数値化して、それの最後の文字だけ
かき集めよう!
これは、マークルツリーっていう
技術を使って行われているもの。
その集めたデータを
ヘッダーの部分に入れ込んで
この、かき集められたところだけを
切り取ってSPVノードが作られてるのね。
まあ。よくわかんなかったら
全部のデータを覚えるのしんどいから
データを集めて要約しまくったもの
なんだな~って思ってくれれば^^
SPVノードのリスクは?
フルノードを参照して
特定の送金処理データを要求しなきゃ
いけないということは
要求している最中に
ハッキングされるリスクがあるということ。
つまり、ハッキングされて
IPアドレスとコインのアドレスをa
紐づけられてしまうリスクがあるのだ。
結局何?
あ、そう、結局SPVノードを
理解して何が言いたかったって
メモだから特に何も。(笑)
しいていうなら
ブロックチェーンは
オープンソースだからこそ
プライバシー保護をしっかりする必要があると。
どんなときに、リスクがあるのか?
ということで一つの事例として
SPVノードを挙げたまでです。(笑)
プライバシー保護のための匿名化技術
こういうリスクの対策として
様々な匿名技術が存在してるのね。
そのうちの一つが
ゼロ知識証明。
近いうちにこの記事書くので
お待ちあれ~。
ってことで、今回のメモがおしまい!