SaaSベンチャーで働くエンタープライズ部長のブログ

SaaSベンチャーでエンジニア→プロダクトマネージャー→エンタープライズ部長として働いています。

solidity

solidity-coverageとTruffleを用いてSolidityのテストカバレッジを出力する

Solidityを書く時、テストカバレッジを出すツールにsolidity-coverageがあります。solidity-coverage自体は以前からあるツールですが、最新の書き方は少し変わっているので使い方を書いておきます。 バージョン solidity-coverage : 0.7.0-beta.3 テストカバ…

【書評】マスタリングイーサリアム(Mastering Ethereum)は、Ethereumで何ができるかが分かる良書

マスタリングイーサリアム SECURITIZEに買収が発表されたブロックチェーン・コンサルティング会社のBUIDLのVPであり、監訳者である宇野さんより、マスタリングイーサリアムをご恵贈いただきました。 頂いたので、僭越ながら書評を書かせていただこうと思いま…

ganache2.0のコントラクト管理機能を試す

GanacheはGUIでローカルにEthereumのブロックチェーンネットワークを生成できるツールです。 実行方法はとても簡単で、公式サイトからダウンロードして、クリックで起動するだけです。 ganache起動画面 Ganache2系が正式リリースされたのは2019年3月で結構前…

講談社サイエンティフィク様から「Solidityプログラミング ブロックチェーン・スマートコントラクト開発入門 」が発売されます

「Solidity Programming Essentials」という書籍を翻訳し、「Solidityプログラミング ブロックチェーン・スマートコントラクト開発入門 」というタイトルで、講談社サイエンティフィク様から9月7日に発売されます。私が監修し、松本さんと小池さんというエン…

Solidityの構造を可視化してくれるツールPiet

Solidityで書かれたスマートコントラクトを可視化してくれるツールが出てきました。 Pietというツールでとても使いやすく、役立ちそうだったので紹介します。 公式の紹介はこちらです。 blog.slock.it Pietの使い方 MCHのHeroトークンコントラクトを可視化し…

Ethereumのトランザクション(Message Call)について-Yellow Paper8章より

前回に続いて相変わらずEthereumのYellowPaperを読んで得た仕様をまとめます。 読んでいるYellowPaperのバージョンは「BYZANTIUM VERSION e94ebda - 2018-06-05」です。 今回は「8. Message Call」についてです。特に指定がない場合は、8章からの引用と考え…

EthereumのGasについて-Yellow Paper5章より

Ethereum Ethereum界隈はPlasma、Sharding、PoSと騒がしいですが、このタイミングで逆行してYellow Paperを精読しています笑 White Paperが概念とするなら、Yellow Paperは実装の仕様書に当たります。Ethereumでは相当細かく定義されており、詳細仕様書に近…

DEXを動かす〜Etherdeltaのコントラクトを実行する〜

前回、Etherdelta(DEX)のコントラクトをropstenネットワークにデプロイを試しました。 今回はデプロイ済のコントラクトのメソッドを呼び出して動かしてみます。 www.blockchainengineer.tokyo この記事では、 macOS High Sierra 10.13.4 node.js:v9.4.0 web3…

DEXを動かす〜Etherdeltaのコントラクトをropstenネットワークにデプロイする〜

ERC20のトークンを交換できるDEXであるEtherdeltaについて、ropstenネットワークにデプロイして遊んでみます。 他のチェーンを触ることが多く、Ethereumからしばらく離れてしまっていたので手触り感を掴んでおく趣旨です。 この記事では、macOS High Sierra …

セキュリティ分析ツールMythrilで、一部のERC20トークンで問題の関数を解析する

Mythrilとは Mythrilでチェックできるコントラクトの問題について batchTransferのオーバーフロー問題について batchTransferを解析してみる MythrilのDockerイメージ作成 問題のあったコントラクトを取得 コンテナを起動してMythrilを実行 分析結果を確認す…