Zenについて

F * - 正規の検証

すべてのスマートコントラクトプラットフォームは、2つの問題に対処しなければなりません。正しい実行、およびリソースの消費です。これらは、分散型プラットフォームでは解決するのが特に難しいです。

Zenはスマートコントラクトを定義するための出発点としてF*を取ります。Microsoft Researchが開発したF *は、正式な検証を目的とした関数型言語です。ZenはF *の強力な証明技術を使って正当性の証明を作成し、契約が限られた時間内に実行されることを証明します。正確性の証拠は、誰かが特定の種類の資産(コールオプションなど)を導入して新しいコントラクトを作成できることを意味します。ユーザーやコントラクトは、その資産をすぐに発見して使用することができます。

束縛された計算

実績のあるリソース制限により、サービス攻撃拒否のリスクなく、コントラクトを使用する取引をマイナーが受け入れて請求することができます。実績のあるリソース限界によって、非常に重要な最適化も可能になります。コントラクトを作成した時点で.NETバイトコードにコンパイルすることができるため、翻訳されたスクリプト言語よりもはるかに高速に実行できます。

UTXO & 不変性

最も低いレベルでは、Zenはビットコインと同様に動作し、コインをロック解除して新たな出力にロックするトランザクションを実行します。「未使用トランザクション出力」または「UTXO」パラダイムと呼ばれるこのパラダイムは、契約生成トランザクションを含むすべてのトランザクションが、契約を実行したりトランザクション署名を検証したりする前でも、ネットワークコンセンサスに明確な影響を与えることを意味します。Zenの契約は不変です:一度作成されると、内部で決して変更されません。 データを格納する必要のある契約では、トランザクションの出力が行われます。

アクティブ コントラクト セットとオフチェーン取引

一定の期間、Zenコントラクトは有効であり、支払いがなくなり、非アクティブになるため、マイナーやノードに負担をかけることはありません。再びアクティブ化されると、コントラクトは元のコードで表示されます。これにより、ユーザは、契約自体を使用せずに契約発行資産を取引し、最終決済のみの契約を有効にすることができます。

UTXOパラダイムとアクティブ コントラクト セットの組み合わせによって、スマートコントラクトによって確保された決済チャネルも可能になります。ユーザーは、紛争の際にZenネットワーク自体にのみ置かれた取引をオフ・チェーンで交換したり、署名された取引を交換したり、チャネルを閉鎖したりすることができます。紛争が発生しない限り、非常に複雑な契約であっても、予備的に保管され、決して有効化されることはありません。

Oracleと外部データ

Zenブロックとビットコインブロックチェーン外のデータは、外部の世界のイベントや資産についてZenの同意を得ることができます。ZenのOracleは効率的で補償されています。Oracelは大量のデータに対するMerkle Treeコミットメントを使用し、個々のデータを販売することができます。

マージド コンセンサス&ビットコイン インテグレーション

Zenのマイナーでは、Zenブロックチェーンをマイニングしますが、ビットコインブロックチェーンの監視と検証も必要です。Zenの各ブロックは、ビットコインブロックヘッダーの数を参照し、ビットコインコンセンサスにコミットすることがあります。

これにより、ビットコインノードの数が増えるばかりでなく、Zenがビットコインと相互運用可能になります。 ビットコイン上のアクションは、Zen上のイベントに影響を与える可能性があります。

Zenコントラクトはビットコインのアドレスを監視し、自動的に資産を発行することができます。しかし、これは、ビットコインユーザーが、ビットコインを離れることなく、Zenでポジションを取り、契約を結び、安全な分散型取引を行うことができることを意味します。担保を保有するZenコントラクトは、ビットコインで適切な支払いを実施します。

Bitzen

担保で確保されたZenのビットコインクレジットは、特別な資産を獲得します。コントラクトは、担保の額、ビットコインネットワーク上の実際のビットコインの存在、およびリスクの程度を理解することができます。これらはビットコインクレジットの複数の異なるソースを受け入れることができ、リスクに合わせて価格を調整することができます。