For the complete documentation index, see llms.txt. This page is also available as Markdown.

Transfer-Hooks

Token-2022-Transfer-Hooks ermöglichen es einem Programm, bei jeder Token-Übertragung benutzerdefinierte Logik auszuführen. Rome ermöglicht es Solidity-Smart-Contracts, als Transfer-Hooks zu fungieren — und bringt damit EVM-Programmierbarkeit in Solanas Token-Standard.

Wie Transfer-Hooks funktionieren

Token-2022 (Solanas Token-Programm der nächsten Generation) unterstützt eine Erweiterung namens Transfer Hook. Wenn für einen Mint ein Transfer-Hook konfiguriert ist:

  1. Jeder transfer_checked Aufruf für diesen Mint ruft das zugewiesene Hook-Programm auf

  2. Der Hook erhält die Übertragungsdetails (Absender, Empfänger, Betrag, Mint)

  3. Der Hook kann die Übertragung genehmigen oder ablehnen

  4. Wenn der Hook ablehnt (revertiert), schlägt die gesamte Übertragung fehl

EVM-gestützte Transfer-Hooks

Auf Rome kann ein Solidity-Vertrag als Handler für Transfer-Hooks dienen:

Nutzer tauscht Token auf Jupiter (Solana)

Jupiter ruft transfer_checked auf

Token-2022 ruft das zugewiesene Hook-Programm auf

Hook-Programm = Rome Meta-Hook Router

Der Router leitet über CPI → Rome EVM an den Solidity-Vertrag weiter

Der Solidity-Vertrag führt Compliance-Logik aus

Bestanden: Übertragung wird abgeschlossen
Fehler: die gesamte Übertragung wird zurückgesetzt

Das bedeutet jede SPL-Token-Übertragung auf Solana — ob auf Jupiter, Raydium, Phantom oder in irgendeiner Wallet — kann EVM-Compliance-Logik auslösen.

Beispiel: KYC-Compliance-Hook

Wichtige Einschränkungen

transfer_checked nur. Hooks werden nur bei transfer_checked Aufrufen ausgelöst, nicht bei normalen Transfer. Jede Integration, die Rome-Token verwendet, muss transfer_checked verwenden, um die Durchsetzung der Compliance sicherzustellen.

Single-State-Modus erforderlich. Transfer-Hooks werden innerhalb von Solana-Transaktionen ausgeführt. OP-Geth ist aus diesem Kontext nicht erreichbar. Die gesamte EVM-Hook-Logik muss im Single-State-(Proxy-)Modus laufen.

CPI-Tiefenbudget. Der Hook-Aufruf verbraucht CPI-Tiefe:

Nach der Hook-Aufrufkette bleibt nur noch eine CPI-Ebene übrig.

Rechenbudget. EVM-Hooks verbrauchen beträchtlich CU:

  • Grundlegender Übertragungs-Overhead: 100.000 CU

  • Pro EVM-Sub-Hook: 200.000 CU

  • Empfohlenes Budget für EVM-Übertragung: 800.000 CU

Whitelisting von DeFi-Protokollen

Vaults von DeFi-Protokollen (Jupiter, Kamino, Orca, Rome-Bridge-Vault) benötigen eine besondere Behandlung. Diese Vaults empfangen und senden Token im Rahmen normaler Abläufe — sie zu blockieren würde DeFi beschädigen.

Der Compliance-Vertrag führt eine protocolWhitelist Zuordnung. Auf der Whitelist stehende Adressen (Vaults, PDAs für bekannte Protokolle) werden ohne KYC-Prüfungen genehmigt. Dadurch können Token-Übertragungen über DeFi-Protokolle laufen, während bei Übertragungen durch Endnutzer weiterhin die Compliance durchgesetzt wird.

Adressmodell

Transfer-Hooks sehen von Rome abgeleitete EVM-Adressen, nicht Ethereum-Adressen. Wenn ein Solana-Nutzer mit einem von Rome gehookten Token interagiert, wird sein Solana-Pubkey über PDA-Derivation einer EVM-Adresse zugeordnet. Das Rome Solidity SDK stellt Dienstprogramme für diese Zuordnung bereit.

Verwandte Seiten

Zuletzt aktualisiert

War das hilfreich?