大福帳 ブロックチェーンの基礎技術 その2
ナカモトサトシはビットコイン論文に「純粋なPeer-to-Peer上で・・・」と述べており、分散台帳が既にあるものとの前提で書いています。
もし、ナカモトサトシがビットコイン誕生前夜編で取り上げたショーン・パーカーなら、Napsterの台帳はサーバーにあるので、彼の述べた前提に合いません。
もし、ナカモトサトシが金子勇なら、Winnyの台帳は分散しており、彼の述べた前提と一致します。
ナカモトサトシが金子勇であったらというのは私の夢想にすぎませんが、以下金子勇になったつもりでビットコイン技術を紐解いていきます。
私が金子勇なら分散台帳技術の解説を省略し、「ご興味のある方はネット上で調べて下さい」と言いたくなります。
日本で江戸時代から商人が使っていた大福帳は、1つの取引を1行に書き並べたものです。ブロックもこの考え方と全く同じです。
台帳がもし一冊の大福帳で多くのPCに(スマホ含む)コピーされていたら、複数の大福帳が更新された場合、最初に更新された1つだけを有効にして他を無効にするのは大変な作業になります。
1日分が1冊になるように台帳を分割するなら、あちこちで大福帳が更新された場合、最初に更新された大福帳の本日分だけを有効にして他を無効にするだけになります。これで作業はかなり軽くなります。
台帳が大福帳(ブロック)を時間的順序で積み重ねたものとすれば、それをネットワーク上で実現するのには次の工夫が必要になります。
取引の記録をどのように書き込むか
「A氏がB氏にxBTC(BTCはビットコインの単位)支払った」というデータを1行に記載します。
ここで実際のデータを見ることができます。どのようなものか、一度見ておくと良いでしょう。
どのように大福帳を積み重ねるか
締める大福帳に「前日のこの台帳の次がこの台帳とする」と記載する。 多くのPCで同時に記載されるが、本日の締めで最初に登録した1冊だけを有効にする。この仕組みが二重使用問題の解決策です。
この記事が参加している募集
よろしければサポートお願いします! いただいたサポートは全て『「思い出の場所」の記事とGoogle地図を関連付けるWeb地図アプリ』のLancersでのプログラミングの外注に使わせていただきます。 よろしくお願いします。