Skip to main content

概要

AgentWallexのすべてのエージェントウォレットは、マルチパーティ計算(MPC)によって保護されています。完全な秘密鍵は決して再構築されません — メモリ内でも、ディスク上でも、どこでも。代わりに、暗号鍵シャードが3つの独立した当事者に分散され、任意の2つが協力してトランザクションに署名できます。

MPCの仕組み

従来のウォレットは単一の秘密鍵を保存します。その鍵が盗まれると、すべての資金が失われます。MPCはこの単一障害点を排除します。

2-of-3しきい値署名

AgentWallexはParatoの2-of-3しきい値MPCプロトコルを使用します。3つの鍵シャードが生成され、任意の2つで有効な署名を生成できます:
通常の運用では、シャード1とシャード2が協力してトランザクションに署名します。シャード3はオフラインのままで、リカバリーシナリオでのみ使用されます。

セキュリティ特性

  • 単一の侵害ポイントなし — 攻撃者は2つの独立したシステムを同時に侵害する必要があります。
  • 鍵の再構築なし — 完全な秘密鍵は単一の場所で組み立てられることはありません。
  • 前方秘匿性 — 定期的なシャードローテーション(プロアクティブシークレットシェアリング)により古いシャードが無効になります。
  • 同一のウォレットアドレス — シャードローテーションではウォレットのオンチェーンアドレスは変更されません。

鍵生成

鍵は分散鍵生成(DKG)を使用して生成されます:
1

ランダムシェアの生成

3つのMPCノードのそれぞれが独立してランダムなシェアを生成します。
2

公開鍵の導出

シェアが暗号的に結合されて、公開鍵(および対応するウォレットアドレス)が生成されます。
3

シャードの分配

各ノードは自分のシャードのみを保持します。完全な秘密鍵は存在しません。

鍵ローテーション

鍵シャードはプロアクティブシークレットシェアリングと呼ばれる技術を使用して定期的にローテーションされます。このプロセスは:
  1. 同じ公開鍵に対応する新しいシャードを生成します。
  2. 新しいシャードを3つすべての当事者に配布します。
  3. 古いシャードを破棄します。
ローテーション後、攻撃者が以前にシャードを盗んでいたとしても、それは暗号的に無効になります。
鍵ローテーションは自動的に行われ、開発者による操作は不要です。ウォレットアドレスはそのまま維持されます。

緊急凍結

権限のある当事者は、エージェントのウォレットを即座に凍結し、すべてのトランザクションを防止できます:
ウォレットを凍結した後、凍結解除するまでに10分間の必須クールダウン期間があります。これにより、攻撃者が凍結・凍結解除したウォレットを即座に再有効化することを防ぎます。

インフラストラクチャセーフティネット

開発者設定のポリシーを超えて、ParatroはAPI呼び出しではオーバーライドできないハードリミットをMPC署名レベルで強制します: これらの制限は、APIキーが侵害されたり、ビジネスレイヤーのポリシーが誤設定されたりした場合でも、最後の防衛線として機能します。