
最近、私は Polkadot プロジェクトの中心的な開発者とチャットしていましたが、彼らのプロジェクトが最近ハッキングされたと聞いてショックを受けました。これは、オフショア人民元の為替レート (1 ~ 7.2) に基づいて計算された、現在の市場価値が 1 億を超えるプロジェクトです。幸いなことに、セーフ モードに入った後は、その後のすべてがランタイムに統合されました。攻撃トランザクションは拒否されました。 1億以上の価値があるこのパレットを技術的な観点から見てみましょう。
セーフ モード パレットは、サブストレート ベースのブロックチェーンに、特定のホワイトリストを除くすべてのトランザクション (外部) を一時的に制限するメカニズムを提供することを目的としています。これは、潜在的な脅威や重要な更新からネットワークを保護する必要がある場合に特に重要です。特権アカウントを使用するか、一定量の資産を入金することでセーフ モードに入ることができます。終了は、ブロックがロックされた後に自動的に実行することも、特別なアカウントが終了するトランザクションを開始することもできます。
主な機能
セーフモードに入ります:
アクセスなし:どのユーザーもデポジットをデポジットすることでセーフ モードに入ることができます。セーフ モードの継続時間は、EnterDuration 構成項目によって定義されます。
特権エントリ:特定の特権アカウントは、構成項目で定義された期間、ブロックチェーンを強制的にセーフ モードにできます。
セーフ モードを拡張します。
許可の延長なし:ユーザーは追加のデポジットをデポジットすることでセーフ モードの期間を延長できます。延長期間は、ExtendDuration 構成項目によって定義されます。
特権の延長:特権アカウントはセーフ モードの期間を延長することもできます。
セーフモード終了:
自動終了:現在のブロック番号が EnteredUntil 値を超えると、セーフ モードは自動的に終了します。
強制終了:特権アカウントは、ネットワークを強制的にセーフ モードから終了できます。
入金管理:
デポジット:ユーザーは、セーフ モードに入るとき、またはセーフ モードを延長するときに資金を預けます。
デポジットのリリース:デポジットは一定の遅延後にリリースすることも、特権アカウントによって強制的にリリースすることもできます。
デポジットの減額:特権情報源は、必要に応じてデポジットにペナルティを課すことができます。
イベント通知: Pallet はさまざまなイベントを発行して、セーフ モードの開始、延長、終了、およびデポジット関連の操作をネットワークに通知します。
特性の構成
このパレットは、次の特性を使用して高度に構成可能です。
RuntimeEvent: 全体的なイベント タイプを定義します。
通貨: 入金に使用される通貨の種類を指定します。
RuntimeHoldReason: 資金を保持する理由を定義します。
WhitelistedCalls: セーフ モードでも実行できるすべてのランタイム呼び出しが含まれます。
EnterDuration および ExtendDuration: セーフ モードに移行して延長する時間を定義します。
EnterDepositAmount および ExtendDepositAmount: セーフ モードを開始および延長するためのデポジット金額を指定します。
ForceEnterOrigin、ForceExtendOrigin、ForceExitOrigin、および ForceDepositOrigin: 入金を強制的に開始、延長、終了、または管理できるアカウントを定義します。
通知: セーフ モードに入るとき、またはセーフ モードから出るときに、他のランタイム処理ロジックに通知します。
ReleaseDelay: 保持後のデポジットの最小リリース時間を定義します。
取引詳細説明
入力:
説明:セーフ モードに入る権限がありません。期間は EnterDuration 構成項目で定義されたブロック数です。このトランザクションは、ユーザーの資産をロックするための通貨の保持方法を調査します。
パラメータ:オリジン (通常のアカウント)。
注: 呼び出し元がデポジットを支払うのに十分な資産を持っていること、およびパラメーターが EnterDepositAmount であることを確認する必要があります。

強制入力:
説明:セーフ モードに入る権限。期間は特権アカウントの構成項目によって定義され、通常のアカウントとは異なる場合があります。これは ForceEnterOrigin のパラメータから取得されます。
パラメータ:オリジン (ForceEnterOrigin によって定義された特権アカウント)。
注:特権アカウントのみが呼び出すことができます。
伸ばす:
説明:セキュリティ モードを許可なく延長します。期間は、ExtendDuration 構成項目で定義されたブロック数です。
パラメータ: origin (呼び出し元の発信元)。
注:発信者が十分なデポジットを持っていることを確認する必要があります。

強制拡張:
説明:権限拡張セキュリティ モード。期間は権限ソース構成アイテムによって定義されます。
パラメータ:オリジン (特権オリジン)。
注:特権のあるソースのみが呼び出すことができます。
強制終了:
説明:特権付きでセーフ モードを終了します。
パラメータ:オリジン (特権オリジン)。
注:特権のあるソースのみが呼び出すことができます。

フォース_スラッシュ_デポジット:
説明:特定のブロック内の指定されたアカウントの入金を減らします。
パラメータ: origin (権限ソース)、account (アカウント)、block (ブロック番号)。
注:特権のあるソースのみが呼び出すことができます。

