# カルダノエコシステムの燃焼証明プロトコル実現最近、チャールズ・ホスキンソンが提起した挑戦に対して、カルダノエコシステムに適した燃焼証明(PoB)プロトコルの提案が開発されました。本記事では、この解決策の実現プロセスについて詳しく説明します。主に以下のいくつかの側面を含みます:1. バーニング証明メカニズムとその応用の概要2. Cardanoネットワーク上でのPoBスマートコントラクト実装の具体的な方案3. スマートコントラクトのデプロイとテストプロセス4. ウォレット取引を通じて燃焼証明の代替案を実現する## バーニングプローブとその応用トークンのバーニングは本質的に、トークンをアクセスできない「ブラックホール」アドレスに送信することです。このアドレスには、破棄されたトークンを再取得するための秘密鍵がありません。一般の人々は破棄が実際に行われたことを確認できますが、「秘密」の約束値しか知りません。このメカニズムは、破棄された資金が監査されるのを防ぎます。燃焼メカニズムには多くの用途があり、残りのトークンの価値を増加させたり、ブロックチェーンプロトコルのコミットメント証明として使用されたりします。大規模な燃焼は流通中のトークンの総量を減少させるため、デフレ圧力を引き起こす可能性があります。燃焼は一般的な操作ですが、マイナーの承認が必要です。これに対して、検閲不可能なトークン燃焼プロトコルが提案されています。燃焼証明の安全性は、暗号ハッシュ関数に基づいています。これらの関数は計算が容易ですが、逆推導は難しいです。実質的に、暗号ハッシュ関数の最低位を反転させることで、ブラックホールアドレスを作成できます。このアドレスに送信された内容は、回復が難しいか、回復できません。これは、暗号取引の安全性が公衆鍵暗号学と暗号ハッシュ関数に完全に基づいていることを示しています: "資金を送信するたびに、新しい未使用取引出力(UTxO)が作成されます。"このUTxOは、資金の数量と受取人の公衆鍵の暗号ハッシュを記録します。受取人は、資金を使用する際に同じ公衆鍵で新しい支出取引に署名する必要があります。反転ハッシュ関数を使用して最低位を出力し、直接0x0ハッシュを使用しない理由は、既知の値を使用することで燃焼が即座に目に見えるようになるからです。このプロトコルの考え方は、まず資金を燃焼させ、その後(の独立したステップ)でそれが燃焼されたことを証明することです。そのためには、まずコミットメント値のハッシュを作成し、その後そのコミットメント値がブラックホールアドレスが作成されたことを示します。! [](https://img-cdn.gateio.im/social/moments-e942fc679d8ef7e55f3db32648b24d99)## カルダノネットワーク上の燃焼証明スマートコントラクトカルダノのスマートコントラクトは、ネットワーク上で実行されるプログラムであり、ルールに従って取引を実行することを許可します。それらは、透明で検証可能な取引を確立することを目的としています。最近の分散型金融サービスと組織の台頭は、スマートコントラクトの適用の急速な成長を促進しました。イーサリアムとは異なり、カルダノはユーザーが自分のウォレットで各取引をシミュレートできる構造を採用しており、安全性を高めています。カルダノのスマートコントラクトは3つの部分で構成されています:- リデンプションスクリプト: eUTxOsの支出を制御する- ウォレットスクリプト: ユーザーが資金を実行、償還し、新しいeUTxOsを作成することを表します- eUTxOs:資金とデータポイント(datum)を保持し、リデンプション者が資金使用条件を確認するために使用します。これは、カルダノのスマートコントラクトが非中央集権的な状態を持つことを意味します。各eUTxOは独立した状態を持ち、その資金は分割できません。これにより、四つの可能な操作が生じます:- バーン:資金をブラックホールアドレスに送信する- 消失:ある約束値の燃焼が発生したことを検証する- ロック:資金を鍵のあるアドレスに送信する- 引き出し:ロックされた資金を引き出す注意が必要です。エンドポイントはユーザーのウォレット内で実行されます。取引はブロックチェーンに移動し、資金は償還者のスクリプトに移動します。このスクリプトは、資金が特定のアドレスのみがアクセスできることを検証します。ロック中では、ハッシュ値は自分のアドレスである可能性があります。燃焼中では、ハッシュ値はブラックホールアドレスを指します。これは、ハッシュに秘密のコミットメント値を与え、反転させることで実現されます。暗号ハッシュ関数を使用するため、対応するマッチングハッシュ値を見つけることはほぼ不可能です。仲介者は取引が燃焼かロックされているかを知ることができません。このスクリプトを利用することで、仲介者は燃焼取引を選択的に検閲できません。燃焼とロックは同じリデンプションフォーマットを使用しており、取引の種類を知っているのは発起者だけです。燃焼値は与えられたコミットメント値の破棄されたエンドポイントによって検証できます。コミットメント値が公表される前は、破棄された資金の量を誰も知りません。! [](https://img-cdn.gateio.im/social/moments-f7f162dc2a412b8d5ff903636b2e631b)## スマートコントラクトのデプロイとテストテストネットにスマートコントラクトをデプロイするには、以下の手順が必要です:1. Haskellツールチェーンをインストールする2. プルータススクリプトの構築3. 関連するカルダノノードとウォレットのコンテナを起動する4. ウォレットを復元してウォレットIDを取得する5. バーニングトークンの運用6. バリデーション燃焼を実行するこれらのステップを通じて、外部の人は取引が焼却されているのかロックされているのかを知ることができません。しかし、スクリプトが公開された後、誰かが特定のリディーマーを拒否するスクリプトをコンパイルしようとするかもしれません。これは膨大な作業を要しますが、焼却が監視される可能性があります。このような事態を防ぐために、次のセクションではより安全な代替案を紹介します。! [](https://img-cdn.gateio.im/social/moments-7777b1db89195a287d84464f2b80b5e9)## スマートコントラクトからウォレットスクリプトへユーザーのウォレットでほとんどのスマートコントラクト操作が行われるという事実を利用して、ウォレットだけを使用するソリューションを作成することができ、もはやスマートコントラクトは必要ありません。この方法の利点は、特定のバーニングトランザクションを選択的にブロックすることが不可能であることです。すべてのバーニングをブロックしたい審査者は、全てのスクリプトをブロックするしかありません。ウォレットだけを使用する場合、バーニングを審査する唯一の方法は、すべてのCardanoトランザクションを審査することです。これは、審査に対する究極の抵抗です。これを実現するには、コミットメント値のハッシュを公開鍵ハッシュに置き換え、コミットメント値の最下位ビットを反転させる必要があります。しかし、カルダノのアドレス形式の要件も考慮する必要があります。コミットメントからアドレスを生成する最も簡単な方法は、カルダノAPIライブラリを使用することです。提供されたコードを使用してバーンアドレスを生成し、トランザクションをブロックチェーンに提出し、バーンを検証できます。! [](https://img-cdn.gateio.im/social/moments-fed84a6717b012408df1b428b2d80586)## まとめこの記事では、Cardanoにおける燃焼証明プロトコルの2つの実装方法:スマートコントラクトとウォレット取引について説明しています。Alonzoスマートコントラクトは現在必要なインフラ(としてPABライブラリ)が不足しているため、ウォレットスクリプトソリューションの使用を推奨します。将来的にPABライブラリが実装されると、ウォレットスクリプトと組み合わせた複雑なスマートコントラクトソリューションがより実現可能になり、潜在的な検閲に対抗する環境の構築に寄与する可能性があります。! [](https://img-cdn.gateio.im/social/moments-3d2bf883bd43da42085612065d17c6ef)
カルダノが実現した燃焼証明プロトコル: スマートコントラクトとウォレットの方案対比
カルダノエコシステムの燃焼証明プロトコル実現
最近、チャールズ・ホスキンソンが提起した挑戦に対して、カルダノエコシステムに適した燃焼証明(PoB)プロトコルの提案が開発されました。本記事では、この解決策の実現プロセスについて詳しく説明します。主に以下のいくつかの側面を含みます:
バーニングプローブとその応用
トークンのバーニングは本質的に、トークンをアクセスできない「ブラックホール」アドレスに送信することです。このアドレスには、破棄されたトークンを再取得するための秘密鍵がありません。一般の人々は破棄が実際に行われたことを確認できますが、「秘密」の約束値しか知りません。このメカニズムは、破棄された資金が監査されるのを防ぎます。
燃焼メカニズムには多くの用途があり、残りのトークンの価値を増加させたり、ブロックチェーンプロトコルのコミットメント証明として使用されたりします。大規模な燃焼は流通中のトークンの総量を減少させるため、デフレ圧力を引き起こす可能性があります。燃焼は一般的な操作ですが、マイナーの承認が必要です。これに対して、検閲不可能なトークン燃焼プロトコルが提案されています。
燃焼証明の安全性は、暗号ハッシュ関数に基づいています。これらの関数は計算が容易ですが、逆推導は難しいです。実質的に、暗号ハッシュ関数の最低位を反転させることで、ブラックホールアドレスを作成できます。このアドレスに送信された内容は、回復が難しいか、回復できません。
これは、暗号取引の安全性が公衆鍵暗号学と暗号ハッシュ関数に完全に基づいていることを示しています: "資金を送信するたびに、新しい未使用取引出力(UTxO)が作成されます。"このUTxOは、資金の数量と受取人の公衆鍵の暗号ハッシュを記録します。受取人は、資金を使用する際に同じ公衆鍵で新しい支出取引に署名する必要があります。
反転ハッシュ関数を使用して最低位を出力し、直接0x0ハッシュを使用しない理由は、既知の値を使用することで燃焼が即座に目に見えるようになるからです。このプロトコルの考え方は、まず資金を燃焼させ、その後(の独立したステップ)でそれが燃焼されたことを証明することです。そのためには、まずコミットメント値のハッシュを作成し、その後そのコミットメント値がブラックホールアドレスが作成されたことを示します。
!
カルダノネットワーク上の燃焼証明スマートコントラクト
カルダノのスマートコントラクトは、ネットワーク上で実行されるプログラムであり、ルールに従って取引を実行することを許可します。それらは、透明で検証可能な取引を確立することを目的としています。最近の分散型金融サービスと組織の台頭は、スマートコントラクトの適用の急速な成長を促進しました。
イーサリアムとは異なり、カルダノはユーザーが自分のウォレットで各取引をシミュレートできる構造を採用しており、安全性を高めています。カルダノのスマートコントラクトは3つの部分で構成されています:
これは、カルダノのスマートコントラクトが非中央集権的な状態を持つことを意味します。各eUTxOは独立した状態を持ち、その資金は分割できません。これにより、四つの可能な操作が生じます:
注意が必要です。エンドポイントはユーザーのウォレット内で実行されます。取引はブロックチェーンに移動し、資金は償還者のスクリプトに移動します。このスクリプトは、資金が特定のアドレスのみがアクセスできることを検証します。
ロック中では、ハッシュ値は自分のアドレスである可能性があります。燃焼中では、ハッシュ値はブラックホールアドレスを指します。これは、ハッシュに秘密のコミットメント値を与え、反転させることで実現されます。暗号ハッシュ関数を使用するため、対応するマッチングハッシュ値を見つけることはほぼ不可能です。
仲介者は取引が燃焼かロックされているかを知ることができません。このスクリプトを利用することで、仲介者は燃焼取引を選択的に検閲できません。燃焼とロックは同じリデンプションフォーマットを使用しており、取引の種類を知っているのは発起者だけです。燃焼値は与えられたコミットメント値の破棄されたエンドポイントによって検証できます。コミットメント値が公表される前は、破棄された資金の量を誰も知りません。
!
スマートコントラクトのデプロイとテスト
テストネットにスマートコントラクトをデプロイするには、以下の手順が必要です:
これらのステップを通じて、外部の人は取引が焼却されているのかロックされているのかを知ることができません。しかし、スクリプトが公開された後、誰かが特定のリディーマーを拒否するスクリプトをコンパイルしようとするかもしれません。これは膨大な作業を要しますが、焼却が監視される可能性があります。このような事態を防ぐために、次のセクションではより安全な代替案を紹介します。
!
スマートコントラクトからウォレットスクリプトへ
ユーザーのウォレットでほとんどのスマートコントラクト操作が行われるという事実を利用して、ウォレットだけを使用するソリューションを作成することができ、もはやスマートコントラクトは必要ありません。この方法の利点は、特定のバーニングトランザクションを選択的にブロックすることが不可能であることです。すべてのバーニングをブロックしたい審査者は、全てのスクリプトをブロックするしかありません。ウォレットだけを使用する場合、バーニングを審査する唯一の方法は、すべてのCardanoトランザクションを審査することです。これは、審査に対する究極の抵抗です。
これを実現するには、コミットメント値のハッシュを公開鍵ハッシュに置き換え、コミットメント値の最下位ビットを反転させる必要があります。しかし、カルダノのアドレス形式の要件も考慮する必要があります。コミットメントからアドレスを生成する最も簡単な方法は、カルダノAPIライブラリを使用することです。
提供されたコードを使用してバーンアドレスを生成し、トランザクションをブロックチェーンに提出し、バーンを検証できます。
!
まとめ
この記事では、Cardanoにおける燃焼証明プロトコルの2つの実装方法:スマートコントラクトとウォレット取引について説明しています。Alonzoスマートコントラクトは現在必要なインフラ(としてPABライブラリ)が不足しているため、ウォレットスクリプトソリューションの使用を推奨します。将来的にPABライブラリが実装されると、ウォレットスクリプトと組み合わせた複雑なスマートコントラクトソリューションがより実現可能になり、潜在的な検閲に対抗する環境の構築に寄与する可能性があります。
!