著:田篭 照博
Bitcoinの技術的な概要解説と、Ethereumでのスマートコントラクトおよびそのセキュリティの留意点について書かれた本。
Blockchainの本は今やたくさん出ているが、この本の特徴は大きく2つある。まず第一に、Ethereumのスマートコントラクトについて、用途別に分けて具体的な記述例がいろいろ掲載されている点である。2つ目としては、スマートコントラクトのセキュリティプラクティスと脆弱性についても書かれてある点である。
特に、後者については、複数の呼び出し元から同時に呼び出されたときに問題が発生するかどうかの再入可能性(Reentrancy)問題、トランザクションがブロックに取り込まれる順番がマイナーに依存するため意図した順番でトランザクションが実行されないケースが生じるTransaction-Ordering Dependence(TOD)、ブロックのタイムスタンプに依存した処理によって脆弱となりうるTimestamp Dependence、ステートに機密情報を保持して他と連携する場合の注意点、オーバーフローがもたらす影響といったことが書かれてある。
また、2016年11月にSolidityのコンパイラーであるsoleの一部に脆弱性が見つかったことや、Jaxx脆弱性についても言及されている。
特に後半はプログラムやコマンドレベルの解説がいろいろ載っているのが良い。一方、前半のBitcoin説明は既にたくさん出ているBitcoinの本と比べて取り立てた内容ではない。また、「本書ではEthereumそのものの仕組みは割愛しますが」となっており、後半のスマートコントラクトの解説との関連を考えると、むしろ割愛したこっちの解説こそきちんと盛り込むべきではなかったかと思われた。
大型本、240ページ、技術評論社、2017/10/27