Multi-Party Compute ist eine Google Cloud -Verwahrungsplattform für Signaturschlüssel für digitale Assets. Es kombiniert Schwellenwertsignaturen, die Durchsetzung von Transaktionsrichtlinien und Governance-Kontrollen für Unternehmen.
Vorteile von Schwellenwertsignaturen
Bei der institutionellen Verwahrung digitaler Assets steuert ein privater Signaturschlüssel direkt die Asset-Bewegung. Zum Schutz von Signaturschlüsseln müssen drei verschiedene Sicherheits- und Betriebsrisiken minimiert werden:
- Kryptografische Sicherheit: Durch Schlüsseldiebstahl oder unbefugte Nutzung können Angreifer betrügerische Transaktionen signieren, was zu einem unwiderruflichen Verlust von Vermögenswerten führt.
- Verfügbarkeit: Vorübergehende Ausfälle oder nicht zugängliche Signaturinfrastruktur stoppen die Transaktionsabwicklung und Liquiditätsvorgänge.
- Langlebigkeit: Der dauerhafte Verlust oder die Beschädigung von Schlüsselmaterial führt dazu, dass die zugehörigen digitalen Assets nicht mehr wiederhergestellt werden können.
Die zentralisierte Schlüsselverwaltung erfordert einen Kompromiss zwischen Sicherheit und betrieblicher Ausfallsicherheit. Wenn ein vollständiger privater Schlüssel in einem einzelnen Hardware-Sicherheitsmodul (HSM) gespeichert wird, entsteht ein Single Point of Failure für Verfügbarkeit, Langlebigkeit und kryptografische Integrität. Wenn Sie diesen Schlüssel über mehrere HSMs oder Regionen hinweg replizieren, verbessert sich die Verfügbarkeit und Langlebigkeit, aber die Angriffsfläche wird vergrößert. Da jedes Replikat den vollständigen Schlüssel enthält, stellt jede Kopie einen weiteren Single Point of Compromise dar.
Multi-Party Compute löst diesen Zielkonflikt durch die Verwendung von Schwellenwert-Signaturschemas, einschließlich einer gehärteten Erweiterung des DKLS23-Protokolls. Unabhängige, hardwaregestützte Parteien generieren und speichern jeweils einen isolierten Schlüsselfreigabewert. Während der Signierung führen diese Parteien ein Multi-Party-Protokoll aus, um eine gültige Signatur zu erstellen, ohne den vollständigen privaten Schlüssel an einem einzigen Ort zusammenzusetzen. Ein Angreifer, der weniger Parteien als den Signaturschwellenwert kompromittiert, kann keine Signatur fälschen oder den Schlüssel rekonstruieren. Gleichzeitig werden Signiervorgänge auch dann fortgesetzt, wenn einzelne Parteien nicht verfügbar sind oder dauerhaft ausfallen, sofern genügend Parteien vorhanden sind, um den Schwellenwert zu erreichen. Weitere Informationen zum Protokoll finden Sie unter Kryptografischer Hintergrund von DKLS23.
Unterstützte Blockchains
Multi-Party Computation unterstützt die folgenden Schlüsselalgorithmen:
| Algorithmus | Kurve | Typische Ketten |
|---|---|---|
ECDSA (EC_SIGN_SECP256K1) |
secp256k1 | Bitcoin, Ethereum und EVM-kompatible Chains |
EdDSA (EC_SIGN_ED25519) |
Ed25519 | Solana (demnächst verfügbar) |
Sobald ein verteilter Schlüssel generiert wurde, gibt Multi-Party Computation den öffentlichen Schlüssel und die davon abgeleiteten Blockchain-Adressen zurück.
Steuerelemente für Unternehmen
Multi-Party Compute modelliert Ihre Organisation in einer eigenen, dedizierten, isolierten Instanz. Sie legt fest, wer Schlüsselfragmente besitzt, wie viele davon eine Signatur genehmigen müssen und anhand welcher Regeln jede Transaktion vor dem Signieren bewertet wird.
Nutzer und Rollen
Ein Nutzer ist eine Identität, die Sie in eine Instanz aufnehmen. Jeder Nutzer ist an ein Hauptkonto gebunden, entweder an ein Google-Konto oder an ein Hauptkonto der Workforce Identity-Föderation. Jeder Nutzer hat eine oder mehrere Rollen:
- Administrator: Verwaltet Nutzer, Teams und andere Instanzressourcen.
- Richtlinienautor: Erstellt und genehmigt Transaktionsrichtlinien.
- Signer: Inhaber von Schlüsselfragmenten, die Transaktionen genehmigen.
Signierer, Richtlinienautoren und Administratoren signieren ihre Genehmigungen mit einem Autorisierungsschlüssel, dessen privater Teil immer beim Kunden verbleibt.
Auf API-Ebene arbeiten Multi-Party-Compute-Rollen mit IAM-Rollen zusammen. IAM steuert, welche API-Methoden ein Hauptkonto aufrufen kann. Die Rollen eines Nutzers bestimmen, was dieses Hauptkonto in der Instanz tun kann. Informationen dazu, wie IAM-Rollen und Nutzerrollen zusammenarbeiten, finden Sie unter Sicherheit und Autorisierung.
Teams
Ein Team ist eine Gruppe von Signierern, z. B. eine Abteilung oder eine Gruppe von Führungskräften. Jeder Signer gehört zu genau einem Team. Mit Teams kann eine KeyPolicy auf Gruppen von Signierern verweisen, z. B. „Schlüsselfreigaben für 3 Mitglieder des Treasury-Teams generieren und von 2 von ihnen eine Signatur verlangen“, anstatt jede Person namentlich zu nennen.
MPC-Richtlinien
KeyRings und KeyPolicies
Ein KeyRing gruppiert Schlüssel. Wenn Sie einen KeyRing erstellen, legen Sie seine KeyPolicy fest. Diese definiert für jeden im KeyRing erstellten Schlüssel Folgendes:
- welche Teams und Nutzer die meisten Freigaben haben,
- wie viele von ihnen die Transaktion signieren müssen (der Schwellenwert) und
- wo die einzelnen Schlüsselfreigaben gespeichert werden (Google Cloud, Kundenstandort oder Mobilgeräte der Nutzer).
Schlüssel können nicht zwischen Schlüsselbunden verschoben oder gelöscht werden. Sie können einen Schlüssel nur deaktivieren, um zu verhindern, dass er weiter zum Signieren verwendet wird.
KeyLists
Eine KeyList ist eine benannte Liste von Blockchain-Adressen, auf die sich Transaktionsrichtlinien beziehen können, z. B. vertrauenswürdige Ziele. Ein Eintrag ist ein vorhandener Schlüssel, ein Schlüsselbund (einschließlich später hinzugefügter Schlüssel) oder eine Adresse, die Sie manuell eingeben.
Transaktionsrichtlinien
Eine Transaktionsrichtlinie ist eine Cedar-Regel, die Transaktionen in Multi-Party Computation zulässt oder verbietet, z. B. ein Ausgabenlimit oder eine Zulassungsliste von Zielen. Zusammen ergeben die aktiven Richtlinien für jede Transaktion ein Ergebnis, d. h. eine Zulassung oder Ablehnung. Das Ergebnis dient den Signierern als Orientierung, erzwingt aber nicht die endgültige Entscheidung: Eine Transaktion, die von den automatisierten Transaktionsrichtlinien abgelehnt wird, kann trotzdem ausgeführt werden, wenn genügend Signierer sie genehmigen.
Informationen zum Schreiben und Kombinieren von Regeln finden Sie unter Transaktionsrichtlinienregeln schreiben und Transaktionsrichtlinien auswerten.