Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ブロックチェーン技術セミナー・ハンズオン -仮想通貨のマイニング・作成体験-
Search
ISHIGO Yusuke
April 17, 2018
Technology
0
130
ブロックチェーン技術セミナー・ハンズオン -仮想通貨のマイニング・作成体験-
追加資料(コマンドリスト)
https://github.com/Yusk1450/BlockchainStudyGroup
ISHIGO Yusuke
April 17, 2018
Tweet
Share
More Decks by ISHIGO Yusuke
See All by ISHIGO Yusuke
基礎演習(石郷ゼミ)紹介2024
yusk1450
0
20
アプリ開発プロジェクト紹介2024
yusk1450
0
41
Processing入門
yusk1450
0
81
ラピッドプロトタイピング手法を中心としたITスキル習得のための指導法の実践(日本教育工学会 第34回全国大会)
yusk1450
1
150
IoTサービスのためのプロトタイピング・ワークショップ資料(第2回)
yusk1450
0
80
Pepperアプリ開発入門ワークショップ拡大版(2016/08/24)
yusk1450
0
90
IoTサービスのためのプロトタイピング・ワークショップ資料(第1回)
yusk1450
0
120
micro:bit入門資料(2018/08/29)
yusk1450
0
270
IoT×人工知能による画像認識技術勉強会
yusk1450
0
90
Other Decks in Technology
See All in Technology
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
1.2k
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
180
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
530
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
130
AI前提のサービス運用ってなんだろう?
ryuichi1208
8
1.4k
Zennのパフォーマンスモニタリングでやっていること
ryosukeigarashi
0
120
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
複雑なState管理からの脱却
sansantech
PRO
1
150
強いチームと開発生産性
onk
PRO
35
11k
Lexical Analysis
shigashiyama
1
150
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
Featured
See All Featured
Music & Morning Musume
bryan
46
6.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Embracing the Ebb and Flow
colly
84
4.5k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Faster Mobile Websites
deanohume
305
30k
A Modern Web Designer's Workflow
chriscoyier
693
190k
For a Future-Friendly Web
brad_frost
175
9.4k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
2018.3.24
自己紹介 日本総合ビジネス専門学校 NIHON-CHUO Institution 2017.4- 合同会社4D Pocket 4D Pocket LLC.
2017.4- 石郷 祐介 ISHIGO Yusuke Programmer
自己紹介 使わなくなったiPhoneを玩具にするアプリ連動型ケース (株式会社アップアローズ)
自己紹介 スマートフォンをロボット化するアタッチメント (共同制作者:市野昌宏、古郡唯希)
自己紹介 ロボットアームのケーブル状態を監視するシステム (岐阜車体工業株式会社)
本日の流れ 1. ブロックチェーンについて ・「ビットコイン」との関係性について ・仕組みの解説(「ブロック」と「チェーン」について) ・応用事例の紹介 2. ビットコインを触ってみる 3. 「Ethereum」でプライベートな仮想通貨環境を作る
① Genesisブロックを作成し、gethを立ち上げる ② アカウントを作成する ③ マイニングしてみる ④ 送金してみる
Bitcoin(ビットコイン) 仮想通貨(暗号通貨)のひとつ 2009年、謎の人物「サトシ・ナカモト」によってネット上で発表された 論文「Bitcoin: A Peer-to-Peer Electronic Cash System」が元になって ブロックチェーンと共に開発された
特徴 ・銀行が必要ない(取引の迅速化、倒産の心配がない、手数料が安い) ・2018年3月時点で、最も流通している仮想通貨 ・単位はBTC(最小単位は0.00000001BTC=1satoshi) ・最大通貨流通高が2,100万BTC(2140年頃までかかると言われている)
通貨 通貨の価値 = どれだけの人がその通貨を使いたがっているか = 通貨の信頼性 ビットコインの相場 http://ビットコイン相場.com 通貨の流通量は、国の中央銀行が決める
ビットコインは、アルゴリズムによって決められる(最大2,100万BTC) 一般通貨 → 国 信頼性の担保 ビットコイン → アルゴリズム そもそも通貨は仮想のもの
ブロックチェーン ① ビットコインの取引は、「ブロックチェーン」という台帳に記録される ブロックチェーンは、参加しているすべてのユーザが保存する 全員のデータが消失しない限り、取引データが失われることはない ブロックチェーン ブロックチェーン A C B
ブロックチェーン
ブロックチェーン ② ビットコインの取引は、「ブロックチェーン」という台帳に記録される A C B 取引は、すべてのユーザに送信(ブロードキャスト)される 受け取った取引データは、ブロックチェーンに保存される 全員のデータが消失しない限り、取引データが失われることはない 現在の取引データ→https://blockchain.info/ja/unconfirmed-transactions
ブロックチェーン ブロックチェーン ブロックチェーン
「ブロック」と「チェーン」 取引は、約4000個(1MB)まとめられてブロックという単位で保存される ブロック ブロック ブロック ブロック ブロックは、過去のブロックとチェーンのようにつながる チェーン 2009年のビットコイン取引開始以来、すべての取引が記録されている (2018年3月19日現在、514,170ブロック=130GB)
http://ビットコイン相場.com ブロックチェーンは「ブロック」と「チェーン」の性質を持つ
ブロックの仕組み ブロック ブロック ブロック ・取引データ(約4000取引分) ・自分のひとつ前のブロックの要約データ=ハッシュ値(ナンス) ブロックには下記のデータが含まれる
チェーンの仕組み ① ブロック ブロック ブロック ブロックをつなげる = 取引が正しく行われたかの承認 2. 特定条件に合うように、ひとつ前のブロックの要約(ハッシュ値)を作る
000000000000000000475ca8f14b66fb7896331492839667e19d46580c0b900c ハッシュ値の例: 特定条件=先頭に18個「0」が続く要約の計算式を見つける(プルーフ・オブ・ワーク) 1. 過去の取引に遡って、取引が成立しているか確認する ハッシュ化:データを一定の長さの文字列に変換(要約)する技術 データ 文字列(ea703e7aa…)=ハッシュ値
チェーンの仕組み ② ブロック ブロック ブロック 特定条件(先頭に「0」が18個)は、あえて難しくしている 特定のブロックを書き換えると、前後のブロックのハッシュ値の整合性 が保てなくなる 自分の後ろにブロックがつながればつながるほど、セキュア(安全)になる すべてのブロックのハッシュ値を書き換えるのは、計算量的に不可能に近い
見つける作業には膨大な計算量が必要 → 世界中のPCがハッシュ値を探す作業をしている(約10分間隔で見つかる) https://blockchain.info/ja/block-index/473307
チェーンの仕組み ③ ブロック ブロック ブロック デメリット 取引が成立するのに時間がかかる。ブロックの接続(承認)は約10分間隔。 自分の後に6個のブロック(6回承認)があると信頼性が担保されると言われる。 (未承認の取引→https://blockchain.info/ja/unconfirmed-transactions) 約10分間に処理できる取引数=約4000件
例:Visaカードは約56,000件/秒なので、10分間で約3,360万件 処理速度は、クレジットカードの約0.011%以下 ビットコインにおけるブロックサイズの拡大は、中国ユーザの反対により 実現していない
ブロックチェーンの弱点 マイナー全体の計算リソースの51%を、一部の人間が手に入れると ブロックチェーンの安全性は崩壊する 51%攻撃
ブロックチェーン≠分散データベース CRUD(データベースの基本機能)は苦手 ブロックチェーン=分散データベースではない! C …… 作成(Create) R …… 検索(Read) U
…… 更新(Update) D …… 削除(Delete) 安全な取引のために、取引履歴を保管しておくための技術 集中管理せずに、安全な取引を行いたい場合のソリューションに向いている スマート・コントラクト ブロックチェーン等を使い、安全な取引を実現したサービスのこと
ブロックチェーンの活用事例 ① カルテ共有システム カルテをブロックチェーンで管理して各病院で共有する(サーバレス)
ブロックチェーンの活用事例 ② 著作権管理システム 著作物を使用した履歴を管理して、仮想通貨で払うことができる
ブロックチェーンの活用事例 ③ 地域通貨(さるぼぼコイン、岐阜県高山市) お金の地産地消を目指す
本日の流れ 1. ブロックチェーンについて ・「ビットコイン」との関係性について ・仕組みの解説(「ブロック」と「チェーン」について) ・応用事例の紹介 2. ビットコインを触ってみる 3. 「Ethereum」でプライベートな仮想通貨環境を作る
① Genesisブロックを作成し、gethを立ち上げる ② アカウントを作成する ③ マイニングしてみる ④ 送金してみる
ビットコインを手に入れる方法 1.購入、譲渡 2.採掘(マイニング) 取引所から購入する、誰かからもらう マイニングツールを使って、ビットコインを生成する 採掘とは、「ハッシュ値を探す(ブロック承認)作業」のこと! ハッシュ値を作る作業をやってもらう代わりに、ハッシュ値を見つけた人には 報酬(新規発行+取引手数料)としてビットコインが与えられる ハッシュ関数を試す速度=◯◯H/s
採掘(マイニング)時の新規発行ビットコイン量 採掘時の新規発行ビットコイン量は、徐々に減っていく(半減期) 参考:https://blockchain.info/
採掘(マイニング)時の取引手数料 取引手数料は毎年増加している
MinerGate(マイナーゲート) ビットコインを採掘するアプリ https://minergate.com/
AltCoin(アルトコイン) AltCoin(Alternative coin=代わりのコイン) 基本的な仕組みはビットコインと同じ AltCoinの時価総額→https://coinmarketcap.com/
本日の流れ 1. ブロックチェーンについて ・「ビットコイン」との関係性について ・仕組みの解説(「ブロック」と「チェーン」について) ・応用事例の紹介 2. ビットコインを触ってみる 3. 「Ethereum」でプライベートな仮想通貨環境を作る
① Genesisブロックを作成し、gethを立ち上げる ② アカウントを作成する ③ マイニングしてみる ④ 送金してみる
Ethereum(イーサリアム) ブロックチェーンを通貨以外にも活用するためのプラットフォーム 仮想通貨としても流通している(通貨単位は「ether」) geth(ゲス) Go言語で実装されたEthereumクライアント
Genesisブロック ブロックチェーンの起点となる最初のブロック ビットコインの「Genesisブロック」に埋め込まれている文字 「The Times 03/Jan/2009 Chancellor on brink of
second bailout for banks」 「イギリス財務大臣が、銀行へ二度目の救済措置(公的資金注入)を決めようとしている (2009/01/03 タイムズ紙)」 サトシ・ナカモトの銀行への不信感ともとれるメッセージ
None