暗号資産/仮想通貨
現在、多くの暗号資産がありますが、最初につくられた暗号資産はビットコイン(BTC)です。そして、BTCは世界で最も流通している暗号資産です。2008年、Satoshi Nakamoto(サトシ・ナカモト)と称する人物が、「Bitcoin: A Peer-to-Peer Electronic Cash System(ビットコイン: P2P 電子通貨システム)」という論文を発表しました。この論文には、P2P(ピアツーピア)ネットワークやブロックチェーンについて記述されています。
すなわち、そこでは、金融機関のような第三者を介在せずに、ユーザー同士が直接取引を行うことができること、ブロックチェーンというデータベースの仕組みを活用することで、ネットワークの信頼性が向上することなど、ビットコインの仕組みが説明されていました。この論文によって、ビットコインが生まれ、多くの暗号資産がつくられるきっかけとになりました。
P2Pとは、Peer-to-Peerの略称で、不特定多数の端末が、サーバを介さずに端末同士でデータファイルを直接共有することだよ!
このように、暗号資産は、インターネット上で、ユーザー同士が直接取引できる資産です。また、事業者(暗号資産交換業者)の交換所などを通じて、暗号資産を入手したり、法定通貨(円やドルなどの通貨)に換金したりすることができます。
また、インターネットを通じて、商品を購入する場合に使用できる場合もあります。このように、暗号資産は、財産的価値をやり取りできる資産ですが、中央銀行などが発行する法定通貨ではありません。
暗号資産には、ビットコインやイーサリアムなど多くの種類があります。一方、暗号資産は、法定通貨のようにその価値が保証されているわけではありません。つまり、現金通貨や預金通貨でもありません。
そのため、銀行やカード会社などを介して、残高や取引が記録されることもありません。一方で、ビットコインなどの暗号資産は、安全性を確保するため、電子署名、ブロックチェーン、マイニングという仕組みを採用しています。
電子署名
電子署名では、暗号資産のデータを安全にやり取りするため、秘密鍵と公開鍵を使用します。これにより、データの改ざんなどの不正を防止します。すなわち、データを相手に送るときには、データを暗号化して送ります。暗号化されたデータは、送信者と受信者が公開鍵と秘密鍵を使用することによって、安全を確保することができます。
具体的には、受信者は、公開鍵と秘密鍵を作成して、公開鍵を送信者に送ります。送信者は、その公開鍵を使ってデータを暗号化します。そして、その暗号データを受信者に送ります。受信者は、秘密鍵で受信した暗号データを復号します。つまり、公開鍵で暗号化されたデータは、秘密鍵のみが復号することができます。
ブロックチェーン
ビットコインなどの暗号資産の取引データを記録するために、ブロックチェーンの技術が使われています。ブロックチェーンとは、暗号資産システムの参加者同士が、ネットワーク上で直接接続して、暗号技術を使って取引データを記録・管理するデータベースの一種です。
すなわち、一定時間に発生した取引データをひとまとめにして、暗号でデータの両端を閉じます。それは、一定時間の取引データが1つのブロックに格納されているような形になります。この作業は時系列で行われます。
そして、各ブロックには、直前のブロックの取引データが含まれています。このような仕組みによって、各ブロックは、チェーン(鎖)のようにつながっているイメージになります。そのため、ブロックチェーンと呼ばれています。
また、取引データがブロックに格納される際には、その取引データが正しいことを確認する手続きが行われます。これをマイニングと呼びます。また、取引データは、ホストコンピューターなどに保存されているのではなく、暗号資産システムの参加者同士が接続しているネットワーク上に保存されています。
そのため、このシステムの参加者なら、誰でも、取引データにアクセスして、そのデータを保持することができます。このような仕組みから、誰かがネットワーク上の取引データを改ざんした場合には、他の保持者がその改ざんを指摘することができます。
すなわち、ブロックチェーンの技術によって、取引データの改ざんを行うことが難しくなる状況をつくり出しています。また、不特定多数のシステム参加者が、取引データをそれぞれ保持しているため、システム障害を防ぐこともできます。
マイニング
マイニングとは、暗号資産の取引データが格納されているブロックに、正しい取引データが記録されているかどうかを検証する作業です。具体的には、検証を行うブロックの取引データ、取引データが正しいことを検証した直前のブロックのハッシュ値、
そして、ナンス(nonce)値の3つのデータをハッシュ関数に代入します。その結果が、先頭に0(ゼロ)がたくさん並ぶ値になったとき、検証対象にしたブロックの取引データが、正しいことを確認できるという仕組みです。
ハッシュ値(ダイジェスト値)とは、ハッシュ関数という計算プロセスを使って、
元のデータから生成された不規則な文字列のことだよ!
ハッシュ値は、元のデータが同じであれば、同じ値が生成され、
元のデータが少しでも異なれば、全く異なる値が生成されるよ!
そして、生成された値から元のデータを復元することはできないんだ!
ナンス(nonce)とは、number used onceの略で、「一度だけ使われる数」という意味だよ!
ナンスは、使い捨ての32ビットの値のことで、主に暗号通信などで使われるんだ!
つまり、マイニングとは、データが正しいことを確認できる任意の値を見つけ出す作業のことです。その任意の値を見つけ出した人は、ネットワークにその値を報告します。システム参加者は、任意の値をハッシュ関数に入れてみることで、正しいかどうか簡単に判断できます。
正しい取引データであることが確認されると、そのブロックは、承認されて、ブロックチェーンに連結されます。そして、最初にマイニングに成功した人は、報酬として、新しく発行された暗号資産を受け取ることができます。
すなわち、マイニングとは、暗号資産の取引に不正がないことを確認するため、コンピューターを使って行う計算作業のことです。一方、取引データのマイニングには、高性能のコンピューターと膨大な電力が必要となります。そのため、一般の個人がマイニングに参加することは極めて難しいと言われています。
コメント