Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

2017.04.22 JAWS-UG福岡:Reboot#4 AWSでゴールドラッシュ!?

768 views

Published on

AWSのF1インスタンスを使えばマイニングできるかもしれない?

Published in: Engineering
  • Be the first to comment

2017.04.22 JAWS-UG福岡:Reboot#4 AWSでゴールドラッシュ!?

  1. 1. Copyright ©2017 HAW International Inc. all rights reserved. JAWS-UG福岡:Reboot#4 AWSでゴールドラッシュ!? 2017/04/22 株式会社ハウインターナショナル 安土茂亨
  2. 2. Copyright ©2017 HAW International Inc. all rights reserved. 安土 茂亨(Azuchi Shigeyuki) 株式会社ハウインターナショナル •Blockchainの研究開発 ‣カラードコインの電子投票などへの応用 ‣Open Assets Protocolの実装の一つである openassets-rubyを独自開発しGithubで公開 ‣オフチェーンを利用したペイメントチャネルライブラリの開発 •製品・サービス開発 ‣Congrechain ‣ブロックチェーン実証環境Chaintope ‣Open Assets Explorer
  3. 3. Copyright ©2017 HAW International Inc. all rights reserved. ゴールドラッシュ ● 1848年1月24日、ジェームズ・ウィルソン・マーシャルがカリフォルニア州 コロマのサッターズミルで金を発見(発見当時はまだメキシコの一部) ● 全米や海外から30万人がカリフォルニアに集まる ● 金探鉱技術も進化し、個人→会社組織が主流に ● 人口200人だったサンフランシスコの町が 1852年には人口36000人に 1850年にはカリフォルニアがアメリカの31番目の州に ● シリコンバレーで第2のゴールドラッシュ
  4. 4. Copyright ©2017 HAW International Inc. all rights reserved. 現在のゴールドラッシュ AWSで  を掘ろう! 金の採掘から仮想通貨の採掘に
  5. 5. Copyright ©2017 HAW International Inc. all rights reserved. 金の掘り方
  6. 6. Copyright ©2017 HAW International Inc. all rights reserved. 暗号学的ハッシュ関数 任意のデータ長を入力として、固定長のダイジェスト(ハッシュ値)を生成する関数 ● 一方向関数で、ハッシュ値から元の入力は事実上計算できない ● 同じ入力からは必ず同じハッシュ値が生成される ● 同じハッシュ値を持つ異なる2つの入力を事実上求めることができない SHA-256の場合 入力データ chunk(64byte) chunk(64byte) chunk(64byte) chunk(64byte)… 初期ハッシュ ハッシュ1 ハッシュ2 ハッシュ3 ハッシュ値 計算 処理 計算 処理 計算 処理 計算 処理 計算 処理 ● メッセージ拡張関数 ● 圧縮関数
  7. 7. Copyright ©2017 HAW International Inc. all rights reserved. マイニングで行われるハッシュ計算 ブロックヘッダ バージョン 前のブロックのハッシュ マークルルート ブロックの生成時刻 difficulty(bits) Nonce ハッシュ関数 SHA-256 ハッシュ関数 SHA-256 ハッシュ関数 SHA-256 ハッシュ関数 SHA-256 マイニングとは、ある条件を満たすハッシュを生成する競争 nonceを変更しながら目的のハッシュを探す 224af678b863d82be0b0c96a9bd70c163b6b01364d83a294ea170d0228283f 0b 0058e6e5cce86e75c382f288a42d68789d2a7f4ab8c0855af922fd29028c30 68 00000000000ba3c88113c21513b163442c8fc15d365cd8f321cdbd9a3992c4 35 000000000000000000ca3943e12f302f09af03eb38c456289260b269104c51a d 生成したハッシュがdifficultyで指定された ターゲットより小さい値であればマイニング成功!! 報酬は12.5BTC(現在170万弱くらい)
  8. 8. Copyright ©2017 HAW International Inc. all rights reserved. 加熱するハッシュ計算競争 現在のハッシュレート =3,909,321 TH/s (秒間390京9321兆回のハッシュ計算能力) このスケールのハッシュ計算では↓がネックに ● ハッシュ計算のスピード ● ハッシュ計算に伴う電気料金   電気代の安い場所(中国とか)が有利
  9. 9. Copyright ©2017 HAW International Inc. all rights reserved. 集積回路にハッシュ関数を実装 CPUやGPUを使った計算では勝負にならない ハッシュ計算を行う専用の集積回路(ASIC)を 利用したマイングが主流 マイニングもソロで行うのではなく、 大勢のマイナーが協力してマイニングを行 う プールマイニングが主流 Pool Server Mining Node Mining Node Mining Node Mining Node Mining Node Mining Node … Block Template nonce等を除外した ブロックテンプレートが配布され 各ノードでハッシュ計算
  10. 10. Copyright ©2017 HAW International Inc. all rights reserved. ハッシュ関数の特性に注目したAsicBoost chunk(64byte) chunk(64byte) 初期ハッシュ ハッシュ1 ハッシュ値 計算 処理 計算 処理 ブロックヘッダ(80byte) 計算量 計算 処理 計算 処理 ● メッセージ拡張関数 ● 圧縮関数 ● メッセージ拡張関数 ● 圧縮関数 chunk(64byte) chunk(64byte) 初期ハッシュ ハッシュ1 ハッシュ値 計算 処理 計算 処理 ブロックヘッダ(80byte) 計算量 計算 処理 計算 処理 ● メッセージ拡張関数 ● 圧縮関数 ● メッセージ拡張関数 ● 圧縮関数 処理性能  2,3割向上 ループ処理中の一部のchunkを 固定化することで、計算量を1/4削減 ※ 図は簡略化して書いてあるので実際の仕組みとは異なります。
  11. 11. Copyright ©2017 HAW International Inc. all rights reserved. スケールに応じた計算量の最適化 アルゴリズムや組み合わせ次第では マイニングのパフォーマンス向上が可能 & 初期投資なくハッシュ関数を ハードウェア実装するには?
  12. 12. Copyright ©2017 HAW International Inc. all rights reserved. ● FPGAボードの仕様 ○ Xilinx UltraScale+ VU9P(16 nm製造プロセス) ○ 288bit幅のバスをもった64 GiBのECC機能付きメモリを搭載 ○ CPUへの専有PCIe x16インターフェースをサポート ○ 約2.5億のロジックエレメント ○ 約6,800のDigital Signal Processing (DSP) エンジン ○ デバッグ用仮想JTAGインターフェース ● インスタンススペック ● 課金体系 F1のコンピューティング性能に対しての時間課金のみ FPGA Developer AMI や HDKは無料で利用可能 F1インスタンス プログラマブルなハードウェア FPGAボードを 搭載したEC2 インスタンスF1 インスタンス FPGAボード vCPU メモリ ストレージ(SSD) 料金 f1.2xlarge 1 8 122 480 $1.65 / 時間 f1.16xlarge 8 64 976 960×4 $13.2 / 時間
  13. 13. Copyright ©2017 HAW International Inc. all rights reserved. 2017.04.19 US-Eastに登場 New! ● EC2 F1 Instances with FPGAs – Now Generally Available CentOS上にFPGAの開発ツールが インストールされた開発用AMIが登場 ● HDKとSDKもリリース https://github.com/aws/aws-fpga
  14. 14. Copyright ©2017 HAW International Inc. all rights reserved. デプロイまでの流れ 1. 開発環境が一式入ったFPGA Developer AMIを使って 開発用インスタンスを起動 2. HDK使ってFPGAコードを書く 3. コンパイルしたコードをAmazon FPGA Image(AFI) として登録 4. AFIをF1インスタンスにアタッチして実行! AFIをマーケットプレイスで販売することも可能!
  15. 15. Copyright ©2017 HAW International Inc. all rights reserved. F1インスタンスでゴールドラッシュ (注1) 消費電力や処理速度では ASICが有利です。 (注2) F1の利用料金と比較してペイできるかどうかは分かりません。 F1 SHA-256 SHA-256 SHA-256 F1 SHA-256 SHA-256 SHA-256 F1 SHA-256 SHA-256 SHA-256 F1 SHA-256 SHA-256 SHA-256 ボタン1つでFPGAクラスタが稼働してマイニング Gold Rushな るか?

×