私は長い間ビットコインのスクリプトを真剣に勉強しておらず、最近Taprootの資産を把握したいと思っていましたが、Taprootトランザクションをバイパスできないことがわかったため、TaprootのBIPをいくつか読む必要がありました。
最も一般的なビットコイントランザクションは、ペイツーパブリックキーハッシュ(P2PKH)と呼ばれ、ビットコインを公開鍵のハッシュ、つまりビットコインアドレス、つまり1で始まる種類のアドレスにロックします。
アリスがP2PKHトランザクションを介してボブに1btcを支払いたい場合、プロセスは次のように説明できます。
P2PKH取引の技術的プロセス:
アドレスと公開鍵のハッシュ: ボブはアリスにビットコインアドレスを与えますが、これは実際には彼の公開鍵のハッシュです。
ロック解除&ロック:ボブに1BTCを送るには、アリスは自分のウォレットから資金のロックを解除する必要があります。 次に、トランザクションを作成するときにこの 1 を適用します BTCはボブの公開鍵ハッシュにロックされています。
ボブの署名とロック解除:ボブがこの1を使いたいとき BTCの場合、彼はアドレスの所有者であることを証明するために、秘密鍵で署名する必要があります。 このようにして、彼は資金のロックを解除し、新しい取引に使用することができます。
素人の説明:
ボブはアリスに鍵のついた開いた箱を渡します(ここでの鍵はボブのビットコインアドレスです)。
アリスは1BTCを箱に入れ、正しい鍵(つまりボブの秘密鍵)を持っている人だけが開けられるように箱をロックします。
ボブが1BTCを使いたいときは、自分の鍵(秘密鍵)を使って箱を開け、ビットコインを取り出し、それを他の人の箱に入れる(別の取引をする)という選択肢があります。
2番目に一般的なビットコイントランザクションはペイツースクリプトハッシュと呼ばれ、マルチシグを実装するためにこのトランザクション形式を使用することがよくあります。
アリスがP2SHトランザクション形式で1BTCをボブに送りたい場合、次のように説明できます。
P2SH取引の技術的プロセス:
公開鍵ハッシュの代わりにスクリプトハッシュ:P2SHトランザクションでは、資金は公開鍵ハッシュではなくスクリプトハッシュにロックされます。
このスクリプトには通常、複数のシグニチャ(マルチシグ)やその他の特定の条件を要求するなど、複数の条件が含まれています。
トランザクションの作成と送信:送信者(Aliceなど)は、このスクリプトハッシュアドレスにビットコインを送信します。 このアドレスは受取人(ボブなど)によって提供され、このアドレスの背後に隠されたスクリプトには、資金のロックを解除するために必要な条件が含まれています。
つまり、このスクリプトハッシュの元のスクリプトはボブが所有していますが、ボブはこのスクリプトを公開せず、このスクリプトのハッシュ値のみを公開します。 (これは、上記のP2PKHが公開鍵ハッシュに相当します)
資金のロックを解除する:ボブ(受取人)がビットコインを使いたいとき、マイナーがトランザクションを検証するために使用できる元のスクリプト(これはロック解除スクリプト、または償還スクリプト)を提供します。
実際、P2SHと上記のP2PKHの違いは、ボックスのロックが異なること、P2SHのロックはボブがカスタマイズでき、非常に複雑なロックを構築できることです。
たとえば、最も一般的なマルチシグは、ボブが複数のロック解除キーをカスタマイズし、ロックを解除するキーの数を定義することです。
P2SHのトランザクションメカニズムを利用して、スクリプトハッシュをロックとして使用し、元のスクリプトを秘密鍵として使用し、さまざまなロック解除条件をカスタマイズできます。 これにより、ビットコインははるかにプログラム可能になります。
P2PKHは公開鍵ハッシュに支払われ、コストは公開鍵に対応する秘密鍵署名の提供を条件としています。
P2SHはスクリプトハッシュに支払われ、その支払いは提供される元のスクリプトを条件としています。
P2TRは、ペイツーパブリックキーハッシュとペイツースクリプトハッシュの組み合わせであるため、秘密キー署名によって直接行うか、元のスクリプトを提供するかの2つの支払いパスがあります。
また、P2TRのスクリプトはn個のスクリプトを含む二分木であり、リーフノードスクリプトとツリーのツリーパスを提供することで使用することができます。
このように、P2TRトランザクションはより複雑な支出条件を定義することができ、ビットコインのプログラマビリティはより豊富です。
24k 人気度
33k 人気度
28k 人気度
44k 人気度
4k 人気度
ポピュラーサイエンス: Taprootトランザクションとは?
私は長い間ビットコインのスクリプトを真剣に勉強しておらず、最近Taprootの資産を把握したいと思っていましたが、Taprootトランザクションをバイパスできないことがわかったため、TaprootのBIPをいくつか読む必要がありました。
P2PKH
最も一般的なビットコイントランザクションは、ペイツーパブリックキーハッシュ(P2PKH)と呼ばれ、ビットコインを公開鍵のハッシュ、つまりビットコインアドレス、つまり1で始まる種類のアドレスにロックします。
アリスがP2PKHトランザクションを介してボブに1btcを支払いたい場合、プロセスは次のように説明できます。
P2PKH取引の技術的プロセス:
アドレスと公開鍵のハッシュ: ボブはアリスにビットコインアドレスを与えますが、これは実際には彼の公開鍵のハッシュです。
ロック解除&ロック:ボブに1BTCを送るには、アリスは自分のウォレットから資金のロックを解除する必要があります。 次に、トランザクションを作成するときにこの 1 を適用します BTCはボブの公開鍵ハッシュにロックされています。
ボブの署名とロック解除:ボブがこの1を使いたいとき BTCの場合、彼はアドレスの所有者であることを証明するために、秘密鍵で署名する必要があります。 このようにして、彼は資金のロックを解除し、新しい取引に使用することができます。
素人の説明:
ボブはアリスに鍵のついた開いた箱を渡します(ここでの鍵はボブのビットコインアドレスです)。
アリスは1BTCを箱に入れ、正しい鍵(つまりボブの秘密鍵)を持っている人だけが開けられるように箱をロックします。
ボブが1BTCを使いたいときは、自分の鍵(秘密鍵)を使って箱を開け、ビットコインを取り出し、それを他の人の箱に入れる(別の取引をする)という選択肢があります。
P2SHの
2番目に一般的なビットコイントランザクションはペイツースクリプトハッシュと呼ばれ、マルチシグを実装するためにこのトランザクション形式を使用することがよくあります。
アリスがP2SHトランザクション形式で1BTCをボブに送りたい場合、次のように説明できます。
P2SH取引の技術的プロセス:
公開鍵ハッシュの代わりにスクリプトハッシュ:P2SHトランザクションでは、資金は公開鍵ハッシュではなくスクリプトハッシュにロックされます。
このスクリプトには通常、複数のシグニチャ(マルチシグ)やその他の特定の条件を要求するなど、複数の条件が含まれています。
トランザクションの作成と送信:送信者(Aliceなど)は、このスクリプトハッシュアドレスにビットコインを送信します。 このアドレスは受取人(ボブなど)によって提供され、このアドレスの背後に隠されたスクリプトには、資金のロックを解除するために必要な条件が含まれています。
つまり、このスクリプトハッシュの元のスクリプトはボブが所有していますが、ボブはこのスクリプトを公開せず、このスクリプトのハッシュ値のみを公開します。 (これは、上記のP2PKHが公開鍵ハッシュに相当します)
資金のロックを解除する:ボブ(受取人)がビットコインを使いたいとき、マイナーがトランザクションを検証するために使用できる元のスクリプト(これはロック解除スクリプト、または償還スクリプト)を提供します。
素人の説明:
実際、P2SHと上記のP2PKHの違いは、ボックスのロックが異なること、P2SHのロックはボブがカスタマイズでき、非常に複雑なロックを構築できることです。
たとえば、最も一般的なマルチシグは、ボブが複数のロック解除キーをカスタマイズし、ロックを解除するキーの数を定義することです。
P2SHのトランザクションメカニズムを利用して、スクリプトハッシュをロックとして使用し、元のスクリプトを秘密鍵として使用し、さまざまなロック解除条件をカスタマイズできます。 これにより、ビットコインははるかにプログラム可能になります。
P2TR (Pay to Taproot)について説明します。
P2PKHは公開鍵ハッシュに支払われ、コストは公開鍵に対応する秘密鍵署名の提供を条件としています。
P2SHはスクリプトハッシュに支払われ、その支払いは提供される元のスクリプトを条件としています。
P2TRは、ペイツーパブリックキーハッシュとペイツースクリプトハッシュの組み合わせであるため、秘密キー署名によって直接行うか、元のスクリプトを提供するかの2つの支払いパスがあります。
また、P2TRのスクリプトはn個のスクリプトを含む二分木であり、リーフノードスクリプトとツリーのツリーパスを提供することで使用することができます。
このように、P2TRトランザクションはより複雑な支出条件を定義することができ、ビットコインのプログラマビリティはより豊富です。