濵津 誠 - ゼロから創る暗号通貨

    プロジェクトをシェアして応援しよう

  • このエントリーをはてなブックマークに追加
執筆決定!!694人が応援しています

ブロックチェーンの理論と実装を理解する入門書「ゼロから創る暗号通貨」執筆プロジェクト!

ゼロから創る暗号通貨

ブロックチェーン入門の決定版執筆プロジェクト!
特別な前提知識を必要とせずゼロからコードを書き進めることでブロックチェーンについて学べる入門書を書き下ろします。Simple Bitcoin (仮)という本書のためにデザインされた暗号通貨をPythonを使って実装しながら、 ブロックチェーンを基盤とした暗号通貨の仕組みを「覚える」のではなく筆者とともに「創る」。時に間違え、時に後戻りをしながらあるべき実装と理論への理解を深めることを目指す内容となっています。
ぜひみなさんの応援でプロジェクトを成立させてください!

成立締切日
2018年05月07日 23:59
リリース予定日
2018年08月31日
フォーマット
PDF(200ページ〜)

プロジェクト成立!
執筆が決定しました!

694人がこのプロジェクトを応援しています

プロジェクトを成功させるには、たくさんの応援が必要です。
プロジェクトをシェアして応援しましょう!

《数量限定》アーリーバードプラン462人が購入 (残り:38)

《500円OFF》いち早くご購入いただける方に、お得な早割りプラン

  • 電子版書籍
  • PDFがダウンロードできます。

  • 製本版書籍*1冊
  • 製本版を指定のご住所まで配送します。執筆完了後、ご住所を伺います(海外発送はいたしません)。

  • アーリーアクセス
  • 執筆完了前の書籍を、書き上がった章から閲覧いただけます。HTML版の公開を予定しています。また、リリース前のベータ版をPDFで配布いたします。

  • 紹介プログラム 料率30%
  • 一般発売時に紹介料30%の紹介プログラム専用リンクが発行されます(リンクから本が購入されると3000円の本の場合833円をお支払いします)

価格(税込)

4,000

500円 OFF!

電子版 + 製本版 プラン21人が購入

電子版に加えて、製本版をお届けするプランです。執筆完了後、ご住所を伺い配送いたします。(送料込)

  • 電子版書籍
  • PDFがダウンロードできます。

  • 製本版書籍*1冊
  • 製本版を指定のご住所まで配送します。執筆完了後、ご住所を伺います(海外発送はいたしません)。

  • アーリーアクセス
  • 執筆完了前の書籍を、書き上がった章から閲覧いただけます。HTML版の公開を予定しています。また、リリース前のベータ版をPDFで配布いたします。

  • 紹介プログラム 料率30%
  • 一般発売時に紹介料30%の紹介プログラム専用リンクが発行されます(リンクから本が購入されると3000円の本の場合833円をお支払いします)

価格(税込)

4,500

電子版プラン211人が購入

電子版書籍がダウンロードできるプラン

  • 電子版書籍
  • PDFがダウンロードできます。

  • アーリーアクセス
  • 執筆完了前の書籍を、書き上がった章から閲覧いただけます。HTML版の公開を予定しています。また、リリース前のベータ版をPDFで配布いたします。

  • 紹介プログラム 料率30%
  • 一般発売時に紹介料30%の紹介プログラム専用リンクが発行されます(リンクから本が購入されると3000円の本の場合833円をお支払いします)

価格(税込)

2,500

購入者数が目標に達しプロジェクトが成立した場合、購入額の決済は【プロジェクト成立締切日の翌日】に行われます。(目標人数に達しなかった場合はプロジェクト不成立となり、決済は行われません。)

プロジェクト概要

本書は Simple Bitcoin (仮)という本書のためにデザインされた暗号通貨をPythonを使って実装しながら、ブロックチェーンについて学ぶための入門書です。

  • Web などでよくシェアされるような解説を読むだけでは肝心なところが書かれていなくて良く分からない
  • 実際にビットコインのソースコードを読んでみようと思ったが、複雑すぎてちょっと読むのが辛い
  • 抽象的な解説だけだとどうにもピンとこない。コードを触りながら理解を深めたい

そのような初学者にとって、簡単過ぎず、複雑過ぎず、しかしながら本質を理解するためにエッセンスだけは程よく取り出したような、ちょうどいい按配の学習教材がないものか? といった問題意識から本書は企画されました。 特定の暗号通貨の実装に寄った解説を避け、暗号通貨を実現するために本質的に必要とされるものは何か?を理解することに注力し、読者の基礎力を高めることを目指します。 現在、我々が目にする機会のある暗号通貨の種類は優に100種類を超えていますが、

  • それらが個々にどのような特性を持つのか?
  • 暗号通貨を実現するための課題に対して、どのような手段で解決しているのか?

そうした差異を掴むために確認すべき「勘所」を獲る一助になればと考えています。 今回その目的をよりよく達成するため、クラウドファンディングという形式を取ることにしました。 同じような問題意識を持った方々に広くレビュー頂き、フィードバックのループを回していくことで
「そうそう。こういう本を最初に読みたかったんだよね」
と言えるような理想像に限りなく近づけることが出来るのではないか?と思っています。

対象読者

  • ブロックチェーンを実装レベルで理解したいエンジニア
  • これからインターンやアルバイト、新入社員等で暗号通貨の実務に取り組もうとしている入門者の皆さん

著者プロフィール

hamatz濵津 誠 Twitter GitHub

大手通信会社にて赤外線電話帳交換、SSL等の携帯電話向けアプリケーション開発業務を経て株式会社UEIに入社。得意分野は暗号関係やOSに近いプラットフォーム周り

