ビットコインとか勉強会#20に行ってきた、スーパー雑メモ

By @afroscript7/30/2018bitcoin

ビットコイン勉強会に初参加してきたので、超簡易的な雑メモを:)

イベントページはこちら

発表その1:ビットコインの基本的な仕組み

発表者

資料はこちら

https://goo.gl/53xaV7

※途中参加のため、こちらのメモは割愛。資料がとても詳しく書いてあるので、ぜひ資料を!

発表その2:BitCoinとBitCashの違い

発表者

村井洋介さん@pokari_dz

アジェンダ

BitCoinとBitCoinCashの違い
BitCoinCashの各実装の違い
BitCoinCashの今後

BitCoinとBitCoinCashの違い

ブロックサイズの違い

  • BitCoinCashは、BitCoinからハードフォークしてうまれた
  • 何が違うか?
    • スケーラビリティ問題への対応
    • 10分間で承認される量が決まってる
    • トランザクションが増えたら承認されない
  • どうやって解決するのか?
    • ブロックサイズを大きくする
      • BitCoinCashはこれ。1GB→32GBにした。
    • ブロクチェーン上のトランザクションを小さくすることで解決
    • Segwit
    • ライトニングネットワーク
      • オフチェーン上で様々な人同士が一定期間取引を行い、結果のみをブロックチェーンに記録

アドレス形式の違い

  • BitCoinは
    • legacy
      -1から始まる
    • Bech32
      • 3から始まる
    • p2sh-segwit
      • 3から始まる
  • BitCoinCash
    • 元はlegacy
    • 今はCashAddr
      • ビットコインのアドレスと見分けがつきやすいように導入された
      • bitcoincash:qから始まる

難易度調整アルゴリズムの違い

  • BitCoin
    • 難易度調整アルゴリズムNDA(NormalDifficultyAdjustment)
  • Bitcoincash
    • EDA→DAAに変更された
    • EDA
      • EmergencyDifficulltyAdjustment
      • ビットコインからハードフォークする際、ハッシュレートの急激な低下に備えて実装された難易度調整方式
      • 難易度が急激に下がるときのみマイニングする人が増えてきて、ハッシュレートが不安定になり、安定してブロックが生成されないという問題が発生
    • DAA
      • Dificulty Adjustment Algorithmの略

RBF実装の有無

  • BitCoinはRBF実装あり
    • ネットワーク混雑時などで、未承認トランザクションがある場合に、より高い手数料でトランザクションを再作成することで、詰まったトランザクションを救出できる
  • BitcoinCashはRBF実装なし
    • オンチェーン上でスピーディーに決済されることを目指しているため、ゼロ確認ペイメントができなくなるおそれのあるRBFは実装しない

BitCoinCashの各実装の違い

BitcoinCashのクライアント

  • Bitcoin ABCが63%
  • Bitcoin Unlimitedが34%

Bitcoin ABC

-デフォルトのブロックサイズ32MB

  • (説明聞き逃した。。。)

Bitcoin Unlimited

  • デフォルトは32MB
  • AceptDepth(AD)を設定できる
  • EBとAD
    • EB:ExcessiveBlockSizeの略で過大と判断するブロック
    • AD:(ちょっと文字じゃ説明しづらいorz)

BitCoinXT

  • 32MB
  • ブロックサイズを変更するコマンドは存在しないが、マイナーによる投票により、自動生成される
  • 75%以上のマイナーがブロックサイズ拡張に投票した場合、大きい投票順に並べた時の75%目(100人いれば、75番目)をブロックサイズとして適用される
  • ブロックサイズ縮小に投票された場合は、小さい順に並べて75%目

BitcoinCashの今後

  • テラバイトブロックは、毎秒700万トランザクション処理を可能とすしたい
  • Graphene
    • ブロックの伝搬速度をあげるためのプロトコル
    • ブロックを伝搬する際、全てのトランザクションデータを送るのではなく、マイナー間のメモリプールの差分のみ伝えることでブロックの同期が可能である
  • BitcoinUnlimitedで開発中(2018/7/17現在)

UTXOコミットメント

  • ずべてのロチ匹履歴を同期してUTXOを算出するのではなく、直接UTXOを受け取れるようにすることですばやくフルノードとして動かせるようにする
  • BitcoinABCで開発中(2018/7/17現在)

二重支出アラート

  • 競合するトランザクションを見つけた場合にアラートを出す

OP_GROUPによるトークン発行

バイナリコントラクトとOP_SIGDATAVERIFYによるオラクル検証

8

comments