ライトニングネットワークの現状

ライトニングネットワークの現状
ライトニングネットワークのノードは、20191月から4月にかけて急速に成長しています。特に、Casaノードと呼ばれるハードウェアによってノードとしての活動を容易にしました。


CoinPicka Labでは、BitcoinやEthereum、時事情報に焦点を絞り毎週金曜日レポートを配信しています。

レポートを希望する

ライトニングネットワークの現状

ライトニングネットワークがメインネット上で稼働してから20ヶ月未満で、32,200チャネルが存在しており、4,800ノードがアクティブなチャネルを保有しており、総容量は860万ドル(約9.2億円)であることが確認できます。

ライトニングネットワークのノードは、20191月から4月にかけて急速に成長しています。特に、Casaノードと呼ばれるハードウェアによってノードとしての活動を容易にしました。ノード数の成長は、4月以降鈍化しているものの成長は続いています。一方、チャンネル数は2019317日の40,300をピークに20%減少しています。

また、ノードあたりの平均チャネル数も同様に減少しています。20193月末時点では、各ノードには平均10以上のチャンネルが存在していました。32%減少した後、現時点での各ノードには約6.8チャネルが確認できます。

ライトニングネットワークの現在のキャパシティは845BTC(約9.4億円)です。最大の増加が記録されたのは201811月初めで、わずか2週間で容量が300%増加しました。それほど急激ではないにしても、同様の成長が20193月下旬に記録され、その時は容量が2週間で45%増加しました。ATH容量(BTCの観点から)は、5月初めに1,100BTCを超えておりましたが、その後25%減少しています。米ドル換算では、Bitcoinが上昇し始めたほぼ2ヶ月後にネットワークは1,230万ドル(約13億円)のATHに達しました。米ドル建ての生産能力はその後29%減少しました。

最大の単一エンティティであるLNBIGは、現在25のパブリックノードを持ち、合計513.7BTC(約5.7億円)の容量です。つまり、一方のパーティの25ノード(全ノードの0.5%)が、現在のネットワーク容量の約61%を制御しています。LNBIGノードを運営している人物や団体は20196月、ルーティング料金から「5,000–10,000 sats(約55110円)/日」や「月額最高20ドル(約2,161円)」を獲得しており、チャンネルの開設や閉鎖に1000ドル(約10万円)以上を使用したとのことです。

ライトニングネットワークに対する批判の1つとして、それがいくつかの大きなノードへの集中化につながり、決済ハブとして構築されてしまうというものです。しかし、ノードの分散性は高まっています。20186月には、最大の10ノードがネットワーク容量の53%を占めていました。20191月には38%でしたが、現在は約32%でした。しかし、大規模ノードへの依存は依然として明らかであり、容量は依然として非常に低いため、1つの当事者の参入によってかなり容易に影響を受ける可能性があります。

チャネル当たりの平均容量は、20193月下旬以降0.027BTC(約3万円)で停滞しています。ただし、米ドルベースでは、チャネルあたりの容量は緩やかに増加しています。ライトニングネットワークを評価する際には、ソフトウェアがまだベータ版であることに注意してください。最近のオープンチャネル数と容量の減少は、現在の低料金環境とBitcoin保有者がBitcoinを使いたがらないことが原因である可能性が高いといえます。

もしオンチェーン料金が上昇すれば、LNはもっと早く成長する可能性があり、2年近くストレステストの結果としては、成功しているといえます。しかし、まだ多くのことが明らかになっていません。

 

CoinPicks Lab

レポートを希望する

ビットコインの需要の高まり – THE BLOCK

ビットコインの需要の高まり
Grayscale Bitcoin TrustGBTC)の運用資産(AUM)は、10ヶ月ぶりの最高値の14.2億ドルに達しました。4月末までに、Grayscale(グレースケール)は225,638BTCを保有しており、Bitcoinの総循環供給量の約1.3%に該当します。


この記事はTHE BLOCKから送られてきたPDFを元に日本語訳しております。

Institutional demand for bitcoin appears to be increasing

THE BLOCK

Grayscale Bitcoin TrustGBTC)の運用資産(AUM)は、10ヶ月ぶりの最高値の14.2億ドルに達しました。4月末までに、Grayscale(グレースケール)は225,638BTCを保有しており、Bitcoinの総循環供給量の約1.3%に該当します。つまりGBTCBitcoin保有量は、4月に史上最高値を記録しました。これは機関投資家の需要が増加していることを示しています。

GBTCは、Bitcoinにのみ投資する14億ドルのクローズドエンド型ファンドであり、おそらく最も優れた指標と言えます。データは機関投資家の需要が増加していることを示しています。

GBTCに直接投資できるのは、適格認定投資家のみで、最低投資額は5万ドルとなっています。グレースケールによると、投資家の80%が直接的に投資可能となっており、2018年は機関投資家(66%)と一般投資家(14%)が投資をしました。

GBTCは投資家自身の名義で株式を所有する伝統的な投資手段を通じてBitcoinのエクスポージャーを得る機会となっています。Xapoはグレースケールに代わってBitcoinをコールドで保管しており、グレースケールは経費率2%を請求しています。

経費率請求による収益性は高く、The Blockの推計によると、グレースケールは過去三年間にGBTCから5200万ドルの手数料を徴収しました。2017年には1490万ドル、2018年には2730万ドルもの手数料を徴収しています。

Bitcoin1215日から135%上昇して9ヶ月ぶりの最高値を記録したことで、GBTCの価格も上昇しました。GBTCの価格は、2月初めから124%上昇し、628日に8ヶ月ぶりの高値をつけました。

GBTCの管理下にある資産、ここではファンドに保有されているすべてのビットコインの価値は、628日に10ヶ月で最高の142000万ドルに達しました。

4月末までに、グレイスケール社は225,638BTCを保有しており、これは流通している全供給量の約1.3%にあたります。

Bitcoin Trustの全ビットコイン保有比率は4月に過去最高に達しました。

Bitcoinの流入は4月に過去最高に達し、機関投資家の需要が高まっていることを示しています。実際、4月のBitcoinの流入(11,236BTC)は、それ以前の4ヶ月間とほぼ同じでした。

Bitcoinの流入額を米ドルに調整すると、4月にはグレイスケールの保有資産に5820万ドル近くが追加され、201712月の強気相場のピーク時には6080万ドル近くに達しました。

もう一つの興味深い指標は、GBTCの価格と純資産価値との関係です。

GBTCの株価は純資産価値よりも高く取引されるため、投資家はBitcoinを直接購入するよりもプレミアムを支払うことになります。これは、GBTCの価格が需要と供給によって決定され、大多数の投資家が 「物理的な」 Bitcoinではなく証券を所有することを好むためです。

GBTCプレミアムの増加は、GBTCに対する需要が増加していることを示しています。したがって、機関投資家の関心も高まっています。これまで、プレミアムは、20175月と20178月に100%を超えており、現在、プレミアムは40%近くに達しており、12月以降一貫して上昇しており、市場のセンチメントは変化しています。

同様の傾向は、GBTCの月間取引量を見ると、2018年初頭よりも5月の方がまだかなり低いものの、ここ数カ月は明らかに増加傾向にあることがわかります。

GBTCのデータを評価した結果、この数ヵ月で傾向が逆転したことが明らかになりました。同ファンドは現在、Bitcoin総流通量の約1.3%を保有しており、4月には過去最高の11,236BTCを記録しました。Bitcoinの流入額を米ドルに調整すると、4月には5820万ドル近くが追加されており、これは201712月の上昇相場のピーク時に追加された6080万ドルとほぼ同水準です。同様の傾向は出来高にも見られ、出来高も増加し始めています。

この記事はTHE BLOCKから送られてきたPDFを元に日本語訳しております。

メールアドレスで無料レポートを受け取る

Join Lab Now

暗号資産の分析概要と結果 – Bitcoin(BTC)

調査結果:BTCはスケーラビリティを引き換えに分散性とセキュリティを重視しており、全体的にインセンティブ設計が上手く機能している。また、証券の該当性も極めて低く、その他の暗号資産と比較してBTCは安全な投資対象と言える。


データ執筆日:2019年4月30日

データ更新日:未定

前提:本分析記事は、基本的に他の暗号通貨及びトークン(総称を暗号資産とする)または、その他の手段との比較であり、執筆者の個人の知識を元に記載したものである。記述はあくまで公平性を意識しており、分析対象に何らかの意図は存在していない。また、比較にあたって全てを網羅しているわけではない為、抜け漏れ等は当然存在しているとともに、指摘等いただければ随時更新していくものとする。

プロジェクトの概要

通貨(トークン)名

Bitcoin – BTC

選出理由

各種、暗号資産の指標となるべく基準点としてBitcoinを再調査。

概要

Bitcoinはサトシ・ナカモト(Satoshi Nakamoto)を名乗る人物によって投稿された論文に基づき、2009年に運用が開始。Bitcoinシステムによるトランザクション(取引記録・移転記録)は、Peer to Peer型(P2P)によって仲介者なしで直接的に行われる。トランザクションは、ネットワークに参加しているノード(監視者)及び取引承認者によって取引の正当性が検証され、ブロックチェーンと呼ばれる分散型公開元帳に記録される。これをマイニングと呼び、それに従事するものをマイナー(マイニング従事者)と呼ぶ。

マイニング従事者はトランザクションをブロックチェーンに記録することで、インセンティブとしてマイニング報酬を(BTC)を取得。そのインセンティブは、2019年4月30日現在で12.5BTC(1BTC = 587,083.44円)となっており、約10分に1度インセンティブを得る為に市場では承認者同士の市場競争が発生している。

このようにBitcoinシステムは、ユーザー及びマイニング従事者によって政府や中央銀行などの中央機関を介さず、P2Pネットワーク上で取引が行われるため、取引の仲介手数料が低く抑えられ、迅速に世界中のどこでもだれとでも貨幣取引を行うことを可能にしている。

トークン設計

通貨(トークン)概要

Bitcoinを表わす記号にはBTC、XBT、BitcoinSign.svgがある。補助単位としては、「mBTC(ミリ・ビットコイン)」、「µBTC(マイクロ・ビットコイン)」、「bits (ビット)」「satoshi(サトシ)」等が存在する。また最小単位は、1 satoshi = 0.00000001BTCである。

総発行量:21,000,000 BTC(2019年4月30日)

現在発行量:17,673,213枚(2019年4月30日)

通貨(トークン)用途

用途は「価値の保存、及び移転による価値交換」である。

Bitcoinは、デジタルゴールドとも呼ばれ数多く存在するその他の暗号資産と比較して、流動性が高く最も分散化された暗号資産である。価値の保存先として利用されるBTCは、ユーザーによってその価値は異なる。例えば、アルゼンチンやベネズエラのように自国通貨が不安定な国にとってはBTCの価格の方がより安定しており、中国のように国家の検閲が厳しい国にとってはBTCの方が価値の保存先として安全であると考える。

また、価値交換手段として利用されるBTCも、同様にユーザーによってその価値は異なる。例えば、日本に出稼ぎに来たフィリピン人が、やっとの思いで稼いだ200,000 円を母国の両親に送金するとしよう。セブン銀行では2,000 円の手数料が発生する。BTCの送金手数料は134.90 円(2019年4月22日)と93.2%も費用の削減が可能になる。

しかし、これらの事例は都合の良い部分のみを抜き出して用途としていることに留意する必要がある。過去のBTCの価格変動を見れば大半のユーザーにとっては大きすぎる価格変動であったり、過去の取引手数料を見ればセブン銀行を使用した送金の方が安価に済む場合もある。要するにBTCの「価値の保存、及び移転による価値交換」は世界のユーザーに与えられた、検閲のされない選択肢であるということだ。

価値の源泉

価値の源泉は以下の3つである。

以下の3つのうちどれがかけてもBTCの価値に影響を与える。

  1. 正の行動を誘発するコンセンサスアルゴリズム(Proof of Work)。
  2. プログラムによって定められた発行枚数(21,000,000 BTC)。
  3. コミュニティの多様性。

1.Bitcoinは、Proof of work(以下 PoWとする)と呼ばれるコンセンサスアルゴリズム(合意システム)を採用しており、ユーザー間取引や価値移転の正当性を確認及び承認してブロックチェーン上に記録する作業のことを言う。承認作業を行うマイナーのインセンティブは、約10分に1度のブロックリワード(報酬)である。インセンティブを得るために多大なコスト(電気代・人件費・ハード費等)を負担しており、承認作業に悪事を働きネットワークを攻撃するには相応のコストが必要になる(*1)。負の行動によって攻撃が失敗すると多大な損失が発生することから、正の行動が誘発されている。この正の行動を誘発する可能性の高さが価値の源泉の1つである。言い換えると非常に堅牢なネットワークが分散的に維持されていると言うことである。

