Wait a moment...

nemlogゆるゆる勉強会~第二章 NEMとイーサリアムの違いとは?

nem23.90xem (8)
558
4
2021-04-07 12:09:42
nemlogゆるゆる勉強会~第二章 NEMとイーサリアムの違いとは?

皆さんこんばんわ、おはようございます!

前回の『ブロックチェーンとは』お読み頂きありがとうございます!

 

第2章では、イーサリアムと比較しつつNEMの魅力について語っていきます。

 

なお、あくまでも私の見解が多く含むので全て自己判断、自己責任でお願いいたします。

それを踏まえていただいた上で

 

NEMとイーサリアムが全く違うことが伝わると良いと思います!。



1.NEMは何がすごいのか? イーサリアムとはなんなのか?



まずイーサリアムから行きましょう。



イーサリアムはビットコインを発展させてP2P上に1台の仮想コンピューターを作り、

そのコンピュータにあらゆる取引のプログラム(指示)を登録して、人の介入なしに自動で、

取引処理を行い、イーサリアムP2Pがその取引があった事を証明し続けます。

といったプロジェクトです。

 

当時ビットコインを使ってさらに複雑な取引、たとえば間に2人も4人も入るような売買の取引や

商品が到着した事を証明して、10%のキャッシュバックを送信するとか、

そういった単純な価値の送受信以外の事も自動で行えたらさらに信用できる大きなプログラムのアプリケーションを記録する(保証)ことができよね?

 

そうか、じゃぁあらかじめできる事を決めるよりかは使う人が自由にプログラム(指示)できようにして。。。

あっ自由にスマートコントラクト(自動取引)書ける(プログラム)ようにすればいいんだ!



