こんばんは、大竹亮です。
今日は、ビットコインとか勉強会#3に参加して来たので、自分の備忘録を含めておさらいをしておきます。

いや〜、ビットコインなど暗号通貨をちょっと使い始めたとはいえ、その仕組みも大雑把にしか理解していなかったので、完全にエンジニア向けな今回の勉強会に参加して、挫折したというか色々刺激を受けました。

僕は普段は IT インフラエンジニアとして働いて、ネットワークのプロトコルだとかデータセンタのインフラについてはそれなりに知識があるんですが、プログラミングは最近ようやく学生以来また始めようとしている段階で、実際にコードを書いて取引するといった今回の話は概要は理解できるんですが、中身の話になるとチンプンカンプンでした。
でも、悔しかったので暗号通貨については詳しくなってやる!という意欲も湧いて来ましたね。この気持ちが続く限りやってやりますよ。
さて、今回の勉強会の内容ですが、主に2つでした。
1つは暗号通貨の取引所経由で自動取引をするというもの、もう1つはビットコインのトランザクションを実際に自分で作ってみようというもの。
どちらも初心者向けの内容でしたが、すぐに作れと言われてもそれなりに時間がかかりそうです。しばらくの間、僕の課題になりそうです。

まず自動取引の方ですが、各取引所が公開している API を使って自動売買プログラムを書こうというものでした。
講師の方が言っていたポイントとしては、各取引所で価格や取引量の有効数字の桁が決まっているので、そこをしっかり理解した上で作ろうということと、ライブラリを公開している取引所もあるので、ライブラリがあって且つ自分が得意な言語で書かれている所を選ぶのが良いということでした。
僕はとりあえずビットガールズなどでも愛用している Zaif でまずは作ってみようかと。ライブラリを見ると使ったことない言語ばかりですね… 最近勉強しようと思っている JavaScript でも使おうかと思います。
公開資料はこちらです。
 


そしてトランザクションの作成ですが、こちらはビットコインのトランザクションを理解するというのが趣旨としてある気がしました。
すでに作成されている C# で書かれたプログラムでトランザクションを行なって、broadcast するというものでした。(broadcast とか聞くと安心しますね笑)
実際のビットコインの取引をいきなりやってしまうのは色々と危険なので、テスト用の取引のやり方が紹介されていました。
トランザクションをテストするためのツール Bitcoin testnet faucet というのが一般名としてあるようです。以下はその一例です。困ったらこのサイトを使う予定です。
そして、トランザクションを broadcast するためのツールもあります。今回使っていたのがこのサイト。

そして最後に、「宿題」が用意されていました。ウォレット作成・トランザクションの理解にはこれをやれば良さそうです。
  1. 自分のアドレスを2番目のアウトプットに設定して、トランザクションを生成してブロードキャストしてみましょう。
  2. もう1つ uTXO を持ったアドレスを作成し、その2つのアドレスからビットコインを誰かに送ってみましょう。
  3. OP_RETURN というプロトコルに HelloWorld という文字を入れてみましょう。
宿題とか言われたのは久々でした。頑張ります。。

こちらの公開資料は以下です。
 


--------------------------------------------------------------------
このブログでは、試験的にブログ運営 (の一部) をビットコインの寄付によって行うことを目指しています。
ビットコインを寄付いただけた方にバーガー好きの証明書 BURGERLOVER (Counterparty token) をプレゼントしています。以下のボタンから寄付いただけます。より一層皆さんに役立つ情報をお届けできるようにして参ります。