*1 https://www.crypto51.app/

2.暗号資産の発行枚数や上限の有無は、発行者によって発行時に決められる。Bitcoinの場合、Satoshi Nakamotoが2009年に21,000,000 BTCとプログラム上で決定しており、変更にはハードフォークが必要となる。この限られた発行枚数がBitcoinの価値を決定している要因の1つである。現時点でのBitcoinの発行済み枚数は17,673,213 BTC(*2)であり、約10分に1度発行されるBitcoinは、2140年に全総数を発行し終える。発行プログラムは4年に1度半減期を迎え約10分に1度発行されるBitcoinの量が減少していく仕組みとなっている(現在の1ブロック12.5 BTC)。次回の半減期は2020年で1ブロックあたりの発行枚数は6.25 BTCとなる。この限られた発行枚数と半減期によって市場に投入されるBTCの量が減少する仕組み(マイニング従事者による売り圧の減少)が価値の源泉の1つである。

*2 https://www.blockchain.com/ja/charts/total-bitcoins

3.Bitcoinコミュニティは非常の多く存在しており、ほとんどの問題に対してトピックが作成され議論されている。全ての事に共通することとして、イノベーションがキャズムを超えマジョリティー層に浸透させるためにはコミュニティの厚さと多様性が非常に重要になってくる。その証拠に最も流動性の高いBitcoinのプログラムを完全にコピーして生まれた暗号資産は数多く存在するが、Bitcoinと肩を並べることはできていない。どれだけ完全に仕組みやプログラムをコピーしてもコミュニティーまでもコピーすることはできないからである。よってBitcoinのコミュニティーの厚さと多様性は価値の源泉の1つである。

所望の性質

Satoshi Nakamotoは、Bitcoinネットワークを正常に維持するインセンティブの源泉としてBTCをトークン設計に組み込んでいる。基本的にマイニング従事者はBTCを取得するために健全な承認作業を行い、大口保有者は自身が保有するBTCの価値を希釈化させないためにネットワークに貢献するインセンティブが存在する。これらネットワーク参加者の正の行動は、使命感や正義感等ではなく、ただ単に参加者自身にとって最も合理的な選択をした結果である。それにはBTC自体に価値が滞留している必要があり、それは上述した価値の源泉とその他経済的状況によって満たされている。

参加者に対するインセンティブ

インセンティブは正と負が存在しており、参加者は以下に分類することができる。

  1. マイニング従事者
  2. 保有者
  3. 管理者(開発陣)

1.マイニング従事者の正のインセンティブは、ブロック生成によるブロックリワードである。1BTC = 587,083.44 円として1ブロックあたり12.5 BTC受け取ることができる。金額にすると587,083.44 円 * 12.5 = 7,338,543 円となる。ここからコストを差し引いた分がマイニング従事者の正のインセンティブとなる。逆に負のインセンティブとは、Bitcoinネットワークの堅牢なセキュリティに対して攻撃(51%攻撃)を行った際に失敗すると単純にコスト負担が大きいことを指している。crypto51によると、Bitcoinネットワークへの攻撃コストは1時間あたり49,603,778 円も必要であることがわかる。マイニング従事者は攻撃して負のインセンティブを取得するよりも、正のインセンティブを取得する方が合理的であることがわかる。

2.保有者の正のインセンティブは、BTCの価値の上昇によるキャピタルゲインである。コミュニティーの形成に力を入れBTC自体の認知を高めることで市場に浸透し、適した用途によるキャピタルゲインが発生する。CoinMarketCapのALLデータを参照すると(*3)、最も古いデータは2013年4月29日の1BTC = 15,090.35 円である。2019年4月30日の現在値が1BTC = 587,083.44 円なので、約38.9倍のリターンとなる。もちろんBitcoinが市場に誕生したのは2009年であるため、その時からの保有者は巨額のリターンを得ていることになる。参考までに紹介しておこう。New Liberty Standardによりビットコインと法定通貨の交換レートが初めて提示されました。この時のBitcoin価格は、1BTC = 0.07円であった…。逆に負のインセンティブとは、Bitcoinの価値の希釈化であり、基本的には保有者が希釈化を誘発するような行動をするインセンティブはない。

*3 https://coinmarketcap.com/currencies

3.管理者の正のインセンティブは、鉄道ビジネスモデルを想像すると良い。例えば、阪急電鉄の事業モデルが有名であり、鉄道の敷設だけでなく、ターミナル駅での百貨店開業、沿線の住宅開発、郊外の宝塚劇場やホテルなど娯楽産業の開発を行い、輸送客の増加と不動産利益の獲得に成功し相乗効果を生んできた。Bitcoin開発者もまた、同様のインセンティブがある。Bitcoinネットワーク発展及び改善、アップグレードのために尽力することで個人の名前は世界に知れ渡り、様々なビジネスとの相乗効果が生まれ、当然保有しているであろうBTCのキャピタルゲインも得ることができる。だがこれを言うとビットコイナーから反感を買うであろう。何故なら、インセンティブなど考えずBitcoinという魅力に惹きつけられ、ただただ夢中に没頭している方も存在するからである。ただ筆者はそれも1つのインセンティブとして括りたい。いわゆるデール・カーネギーの言う「自己の重要感」が働いでているのである。逆に負のインセンティブとは、Bitcoinの価値の希釈化でありネットワークの衰退であり、基本的には管理者が希釈化を誘発するような行動をするインセンティブはない。

証券への該当性

BTCは証券に該当しない。

Howeyテストには、特定のブロックチェーントークンが「証券」であるかどうかを判定するテストもあり、いくつかのICOプロジェクトはこのテスト結果を公表している。上記結論に至ったテスト結果を下記にて記載する。

最後に、要素1,2,3の各スコアの合計値を算出したうえで、各要素の合計値の最小値を下記表に当てはめた結果、証券の該当性を判断するものとする。

  • 0pt以下:全く類似していない
  • 1~33pt:類似していない
  • 34~66pt:どちらとも言えない
  • 67~99pt:類似している
  • 100pt以上:かなり類似している

要素1:資金を集めているか

1. 新規発行トークンが有料で販売されるか?

◾︎ YES(トークンセールなど)…100pt

◾︎ NO(マイニング、エアドロップなど)…0pt

要素2:共同事業であるか

2.トークンセールのタイミングはいつか?

◾︎ ネットワーク配備前…70pt

◾︎ ネットワークテスト時…60pt

◾︎ ネットワーク稼働時…50pt

◾︎ トークンセールが行われない…0pt

3.トークン保有者が利益を得るために何をする必要があるか?

◾︎ いかなる行動をせずとも利益が均等に配分される…25pt

◾︎ 作業によって得られる利益が変わるマイナス20pt

要素3:収益性があるか

4.トークンがどのような機能を持つか?

◾︎ 従来の証券投資家としての権利が与えられている…100pt

◾︎ トークン保有者が債権者となっている…100pt

◾︎ ネットワーク上での機能を持たない…100pt

◾︎ トークン保有者だけが利用可能な機能を持つ…0pt

5.トークンの利益がブロックチェーン外での行動に依存しているか?

◾︎ YES(トークン価値がブロックチェーン外の第三者の信頼度に依存)…80pt

◾︎ NO(トークンの価値が第三者の努力にあまり依存しない)…0pt

6.トークンセールのタイミングはいつか?

◾︎ ネットワーク配備前..20pt

◾︎ ネットワークテスト時…10pt

◾︎ ネットワーク稼働時…0pt

◾︎ トークンセールが行われない…0pt

7.トークン保有者は決定権を持つか?

◾︎ YES(開発者チームの資金利用に対して決定権を持つ)マイナス20pt

◾︎ YES(ネットワークの重要な決定に対して決定権を持つ)マイナス10pt

◾︎ NO(第三者の意思決定によってネットワークが運営される)…0pt

8.トークンの収益性を強調しているか?

◾︎ YES(「ICO」「投資」などの用語が含まれている)…50pt

◾︎ NO(ネットワークのアクセス権としてトークンを販売する)…0pt

◾︎ NO(トークン保有者が利益を得られる可能性はない)マイナス100pt

結果

  • 要素1:0pt
  • 要素2:0pt
  • 要素3:180pt

総合得点は「0pt」となり、BTCは証券に該当しない。

コンセンサス設計

コンセンサスの方法と仕組み

コンセンサスの方法はProof of Work(PoW)である。

所望の性質

PoWというコンセンサスアルゴリズムを採用することで、公平性と透明性を備えた改竄不可能な取引台帳の形成を所望している。PoWを用いたコンセンサスアルゴリズムは、他のコンセンサスアルゴリズム(PoS、DPoS)と比較して、取引台帳の形成にコストが必要であり、その資源によって初めてBTCが生成される。BTCの生成にコストが不要であれば、公平性と透明性を備えた改竄不可能な取引台帳の形成という所望は満たされないであろう。その理由は、トークン設計と密接に関わりがあり、もう一度読み返して頂くと十二分に理解していただけるであろう。

スケーラビリティー

Bitcoinはスケーラビリティに課題がある。改善策として「LightningNetwork」と呼ばれるオフチェーン処理(ブロックチェーン外の処理)が提案されており、その開発状況は日進月歩である。

課題について説明する。

Bitcoinは、10分に1ブロック生成され1ブロックに含まれるトランザクション数は、約1,500〜約2,500程(*4)である。1ブロックあたりに含まれるトランザクション数に差があるのは、ブロック容量である1.25MBに対してデータのインプット数及びアウトプット数に左右されるからである。他の暗号資産との処理速度の比較ではTPS(トランザクション/秒)による記載が分かりやすいので下記に記載する。

  • Bitcoin:7 / TPS
  • Litecoin:56 / TPS
  • Ripple:1500 / TPS
  • BEAM:17 / TPS

上記からBitcoinの処理速度に課題があることが分かる。Mempool(*5)を確認すると、2018年1月10日にトランザクションの処理待ちが138,487,948件と過去最高記録に到達した。2019年4月30日現在のMempoolが4,087,443件であることから、大幅な処理の遅延が発生していたことが分かる。この課題が議論を呼び過去ハードフォークによってBitcoin cash(BCH)が生まれた。

*4 https://www.blockchain.com/ja/charts/n-transactions-per-block

*5 https://www.blockchain.com/ja/charts/mempool-size?timespan=all

分散性

Bitcoinの分散性はその他の暗号資産と比較して非常に高いと言える。

分散性の度合いは以下の3つから分析する必要がある。

  1. マイニング従事者が保有するハッシュパワー
  2. 保有者
  3. 管理者(開発陣)

1.マイニング従事者が保有するハッシュパワー(マイニングに従事する計算能力)の分散性は、ネットワークの堅牢性に直接影響する。下記画像はBitcoinのマイニング従事者の分布図(*6)である。画像内のUnknownは、名前が不明な複数のハッシュパワーを集めたものであり全体の12.4%を占めているのは分散性に寄与している。この分布図に偏りが出る程に分散性が低いと言える。

*6 https://www.blockchain.com/ja/pools

ブロックチェーン上でXRPやEOSのようなスケーラビリティを確保するには、取引の承認をするマイニング従事者をあらかじめ決めておく必要がある。Bitcoinは約10分という時間の間、取引の承認をする世界中のマイニング従事者同士に競争をさせてブロック承認者を決定している。このことからBitcoinはスケーラビリティを犠牲にすることで、分散性に重きをおいていることが分かる。そして、Bitcoinのスケーラビリティは課題ではあるものの、欠陥ではないことが分かる。

2.特定の保有者に富が集中すると、恣意的な価格操作等の懸念からネットワークに悪影響を及ぼす懸念がある。Bitcoinの保有者アドレス11,872,970個のうち、約10%に占める保有割合は、99.05%になる(*7)。Litecoinの場合、保有者アドレス300,235個のうち、約10%に占める保有割合は、96,69%になる。Dogecoinの場合、保有者アドレス295,173個のうち、約10%に占める保有割合は、98.98%になる。以上の結果から保有者に偏りがあると言える。

*7 https://bitinfocharts.com/top-100-richest-bitcoin-addresses.html

上記画像内の最も保有量の多い4アドレスは下記である。

  • wallet: Bittrex-coldwallet
  • wallet: Bitstamp-coldwallet
  • wallet: Huobi-wallet
  • wallet: Binance-coldwallet

補足:Satoshi Nakamotoはこれよりも多い600,000〜700,000 BTCを保有している可能性をBitMEXが分析記事で発表している。

上位4アドレスとその他の上位アドレスには、取引所のウォレットアドレスが含まれている為、単一ユーザーのものではないことになる。それらを考慮すると全体として分散性は高まることになるが、これは1つの課題であると考えることができる。

3.Bitcoinの開発は分散化されていると言える。