(しかし、このときイーサリアムは大事なことを忘れています。



こうしてイーサリアム開発陣営は苦労?の末、

本来データの保存や手数料のプログラムぐらいしか処理できなかったビットコインに

より複雑な取引を誰れでもプログラムしてP2Pにアップロードして利用できるイーサリアムが誕生しました。

 

当時これはものすごい画期的なことで人々がワールドコンピューターと称し熱狂して、

世界が変わると言いました。

 

それもそうです、世界中の複雑な取引をすべて1つのP2Pネットワークで行えると思ったからです。

手数料が2つも3つもあってさらに分割して3月31日送信するといった取引すら自動で行えます。

それが国境も通貨も関係なしに1つのイーサリアム上で行えるのですから世界がひっくり変える

のも分かります。

 

だってもし国が利用すれば税金や不動産、住民表、学歴、すべて未来永劫自動で管理していけます。

 

では実際そうなったか。

 

なっていない。

 

ものすごい簡単なことに目をつぶっています。

 

すこし考えてみましょう。

 

さて日本の人口は何人ですか?

 

1億2千万?



これでは多すぎるので僕の住んでいる京都市の人口で行きます。

 

現在、約147万人です。

 

京都市でイーサリアムを利用して147万人の住民票を登録してみましょう。

 

イーサリアムの処理速度は1秒間に16件とします。

 

すると登録するのに25時間かかります。

 

1億2千万人では94日かかります。

 

住民票の登録に最大94日かかります。

 

そうですね、遅いですね。

 

さらに手数料もすごい掛かります。

 

ちょうど先日、手数料が過去最高を更新しました。

 

22.97ドル

 

京都市民147万人を登録するのにバクっと37億円かかります。

登録だけですよ? 

 

どうですか?安いですかね?

最新の技術ですからこれくらいするでしょうか?

 

なぜ高くなるのか?

 

これはですね、スケーラビリティ問題といいまして。

 

ブロックチェーンは処理速度によって使用できる範囲が制限されている。

 

ようするにブロックチェーンの使える範囲(件数)はコンピューターの処理速度によってきまるんですよーという事です。



利用件数が増えると、どうしても時間が掛かっていきます。

しかし大事な取引で今すぐ処理して欲しいときがあるでしょう。

 

そうしたときのためにイーサリアムでは、より多く手数料を払えば早く処理してあげるよ?機能が備わっています。

このため利用者が増えるにしたがってより早く処理して欲しい人が手数料をどんどん多く支払って

手数料が高騰してしまっています。

 

実際たった一つのゲームコンテンツが手数料をかつてないほどに高騰させました。

そして手数料を多く支払わなかった人は長ーい時間待たされることになります。

大事な取引でも手数料を払えない人は利用することをあきらめるでしょう。



先ほど『大事なことを忘れている』と言いました。

 

大事なこととは『スケーラビリティ問題』このことです。

 

イーサリアムはワールドコンピューターと称されています。

 

ワールドコンピューターを作るには世界中の取引を1つのP2Pで処理することですが、

これはあまりにも誇張しています。



例えば先ほどの147万人のデータ登録を僕のパソコンのデータベースで行えば

数分で処理してしまいます。(ブロックチェーンではないので安全性は低いです。)

 

でもイーサリアムでは25時間かかります。

 

NEMも負荷祭りでしっかり遅延しましたね。

 

ちょっと想像してみてください。

 

P2Pネットワークというのは分散化すればするほどに処理速度が低下していきます。

1台のコンピューターは入力を一回受ければ結果を出しますが、

P2Pコンピューターは1台のコンピューターが受け取った入力をほかのコンピューターは待つことになります。

わたし、待つわ。。。

 

それは1台のコンピューター内のチップ同士の電気信号よりはるかに遅延します。

現代のインターネットという通信網はワールドコンピューターを形成するには遅すぎるのです。

 

加えてブロックチェーンもデータを保存するシステムです。

 

という事はサーバーにデータを保存するわけですが、

世界中の取引データを保存するための膨大な容量も確保しないといけません。

なんせ自由なスマートコントラクト(取引データ)によってデータの大きさもピンからキリまであります。

ピンならいいですがイーサリアムを使うという事はビットコインより複雑な取引ですから必ずデータ量が大きくなります。

そのため十分な空き容量を用意しないといけません。



ビットコインがなぜ単純な取引に絞ったのかというと、データを維持する事は将来にわたってコストが掛かると分かっていたので

いかに少ないデータで長く生存していくように細く長くとそばのように設計されています。



仮に私がワールドコンピューターと言うとしたら少なくとも自分のパソコンよりは早く処理してくれないと

とてもじゃないが世界中の取引なんて処理できません。

そしてインターネットの通信速度がそれをさせてくれません。

 

そもそもスケーラビリティ問題をクリアーしないと、

世界中の様々な取引の処理にはブロックチェーンは使えないわけです。

利用するスケールを制限する必要があります。

全世界が同じものを同時に使えないのです。

実際にイーサリアムではせっかくはじめた遺言サービスも、

スケーラビリティ問題で手数料が高騰し採算がとれずにすぐにサービス停止に追い込まれました。

たとえイーサリアム2.0で秒間2000、4000件処理できるようになったとしても

せいぜいクレジットカードと同じです。決済に使ったら他の取引は同じことになります。

P2Pの構造上クレジットカードや銀行ATMを超えることは無いのです。

 

ブロックチェーンのイメージが変わってきましたか?

多くの人が誇張された情報を目にしてブロックチェーン=なんとなくすごい事、が独り歩きしています。

 

一方NEM=Symbolネットワークはどうでしょうか。

こちらはエンタープライズ(業務)向けと用途を割り切って開発されています。

 

イーサリアムがスケーラビリティ問題の対処に複数のブロックチェーンに分散化しようとしているのに対して、

 

プライベートチェーンmijinの凄さ。

 

NEMではプライベートチェーン(ある組織内(会社とか)だけで使うP2Pブロックチェーン)との併用を最初から想定していて、

Symbolネットワーク本体への負担を軽減する設計になっています。



プライベートチェーンとはある組織内だけ使うP2Pブロックチェーンです。

ここからが面白いですよ。

先ほどクレジットカードや銀行ATMを超えることは無いと言いました。

これはパブリックチェーンにおいての話です。

パブリックチェーンとは全世界共通のブロックチェーンでビットコイン、イーサリアム、Symbolも含まれます。

 

Symbolは同じ機能のままプライベートチェーン版を自由に作ることが出来ます。

テックビューロ社が開発したプライベートチェーン版Symbol 『mijin』というものがあります。

 

そしてパブリックSymbolとプライベートSymbolは相互にその取引を行う事ができるようになっています。

 

Symbolプライベートチェーン(mijin)ではATMやクレジットカードとして機能させるに十分な速度があります。

それは範囲をしぼって使用しているので十分な処理速度で実行できるわけです。

 

2016年に大規模なテスト実証実験をしています。

 

https://www.sakura.ad.jp/information/pressreleases/2016/12/20/90164/

 

これは大規模な電子マネーサービスにおける障害テストです。

※改竄できない事とシステムが止まらないことがブロックチェーンのメリットなので限界まで追い込まれる。

 

イーサリアムがまだ毎秒2000件や3000件を実現させていない段階で、すでに

プライベートチェーンにおいて毎秒4000件以上をさばいていて、さらにそこから『障害』を発生させて実利に耐えるか?というものです。

NEMはイーサリアムとは全く次元の違うブロックチェーンです。

 

3台のP2Pネットワークのうち2台を停止させても問題は発生せず実験は成功しました。

実際の電子マネーサービスに十分使用できる事を証明しています。

 

実はこのSymbolプライベートチェーンmijinをもとにSymbolパブリックチェーン=いまみんなが使ってるSymbolを開発しました。

2つは兄弟みたいなものです。

 

多くのブロックチェーンプロジェクトが未だにパブリックチェーン(世界規模)に重きを置いて難航する開発を永遠と続ける中、

なんとNEMはあっさりプライベートチェーンからパブリックチェーンを設計しました。

 

でもそうではないですか?

いきなり2時間の映画作れるでしょうか?

まず15秒の動画作るとことから始めませんか?w

ぜったい失敗しますよね?w

 

まず小規模のプライベートチェーンでしっかり実績を作ってからSymbolは開発されましたのでご安心ください。

小規模といっても一国の電子決済をシミュレートして実証しているので必要条件はクリアーしています。

これを無限に利用することができます。

 

建設、財務、不動産、学校、遺言サービス、などなど。

実現できそうですよね?プライベートチェーンがあってこそです。

 

残念ながらスケーラビリティ問題の根本的な解決はできませんがちゃんと事前に対策されています。



限られたブロックチェーンの能力をみんなで少しづつ使う事を理解して開発しています。

そして現在考えれる最大限の高速化をしました。

SymbolはC++というプログラム言語で開発しています。

C++は高速に処理できる言語で少しでも早く処理するために使用しています。

 

Symbolは高度に分散化されたP2Pネットワークにおいて最高の速度で動作しているブロックチェーンです。

だれが作っても結果は同じです。技術的限界点は同じです。

異常にに早く謳っているプロジェクトはほんとに1本のブロックチェーンなのか疑問を持つべきです。

分ければ早くなるのはあたりまえですから。

Symbolも10本同時に走らせれば2000件処理できますよねw

 

高度に分散化し1本で秒間200件の取引を処理します。

さらに1件あたり100件の取引を内包できるので、最大200*100件=理論上秒間2万件の送信が可能です。

 

P2Pのコンピューター1台あたりの性能をあげればSymbolネットワーク全体の能力は向上しますが、

コストが増大します。

 

コストが増せばノードを立てる人が減ってしまいます。

そのバランスを調節してコストにあったSymbolネットワークの能力を設定しています。

実際負荷テストで毎秒400件を超えるとスペックの問題から脱落するノードがありました。

 

なので今は200件のリミットを付けてALLNODESといったサービスで40ドル?ぐらいで簡単にノードを建てれるよになっていますね。

もし時代錯誤な設定をしてハイスペックなコンピューターが必要だと、400ドルになっていたかもしれません。



Symbolでは数種類のスマートコントラクトだけを搭載しました。

使いたい取引を選択するだけで、すばやく安全に利用することが出来ます。

言葉で書くと簡単ですね。

 

安全に。。。



自由の代償

 

アップデートはご存知でしょうか?

パソコンやゲーム、スマホのアプデ。

結構、頻繁にありませんか?

 

これはプログラムに不具合が見つかったから修正しているわけです。

不具合とはバグとかエラーと言ってプログラマーが予期しなかった結果が出たという事です。

たとえるなら1+1=0になってしまったという事です。

あれ?なんで?って感じです。

しょっちゅうあります。天下のMicrosoftでも毎月第2水曜日はアップデートしていますし。

プログラムというのは完全に作るのは非常に難しいのです。

 

ではこれがイーサリアムのスマートコントラクトだった場合どうでしょう?

イーサリアムはだれでも使えます。

みんな非常に優秀なプログラマーだったらいいですが。。。。

月に行ったNASAでもアポロ13号爆発事故や、

イーロン・マスクのロケット、ホリエモンも失敗していますよね。

人は間違いを起こすものです。



ブロックチェーンは大事なデータを扱います。

 

僕がスマートコントラクトをプログラミングします。

 

AさんがBさんに送金するとCさんにBさんの残高の10%を送金するというスマートコントラクトを作るときに

AさんがBさんに送金するとCさんにAさんの残高の10%を送金すると

間違えてしまいました。。。

Aさん激おこですね。



実際にありました。

ご存知でしょうか?

自由なマートコントラクトは幾度か不具合をおこし流出、凍結を起こしています。

 

https://prtimes.jp/main/html/rd/p/000000016.000028896.html より

 

https://fressets.com/wp/wp-content/uploads/2020/08/smartcontract_accidents.pdf



イーサリアムでは自ら取引のプログラムを登録する必要があり、そのプログラムに誤りがあれば

間違った取引結果が生まれます。間違いかどうかは人間にしか分かりません。

間違いがあった場合それもまた改竄できません。

間違いのないプログラムの作成は非常に難しいのです。



繰り返しますが、

 

Symbolでは数種類のスマートコントラクトだけを搭載しました。

※結果に間違いがないことを数年かけて検証しています。

 

使いたいスマートコントラクトを選択するだけで、すばやく安全に利用することが出来ます。

 

イーサリアムは実務に使える段階にはないのです。(段階にあるとは考えられません)

手数料の高騰、スケーラビリティ問題。

そして、スマートコントラクトの不具合の危険性です。



NEM=Symbolはスマートコントラクトの危険性をゼロにして完成しています。

 

イーサリアムはワールドコンピューターを目指し道半ばです。

 

自分の資産をどちらに預けたいかと言われたら私はNEM一択です。

みなさんはどうでしょうか?



少なくとも自分の周りのエンジニアにはイーサリアムは元より

ブロックチェーン自体に懐疑的です。

 

私の周りにいるエンジニアのブロックチェーンへの印象はようするにほぼ詐欺です。

 

できない事をあたかもできように語って投資させている。

負荷テストを行うというのはどこまでできるかを明確に示していて、

僕がNEMを押している理由にもなります。

 

あんまり言うと怒られそうですけどw



ルールのない自由な車は安全でしょうか?

そんなことはありませんね、ルールがあるから安全に車を利用することが出来ます。



NEM=Symbolにはルールがあります。

イーサリアムにはルールがありません。

 

すこし余談ですがイーサリアムを模倣した、ブロックチェーンが乱発していますが、

javaScriptでスマートコントラクトを書くというのは非常に危険なことです。

 

javaScript自体が抱える不具合がとても多いからです。

いくら完璧に書いたとしてもjavaScript自体に不具合があっては意味がありません。

 

イーサリアムは不具合の無いようにオリジナルのプログラミング言語を用意しています。

しかしそれをもってしても上記のような不具合を起こしています。

 

原因の一つにオーバーフローがあります。

細かい説明は省きますが、

実はコンピューターは正しく計算できないので、最大安全計算数というものがあります。

 

言語仕様的に安全に計算できる範囲が決まっていて超えると答えが合わなくなります。

仮想通貨はただでさえ桁数が大きいので慎重に扱わないとこの手の不具合が起こりやすいです。

 

バグってるプログラムの原因は、

この『コンピューター実は計算出来ない問題』であることが多いです。

 

イーサリアムとNEMの一番大きな違いがあります。

 

NEMは先のオプトイン→スナップショット→ローンチという生まれ変り技術を編み出しました。

 

NEMというコンセプトはそのままにブロックチェーンを新しくしていくことができるのです。

このことはNEMが未来永劫続いていくための方法であります。

 

NEMは新しく生まれ変わってもNEMという最高の武器があります。

 

ホルダーは何も恐れずにただホールドしておけばいつまでも最新のNEMを受け取ることができるでしょう。

 

一方イーサリアムはアップデート方式で古いチェーンを伴っていくため時間の経過かとともに複雑になっていきます。

そしていずれ不具合によって。。。?

 

まとめ

 

NEMはできる事が限られていているが安全に利用できる。

イーサリアムは自由だが安全面に不安がある。

 

NEMはコンセプトで資産を引き継いだままチェーンは新しく作れる。

オプトイン→スナップショットで、たとえ新しいチェーンに不具合があっても資産は減らない。

プライベートチェーンとの併用で地に足のついた未来。

 

イーサリアムはチェーンを追加して複雑になっていき自由だが安全面が不安なのは永遠に変わらない。

イーサリアムくんとNEMくん 

 

どうでしょうか?印象が変わりましたか?

 

なかなか難しい内容と思いますが、頑張って読んでくださってありがとうございます。

 

PoS+の質問があったので、説明しますと。

 

ビットコインやイーサリアムが早く計算した人に対して報酬があるのに対して、

PoSは10000xym以上保持しておくことが条件になります。

+はネットワークへの貢献度で判定します。

PoS+

 

早く計算する必要がないので、無駄に高性能なコンピューターは必要ありません。

ビットコインマイニングで問題になっている電気代も掛かりません。

10000xym 以上あればいいので委任ハーベストができるわけですね!

 

PoSは改竄(攻撃)するのに莫大な金額(P2P内の残高の半分以上もってないとできない)

さらにSymbolでは貢献度で判定するので半分以上持っていてもできない。(と思うw)

非常に効果的な改竄対策です。

 

イーサリアムもPoWからPoSに変更します。

これはチェーンが64本~数千本?に増えるため、1本あたりの攻撃コストがとても下がるので変更を余儀なくされました。

分散されるので1台しかノードがないチェーンもあるかもw

そうなると3台あれば攻撃できてしまうので。あくまで残高でという事です。



えーっと次回、第3章ですが、私の開発したIchiGoWalletをNEMの機能と共にお話したいと思います。

WEB3.0 価値を移動させるインターネットサービス お楽しみに。

 

Comment
nem奈々®︎
nem奈々®︎
2021-04-10 02:27:13ID:239508

とても勉強になりました。もっと海外の方々にも伝わって欲しい( ̄∇ ̄)

ほなねむ
ほなねむ
2021-04-08 01:11:16ID:239097

モザイク作成手数料がなあ…(´・ω・`)

Sasuke
Sasuke
2021-04-08 00:47:36ID:239084

わかりやすい記事をありがとうございます。SYMBOLの価値が理解できはじめました。あとは、広く使われて、理解されていくのを待つだけですね。

この記事を書いた人
どうもボー太郎です。野良犬プログラマーです。 Nember登録よろしくお願いします。 googleplay (アンドロイドアプリ) https://play.google.com/store/apps/developer?id=bootaroucreative NEM アプリ 『NEM/XEM QRコード メーカー』(請求QRコード作成します) http://korokorophp.php.xdomain.jp/nem-php/index.php 『NEMOON』 (1XEM/384.4円までをカウントするアプリ) http://korokorophp.php.xdomain.jp/nemoon/ 『NemTimeCard』 (Nem でタイムカードを打刻するアプリ【開発中】) 『Snemops』 (小規模店舗向け 注文、決済システム) http://snemops.work/ 『XEMチェッカー』 (もらったXEMとおくったXEMを検索日範囲を指定して集計します。) http://korokorophp.php.xdomain.jp/nemsum/ ↑ リンクをクリックして警告が出ますが詳細クリックしてアクセスしてください。 not foundになったらアドレスーのhttpsを httpに変更してください。