マナトビNANJCOINのコードについて、NANJのエンジニア†つっちー†さんが解説してくれました!そもそもERCとは?ツイートシェアはてブGoogle+Pocket“マナトビ”コードについて全くわかってない僕が、調べまくってクズノハさんとつっちーさんの書き込みを噛み砕こうとした結果wwwwはいどうもこんばんは、マナトビです。NANJCOINはERC223という規格を使用しているんですね。これについては、ちょうど記事にしようと情報をまとめていたところでした。そんな時、ディスコード内でエンジニアの方が詳しく詳細をまとめてくれていました!記事内で取り上げることを、お二人に許可をいただきましたよ!お二人とも本当にありがとうございます!まっっっったくコードについての知識のない僕目線で、その書き込みをできるだけ噛み砕いて紹介していきたいと思います!(思った以上に知らないことが多く結構調べました)まずは、『そもそもERCってなんやねん!』ってところから始めていきますね。Comments』という略で、イーサリアムに関する技術仕様が書かれた文書のようなモノです。イーサトークンのベースですね。提案書という表現が正しいですかね、この文書がERCとして公開され問題提起されます。イーサリアムの仕様として採用この過程については、こちらできっちりまとめられていますのでご覧ください。20』の略称で、仮想通貨の名前ではないんですね。ERC20は、20番目にトークン仕様について議論されたモノで、『20』という数字はその順番のことです。NANJCOINがそうですよね、ERC223なんて呼びませんよねwあくまでERC223は規格の名前です。ERC20のメリットこの規格に準拠してトークンを発行することで1からトークンを発行しなくていいトークンの技術のベースが同じなので、取引所やウォレットがトークンをまとめて扱うことができるトークンに合わせてウォレットや安全性を考えなくていいので、ICOに参加しやすいというメリットがあります。トークンを『作りやすい、扱いやすい、そしてICOに参加しやすくなる』というメリットがあるんですね。)が、様々なイーサリアムトークンに対応しているのがそうですよね。トークンの技術ベースが同じなので、まとめて1つのウォレットで取り扱えているというわけですね。ERC20のデメリットを解説するまえにイーサリアムは、スマートコントラクト(プログラムに基いて自動的に実行される契約)を用いていて、コントラクト(契約情報)をブロックチェーン上で管理しているプラットフォームです。スマートコントラクトを初めて導入した例として、自動販売機があります。この2~4の流れを自動で行うのがスマートコントラクトの特徴です!お金を必要額入れてボタンを押すと商品が出るという契約をプログラミング(契約定義)お金を入れてボタンを押す(イベント発生)商品が出てくる(契約執行)お金と商品の交換完了(決済)ERC20のデメリットメリットがあればもちろんデメリットがあるわけですね。簡単にデメリット説明すると、ERC20の規格を使用したトークンの送金時にアドレスを間違えると、引き出せなくなり2度と戻ってきません。電子の海に消えますwブロックチェーン上に記録されているコントラクトにはアドレスが割り振られていて、通常のウォレットアドレスではなく、その割り振られたアドレス宛にトークンを送金してしまうことで、結果電子の海に消えてしまうんですね。ERC223についてはい、というわけでERC223について。簡単に言うとERC223は、ERC20の問題を解決した上位互換の規格です。問題を解決したということで、『トークンの誤送金を防止する機能が実装』されて電子の海に消えるということはなくなりました。Fallback』によって、コントラクトアドレスに送金してしまった場合、送り主に送り返される仕様が実装されました。上位互換ということで、ERC20の機能はそのまま受け継いでいます。ERC223はERC20との互換性が完全ではない次の本題でも話すことになるんですけども、ERC223はERC20との差異がありそのデメリットはこちら。これは、つっちーさんがディスコード内でも解説してくれています。(※一部省略)ディスコード内でエンジニアの方がNANJCOINのコードについて解説!やっと本題に入ります!(分かりにくい解説で混乱させて申し訳ない...)NANJCOINディスコードコミュニティ内の部活動、#開発・デザイン部で、エンジニアの方がNANJのコードについて解説してくれました。冒頭部分から、今まで説明してきたERCの機能に加えてNANJCOINは以下の機能が独自に実装しています。NANJCOINのコードは、バグが発生しないように必要最低限の機能を組み込みシンプルなコードに仕上げているんですね。許容量以上のデータを送りつけ誤作動させる、脆弱性を悪用して誤作動したコンピューターの乗っ取りなどといった行為をバッファオーバーフロー攻撃といい、オーバーフロー攻撃はそれと同じことで、クズノハさんがどういうことなのか答えてくれましたよ!誤作動を狙った攻撃のことですね!SafeMathは、四則演算におけるエラーを予防するコードのことでオーバーフローを防止します。uint256という箱のようなものを計算処理に使った時に、大きな数字を入れてしまうと箱から溢れてしまうイメージです。ほんとはありえない数字が入ってるのでエラーとして扱うべきなんですが、溢れてしまっている分正確な判断ができなくて、ありえない数字をそのまま送金処理にまわしちゃうってことです。クズノハさんよりオーバーフロー攻撃者は、特定のアカウントが所有するトークン量を簡単に増やすことができてしまい、トークン全体の供給量がおかしくなり、トークンの価値がなくなってしまいます。それを防ぐためのSafeMathなんですね。残りの部分、ERC20とERC223の互換性は完全ではなくてデメリットがあるって話は一度抜粋してご紹介しましたよね、NANJCOINはERC20との互換性を完全なものに修正するためにコードが加えられているようです!NANJCOINは、ERC20とERC223の互換性を完全なものにし、差異によるデメリットを解消した!とだけでも今回は覚えて帰ってくださいね!そして、AAでユーモアを添えられています。おわりにとりあえずまったく噛み砕けませんでした...、申し訳ないです。最後に、つっちーさんの思いをご紹介して終わりにしたいと思います。切実な思いですね、前に運営の方も言ってました。A剥がしてハイできました。リスペクトはあります。それで通る世の中じゃぁないんだよなぁ。2018多くの国産通貨が増え続けてきています。良いからコードに手を加えて改良して欲しいという思いが届くと良いですね。力尽きそうなので今回はこの辺で、とりあえずNANJCOINはERC20との互換性を完全なものにしたということだけを覚えておいてください!それではまたー(なおブロックチェーンエンジニアの方からもNANJCOINのコードは完璧と言われていました)はい、かなりの差異があります。エラーもバグもなくセキュリティーが強固で、多彩な機能が備わる完成された設計だと思います。他のトークンもNANJCOINを参考にするぐらい完璧なんです。◯HitBTC(ヒットビーティーシー)登録方法はこちら2018年5月4日よりNANJCOINが上場する、24時間取引高世界9位の海外取引所!国内上場に備えてうまく買い増ししていきましょう。非常に多くて取り扱い通貨が12種類と非常に豊富。DX.Exchange』が2018年6月に開設予定!上場通貨の投票を開催中!仮想通貨のチャート、ローソク足の見方!足やヒゲ、陰線や陽線って何?RECOMMENDこちらの記事も人気です。購入方法まとめ|セキュリティ対策を徹...コイン情報2018.3.14今何かと話題の仮想通貨ネム(XEM,NEM)、その特徴と将来性についてま...コイン情報2018.1.13仮想通貨のMoeda(MDA)とは?仮想通貨を無料で貰おう2018.7.7【エアドロップ】NANASHI(ナナシ)という国産仮想通貨をご紹介!コイン情報2018.6.19NANJCOIN(なんJコイン)運営であるハゲ先生とエンジニアのつちのこ...プロフィールサイト管理人:マナトビ国産の仮想通貨(暗号資産)についてまとめています。