開発は、Bitcoin Core開発者によって行われている。コードのマージ(変更・統合)は、Bitcoin Core開発者のみが可能である。するとこれは中央集権的で分散化されていないのではないかという議論がある。確かに変更自体はBitcoin Coreのみが可能であるが、開発提案は「BIP(Bitcoin Improvement Proposals)」という形で誰でもできるオープンソースソフトウェア(OSS)だと言える。

この提案を元にBitcoinの今後について議論が行われ、参加者の賛成が多く集まることでBitcoin Coreによって改善される。仮に誰でも自由にコードの変更が可能であった場合、それこそネットワークを危険に晒し本末転倒となる。Bitcoin Coreは、ある意味交通整理の役割を担っていると言える。

セキュリティー

Bitcoinのセキュリティは、PoWコンセンサスアルゴリズムによって堅牢に成り立っている。しかし、PoWであるからセキュリティが堅牢なのではない。その証拠にMonaCoinやBitcoin GoldといったPoWを採用している暗号資産はセルフィッシュマイニング(*8)及び51%攻撃を受けた。同じコンセンサスアルゴリズムを採用しているにも関わらず、攻撃の影響を受ける暗号資産と攻撃の影響を受けない暗号資産とで何が違うのだろうか。

*8 https://arxiv.org/pdf/1311.0243.pdf

いくつか要因はあるものの、1つは「ブロックタイム」である。Bitcoinのブロックタイムは何度も説明するように10分でMonaCoinは90秒である。悪意のあるマイナーは、MonaCoinの高速なブロックタイムを利用してブロードキャスト(ネットワークに知らせない)をしない分岐チェーンを密かに作成した。そのチェーンをあるタイミングでブロードキャストをすることで、ブロックチェーンの再編成(reorg)が起こりで取引所は多大な損害を受けた(詳細は割愛)。Bitcoinが1ブロック生成している間に、MonaCoinは6.6ブロック生成することができ、ブロック生成のスピードに対してそれを確定するファイナリティに問題があったと言える。つまり、Bitcoinのブロックタイムとファイナリティはセキュリティを考慮したものであることが分かる。

もう1つは、「ハッシュレート」である。それによって攻撃を受けたのがBitcoin Goldである。ハッシュレートはNiceHash等の売買サイトで買い集めることができ、Bitcoin GoldのハッシュレートはBitcoinと比較して極端に安価で51%の可能性を高めた。上述したように、Bitcoinネットワークへの攻撃コストは1時間あたり49,603,778 円必要なのに対して、Bitcoin Goldネットワークへの攻撃コストは1時間あたり149,565.44 円とかなり安価なコストで攻撃が可能であることが分かる。つまり、ネットワークに対する攻撃で得られるインセンティブがコストを上回り、攻撃こそが合理的であったことがわかる。

このように同じPoWコンセンサスアルゴリズムを採用していても、ネットワークの堅牢性は全く異なり、その堅牢性を維持しているものはBitcoinネットワークそのものであり、その要素の何がかけても脆弱性への可能性が高まってしまう。BitcoinからハードフォークしたBitcoin Goldの結果がそれを物語っている。

維持コスト

PoWコンセンサスアルゴリズムの維持コストはマイニングに従事するために必要なイニシャルコストとランニングコストに分けられる。但し、マインイングプールへの参加は例外とする。イニシャルコストとは、マイニングハードウェア(ASIC・GPU・その他関連部品)のことを言い。ランニングコストとは、電気料金、人件費、その他のことを言う。

マイニングに関する詳細な内容は割愛する。この記事で重要視したいのはマイニング従事者の損益分岐点である。なぜこれが重要かと言うと、損益分岐点を下回るとマイニング従事者は撤退し、上述した分布図が集権化していく可能性と攻撃コストの低下による負のインセンティブが生まれるからだ。

実際のマイニンングの損益分岐点はどれくらいなのだろうか?

BITMAIN社のAntminerS15という最新のマイニング機器を使えば、今日現在の採掘難易度で約3070 ドルとなる。日本円に換算すると342,450.82 。だが、従来からの主流機器はBITMAIN社AntminerS9であり、この機器を利用している層の損益分岐点は約5080 ドル。日本円換算では約566,635,90 円である。このデータはBitcoinの損益分岐点として参考までに心に止めておいてほしい。

補足:上記データは最新のものではない為、より詳しい方がいればコメントを頂きたい。

流通設計

ディストリビューション概要

BTCはICO(トークンセール及びプライベートセール)は行われていない為、その他の暗号資産と比較してネットワーク参加者に公平に分配されている。また、今後の流通方法は中央管理者は存在しない為、エアドロップによる配布等はなくブロック生成によるブロックリワードによって市場に流出する。

市場に流出する枚数は、2019年4月30日現在は10分に12.5 BTC。1時間に75 BTC。1日に1,800枚である。これはマイニング従事者のウォレットに送られ、コストの支払いに当てられる為、基本的には売り圧となる。つまり1日に1,056,750,192 円の売り圧が発生していることになる(2019年4月30日のBTC価格参照)。

具体的な保有者

具体的な保有者はリッチリスト(*9)にて確認可能。

*9 https://bitinfocharts.com/top-100-richest-bitcoin-addresses.html

所望の性質

ICO(トークンセール及びプライベートセール)を行わず、誰でも参加できるマイニングのみでBTCが流通する為、公平な分配を所望している。よってプレマインもなく、結果的に分散されたネットワークになっている。

 

 

 

Join Lab Now

ライトニングネットワーク内のビットコインが安全と言える仕組みを理解する

ライトニング・ネットワーク内にデポジットされた資金が盗まれるという、一部界隈の懸念を具体的な仕組みの説明によって払拭しました。こちらの記事を見ていただくことで 、なぜ資金が安全と言えるのかを理解していただくと同時に、その仕組みを理解して頂くことができます。


前回のライトニング・ネットワークのチャネル内の仕組みと基礎に引き続き、今回もライトニング・ネットワークに関して執筆致します。内容は、テレグラムの「Tokyo Dragons Den」グループ内での大石氏による発言とコミュニティー内の発言をまとめたものになります。

前回の記事を読まれていない方はこちら

