EVENT REPORTイベントレポート

ヒカラボレポートとは、開催されたヒカラボにおいて、登壇者が伝えたい講演内容を記事としてまとめたものです。ご参加された方はもちろん、ヒカラボに興味があるという方も是非ご覧ください。

イベントレポートvol.52

仮想通貨取引所を可能にする技術 by ビットバンク株式会社

2018/02/28(水)更新2018/02/06(火)19:30~21:30

  • このエントリーをはてなブックマークに追加

2018年2月6日のヒカ☆ラボでは『ビットコインを全てのひとに!』をスローガンとする仮想通貨専業企業、ビットバンク株式会社から3名の方にご登壇頂きました。

ビットコインのバックエンドに使用されている技術や、APIボットを利用した仮想通貨取引のノウハウ、仮想通貨に関連する次世代の技術「Lightning Network」など、さまざまな角度からエンジニアと仮想通貨に関するお話がありましたので、レポートにて概要をお送りします。

講演者プロフィール

松本 洸 氏
Webアプリケーション開発の全般を守備範囲とするNode.jsエンジニア。
仮想通貨の将来的な価値と技術的な面白さに惹かれビットバンクに入社。
とりわけWebフロントエンド技術が好きで特にAnguler周辺技術がお気に入り。

講演者プロフィール

脇本 佑磨 氏
組み込み、スマホアプリ、Web、インフラと幅広い開発経験を持つ。
テレビに写りたいがためにビットコインミートアップに参加したのが暗号通貨に興味を持ったきっかけ。

講演者プロフィール

ジョナサン アンダーウッド 氏
ブロックチェーン大学校株式会社 学長 兼 代表取締役を務めているアメリカ出身のビットコイン研究者。
多数のオープンソースのビットコインウォレットプロジェクトにも参加しており、いくつかのビットコインのスタンダードを決めるBIP(Bitcoin ImprovementProposals)の作成にも参加。国内初のブロックチェーン専門書「ブロックチェーンの衝撃(日経BP)」2-3「ビットコインの最新技術」著者。

bitbankフロントエンド開発と取り組みについて

最初はフロントエンドエンジニアの松本氏から、bitbankのフロントエンド開発と取り組んでいることについてお話がありました。
使用しているフロントエンドの技術は大きく分けて3つだそうです。

・ファイル配信、インフラ周り:AWS S3 & CloudFront
・アプリケーションフレームワーク/開発言語:Angular / TypeScript
・リアルタイム通信:RxJS , PubNub , Socket.io

ビットバンクの信念には「ユーザーにできるだけ速くファイルを届ける」というものがあり、その信念に則ってに技術を選んでいるとのこと。

▲端末ごとの配信にはLambda@Edgeが有効

▲bitbank.ccではほぼ100%TypeScript / Anglar を使用

使用する言語やフレームワークは安全性と堅牢性を重視しているようです。Anglarはサードパーティーのライブラリに依存することが少なく、必要なものはAnglar自体が用意してくれるため、開発の拡大に伴い、フレームワークに左右されない開発ができるのがメリットであるといいます。

開発の課題としては、エンジニア間のAnglarの知見の差が挙げられるとのこと。その課題を解決するために、業務内に勉強会を行ったり、気軽に技術について質問できるチームづくりをしたりしているそうです。

 

仮想通貨のアービトラージでお寿司を食べた話

次にサーバーサイドエンジニアの脇本氏のアービトラージの実体験についてお話がありました。

アービトラージ(裁定取引)とは、同じ銘柄のコインを複数の取引所で購入し、安いところで買う・高いところで売るという価格差を利用し利益を出すことです。

脇本氏はこの取引をbotに行わせ、細かい利益を積み重ねていく、という試みをしたそうです。botはnodeで書かれており、公開もされています。

最初は「少しでも価格差があれば取引をする」というロジックを組んでいたため、手数料が価格差を上回り、損をしていたとのこと。途中からロジックを組み直したところ、日本円で535円の利益を出し、無事お寿司を食べに行けたそうです。

今後の課題として、もっと状況をリアルタイムに確認したい、複数の通貨ペアを扱えるようにしたいという反省点も残ったと締めくくりました。

仮想通貨での取引はあくまで自己責任であるとしつつ、このような利用の仕方もあるということを具体的にイメージできる講演でした。

 

IoTとFintechを繋ぐLightning Networkの実践

最後に、ビットコインに関する次世代の技術として、ジョナサン氏から「Lightning Network」の研究と実践の共有が行われました。

客観的に所有権と身分の検証ができるという点で、IoTとブロックチェーンは相性が良いといいます。しかし、最大の課題としてレイテンシーがあり、それを少しでもなくそうとすることに注目が集まっているそうです。

ブロックチェーンは二重支払いを防ぐ仕組みとして作られましたが、ブロック(合意形成アルゴリズム)を通るまでまでは、「なんちゃって二重支払い」ができてしまうという問題があります。

そこで、全世界にブロックを通すよりも、個人間(ここではAさんとBさん)で通信を通すことはできないのか?という発想から生まれたのがペイメントチャンネルとのこと。

ペイメントチャンネルとは、ブロックチェーンを経由せず、まずはAさんとBさんの二者間のみで取引を行い、後から取引をブロックチェーンに記載するという方法です。これならレイテンシーの問題が緩和できます。

しかし、ペイメントチャンネルだけではチャンネルの開閉時に都度ブロックチェーンの手数料がかかってしまうという問題も発生。そこでチャンネルの開閉をなるべく減らす術としてHTLC(Hash Time Locked Contraact)という仕組みがあるそうです。

このように、世界中の個人と取引することによって、ブロックチェーンのレイテンシーを解決できるのでは?と想定されているのが現在の状況だそうです。

このあと、Dockerを利用したワークも行われ、参加者も実際に手を動かしてペイメントチャンネルの最新技術に触れることができました。ワーク中は質問も飛び交い、かなり実践的な内容となりました。

ビットコインに関わる技術についてもっと詳しく知りたいという方は、下記のスライドを確認してみてください。

 

登壇者資料

bitbankフロントエンド開発について

アービトラージで寿司食べた話

IoTとFintechを繋ぐLightning Networkの実践

  • このエントリーをはてなブックマークに追加
  • 正社員求人・転職支援はこちら
  • 年収800万円以上の転職を目指す エキスパートのハイクラス転職 エンジニア・クリエイター専門 レバテックエキスパート