技術設計
Last updated
Last updated
図 1 は、提案されたプロトコルのアーキテクチャ設計を示しています。このプロトコルは次のコンポーネントで構成されています。
RANDAO コントラクト スマート コントラクトは、複数の同時 RANDAO ラウンドをサポートする RANDAO パイプラインを実装します。参加者はコミット メソッドとリビールメソッドを使用してプロセスに参加できますが、ラウンドの開始時間に基づく時間制限が適用されます。最後の計算フェーズは、特定のブロックまたは時点でランドシードをクエリするリクエストが RANDAO コントラクトに対して行われたときにトリガーされます。 RANDAO コントラクトは複数のチェーンに展開できる
ステーキング契約 ステーキング契約は、RANDAO プロトコルに貢献する参加者のメンバーシップを管理する責任があります。RANDAOメンバーのみが RANDAO 契約を操作できます。メンバーシップはステーキング契約にデポジットを行うことで取得できますが、オペレーターを含むいかなる当事者もこれらのデポジットにアクセスすることはできません。会員はいつでも入金を引き出すことができます。ステーキング コントラクトは、RANDAO コントラクトとは別のチェーンにデプロイされます。
RANDAO dApp RANDAO dApp は、参加者がステーキング契約を操作し、RANDAOの履歴を表示するためのインターフェイスとして機能します。 RANDAO の履歴は、RANDAO コントラクトを直接クエリすることによって取得されるため、システムが軽量になり、最小限のメンテナンス労力で複数のチェーンに簡単に展開できます。 RANDAO バックエンド RANDAO バックエンドは、トランザクションのコミット/公開とともに送信する必要があるメンバーシップ証明書を提供する責任があります。 RANDAO 契約は、有効な会員証明書が含まれている場合にのみ、これらの取引を受け入れます。リクエストが行われると、RANDAO バックエンドはステーキング コントラクトをチェックして、パブリック アドレスで表されるリクエスト者が適切なデポジットを行っているかどうかを確認します。このようなデポジットが存在する場合、RANDAO バックエンドは 10 分間有効なメンバーシップ証明書を発行します。この有効期間は、RANDAO バックエンドに対して行われるリクエストの数を減らすのに役立ちます。
RANDAO CLI RANDAO CLI は、参加者がすべてのチェーンにデプロイされた RANDAO コントラクトと対話できるようにするコマンド ライン ツールです。 sha3(s) と s の値をすべての RANDAO コントラクトに定期的に送信し、コミットとリビールのアクションを 1 つのトランザクションに組み合わせて、帯域幅とトランザクション料金 (該当する場合) を節約します。
プロトコルに貢献する参加者には、コミットおよび公開アクションのペアが成功するたびにインセンティブが与えられます。言い換えれば、参加者が RANDAO ラウンドのコミットフェーズ内で sha3 をコミットし、そのラウンドの公開フェーズ内でs を公開することに成功した場合、参加者は RANDAO と同じチェーン上のウォレットに直接少額の報酬を受け取ります。契約。これは、参加者がプロトコルに参加する各チェーンで報酬を獲得できることを意味します。
各ラウンドの報酬は固定されており、システムオペレーターによって決定されます。この報酬はラウンドの参加者全員に均等に分配されます。つまり、ラウンドの参加者が増えるほど、各参加者が受け取る報酬は少なくなります。これにより、オペレーターは、プロトコルに参加しているメンバーの数に関係なく、報酬の総額を予測することができます。オペレーターはいつでも報酬率を変更でき、新しいレートがすぐに適用されます。