英文原文:https://www.nervos.org/knowledge-base/utxo_vs_account_based
UTXO モデルとアカウント モデルは、ブロックチェーンの世界で最も人気のある 2 つの会計方法です。 2 つのモデルは、トランザクションの処理方法とブロックチェーン上での記録方法が根本的に異なります。
一言で言えば、UTXO モデルは現金取引のように機能し、アカウント モデルは銀行口座のように機能します。
UTXO モデルの仕組み
UTXO は現金のように機能し、各 UTXO はユーザーが使用できる固有の紙幣のようなものです。 UTXO モデルのブロックチェーンでは、各ユーザーは所有する暗号通貨を追加することで残高を追跡できます。
たとえば、ボブという名前の人がファーストフード レストランに行き、10 ドルのハンバーガーを買うとします。しかし、彼は 20 ドル紙幣しか持っていなかったので、ハンバーガーの代金を支払うとき、レストランは彼におつりとして 10 ドル紙幣を渡さなければなりませんでした。
UTXO ベースのブロックチェーンでは、20 ドル紙幣と 10 ドルの小銭は 2 つの別個の UTXO として表されます。したがって、ボブの場合、彼の仮想通貨アカウントの残高は、物理的な財布が財布に入れたさまざまな額面の紙幣の合計にすぎないのと同じように、彼が所有する UTXO の合計にすぎません。
したがって、ビットコインなどのUTXOベースのブロックチェーンにはアイデンティティの概念はなく、UTXOまたは異なるウォレットアドレスに関連付けられた「未使用のトークン」のみが存在します。ここで重要な点は、ビットコイン プロトコルはユーザー残高を追跡するのではなく、UTXO とそれらの UTXO が属するアドレスを追跡するということです。
アカウントモデルの仕組み
アカウント モデルは、現在多くのブロックチェーンで使用されている会計方法です。アカウント モデルはもともとイーサリアム ブロックチェーンから派生したもので、現在は他の多くのブロックチェーン プロジェクトでトランザクションや状態の変化を記録するために使用されています。
口座モデルの会計方法は銀行口座と同様であり、送金記録は銀行口座の送金者と受取人の残高推移で表されます。たとえば、アリスがボブに 10 ドルを送金すると、銀行はアリスの口座残高から 10 ドルを差し引き、ボブの口座残高に 10 ドルを追加します。
アカウントモデルに基づくブロックチェーンにも同じことが当てはまります。違いは、ユーザー残高を記録する分散台帳が多くのノード (フルノード) によって維持されることです。ここで重要な点は、アカウントベースのブロックチェーンはトークンを追跡するのではなく、ユーザーアカウントの残高の変化を追跡するということです。このモデルにはアイデンティティの概念があり、通常、ユーザーはブロックチェーンのアカウントまたはアドレスに関連付けられます。
UTXOモデルとアカウントモデルの主な違い
UTXO モデルとアカウント モデルの長所と短所を比較するときは、2 つのモデルの特徴を正確に反映しているいくつかの違いに注意する必要があります。
たとえば、UTXO モデルでは、暗号通貨ウォレットは通常、ユーザーのトランザクションごとに新しいアドレスを生成するため、第三者がトランザクションを追跡したり個人にリンクしたりすることが困難になります。 UTXO モデルのこの機能は、アカウント モデルよりも高いレベルのプライバシーを提供します。これは、アカウント モデルでは、透明なアカウント残高を通じてアカウントを個人に関連付けることが容易であるためです。
さらに、UTXO モデルは並列トランザクション処理、つまり多くのブロックチェーン トランザクションを同時に処理することを当然サポートしているため、効率とスループットが向上します。これは、トランザクションを順番に、つまり直線的に次々に処理することしかできないアカウント モデルとは大きく対照的です。
トランザクションの並列処理は、増大する需要に対応してネットワークが 1 秒あたりにより多くのトランザクションに対応できるため、トランザクション量が多い状況で特に役立ちます。さらに、トランザクション確認時間の短縮、応答時間の短縮、効率の向上、リソース使用率の向上にも役立ちます。
一方、アカウント モデルに基づくブロックチェーンは、一般に、UTXO モデルに基づくブロックチェーンよりもプログラム可能であるか、スマート コントラクトにより適していると考えられています。これは、アカウント モデルに基づくブロックチェーンがステートフルであるため、ユーザーのアカウントとスマート コントラクト間のより複雑な相互作用が可能になり、開発者がプログラマブル ロジックを作成して複雑な分散アプリケーションを構築することが容易になるためです。言い換えれば、トランザクションはアカウント間の直接転送またはスマート コントラクトへの関数呼び出しに似ており、従来のプログラミング パラダイムに近いため、アカウント モデルは一般に開発者にとって使いやすいものです。
まとめ
全体として、UTXO モデルとアカウント モデルの違いは、トランザクションとステータスを管理する方法の違いに起因します。 UTXO モデルはプライバシーを強化し、UTXO の追跡に重点を置いてトランザクションを並行して処理できます。アカウント モデルは、アカウントと残高のグローバルな状態を維持することでトランザクションを簡素化し、開発者が開発を容易にし、スマート コントラクトや複雑なアプリケーションにより適したものにします。
開発者、ユーザー、関係者がブロックチェーン エコシステムを構築または参加する際に情報に基づいた意思決定を行うには、これらのモデル間のニュアンスを理解することが重要です。
#CKB #BTC #ネルボス #blockchain