勉強始めて2週間の僕がブロックチェーンのハッカソンで優勝できたワケ
はじめに
今回は、ハッカソンを主催してくださった、Yenomの皆様、 スポンサーのbitcoin.com様、会場提供のNeutrino様、審査員のおびさん、ありがとうございました。
この記事を読む前に持ち帰って欲しいこと3つ
・Ethereumではなく、BitcoinでもDAppsは作れる
・BitcoinでDAppsを作れる人は日本に300人も居ない(僕調べ)
・ブロックチェーンを勉強し始めて2週間のWebのエンジニアでも、BitcoinでDAppsは作れる
目次
・TokyoBitcoinHackathonとは?
・何を作ったの?
・デモ動画
・Bitcoinスクリプトの説明
・2日でDAppsを作れるようになったヒミツ
・優勝できたワケ
・感想
・まとめ
TokyoBitcoinHackathonとは?
Bitcoinをテーマにしたエンジニア向けのハッカソンです!!
「Bitcoinでコントラクトが書けるなんて知らなかった!」
「もっとBitcoinを勉強したい!プロダクトを作ってみたい!!」と、
大好評を頂いたBitcoin Hackathonが、第2回を実施します!!
今回はなんと、 「モバイルだけでなく、WebでもなんでもOK」 です!
(公式のconnpassより)
Bitcoinを使ったプロダクトを考えるハッカソンです。
コントラクトが書けるのは、 Ethereumだけだと思っていたのですが、 Bitcoinでも書けるんです! 皆様知ってましたか?
このハッカソンの存在をこの↓ツイートで知り
勢いで参加ボタンを押しましたw勢い大事!
何を作ったの?
僕たちは、「YouTuberが生放送中にクイズを出して、そのクイズの答えをYouTubeのコメントで答えると賞金としてBitcoinが貰えるプロダクト」を作りました。
具体的に説明していきます。
背景
YouTuberなどがよくチャンネル登録者を増やすために、キャンペーンをやったりします。
ですが、次のような問題があると思います。
問題1「本当にそんな豪華なプレゼントは存在するのか?」
問題2「本当にプレゼントを受け取っている人は存在するのか?」
それらの問題を解決するために、僕たちは次のような解決策を考えました。
問題1の解決策
YouTuberがキャンペーンをする前に、
あらかじめデポジットとして、僕たちのウォレットにBitcoinで入金する。
そうするとそのデポジットは、ブロックチェーンに刻まれるので
「プレゼントが本当に存在する」という証拠が残ります。
そして、
「全ての応募者はそのプレゼントを応募する前に見ること」ができます!
なぜなら、ブロックチェーンは全員に公開されているデータベースなので、誰でも見ることができます。
問題2の解決策
応募するときに、応募者全員分のトランザクションの作成を試みます。
そのトランザクション内で、
Bitcoinのスクリプトが動き、問題の答えが合っているか確認し、正解していた人にだけに送られます。
これもブロックチェーンに証拠として刻まれるので、
応募者全員が見ることができます。
ちゃんと、送信されているという証拠は残ります。
デモの動画です
Bitcoinスクリプトの説明
Bitcoinスクリプトを知っている日本人が本当にいないと思うので、これを説明して「なるほど」ってなるのかよくわからないですが、頑張って説明します。
まず、YouTuberから受け取ったBitcoinにスクリプトを埋め込んで、ブロードキャストします。
YouTuberからは、普通にP2PKHで受け取っていると思うので、スクリプトを埋め込んでP2SHでトランザクションを作成します。
具体的なOPECODEを説明していきます。
OPECODEはこちらで、参照できます。
OP_HASH160 でハッシュをかけれます。
stringHashというのは、クイズの答えをハッシュにかけたものです。
OP_EQUAL でハッシュ同士を比較することで、
答えが合っているか確認します。
まず、このスクリプトをBitcoinに埋め込みます。
次に、コメントした人がクイズの正解と合っているかを、ブロックチェーン上でチェックします。
僕らのサービスからユーザに向けたトランザクションを作ります。
それには、ユーザのクイズの答えを入れます。
その答えがハッシュ化されて、答えのハッシュと比較されて、答えの検証が行われます。
答えが正しかった場合のみ送金が行われます。
2日でDAppsを作れるようになったヒミツ
・超わかりやすい資料
・Yenomのメンターの方々の超最高なバックアップ
ハッカソンの内容に、Bitcoinスクリプトのハンズオンがありました。
そこで、「スタックマシン」や「Bitcoinのオペコード」の超わかりやすい講座がありました。講師はYenomのShun Usamiさんです!
この資料はBitcoinのスクリプトを書くにあたって世界で一番優れた資料です。永久保存版です!今すぐブックマークしておきましょう!
(こんなにわかりやすい初学者向けのわかりやすい資料は英語でもないはず!)
この資料が素晴らしいのもあるのですが、
Yenomの素晴らしいエンジニアの方々にいつでも質問できた
のもかなりデカいです!(Yenomの方々↓)
本当にありがとうございました!!!
今後の展望
・YouTubeだけだったけど、TwitterのRTキャンペーンの不正も暴ける
・身内を当選者にする可能性
・中間者攻撃に弱い
優勝できたワケ
僕らのチームの発表が一番最初で発表が終わった後、
他のチームのスクリプトのすごさやアイデアの良さに絶望していました。
優勝できたのは正直運だと思いますが、審査を聞いてみるとで評価されたのは以下のポイントでした。
・クイズに正解した瞬間に送金されるのはブロックチェーンの面白いところ
・YouTubeという大きなマーケットに目をつけていた
・実際のユースケースが簡単に想像できた
メンバーの方にVTuberなりきりセットを持ってる方がいて、
その辺のパワーも感じましたw
感想&優勝ツイート
まとめ
今回はざっくりとですが、以下の点について書きました。
・TokyoBitcoinHackathonとは?
・何を作ったの?
・デモ動画
・Bitcoinスクリプトの説明
・2日でDAppsを作れるようになったヒミツ
・優勝できたワケ
・感想
EthereumでしかDApps作れないと思っていたのでEthereum信者でしたが、Bitcoin Cash信者として生きてます。
今後は、独立してブロックチェーンエンジニアとして活躍していくつもりなので、フォローやDM等お気軽にお願いします!
シェアしていただけるだけでも励みになります!