リリース_デポジット:
説明:特定のブロック内の指定されたアカウントのデポジットを解放する権限がありません。
パラメータ: origin (呼び出し元)、account (アカウント)、block (ブロック番号)。
注:セーフ モードが終了し、遅延時間が経過していることを確認する必要があります。
強制リリース_デポジット:
説明:特権は、特定のブロック内の指定されたアカウントのデポジットを解放します。
パラメータ: origin (権限ソース)、account (アカウント)、block (ブロック番号)。
注:特権のあるソースのみが呼び出すことができます。
利用シーン
ブロックチェーン ネットワークが潜在的なセキュリティ脅威を検出した場合、特権アカウントを持つユーザーはセーフ モード パレットを使用して、ホワイトリストに登録されていないすべてのトランザクションの実行を迅速に制限し、リスクを軽減できます。もちろん、ネットワークの分散化が完了した後、このアカウントは削除される可能性があります。さらに、プロジェクト設立のための資金アカウントなど、開始する資産の一定割合を含むアカウントもいくつか存在する可能性があります。使用手順は次のとおりです。
セーフモードに入ります:
ユーザーまたは管理者は、Enter 関数を呼び出して、事前定義されたブロック数のデポジットをデポジットすることでセーフ モードをアクティブにします。あるいは、特権ソースは、force_enter 関数を呼び出して、構成項目で定義された期間、セーフ モードを直ちにアクティブにすることもできます。
セーフ モードを拡張します。
脅威が続く場合、ユーザーは追加のデポジットをデポジットすることで、extend 関数を呼び出してセーフ モードの期間を延長できます。特権ソースは、force_extend 関数を使用して、デポジットなしで期間を延長できます。
セーフモード終了:
脅威が無力化されると、特権ソースは、force_exit 関数を呼び出してセーフ モードを終了できます。セーフ モードは、何もアクションが取られない場合、事前に定義された時間が経過すると自動的に終了します。
デポジットの管理:
ユーザーは、セーフ モードを終了し、遅延時間が経過した後に release_deposit 関数を呼び出してデポジットを解放できます。特権情報源は、必要に応じて釈放を強制したり、保証金を減額したりすることができます。
注意事項
構成: 構成特性がネットワーク要件に一致するように正しく設定されていることを確認します。構成エラーにより、予期しない動作が発生する可能性があります。
入金管理: ユーザーの資金が不必要にロックアップされることを避けるために、入金金額とリリースの遅延を慎重に設定します。
イベント処理: Pallet によって発行されたイベントを監視し、セーフ モードのステータスをタイムリーに理解して、適切なアクションを実行します。
セキュリティ: Pallet とその構成を定期的に監査して、セキュリティ標準を満たしていること、および脆弱性が導入されていないことを確認します。
セーフ モード パレットを理解し、適切に構成することで、ネットワーク管理者はリスクを効果的に管理および軽減し、ブロックチェーン ネットワークの安定性とセキュリティを確保できます。他のプロジェクト関連者が特定の資産を所有し、リスクを発見した場合、ネットワークを攻撃から保護するためにトランザクションを開始することもできます。
免責事項
PaperMoon によって提供され、この記事に含まれている資料は、教育目的のみを目的としています。これらは財務または投資に関するアドバイスを構成するものではなく、ビジネス上の意思決定の指針として解釈されるべきではありません。読者は、投資やビジネス関連の決定を下す前に、独立した調査を実施し、専門家に相談することをお勧めします。 PaperMoonは本記事の内容に基づいて行われるいかなる行為についても責任を負いません。
基板入門講座第16回がスタートしました!
開発者は積極的にサインアップしてください
Mastering Substrate では、Web3 業界の発展の技術力を間近で体験できるだけでなく、Polkadot のエコロジカル イノベーションの最前線にも深く入り込むことができます。 OneBlock+とPolkadotが共同で企画した第16回「基板開発とプロジェクト実践入門」コースの参加登録が11月29日より開始されました(コースは無料です、お早めに登録フォームにご記入ください)。

このコースのビデオコンテンツは、オリジナルの 6 つのクラスに基づいて最適化され、さらに、優れた Polkadot 生態学プロジェクトがテクノロジー共有のために配置されます。このコースでは、全員が学んだことを定着させるためのタスク、オフィスアワーの Q&A などのセクションが用意され、正式なコース学習に加えて、業界リーダーとの 1 対 1 の相談の機会が提供されます。この記事は、誰もが新しい知識を学ぶのに役立ち、 Polkadot エコシステムと Substrate テクノロジーについての洞察を提供する 1 ~ 2 つの AMA オンライン ライブ ブロードキャストがあります。ブロックチェーン分野で画期的な進歩を遂げたいと考えている場合でも、この新興業界で目立ちたいと考えている場合でも、このコースは成功への確かな一歩となるでしょう。