[blogcard url=”https://coinpicks1.wordpress.com/lighteningnetwork-1/”%5D

 

ライトニング・ネットワークで資金を盗む方法

ライトニング・ネットワークに関して「チャネル内の資金が盗まれる」という話があります。

結論から言うとその心配はありません。

それはなぜか?

まずは「チャネル内の資金が盗まれる」という話の前提から説明します。

ライトニング・ネットワークは、チャネル内の残高に対してお互いが電子署名を確認することで、送金しているように見えるというのは前回の記事で図を用いて説明させて頂きました。

さて、ここで悪意のあるAがいたと仮定しましょう。

ここにライトニング・ネットワークによる決済に対応したスターバックスがあります。

Aはコーヒー代金をBTCで決済しました。ここで悪意のあるAさんは、BTCで決済する前のチェーンに遡り履歴をオンチェーン(ブロックチェーン内)にブロードキャストしてチャネルを閉じて確定しようとしています。Aさんは過去にすべての残高に電子署名しているので、どの残高であってもブロードキャストをして確定させることができてしまいます。

これが「チャネル内の資金が盗まれる」という話の前提になります。

あたりまえですが、これでは使い物にならず最新の残高だけが有効でないと困ってしまいます。そのような悪意のある行動に対して、チャネルのクローズ方法に工夫をすることで防止しています。

 

協力的なクローズと非協力クローズ

悪意のあるものによるダブルスペンド(2重払い)を防止するために、チャネルのクローズ方法に工夫があることをお伝えしました。

チャネルには2種類の閉じ方、協力的クローズ非協力クローズがあります。

協力的なクローズは、ブロードキャストされた残高に対してABが合意することでクローズします。このクローズ方法であれば、最新の残高履歴が確認されるので協力クローズでは不正はおきません。

問題は、ダブルスペンドを目的とした古い残高をブロードキャストした後に、非協力クローズによって一方的にチャネルを閉じるというものです。しかし、非協力クローズのTX(トランザクション)には、タイムロックがかかる仕組みになってます。タイムロックがかかったTxは、48時間や2週間などあらかじめ定められた期間が経過しないと有効にならない仕組みです。もしその時間が経過すると、不正TXがマイニングされ成功してしまいます。

しかし、その48時間とか2週間の猶予の間に不正TXがブロードキャストしていることを検知してカウンターTXを出すことで、カウンターTXが先にマイニングされチャネル内のBTCを総取りできるような仕組みになってます。つまり、善意で不正Txを検知したものには正のインセンティブを提供し、悪意あるものにはチャネルのBTCを全て失う負のインセンティブを提供しています。

これが冒頭でお伝えした、チャネル内の資金が盗まれる心配は無いという理由です。

しかし、この不正TXをどのように検知するのかという課題があるのも現実です。

 

不正トランザクション(Tx)を検知する方法

悪意あるものによる不正TXはどのように検知するのか?

基本的には、ブロードキャストされてくるTXを全てウォッチしている必要が有ります。これはフルノードであれば必ず全てのTxを検知しているので、フルノードでライトニング・ネットワークを走らせているひと(またはフルノードに接続してつかうウォレット)にとっては何ら問題になりません。

Point:これはフルノードを運用するインセンティブになります。先日、国内で暗号通貨ウォレットを提供しているGincoもフルノードの運用を代理で行うことを発表しました。これから大手などの参入もどんどん増えてきそうですね。

不正Txの対処にかかる労力が大変という声が聞こえてきそうですが、基本的に不正Txの対処はライトニング・ネットワークのソフトウェアが自動的に行うので、ユーザーへの負担は全くありません。

問題はモバイルウォレットです。

実際に筆者の経験ですが、ウォレットに関しては数日以上オフラインの場合が多いです。その間にチャネルがクローズされ、タイムロック期間内にカウンターTx発行できないという問題があります。

それを防ぐために、ウォッチタワーというのが出てきます。

これは普通のフルノードですが、これに自身のチャネル情報を登録しておくことで、不正TXを発見した場合に代理でカウンターTXを発行してくれます。これはLND(*1)などのソフトウェアに実装される見込みで、今年の春くらいには使用できるようになるはずです。

*1 LND:Lightning Labs(ライトニング・ラボ)が開発しています。詳細はこちら

 

質問と回答

以下のような質問と回答がコミュニティー内でありましたので共有します。

Q:チャネルの状態を最新のものから巻き戻していけないので、バックアップが絡むと問題が複雑になりますよね。古いバックアップに戻してはいけない=バックアップを持っていることはある種のリスクになってしまいます。実際に少し前までは、Lightningのバックアップはどうしたらいいですかと質問すると、「バックアップは取るな!」という回答も見かけました。バックアップファイル(ある時点のチャネル状態)を持っているだけでは、決してそれはバックアップとして機能せず、必ずそれが最新であることを保証しなければなりません。個人ならば、それは個人の記憶やメモで補えるかもしれません。しかし、チャンネルの状態は、自分だけでなく相手方も変える権限がある。というか誰でも変えられる(routing)はずで、厄介では。

大石氏

そうですねバックアップの問題はややこしいです。自分のバックアップが最新なのかどうかを確かめる必要が常にでてきますね。おっしゃるようにルーティングノードは厄介ですね。いまのところ効率的な回答はなく。ただ、プロトコルレベルで、最新のステートだけをもてばよく過去の履歴はもたないで大丈夫な方法も提案されています。

 

LINE@ – 友達追加 –

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Labってなに?

ビットコイン発行上限を迎える2140年以降のマイニングインセンティブについて考える

ビットコインのマイニングリワード(報酬)が頭打ちになる2140年、ビットコインはどのような未来を迎えるのでしょうか?この記事では約120年後の未来について3つの観点から予想しています。この記事を読んでいただくことで未来のビットコインネットワーク最大の問題を認識していただけます。


Q:新規発行がゼロになった後のビットコインシステム維持のシナリオがよくわかりません。手数料のみでマイニングインセンティブが十分とは思えません。手数料が高騰するのでしょうか?

2140年以降ビットコインマイナーは撤退しシステムは止まるのか?

質問ありがとうございます。

非常に重要な質問であるためお答えする前に下記にて前提知識を共有して多くの方が質問の意味が分かるようにしたいと思います。

前提知識

  • ビットコインは2140年で発行上限に到達
  • 692万9999番目のブロックが上限
  • 枚数換算すると2100万枚
  • 2019年現在10分に1度12.5BTCが発行
  • 4年毎に半減期が訪れる
  • 次の半減期は2020年
  • 変更にはハードフォークが必要

以上

質問者様の言うように、現在マイニングに対するマイナーのインセンティブはブロックリワード(報酬)と手数料です。2140年にビットコインのマイニングリワードが頭打ちした際には手数料のみがマイナーのインセンティブになります。

現在(2019.02.07)の取引手数料は、$60,654/ 1日となっています。JPY換算で¥6,611,286です。一方マイニングリワードはビットコイン価格を$4,000とした時に$576,000 / 1日となっています。JPY換算で¥62,784,000です。つまり現在のところ、取引手数料はマイナーのインセンティブの約11%しかないのです。(MESSARI調べ)

確かにこれではマイニングリワードが頭打ちになれば、マイニングインセンティブはないと考えることができます。しかも今後、どれだけビットコインの取引量が増えても1日に処理できるブロックの数は約144個と決まっています。1日に144個ということは1ブロックあたり約¥45,911の手数料インセンティブしかなく、当然マイナーの損益分岐点を下回ります。

最近公表されていたBITMAINの1ビットコインあたりの費用はJPY換算で約¥343,840でした。現状1ブロックあたり12.5BTCのリワードがあるので損益分岐点は1ブロックあたり¥4,298,000となります。

ということは2140年以降マイナーは撤退しシステムは止まってしまうのか?

実はこの問題に対する具体的な対策は提案されていません。しかも、大きな問題ではあるものの日本ではあまり話題になっていません。そもそもネットワークの参加者は自身の利益を追求しているだけなので1世紀以上も先の問題で建設的な意見が活発にならないのも仕方ないでしょう。大半の人が既に亡くなっているでしょうから…

それでは、筆者の予想と界隈の予想をいれながら約120年後の未来について考えたいと思います。

 

ビットコインシステム120年後の未来予想

手数料の高騰

質問にもあるように単純に手数料が高騰する可能性が考えられます。

現状の1トランザクションあたりの手数料は約0.5ドル前後です(約54円)。

ブロックリワードが無くなると手数料収入のみで損益分岐点を越える必要があります。すると必然的に手数料の下限値が決まります。上記であげたようにマイナーの1ブロックあたりの損益分岐点は¥4,298,000となります。現状の1トランザクションあたりの手数料は約1,754円になります。現状の32倍の手数料ですね。

POINT:ただし、1ブロックあたりのリワード枚数は0に近づいていくのでこの算出方法は好ましくありません。正式には電気料金と人件費、ハード代などの実数値から計算する必要があります。

あくまで現状からの参考に…

手数料が54円から1,754円と約32倍の高騰!

トランザクション手数料が高くて騒がれていた時で400円前後だったので、それの4倍以上となると大きな問題であることには変わりありません。これを考えるとこのアプローチは最適だとは思えません。ただしライトニング。ネットワークが普及するならば話は変わりますが、今回は割愛させて頂きます。

現状の損益分岐点に関してコメントをいただいたので目を通してみてください。

 

2xxx年ハードフォークが起こる

ハードフォークはネットワークが健全な証です。

歴史は繰り返されることを学べば大きな議論時にはハードフォーク論争は付きものです(現在ハードフォーク論争を経験した人は120年後にはほぼ亡くなられていますから)。このハードフォークによってビットコインの発行上限がないものが生まれるでしょう。

しかし、そうなれば個人的にはGRINでいいのでは?と思うので現実的なアプローチとは思えませんが、これによって利益を得る人もいるので確実にハードフォークは起きるでしょう。

しかし、それが失敗するのも歴史の教えです。

 

完璧に分散化された世界

2140年ビットコインのブロックリワードがなくなれば、マイナーのインセンティブは手数料収入のみになり、それが現実的ではないことを説明しました。そうなれば大手マイニングプールは撤退を余儀なくされマイニングのプレイヤー構造は大きく変わると考えています。

プレイヤー構造がどのように変わるのかといと、大手事業者から小規模事業者へ、小規模事業者から個人へとより分散化したネットワークに回帰するでしょう。回帰という言葉を使ったのは、ビットコインが世の中に登場した2009年頃のビットコインネットワークを想起したからです。

大手マイニング事業者が撤退するのであれば、手数料収入というインセンティブを求めて小規模事業者や個人がマイニングに参加するメリットがあります。個人のパソコンの余力を使って手数料収入が自動的に発生するのであれば一定数の参加者が見込めるでしょう。そのインセンティブがビットコインネットワークをより分散化させ、より堅牢なシステムを作り上げます。

筆者が想像するにこの未来は割と可能性が高いのではと考えています。

 

まとめ

ビットコインシステム120年後の未来予想ということで、3つの予想をさせて頂きました。

まだ先の話ではありますが、非常に重要な問題で議論に値する内容だと思います。筆者が想像するに「分散化された未来」と言うのが割と考えられる未来なのではないかと思います。

他にもこんな未来があるのでは?

などの意見お待ちしております。

メールアドレスで無料レポートを受け取る

Join Lab Now

ライトニングネットワークのチャネル内の仕組みと基礎

ライトニング・ネットワークのチャネル内の送金の仕組みや方法について解説しています。基本的なことをお伝えしておりますので、この記事を読んで頂くことで今後のライトニング・ネットワークに関する情報についてもより理解を深めやすくなると思います。また、コミュニティー内の質問も多く収録しておりますので一度目を通してみてください。


ライトニングネットワークのチャネル内の仕組みと基礎

今回は、テレグラムの「Tokyo Dragons Den」というグループ内で非常にわかりやすいやりとりがあったので共有致します。

Q:ライトニング・ネットワークについて1つ疑問があるのでご教授頂きたいのですが、A→C、A→B→Cといった形で送金をする場合には、その取引記録等は最終的に誰が保管する事になるのでしょうか?デポジットしているBTCの増加減の事ではなくAとCの取引をしたという記録の保管先についての質問です。

大石氏

A・B・Cがそれぞれ保持します。ABの部分はABが保持して、BCの部分はBCがそれぞれ保持します。

ライトニング・ネットワークではチャネルに関する部分が少し複雑になっています。上記の質問と回答の意味がそもそも分からないという方がほとんどではないでしょうか?

この記事を読んでいただくことで、最終的には上記の質問と回答の意味を理解して、ライトニング・ネットワークのチャネル内の送金に関する基礎を理解頂けます。

 

ライトニングネットワーク チャネル内の送金の仕組み

ライトニング・ネットワークのチャネル(*1)内での送金に関して下記より図を用いて説明致します。前提として黒い玉はキャパシティ(デポジットされたBTC)を表しており、Bobを「A」Aliceを「B」とします。また、後ほど登場するTomは「C」とさせて頂きます。

*1 チャネル:例えば、「A→B」という取引を行う場合には、まずはじめにチャネルを開く必要があり「A→B」の部分の「→」の部分がチャネルとなります。

上図はA→Bのチャネルを表しています。

A→Bというチャネルを通して、黒い玉を2個送金すると、チャネル内の残高が書き換わります。この状態でチャネルを閉じ(精算す)ると、この残高がそれぞれオンチェーン(ブロックチェーン上)で処理されます。

上図から分かるようにA←Bという送金を実現するためには、いったんAからBに黒い玉を送金しないとA←Bの送金はできません。では、A→B→Cはどうやるかというと、この玉突きの連携です。

これがA→B→Cの連携状態です。

この状態のとき、AからCに2つ黒い玉を送金するためにはどうしたら良いでしょうか?

答えは、AからBに送金、BからCに送金するという連携が必要になります。

ここで重要なのはBはAから受け取った黒い玉をCに送っているわけではないということです。あくまでチャネルはAとB、BとCの間だけで成り立っているので、Aのコインが直接Cに送金されるというわけではありません。

つまりライトニング・ネットワークは、チャネルのバランス(残高)を玉突きのようなイメージで行ったり来たりさせることで、あたかも送金されているような感じに見えるという仕組みなのです。

 

チャネルの精算と残高の記録

次にチャネルを閉じた際のブロックチェーンへの記録についてお話します。

チャネルを閉じるのに必要な情報はABBCがそれぞれの間で保持しています。ABが合意すればABの間の残高を閉じて精算できます。BCも同様に双方の合意によってチャネル間の残高を閉じて精算することができます。ちなみにAは、BCのチャネルを勝手に精算することはできません。

POINT:チャネルを精算するということは、AとBの精算時の残高をブロックチェーン上に記録することを意味します。ライトニング・ネットワークはチャネルを開くことからはじまり閉じることで終わります。手数料は唯一この時に発生します。

チャネルを閉じるとブロックチェーン上に最終残高だけが記録されます。それまでの間に、黒い玉がチャネル内を何回移動しようが、その履歴についてはABの当事者しかわからないようになっています。

このようにA→Bのようなチャネルが沢山作られ、A→B→Cというように繋がっていくと、それがネットワークとなり様々なところに送金可能になるのです。現在ライトニング・ネットワーク内のチャネルは23861個つくられています。また総デポジット量は652BTC(2019年2月7日現在)です

Lightning Network Search and Analysis Engine

Lightning Network Explorer

視覚的にライトニング・ネットワークのチャネルを確認することができて面白いですよ。

 

ライトニングネットワークの送金網とAMP

A→BCDという送金があったとします。

この時Bは、最終着金者がDであることは知りません。Bは、Aからの送金をCにバケツリレーするという命令だけうけて実行しているだけにすぎず、その先Dまで行くということは関知できません。同じように、Cは、Bからの送金をDに送るだけで、それがはじめはAからの送金だったということはわかりません。

つまり、ルーティングする人は前後だけしかわからないという仕組みになっています。しかし、ADは、お互いがどのようなルートでいくら送金したかというのは記録を保持しているので知ることができます。当事者だけが全体を知っているという形になっています。

「ライトニング・ネットワーク内の送金は全て検閲される」という噂がありますが、上記の仕組みを理解していればFUDであることがわかります。

さらにAMPというものがあります。
これは送金経路をいくつかに分けるというしくみです。

たとえばAからXに黒い玉を3個を送りたいとします。

  • A→B→Xというルートで1個送金
  • A→C→D→Xというルートで1個送金
  • A→P→Q→Xというルートで1個送金

3つのルートからの送金をひとまとまりにして送金することができます。

そうすると、それぞれ途中の経路の人は、全体の送金がいったいどうのように行われているのかを知るすべは殆どないでしょう。ということでライトニングは経由者(=ハブ)が検閲できるという話も正しいですが…

  1. 送金経路を知ることができる範囲は前後まで
  2. AMPで送金すると全体像は把握不可能

なので、全体としてはオンチェーンよりも匿名性が増し、チェーン解析のようなこともできないと考えられます。

 

質問と大石氏の回答

Q:ライトニングはこのリレー途中で外部からの阻害行為を仕組的に予防してることにもなるのでしょうか?

Community ALNHTLCという技術を使ってトラストレスな仕組みを構築しており、外部からの阻害および参加者同士の裏切り行為を防止しています。結構複雑なので自分もなかなか理解できなかったのですが、以下の記事がたぶん一番わかりやすいかも?https://zoom-blc.com/lightning-network

HTLCというのは、Hashed Timelock Contractの略でBTCをロックされたアドレスに送金して、一定の条件を満たすことで資金の取り出しが可能となります。この仕組みを用いることで赤の他人ともトラストレスな取引が実現します。

Q:オフチェーンの仕組がなぜこんなに早い送金を実現してるのでしょうか?

Community A:ご存知と思いますが、オンチェーントランザクションは新規BTCの供給スケジュールを固定にするためにどうしてもブロックタイム10分の制限があります。オフチェーンの場合はそこに依存しないので、参加者同士での接続のみで次々にチャネルを更新できるので早いです。

オフチェーンはブロックチェーン外の処理ということです。

Q:リレー途中で阻害されても、一時的にロックして到達先から承認されないと(自分のチャンネル内の?!)全て取引が破棄されるので、セキュリティーが担保される感じでしょうか

Community A:自分の理解だと、ロックしているものを無理やり解除するしようとすると損するため実質できない、ということだと思います。

Q:最終的にブロックに記録されるのはライトニングで決済されたかなり後になってからトランザクションとして記録されるイメージでよいのでしょうか?

Community A:ブロックに記録されるのは、ペイメントチャネルを閉じたときですね。たしか現状は時間の制限はないので、ずっと開きっぱなしでもいけるはずです。

大石氏

リレー途中で悪さや障害があると、送金全体が失敗する仕組みになっています。なので資金が途中でスタックしてしまうというようなことはないようになっています。技術的にはHTLCという仕組みを使っています。

最終的にオンチェーンでコインを使いたければチャンネルを閉じてコインをオンチェーンに戻す必要があります。ただしその必要がなければチャンネルはずっと開けっぱなしでもOK ですし、オフチェーンの世界でなんで何度でも使って送金したり受取することができますので、 そのまま財布として使い続ければ問題なしです。送金の都度チャネルを閉じる必要はありません

Q:Bluewalletに関してはペメントチャンネルを意識せずに使えてるように感じますが、他のウォレットだとチャンネルを閉じるか開けとくか任意に設定出来る感じでしょうか?もし他に代表的なお勧めのウォレットなどあれば教えていただけると幸いです

大石氏

Lightning Wallet というのが、チャネルの設定ふくめていろいろできるようになってます。私もこれをつかってます。(android のみ)

Q:ただの質問になってしまい恐縮ですが、追加でBTCをライトニング・ネットワークに入金する場合は、チャネルを閉じる必要はない。ライトニング・ネットワーク外のウォレットにBTCを出金する場合、チャネルを閉じる必要がある。という理解で大丈夫でしょうか?

大石氏

今のところチャネルにお金がなくなった時に外からBTCを入金するというのができないのですが、サブマリンスワップという方法を使うとこれができるようになります。ただし通常のオンチェーン手数料がかかります。あとスプライシングと言ってチャネルの容量を後から増減できるような技術も今後できるようになるようです。

以上

ここまで読んで頂けたのであれば最初の質問にも答えられるようになっているはずです。試しにもう一度見直してみてください。また、それ以上に全体像の理解ができたのではないでしょうか?

今後もライトニング・ネットワークに関する記事を増やしていきたいと思います。

 

あわせて読んでほしい記事

[blogcard url=”https://atomic-temporary-106217043.wpcomstaging.com/bitcoin-qa2/”%5D

 

LINE@ – 友達追加 –

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Labってなに?

ライトニングネットワークが世界に与えるインパクト

ライトニング・ネットワークは、オフチェーン処理によってネットワーク内にデポジットされている分だけを高速で送金することができ、グローバルな決済システムとしての可能性を持ちます。しかし、今回の記事ではそれ以上に伝えたいことがあります。



ライトニングネットワークが世界に与えるインパクト

CoinPicksの質問箱にて下記のような質問をいただきました。

Q最近BTCのライトニング・ネットワークの発展の記事がありましたが、最終的にBTCのライトニングネットワークが拡大構築されることでどこまでの規模の決済送金ができるようになる可能性があるのでしょうか?

質問ありがとうございます。

早速上記質問内容について回答をしていきたいと思います。

 

ライトニング・ネットワークがもたらす決済システム

ライトニング・ネットワークに興味を持って頂けたということで、関連する記事を執筆した甲斐がありました。

ありがとうございます。

「ライトニング決済が拡大していくと、どこまでの規模の決済送金ができるようになるのか」という部分ですが、ネットワーク内にデポジットされている分だけ送金として使用することができ、グローバルな決済システムとしての可能性を持ちます。

1回の最大送金金額についてですが、金額が上がるにつれてキャパシティ不足に陥り成功確率が下がるようです。実際の数値について詳しい方がみえましたらコメントお待ちしています。

HELP:ライトニング・ネットワークを用いたオフチェーン処理にキャパシティ問題があるとおもうのですが、送金枚数と成功確率の相関関係についてご教授下さいませ。

テレグラムの「Tokyo Dragons Den」にて回答をいただきました。

ビッグストーン

送金金額が多くなると成功確率は下がります。いまの多くのチャネルが100万〜200万サトシ前後だとおもいます。なので、50ドルを超えると成功確率がぐっと下がるとおもいます。

去年の夏頃は5万サトシとか7万サトシの送金が通る確率が半分ぐらいだった感じです。今だとそれはほぼ確実に通る感じですね。

200万サトシの送金をacinq経由でブルーウォレット宛に行ってみましたが実験結果は通りました。

通常の買い物の範囲と言うとだいたい100ドルぐらいだと思うのでつまり二百万サトシがいつでも通るようになると本当に 日常決済はライトニングでできるようになると思います

非常に学びになりますね。

ありがとうございます。
今回の質問と合わせて筆者はお伝えしたいことがあります。

ライトニング・ネットワークは世界に何をもたらすのか?

 

ライトニングネットワークは必要なのか?

ライトニング・ネットワークは、ビットコインのスケーラビリティ問題をオフチェーン(ブロックチェーン外)処理によって解決ではなく迂回しています。ビットコインによる決済をオフチェーン処理することで、1ブロック10分という制約を受けません。これによって同一ネットワーク内に存在するユーザーと高速なマイクロペイメント(少額決済)を実現することができます。

マイクロペイメントというと、1円以下の少額決済の実現とよく聞きます。

ところで1円以下の決済(経済圏)って必要なの?

これは非常に面白い視点です。

前回、下記記事でも紹介したようにライトニング・ネットワークを用いた決済サービスは複数存在します。

[blogcard url=”https://atomic-temporary-106217043.wpcomstaging.com/lightning-network-contents/”%5D

記事の続きを読むのにマイクロペイメント

予測市場(ギャンブリング)にマイクロペイメント

少額の寄付にマイクロペイメント

・・・・

上記サービスでも確かに少額決済するメリットがあります。

しかし革新性に欠けます。

しかし、これらのサービスから気付きを得ることができます。

それは何か?

Visualization of value(価値の見える化)です。

何気ない感謝の気持ちや些細な行動を可視化して、トークンインセティブによって形にすることができるのです。これは全く新しい経済圏であるがゆえに必要か否かという議論は不毛でしょう。それよりも新たな経済圏を創出するライトニング・ネットワークの可能性は計り知れないと感じます。

2019年2月1日 追記

記事投稿後に2件質問を頂きましたので共有させて頂きます。

Qライトニングネットワークはこのまま広がると10万円から100万円の決済それ以上もできるようになることを目指しているのでしょうか?

あくまで目的はスケーラビリティの改善です。

日常的な買い物で決済の確定までに約10分掛かるのは現実的な数字ではないですよね。それを数秒で完了させることを目的に開発されているのがライトニング・ネットワークです。

GMOリサーチ株式会社調べで日常的な決済で使用される金額は平均2,000円から3,000円とのことです。実質10,000円以下の決済がほとんどでしょうから、この金額がスムーズに決済可能となれば実用化も現実みを帯びてきます。

2019年2月の段階で既に100万Satoshi(約4,000円)から200万Satoshi(約8,000円)の決済が可能になっているようです。ネットワークの安定性はさておき、ライトニング・ネットワークが日常的な決済として使用される基準値に近づいています。

ビットコインの価格市場は低迷していますが、テクノロジーは発展を続けています。

ちなみに10万円から100万円の決済がライトニング・ネットワーク上で、できるようになるかはネットワークデポジットされたビットコインの全体数に依存します。

[blogcard url=”https://www.coinpicks-lab.com/t/topic/145″%5D

Qライトニングネットワークは5,000円くらいまでの決済のみまでで、それ以上の決済は他の仕組みを実装または他の通貨(BCHなど)に任せる形になるのでしょうか。

なぜライトニング・ネットワークの送金が100Satoshi(約5,000円)から200Satoshi(10,000円)の送金に留まっているのかというと、ネットワーク内にデポジットされているビットコインの全体数がまだまだ少ないからです。

去年の夏頃はもっと少なかったので、ライトニング・ネットワークで送金できる金額はもっと低かったのですよ。なぜ、デポジットされているビットコインの全体数が少ないと送金額に制限がかかるのかは、また記事にしたいと思います。

あわせて読んでほしい記事

[blogcard url=”https://www.coinpicks-lab.com/t/topic/144″%5D

[blogcard url=”https://atomic-temporary-106217043.wpcomstaging.com/lighteningnetwork-1/?preview_id=2684&preview_nonce=71c2a74af2&_thumbnail_id=2706&preview=true”%5D

 

LINE@ – 友達追加 –

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Labってなに?

ライトニングネットワークを使ったマイクロペイメントができるようになる記事

ライトニングネットワークを活用したアプリケーションの紹介と実際に筆者が体験した際の体験談をまとめます。ライトニングネットワークの体験は非常にエキサイティングです。ライトニングウォレットに残高がある方は、この記事をきっかけにマイクロペイメントの初体験となれば幸いです。


ライトニングネットワークのコンテンツ紹介と実体験

前回のライトニングウォレットへの最大1,000Satoshiのバラマキキャンペーンでビットコインを受け取ったものの、使用方法で困っている方が多いのが実態ではないでしょうか?

まだ受け取りをしていない人は下記より受け取りが可能です。

[blogcard url=”https://atomic-temporary-106217043.wpcomstaging.com/lightning-network/”%5D

 

今回のバラマキキャンペーンは、よくあるエアドロップとは性質が異なり、資産を増やしたりおこずかいとして使用するために配布されたものではありません。(もちろん使用方法はユーザーの自由ですが…)今回のキャンペーンはライトニングネットワークについて知るきっかけ、体験するきっかけを生む非常に価値あるものだと筆者は感じています。

1,000Satoshiを受け取ったまま財布に放置しておくのは本末転倒、機会損失と強めの言葉を用いてお伝えさせて頂きます。

 

 

筆者のウォレット(BlueWallet)にも1,000Satoshiが入っております。

この記事を読んで頂けた方が、最後にライトニングネットワークの体験をするきっかけとなれば執筆の目的が果たせたことになります。

 

マイクロペイメントが利用できるコンテンツは以外と多い

ライトニングネットワークを活用したアプリケーションは「LApps」とも言われています。

■ Y’alls

記事に対するマイクロペイメント。記事に対して決済をすることで続きが読めるようになります。

■ Lightning Network Implement Store

Lightning Neoworkを使った支払いでECサイトで注文が可能です。

■ Microbet

サッカー・バスケットボール・フットボールの勝敗に賭けて勝てば増えるマイクロペイメントです。

上記はほんの一部です。
こちらのサイトをご覧ください。

https://lightningnetworkstores.com/

マイクロペイメントを利用できるアプリケーションは、意外と多いことに気付きます。単純に驚きました。

さて次は筆者自身がライトニングネットワークを用いたマイクロペイメントを体験してみます。

 

実際にマイクロペイメントを体験してみる

Y’allsでマイクロペイメントをしてみたいと思います。

ここから先の記事を閲覧するには$0.005USD必要になります。支払いをするために決済ボタンをクリックします。

支払い先のQRコードがでてきました。

支払いをするためにウォレット(BlueWallet)を開きます。

現段階で1,000Satoshi確認できます。

QRコードをウォレットから読み込むと、送金に必要な金額が表示されます。問題がなければ「Pay」を押して送金してください。

上述した残高850Satoshiというのは、マイクロペイメントに150Satoshiを用いた決済枚数です。

約2秒後には決済が完了しており、記事の続きが見られるようになっています。感覚的には本当に一瞬です。

 

自身の残高を使用することにどうしても抵抗がある方へ

これは私のウォレットのインボイスになります。ここに50Satoshi送って頂ければ、そのままあなたに返金します。

この方法であればあなたはライトニングネットワークの送金体験をすることができ、あなた自身の残高が減ることはありません。

送金いただけた方は、Twitter又はCoinPicksのLINEに連絡を下さい。すぐに対応させて頂きます。

Twitter

https://twitter.com/imai_ryouji

LINE

https://line.me/R/ti/p/%40abg3669g

 

まとめ

最後までご覧いただきありがとうございます。

ライトニングネットワークを使用したマイクロペイメントのやり方はご理解頂けましたでしょうか?

また、この記事が体験するための動機となりましたでしょうか?

ライトニングネットワークは、ビットコインによる価値の移転をオフチェーン、つまりブロックチェーン外で行うことでスケーラビリティという問題を解決するアプローチとして注目されています。

今回筆者自身がマイクロペイメントを経験してみて、そのスピードや革新性に驚きを隠せないのが正直な感想です。

これはビットコインからはじまった仮想通貨の歴史の変化の1つと感じており、次なるイノベーションはここにあると感じた次第です。

より多くの方が、この感動を実感できることを願っております。

 

CoinPicks LINE@

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Lab

学習項目
 
  • 分析レポート
  • Bitcoinについて
  • Ethereum経済圏について
  • ST(セキュリティートークン)について
  • PoS型プラットフォームトークンについて
  • ステーブルコインについて
  • コンセンサスアルゴリズムについて
  • トークン設計について
  • 流通設計について
  • CBDCについて
  • 各インフルエンサーによる特化した情報
  • Q&A項目の共有
  • 基礎学習
  • 掲示板

https://lounge.dmm.com/detail/761/

などなど…
今後も学習項目は増えていきます。

ライトニングネットワークの仕組みを体験する

ビットコインエバンジェリストの大石氏が最大1,000Satoshiを無制限で希望者にに送付するキャンペーンを開始しました。このキャンペーンを通してライトニングネットワークの仕組みを体験してみましょう。その送金スピードやライトニングの未来に注目するきっかけになります。


ライトニングネットワークと未来

https://twitter.com/bigstonebtc/status/1088061768650305536

ビットコインエバンジェリストのビッグストーンこと大石氏が最大1,000Satoshiを無制限で希望者にに送付するキャンペーンを開始しました。現在のところキャンペーンの終了日程は公表されておりません。

 

キャンペーンの意図

https://twitter.com/bigstonebtc/status/1088072768237629442

ライトニングネットワークについて知ってもらうためには、ユーザー体験が最適解であり、新体験はユーザーの動機を駆り立て市場形成を助長します。実費による今回の活動は流石ビットコインエバンジェリストといったところです。

私自身、ライトニングネットワークによる送受信を体験するのは初めてではあったものの、「送金が速い」というのは認知しておりました。しかし、実際に1,000Satoshiを受信してみるとその速さには驚きました。大石氏が送金してから約2秒から3秒程で着金します。

なぜこれ程速い送金が可能なのでしょうか?

それは、ライトニングネットワークによる取引がオフチェーン処理によってブロックチェーンに記録されないからです。明確には、取引をしたい相手とチャネルを開きオフチェーン取引を実行します。このチャネルが開いている間の取引は、一切ブロックチェーンに記録されず手数料も発生しません(手数料が発生するのはチャネルを開いた時です)。チャネルを閉じると過去の取引はブロードキャストされず、その最新状態のみがブロックチェーンに記録されます。

簡単に言うと、オフチェーン(ブロックチェーン外)での処理になるためマイニングが不要になるからです。

それではあなたも体験してみましょう。

① blue walletをインストール

https://bluewallet.io/

② Tokyo Dragons Denグループに参加

https://t.me/joinchat/BK5vb1JixidsAJs1njqkCg

③ インボイスのQRコードを1,000Satoshi以下で作成してグループ内にQRコードを貼り付け

④ 約2秒から3秒待つ(大石氏が送金完了してからの時間です。)

⑤ 着金

 

blue walletってなに?

オープンソースで開発されており、Segwitアドレスに対応したウォレットです。

ウォレット内の機能についてはこちらをご覧ください。

blue walletはとにかくシンプルで、上述したライトニングネットワークを使用する際の、チャネルを開く動作すらも省くことでユーザー体験を優先しています。むしろライトニングネットワークを使用している感覚がないくらいで最終的には、ユーザーにとって理想形と言えるのではないでしょうか。

 

マイクロペイメントとYalls

今後ライトニングウォレットを使用することで1円以下のマイクロペイメントを誰にでも送ることが可能となり、挨拶やチップの代わりに送ることもでき、今までにはなかったマーケットが開かれるでしょう。

yallsはライトニングネットワークのマイクロペイメントを活用した新たなビジネスモデルでしょう。

アクセスするとトップ画面に記事が並んでいます。

記事一覧の中から1つ選択しました。

続きを読むには$0.005(約0.55円)を支払う必要があります。

このマイクロペイメントを活用したビジネスモデルが今後量産されて来るのかなと思うとワクワクしてきますね。

 

さて、最後に実際にライトニングウォレットでマイクロペイメントを試してみたいという方はこちらをご覧ください。

ライトニングネットワークを使ったマイクロペイメントができるようになる記事

ライトニングネットワークを活用したアプリケーションの紹介と実際に筆者が体験した際の体験談をまとめます。ライトニングネットワークの体験は非常にエキサイティングです。ライトニングウォレットに残高がある方は、この記事をきっかけにマイクロペイメントの初体験となれば幸いです。

 

CoinPicks LINE@

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Lab

学習項目
 
  • 分析レポート
  • Bitcoinについて
  • Ethereum経済圏について
  • ST(セキュリティートークン)について
  • PoS型プラットフォームトークンについて
  • ステーブルコインについて
  • コンセンサスアルゴリズムについて
  • トークン設計について
  • 流通設計について
  • CBDCについて
  • 各インフルエンサーによる特化した情報
  • Q&A項目の共有
  • 基礎学習
  • 掲示板

https://lounge.dmm.com/detail/761/

などなど…
今後も学習項目は増えていきます。

ビットコインにおけるウォレット構造

ウォレットは秘密鍵の容器であり、ビットコイン自体がウォレット内に入っているわけではありません。つまり、ユーザーはビットコインではなく秘密鍵が入ったウォレットを持っているというのが正しい認識です。

UTXOとしてバラバラに存在しているトランザクションに秘密鍵を使用して署名をすることで、自身の所有物としての証明をします。この証明をしているのがUTXO内に含まれるトランザクションスクリプトであることは下記記事で説明しました。

ビットコインにおけるトランザクションの仕組み

今回の記事ではウォレットの構造について説明したいと思います。

 

非決定性ウォレット

初期のウォレットというのは、ランダムに生成された秘密鍵の単なる集まりでした。これをType-0非決定性ウォレットと呼んでいます。

このタイプのウォレットは、初回起動と同時に100個のランダムな秘密鍵とそれに付随する公開鍵が同数生成されます。ユーザーは生成された秘密鍵の厳重な管理とすべての秘密鍵をバックアップする必要があります。

なぜならば、ウォレットにアクセスする際に秘密鍵をバックアップしていないと、鍵に紐ずく資金にアクセスできなくなってしまうからです。よってType-0非決定性ウォレットはビットコインコア(*1)開発者たちからは推奨されておりません。

*1 ビットコインコア:Satoshi Nakamotoの論文を元に集開発開発者。

構造はシンプルですが、大量に生成された分の秘密鍵の管理はハードルが高く実用的ではないと言えるでしょう。

 

決定性ウォレット

Seeded(シード)ウォレットとも呼ばれており、一方向性ハッシュ関数を用いて導出された秘密鍵の入ったウォレットを指します。

またシードウォレットでは、インデックス番号とChaincodeと呼ばれる他のデータと組み合わせることで複数の秘密鍵を生成することができます。

このシード(*2)さえバックアップしておけば、生成された全ての秘密鍵を復元することが可能であり、非決定性ウォレットとは対照的にウォレットの管理と鍵の移行を容易にしています。

*2 シード:初期設定時にユーザーに対して12から24個の英単語の列を表示します。この英単語の列がウォレットのバックアップになります。余談にはなりますが、ハッシュ関数SHA256を用いると24文字の列となり、SHA128を用いると12文字の列となります。

ハッシュ関数に関する記事はこちらをご覧下さい。

ビットコイン におけるハッシュ関数について

 

階層決定性ウォレット

HDウォレットとも呼ばれており、上述した決定性ウォレット(シードウォレット)をBIP32(*3)で定義した最も推奨されるウォレットとなります。

*3 BIP:BIPとは (Bitcoin Improvement Proposal) の略称で「ビットコイン改善案」という意味を持ち、ビットコインの性能や機能について定義しています。

HDウォレットでは、鍵がツリー構造をなしていて親鍵が子鍵群を生成して、それぞれの子鍵が孫鍵群を生成するといった形で、生成が無限に続いていきます。

具体的なHDウォレットの生成方法としては、シードを起点としてマスター秘密鍵とマスターChaincodeが生成され、マスター秘密鍵からマスター公開鍵が生成されます。一方でマスターChaincodeは、親鍵から小鍵、小鍵から孫鍵と階層上に秘密鍵を生成するために使用されます。

もう少し細かく説明すると、親鍵から小鍵を生成するためには親秘密鍵または親公開鍵とChaincodeとインデックス番号が必要で、Chaincodeによって小秘密鍵にランダム性が生まれインデックスによって小鍵の階層が決まります。つまりインデックス番号を変えることで、小鍵0、小鍵1、小鍵2と作り出していくことができます。

このように最初はランダムに生成されたマスター秘密鍵とChaincodeですが、小鍵や孫鍵の生成がされていくことで親の情報が引き継がれていきます。

HDウォレットには2つのメリットとデメリットが考えられます。

メリット

  • ツリー構造の利点を生かしてそれぞれの階層に役割を与えることができる。例えばおつり用、支払い用、受け取り用などと用途を分類化することができます。
  • シードさえあれば全ての鍵の復元が可能なため管理が楽になります。

デメリット

  • シードを紛失した場合、関連したビットコインは全て凍結してしまいます。
  • シードを誰かに知られた場合、関連したビットコインは全て盗まれてしまいます。

 

HDウォレットの識別子

HDウォレットにある鍵は「Pach」命名規則を使用して一意に指定されています。この命名規則はスラッシュ(/)を使って区切ります。

実際の規則例を見たほうが理解が早まりますので、まずは下記をご覧下さい。

m / 0:マスター秘密鍵から生成された最初の子秘密鍵

m / 0 / 0:最初の子供(m/0)の最初の孫秘密鍵

m / 0’ / 0:最初の強化された(*4)子供(m / 0’)の最初の通常の孫秘密鍵

m / 1 / 0:2番目の子供(m / 1)の最初の孫秘密鍵

M / 23 / 17 / 0 / 0:24番目の子供の18番目の孫の、最初の曽孫の最初の玄孫の公開鍵

*4 強化された鍵:強化導出関数と呼ばれており、詳細は割愛しますが、簡単に説明すると生成された鍵のセキュリティーが向上している状態を言います。

マスター秘密鍵から得られた秘密鍵は「m」から始まります。マスター公開鍵から得られた秘密鍵は「M」から始まります。また注意点として数字は0から数えはじめるため、m / 1 はマスター秘密鍵から生成された2番目の子秘密鍵ということになります。

右から左に進むほどに先祖の鍵であることを意味しており、1番左はマスター鍵になります。1つの親鍵はま40億個の子鍵を持つことができます。つまり、ツリー状にどんどん鍵を生成することが可能ですがその分複雑になります。

その改善案としてBIP44が提案されました。

BIP44ではウォレットの目的が明確化されており、下記のような5つの階層構造になっています。

m / purpose’ / coin_type’ / account’ / change / address_index

構造例を下記に示します。

M / 44’ / 0’ / 0’ / 0 / 2:最初のビットコイン口座に対する3番目の受信用公開鍵

M / 44’ / 0’ / 3’ / 1 / 14:4番目のビットコイン口座に対する15番目のおつり用公開鍵

m / 44’ / 2’ / 0’ / 0 / 1:トランザクションに署名するための、ライトコインメイン口座の2番目の秘密鍵

先程と同様にマスター秘密鍵から得られた秘密鍵は「m」から始まります。マスター公開鍵から得られた秘密鍵は「M」から始まります。

最初の構造である「purpose」は常に44となります。

第2階層「coin_type」では、トークンの種類を表しており、ビットコインはm/44’/0’、ビットコインテストネットはm/44’/1’、ライトコインはm/44’/2’によって表されます。

第3階層「account」では、同じ階層内でユーザーが何番目の口座を使用しているのかを示しています。

第4階層「change」では、受け取り用アドレスまたはおつり用アドレスを区別しています。m/44’/0’/0/0が受け取り用アドレス、m/44’/0’/0/1が受け取り用アドレスを示しています。

第5階層「address_index」では、第3階層で指定した口座内の何番目のアドレスなのかを示しています。

 

CoinPicks LINE@

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Lab

学習項目
 
  • 分析レポート
  • Bitcoinについて
  • Ethereum経済圏について
  • ST(セキュリティートークン)について
  • PoS型プラットフォームトークンについて
  • ステーブルコインについて
  • コンセンサスアルゴリズムについて
  • トークン設計について
  • 流通設計について
  • CBDCについて
  • 各インフルエンサーによる特化した情報
  • Q&A項目の共有
  • 基礎学習
  • 掲示板

https://lounge.dmm.com/detail/761/

などなど…
今後も学習項目は増えていきます。

ブロック内のデータとナンス

ブロックチェーンに含まれるデータとブロック承認までの流れについて簡単にまとめたいと思います。

ブロックチェーンという言葉だけが先行して有名になり、その中身やどのようにしてブロックが生成されているかまでは知らない方が多いのではないでしょうか。

 

ブロックチェーンに含まれるデータ

まずはじめにマイナーが承認するブロックにはどのような情報が含まれているのでしょうか。

下図をご覧ください。

ブロックの中身は大きくヘッダーとボディーにわけることができます。ヘッダー部分には「前ブロックデータのハッシュ値」と「ナンス」が含まれ、ボディー部分には「取引情報」が含まれています。

ヘッダー部分に含まれる「前ブロックデータのハッシュ値」がチェーンの役割をしており、このハッシュ値が次のブロックのハッシュ値を求めるために使用されます。その際のハッシュ値が1文字でも異なれば全く違うハッシュ値が生成されるため、改竄は困難であり改竄する場合は過去のハッシュ値から全て書き換える必要があります。

ビットコイン におけるハッシュ関数について

 

ナンスとは

ヘッダー部分に含まれる「ナンス」とは、number used onceの略でブロックのデータをハッシュ関数に通したときに、先頭に0がたくさん並ぶような非常に小さい32ビットのハッシュ値が生成されるように調整するための値のことを言います。

このナンスを見つけるために、マイナーがハードウェアと電力を用いて計算をする作業をマイニングと言います。ビットコインは10分に1度ブロックが生成されますが、この時間はナンスによって調整され、この調整を難易度調整(Difficulty)と言います。Difficultyは2016ブロック(20160分)毎におこなわれマイナーが増えハッシュレートと呼ばれる計算資源が多く集まるとDifficultyが上昇します。逆にハッシュレートが下がるとDifficultyは下降します。

Difficultyはこちらから確認できます。
https://fork.lol/pow/difficulty

実は、ナンスというのはブロックのヘッダーのみに存在するのではなく、ブロックの最初のトランザクションである「coinbaseトランザクション」という特別なトランザクションにエクストラナンス(extra nonce)として存在しています。

extra nonceの役割は非常に重要で急激なDifficultyの上昇の際にマイニングを可能にします。ヘッダーに含まれるナンスは4byteなので4,294,967,296回(約4億回)の計算が可能です。Difficultyが上昇すると約4億回では計算回数が足りません。

するとマイニングが完了しないという自体に陥るため、extra nonceをcoinbaseトランザクションに含めているのです。

こうして新たなブロックが承認・生成されます。

 

CoinPicks LINE@

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Lab

学習項目
 
  • 分析レポート
  • Bitcoinについて
  • Ethereum経済圏について
  • ST(セキュリティートークン)について
  • PoS型プラットフォームトークンについて
  • ステーブルコインについて
  • コンセンサスアルゴリズムについて
  • トークン設計について
  • 流通設計について
  • CBDCについて
  • 各インフルエンサーによる特化した情報
  • Q&A項目の共有
  • 基礎学習
  • 掲示板

https://lounge.dmm.com/detail/761/

などなど…
今後も学習項目は増えていきます。

ビットコイン におけるハッシュ関数について

ブロックチェーンやビットコインの勉強をしていると馴染みのないワードが数多く出てきます。ハッシュやハッシュ関数もその1つで難しい印象をお持ちの方も多いのではないでしょうか。

しかし、ブロックチェーンの技術を学んでいく上で非常に重要な技術になっていることから、ここで要点をまとめたいと思います。

 

一方向性ハッシュ関数の特徴

  • メッセージが1ビットでも異なればハッシュ値は変わる
  • ハッシュ値からメッセージの逆算はできない
  • メッセージの長さに限らず、ハッシュ値は常に固定サイズ
  • ハッシュ値のサイズは小さい

1つずつ説明したいと思います。

メッセージが1ビットでも異なればハッシュ値は変わる

ハッシュ関数は、入力するメッセージが1文字でも違えば全く異なるハッシュ値が出力されます。

ハッシュ関数を用いたハッシュ値は、異なる入力に対して同様の出力が出るという衝突を避けることが最重要であり、その可能性は限りなく0に近いと言えます。

ハッシュ値からメッセージの逆算はできない

入力データをハッシュ値として出力することは容易にできるのですが、出力されたハッシュ値から入力値(メッセージ)の逆算はできないように設計されています。

これは一方向性ハッシュ関数という特性によるものです。

メッセージの長さに限らず、ハッシュ値は常に固定サイズ

入力データの文字数がどれだけ多くても、一定のサイズでハッシュ値が出力されることも入力値(メッセージ)の逆算を困難にしている要素になります。

ハッシュ値のサイズは小さい

入力データのメッセージサイズがどれほど大きくなっても、出力されるハッシュ値は扱いやすいように小さくなってなっています。

これはデータ容量が限られているビットコインにとっては非常に重要なことです。

 

安全なハッシュ関数の性質

安全なハッシュ関数であるためには、弱衝突耐性と強衝突耐性という2つの性質を持っている必要があります。

弱衝突耐性

攻撃者にハッシュ値(h)とメッセージ(m)が与えられたとしてそれをh(m)とします。攻撃者は与えられたh(m)から、h(m)=h(n)を満たすnを求めることができない耐性を言います。

よく誤解があるのですが、nを求めることができないのではなく現実的な時間軸では困難であることを示しています。

強衝突耐性

m≠nかつh(m)=h(n)を満たすm,nを求めることができないことを言います。

弱衝突耐性と強衝突耐性という名前からして弱衝突耐性の方が突破されやすいように思えるのですが、与えられたメッセージに対して衝突を与えなくてはいけない分、強い仮定を置いている問題でそのぶん突破が難しい性質です。また、強衝突耐性は過去に突破されてしまった事例があります。

 

ビットコインで使用されているハッシュ関数

ビットコインはSHA-256(*1)とRIPEMD-160(*2)という2種類のハッシュ関数が使用されています。

2つのハッシュ関数を重ねることを「ダブルハッシュ」と言います。そして、ビットコインではSHA-256をRIPEMD-160の入力値として2回通して使用することで安全を高めています。

*1 SHA-256:256ビットのハッシュ値を出力。ビット長が長ければ長いほどハッシュ衝突を避けることができますが、ビットコインのブロックチェーンでは計算速度や実装のしやすさ、安全性などのバランスを考慮しSHA-256を採用。

*2RIPEMD-160:160ビットのハッシュ値を出力。オリジナルのRIPEMDの強衝突耐性は破られているが、改良版であるRIPEMD-160に関しては現時点では破られていない。

 

Reference

CoinPicks LINE@

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Lab

学習項目
 
  • 分析レポート
  • Bitcoinについて
  • Ethereum経済圏について
  • ST(セキュリティートークン)について
  • PoS型プラットフォームトークンについて
  • ステーブルコインについて
  • コンセンサスアルゴリズムについて
  • トークン設計について
  • 流通設計について
  • CBDCについて
  • 各インフルエンサーによる特化した情報
  • Q&A項目の共有
  • 基礎学習
  • 掲示板

https://lounge.dmm.com/detail/761/

などなど…
今後も学習項目は増えていきます。

秘密鍵と公開鍵とアドレス

暗号化方式

暗号技術には2種類の方式が存在しており、「公開鍵暗号方式」と「共通鍵暗号方式」と呼ばれています。

cryptoeconomicsが重要視している暗号技術は、「公開鍵暗号方式」で暗号用の為に用いる公開鍵と復号用の為に用いる秘密鍵をそれぞれ別の鍵として扱います。

公開鍵暗号方式は、処理が遅いというデメリットがありますが、データの復号化が可能なのは秘密鍵の所有者のみのためセキュリティーの観点から安心感があります。

一方で共通鍵暗号方式というのは、同じ鍵で暗号化と復号化を行う方式を言い、鍵が1つであることから暗号化する際に使用した鍵を復号化する際にも必要になるため、ユーザーによる鍵の使い回しによって漏洩する可能性も考えられる為、安全管理の徹底が必要となります。

下記図にて分かりやすく比較しております。

暗号化方式 共通鍵暗号 公開鍵暗号
暗号化アルゴリズム RC4、DES、3DES、AES RSA、ElGamal
使用する暗号鍵 共通鍵 公開鍵、秘密鍵
鍵の管理 通信接続先ごとに作成 通信接続先の数に関係なく1つだけ作成
鍵の交換 第三者に知られないよう安全に交換 作成した公開鍵を一般に公開
データの処理時間 速い 遅い

秘密鍵(Private key)と公開鍵(Public key)

鍵の生成時に使用されているアルゴリズムを「 楕円曲線暗号(ECC)の楕円曲線DSA(ECDSA)」と言います。

ECDSAは楕円曲線という数学を使ってDSAと同じ原理の公開鍵暗号を構成したものです。一般的に普及している暗号アルゴリズムはRSAですが、ECCアルゴリズムはRSAと比較してビット数を少なくすることができ、処理性能を高速化することが可能です。

ECDSAによって公開鍵と秘密鍵のペアがランダムに生成されます。正式には秘密鍵から公開鍵が生成され、公開鍵からビットコインアドレスが作成されます。一方向性ハッシュ関数という暗号方式を用いている為、ビットコインアドレスから公開鍵の推測や公開鍵から秘密鍵の推測は困難となっています。(推測が不可能という訳ではなく、極めて非現実的ということです。)

一方向性ハッシュ関数についてはこちらをご覧ください。

ビットコイン におけるハッシュ関数について

秘密鍵はビットコインの所有権を表しており、秘密鍵の紛失はビットコインの紛失を意味します。上述したように、公開鍵やビットコインアドレスから秘密鍵が漏洩する可能性は極めて低い為、第三者に知られても問題がありません。

上図にあるように秘密鍵はブロックチェーン内でトランザクションの署名に使用され、公開鍵はトランザクションの照合に使用されます。

つまり送信者が秘密鍵を使用して署名したトランザクションと、秘密鍵から生成された公開鍵でトランザクションの署名の照合が可能であれば正当な取引として認められます。

 

アドレスの生成方法

ビットコインアドレスは公開鍵から一方向性ハッシュ関数を用いて生成されていることがわかりました。

ビットコインアドレスが生成されるまで

ビットコインアドレスは1・3またはbc1 から始まる27~34 文字の文字列です。

1から始まるのは一般的なビットコイン(P2PKH)アドレスで、3から始まるのはP2SHアドレスです。また、bc1から始まるビットコインは、Segwitアドレスと決まっています。

1BitQEtcoxAnViwUYX9k6KupmmsEfWrGnr

  1. 秘密鍵からECDSAで公開鍵を生成
  2. 公開鍵をハッシュ関数SHA-256に通しハッシュ値を得る
  3. そのハッシュ値をさらにハッシュ関数RIPEMD-160に通しハッシュ値を得る
  4. ハッシュ値の先頭にプレフィックスとして00を加える
  5. ハッシュ関数SHA-256に通す
  6. もう一度ハッシュ関数SHA-256に通す
  7. 4byteのチェックサムを一番後ろに加える
  8. Base58(*1)のフォーマットでエンコーディングする

*1 BASE58 :二進数で表されたバイナリデータを文字として扱うためのエンコード方式のこと。仮想通貨では、公開鍵や秘密鍵、アドレスの形式を変換するときに広く使われている。特徴としてユーザーの誤認識を防ぐために、英数字以外の文字や数字の「 0 」と英大文字の「 O 」、数字の「 1 」と英小文字の「 l 」などが場外されている。また、 BASE58 にはチェックサムという機能がついており、無効なアドレスを検出してユーザーの誤送信時に知らせる。

ハッシュについては、こちらを読んでおくと理解が早まります。

イーサリアムアドレスが生成されるまで

イーサリアムアドレスは、0xから始まる合計42文字の文字列です。

0x6079dd09E8bfDFb3032eE0
aD6f35Eb3e9aa506B6

1.秘密鍵からECDSAで公開鍵(64byte)を生成

e145ccef1033dea239875dd00dfb4fee6e3348b
84985c92f103444683bae07b83b5c38e5e2b0c
8529d7fa3f64d46daa1ece2d9ac14cab9477d04
2c84c32ccd0

2.公開鍵をハッシュ関数Keccak-256に通し文字列(32byte)を得る

2a5bc342ed616b5ba5732269001d3f1e
f827552ae1114027bd3ecf1f086ba0f9

3.最初の12byte消し20byteのアドレスになる

001d3f1ef827552ae1114027bd3e
cf1f086ba0f9

4.そのアドレスが16進数であることを示すため接頭辞に”0x”を付加

0x001d3f1ef827552ae1114027b
d3ecf1f086ba0f9

イーサリアムアドレスの生成時には、BASE58フォーマットが使用されておらずチェックサム機能がついておらず、誤送信をしても知らせてくれることはありません。なぜこの機能がついていないかというと、ENS(Ethereum Name Service)と呼ばれるアドレスをWEBのドメインのような役割で可読性を高くするという機能を実装しているからです。

しかし、ICAP(Inter exchange Client Address Protocol)形式のアドレスといったチェックサム付きのフォーマットも検討されています。実際にはICAPへの移行はあまり進んでいません。そこで2016年1月にイーサリアム創設者のVitalik Buterin氏が提案した、Capitals-based checksumと呼ばれる誤送信の検出方法が採用されました。

Capitals-based checksumの役割は、アドレスの小文字を大文字に置き換えることで誤送信検出機能を持たせており、99.986%の精度で誤りを検出できるとのことです。

変換前:0x001d3f1ef827552ae1
114027bd3ecf1f086ba0f9

変換後:0x001d3F1ef827552Ae
1114027BD3ECF1f086bA0F9

 

チェックサムはどのように機能しているのか

先ほどから何度か登場している「チェックサム」は、データ送信において送信側に誤送信検出する手法のことを言います。検出機能がない場合、送信側が間違っていても気付くことなく、遅延や損失を招くことになるため、ユーザビリティの観点からも非常に重要な機能と言えます。

そのチェックサムの仕組みについて説明します。

例えば、”12345″というデータを送信するとします。ただしそのデータをそのまま送信するのではなく、検出機能を持たせるために「S」という文字を12345″の合計値「15」として計算して追加します。

そして、送信するデータ”12345″の末尾に「S」付けて送信します。送信データは、”12345+S” = “1234515”となります。このチェックサムの仕組みを受信側が理解していれば、データの合計値と付加した「S」の間に不一致が生じるため受信したデータの一部が誤っていた場合に誤りを検出することができます。

例えばチェックサムをつけた状態の正しいデータは”1234515”ですが、何らかの原因によって”1234615”とデータが受信されたとします。

正しいデータ:”1234515”

誤ったデータ:”1234615”

この時、誤ったデータのチェックサムを取り除き、「S’」という文字を”12346”の合計値「16」として計算します。受信したデータ“1234515”から、チェックサムSは15であることを受信側は知っています。

一方で、誤ったデータを元に再度計算して求めたチェックサムS’は16です。この違いから、データに誤りがあることを検出することができます。

 

CoinPicks LINE@

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Lab

学習項目
 
  • 分析レポート
  • Bitcoinについて
  • Ethereum経済圏について
  • ST(セキュリティートークン)について
  • PoS型プラットフォームトークンについて
  • ステーブルコインについて
  • コンセンサスアルゴリズムについて
  • トークン設計について
  • 流通設計について
  • CBDCについて
  • 各インフルエンサーによる特化した情報
  • Q&A項目の共有
  • 基礎学習
  • 掲示板

https://lounge.dmm.com/detail/761/

などなど…
今後も学習項目は増えていきます。

ビットコインにおけるUTXOとは

ビットコインにおけるトランザクションとはブロック内に含まれる取引情報のことを指し、ビットコインの送金をネットワーク上に知らせることを意味するとお伝えしました。

ビットコインにおけるトランザクションの仕組み

今回は、ビットコインのすべての取引において新たに生成されているUTXOについてわかりやすくお伝えしたいと思います。

 

UTXOとはなに?

UTXOとは「Unspent Transaction Output」の略で「未使用のトランザクションアウトプット」という意味です。

トランザクションアウトプットがUTXOであり、このUTXOが次のトランザクションインプットになるのです。少しわかりにくいので下図をご覧ください。

このように全てのトランザクション内の取引(インプット&アウトプット)はUTXOを介して処理されており、UTXO内に含まれるトランザクションスクリプトによってUTXOの所有者を証明しているのです。ただしUTXOの所有者になったからといって自身のウォレットでUTXOを管理しているのではなく、ブロックチェーン内に散らばっているUTXOをウォレットが参照することでウォレットに残高を表示しています。

物理的に誰もが所有をしていないという特性上UTXOは、未使用のトランザクションと呼ばれています。

他にもUTXOには様々な特性があります。

 

UTXOの特徴

UTXOの特徴についていくつか紹介したいと思います。

UTXOは分割できない

物理的な硬化である500円や100円が分割することができないと同様に、1BTCのUTXOを0.5BTCと0.5BTCのUTXOといった分割をすることができません。ただしアウトプットによる分割は可能です。

例えばアリスがボブのカフェで0.1BTCの支払いをする際に、アリスの残高である1BTCから0.1BTCの支払い(アウトプット)、つまり分割はできません。しかし、1BTCのうち0.1BTCはボブのアドレスに支払い(アウトプット)、0.9BTCを自身のおつりアドレスに支払い(アウトプット)することは可能ということです。

この特性上おつり用アドレスは非常に重要だということが理解頂けたかと思います。

プライバシーの保護

UTXOによって取引の追跡は容易となっているが、個人の特定や関係性に対しては強い耐性があります。

下図をご覧ください。
先ほどのアリスとボブの名前をアドレスに変換しただけになります。

このように表示されていれば、0.1BTCと0.9BTCを誰に送金しているかはもちろん、自身のおつりアドレスに送っていることすらも第三者には分かりません。この特性上UTXOはプライバシー保護に長けているということが理解頂けたかと思います。

 

アカウントベースとは

ビットコインにおけるトランザクション(残高)の管理はUTXOを用いていることをお伝えしてきました。全てのトークンやチェーンがUTXO方式を採用しているのかというとそうではありません。例えばイーサリアム(ETH)やNEMではアカウント方式という方法を採用しています。

アカウント方式というのはデータ量の減少と簡易性を重要視することで汎用性を高めており、UTXOのような複雑な残高管理方法とは異なり、単純に残高としての記録から送金をすると送金額分が自身の残高から減算されます。 

アカウントベースはイーサリアムのような拡張性を前提においたトークンには最適です。もしイーサリアムにUTXOが採用されていると、スマートコントラクトのような複雑な処理がより複雑になることはもちろん、コントラクトが稼働するたびに新たなUTXOが作られ1ブロックあたりのトランザクション数が肥大してしまいます。

ビットコインの場合、1ブロックあたりのトランザクション数は、ビットコインにおけるトランザクションの仕組みでお伝えしたように1500から2000前後のトランザクションを処理できるとお伝えしました。なぜこのような差があるのかというと1ブロック内に含まれる1トランザクションあたりの容量に左右されるからです。

この1トランザクションあたりの容量はインプットとアウトプットの量で決まります。

つまりコントラクトが稼働するたびにアウトプットが生成され、1ブロックで処理できる限界容量に達してしまうことでトランザクションが減少するということです。そうすると、トランザクション詰まりが発生し肝心な時にアプリケーションが動かない、処理ができないというスケーラビリティ問題に直面します。

なのでイーサリアムでは、UTXO方式ではなくアカウントベース方式を採用しています。

 

Reference

 

CoinPicks LINE@

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Lab

学習項目
 
  • 分析レポート
  • Bitcoinについて
  • Ethereum経済圏について
  • ST(セキュリティートークン)について
  • PoS型プラットフォームトークンについて
  • ステーブルコインについて
  • コンセンサスアルゴリズムについて
  • トークン設計について
  • 流通設計について
  • CBDCについて
  • 各インフルエンサーによる特化した情報
  • Q&A項目の共有
  • 基礎学習
  • 掲示板

https://lounge.dmm.com/detail/761/

などなど…
今後も学習項目は増えていきます。

ビットコインにおけるトランザクションの仕組み

トランザクションのインプットとアウトプット

トランザクションとはブロック内に含まれる取引情報のことを指し、ビットコインの送金をネットワーク上に知らせることを意味します。また、ビットコインは約10分に1度ブロックが生成され1ブロック毎に1MBの容量までトランザクションの処理をすることができます。

下図グラフは1日のトランザクション総数を表しており、1日に生成できるブロックは144ブロック、2018年12月1日のトランザクション総数は241,847ブロックなので1ブロック1,679トランザクションが処理されていることが分かります。だいたい平均して1ブロックあたり1500から2000前後のトランザクションが処理されていると覚えておいてください。

つまり約10分あたりの取引量が増えると、平均トランザクション数を越えてしまい1ブロック内に収まりきらなくなります。収まりきらなかったトランザクションは次のブロックでの処理となるため時間を要してしまいます。これがスケーラビリティ問題(*1)の入り口です。

*1 スケーラビリティ問題:ビットコインのスケーラビリティ問題とは、ビットコインにおけるブロックチェーンのブロックサイズが1メガバイト(MB)に制限されている結果起きている問題。

トランザクションは1個または複数のインプットとアウトプットを持っており、インプットの方が少しだけ大きくなります。この差分がマイナーへの手数料となります。

トランザクションはインプットからアウトプットに価値の移転がおこなわれ、インプットはトランザクションがどこからビットコインが送られてきたかを示し(通常は前のトランザクションのアウトプット)、アウトプットでは現在の現在の所有者が送り先を指定することで新たな所有者を指定することができます。

これらのインプットとアウトプットが正しく行われているのかを検証するためのプログラムを「トランザクションスクリプト」と言い、UTXO(*2)内に組み込まれています。

*2 UTXO:「Unspent Transaction Output」の略で「未使用のトランザクションアウトプット」という意味を持ちます。ビットコインの取引は全てUTXOを介して実行されており、極めて重要であるためこの章では割愛させていただきます。

ビットコインにおけるUTXOとは

 

トランザクションスクリプトとは何か?

トランザクションにはそれぞれインプットとアウトプットが存在しており、トランザクションスクリプトによって取引の検証が行われていることが分かりました。また、トランザクションスクリプトは「scripStig」と「scriptPubKey」の2種類のScriptがあり、トランザクションのアウトプットにおける条件指定にscriptPubKeyが用いられ、インプットにおける条件解除にscripStigが用いられています。

下図はトランザクションの構図を示しており、scriptSigはインプットデータの中に、scriptPubKeyはアウトプットデータの中に存在していることがわかります。

scriptSigとscriptPubKeyによるトランザクションの証明について、実際にアリスがマイケルから受け取ったビットコインを使用して、ボブのカフェで支払いをする場合を例に詳しくみてみましょう。

アリスは現金と引き換えにマイケルからビットコインを受け取りました。これはマイケルのアウトプットがアリスのインプットになったことを示しています。この取引(トランザクション)は、アリスの秘密鍵でロックされています。アリスがボブのカフェでに支払いをするためには、scripStigでアリス自身の署名と公開鍵を用いることでアンロックする必要があります。

このscripStigによるアンロックによって、マイケルのアウトプットがアリスのインプットになったことを証明しています。なぜならアンロックできるのは秘密鍵を所有しているはずの送信先(アリス)だけだからです。

こうしてアンロックされたインプットは、scriptPubKeyで新たなアウトプットを指定することができます。つまり支払いの為にボブのビットコインアドレスでロックすることを意味します。送信先であるボブがscripStigで署名と公開鍵を用いることで、新たなインプットとして所有権をネットワーク上に証明することになります。

これがscripStigとscriptPubKeyを用いたインプットとアウトプットの証明になります。そして、この例は1つのトランザクションの形式を説明しています。

 

トランザクションの形式

一般的なトランザクション

一方のビットコインアドレスからもう一方のビットコインアドレスに支払いをするための一般的なトランザクション形式です。その支払いにおつりが含まれる場合は、トランザクションのアウトプットにおつりアドレスが含まれ送信者に戻されます。その場合、1つのインプットに対して2つのアウトプットが用意されます。

おつり用のアドレスというとユーザーにはあまり馴染みが無いように思えますが、それは取引所やウォレットのプール内で管理されているが為に気にする必要がないだけであって、UTXOを採用しているビットコインにとっておつり用のアドレスは非常に重要です。これについては後日UTXOにて詳細をお伝えさせて頂きます。

ビットコインにおけるUTXOとは

集約型トランザクション

複数のインプットを1つのアウトプットにまとめて使用されるトランザクション形式です。このタイプのトランザクションは、少額決済やおつりなどの小さなトランザクションをまとめて大きなトランザクションにするなめに使用されます。

分配型トランザクション

1つのインプットを複数のアウトプットに分けて複数の受取人に使用されるトランザクション形式です。このタイプのトランザクションは、企業内での給与の支払いや小さなトランザクションを集めて1つの大きなトランザクションとしてまとめるために使用されます。

 

トランザクションの確認

最後に実際に処理されているトランザクションの生データをblockchainで見てみましょう。

高さ:現在のブロック数(約10分に1度生成)

年齢:ブロック生成から経過した時間

トランザクション:1ブロックあたりのトランザクション数

鉱夫:マイニングに成功したプール

サイズ:ブロックサイズ

各ブロックの中には下図のように複数のトランザクションが入っており、赤色で囲んだ部分の左側がインプットで右側がアウトプットを表示しています。アウトプットデータ側の二段目のアドレスがおつり用のアドレスになります。

青色で囲んだ部分に実際にアウトプット(送金)した金額とおつりとして戻ってくる金額が表示されています。

このように実際のトランザクションデータを追っていくと、アウトプットされたものがインプットに変わり価値の移転を容易に追跡することができます。この連鎖(チェーン)はどこからはじまるのかというと、約10分に1度マイナーによって新たなブロックが生成された際のブロック報酬として、マイナーの指定しているアドレスにアウトプット(送金)されます。

これはcoinbaseトランザクションと呼ばれています。

coinbaseトランザクションにはインプットは存在しておらず、ブロック報酬のアウトプットのみ存在しているのです。

 

Reference

 

CoinPicks LINE@

おかげさまで現在お友達が1057名を突破しました。仮想通貨の最新情報や重要なファンダ情報などを「プッシュ通知」にて誰よりもはやくお届けします。

https://platform.twitter.com/widgets.js

CoinPicks Lab

学習項目
 
  • 分析レポート
  • Bitcoinについて
  • Ethereum経済圏について
  • ST(セキュリティートークン)について
  • PoS型プラットフォームトークンについて
  • ステーブルコインについて
  • コンセンサスアルゴリズムについて
  • トークン設計について
  • 流通設計について
  • CBDCについて
  • 各インフルエンサーによる特化した情報
  • Q&A項目の共有
  • 基礎学習
  • 掲示板

https://lounge.dmm.com/detail/761/

などなど…
今後も学習項目は増えていきます。