本書を通じて学ぶことで、あるがままの仕様をただ受け入れるのではなく、よりよくしていくためにどのような工夫があるか? 常に考えることができるブロックチェーン・エンジニアが一人でも多く誕生してくれれば幸いです。

目次

はじめに

私は「こういうものです。覚えなさい」と教えられるのが昔から大嫌いでした。 例えば高校の数学の授業。黒板に書かれた問題に対する解説をただただノートにとり、それを暗記する。たとえそれが連綿と続く人類の歴史の積み重ねの中で獲られた知恵の結晶だとしても、私にとっては苦痛以外の何ものでもない「作業」でした。 その性質は今でも変わっておらず、紙に書かれた何かをただ記憶する、という作業がとても苦手です。
さて、そんな性質を抱える私が職務上のいろいろな出会いを通じて「暗号通貨に関連する技術を学ぼう」ということになり、有名どころの本を揃えたりTwitterで話題の記事などを漁ったりしていたところ、ある1つの問題にぶつかりました。
すなわち、

「ビットコインの仕組みはこのようになっています」
「ブロックチェーンとはこういうものです」

といった「事実の紹介」しかしてくれない教材ばかりが目につき、「なぜそのような形に至ったのか?」という肝心な「思考の過程」を伝えてくれるものに出会えなかった、ということです。
「こんなことを実現したいなら、こういう風に作れば良いのでは?」 「ああ、なるほど。こういう問題が起こるのか...」
あえて不完全なところからスタートし、失敗や反省を繰り返しながら「創る」ことで完成品に至るまでの思考の過程をシェアする。本来、私が欲しかったのはそういうテキストでした。
本書は、私のような性質を持った人たちに対して「あの時こういう本があれば良かった」と自らが思えるものを提供することを大きな目的としています。
このところ、ネット上でもその他の媒体でもブロックチェーンという言葉を目にしない日はないのではないか?という程にポピュラーなものとなりつつある技術ですが、その中身をしっかりと理解し、必要に応じて自分の用途に応じたカスタマイズができる人となるとまだまだ僅か。学生から現役のエンジニアまで、ブロックチェーンの技術を学ぼうとする方々の動機は様々でしょう。
本書では、暗号通貨技術の本質を掴むため細かな部分を削ぎ落としデザインされた Simple Bitcoin をゼロから創造していきます。完成までの過程には、当然失敗もあります。「学ぶ」という目的を外れない程度のシンプルさを保つために、あえて不完全なままで終わるところもあります。しかしそれが不完全なものであると理解しておくことで
「今回ここは見送ったが、本家のビットコインではこの問題をどう解決しているのだろう? 他の暗号通貨ではどうしているんだろう?」
といった暗号通貨技術における勘所は備わるはずです。
繰り返しになりますが、本書はビットコインそのものの完全なコピー実装をゴールとはしていません。が、そのエッセンスを掴み取ることは十分に可能と考えています。
本書ではコードの可読性の高さや近年の流行を鑑み、プログラミング言語Pythonを採用して解説を進めます(バージョン3系)。読者に対して Python に対する深い知識は求めませんが、Python の解説書ではありませんので、環境のセットアップを含めプログラミング言語 Python に対する詳細な解説は含まれていません。必要であれば他の書籍等で適宜補完してください。
本書を通じて学ぶことで、あるがままの仕様をただ受け入れるのではなく、よりよくしていくためにどのような工夫があるか?常に考えることができるブロックチェーン・エンジニアが一人でも多く誕生してくれれば幸いです。

第1章: Simple Bitcoin : 価値の移転を記録するプロトコル

  1. 1.1. これから作ろうとするものは何か? あるいは何ではないか?
  2. 1-2. 全体像を俯瞰する
  3. 1-3. 構成要素と個々の役割

第2章: P2P Network : 基盤作りからはじめよう

  1. 2-1. CoreノードとEdgeノード
  2. 2-2. Simple Bitcoin Protocol : メッセージを定義しよう
  3. 2-3. インフラとしての拡張性を持たせよう
  4. 2-4. ノード同士を接続してみよう

第3章: Hello Blockchain ! : こんにちはブロックチェーン

  1. 3-1. 簡単なブロックチェーンを作ってみる
  2. 3-2. 効率を上げるためブロックの生成タイミングを考える
  3. 3-3. PoW は「早い者勝ち」
  4. 3-4. コンセンサス : 林立するノード間で同じチェーンを共有するために

第4章: Wallet と Transaction : Transactionの中身について考える

  1. 4-1. 「やり取りする通貨はどこから出てくるのか?」あるいは「無制限に通貨を送金できないようにするには?」
  2. 4-2. 送金相手をどのようにして特定するか?
  3. 4-3. ブロックの生成には手数料が必要
  4. 4-4. Transaction のデータ構造を確認しよう
  5. 4-5. Wallet に必要な機能を確認しよう
  6. 4-6. 作ったWalletでTransaction を生成してみよう

第5章: 全ての機能を結合し、動かしてみよう

  1. 5-1. Client側(Edgeノード)の構造
  2. 5-2. Server側(Coreノード)の構造
  3. 5-3. 全機能合体! : 送金からCoinの受け取りの確認まで

第6章: Simple Bitcoin のセキュリティに関する考察

第7章: これから先の Simple Bitcoin : 暗号通貨以外への応用の可能性、有用なコンセプトの紹介などを予定。出資者のみなさまにご意見を伺います。

終わりに:

執筆スケッチ

2

更新情報

プロジェクト成立しました!

2018.04.17. 更新

3日で達成となりました!たくさんの応援ありがとうございます。

既に執筆が開始されており、[#暗号通貨本アイデアメモ]がTwitterではじまっています。
ぜひフォローしてください。

プロジェクトを公開しました

2018.04.08. 更新

本日、プロジェクトを公開・開始しました!たくさんの支援をお待ちしております。