P2P Direct
Init
sequenceDiagram
dApp->>Wallet: Show QR Code (publicKey exchange)
Wallet->>Wallet: User scans QR code
Wallet->>dApp: Send own publicKey to dApp, connection established
Permission Request
sequenceDiagram
dApp->>Wallet: User Prompt (Do you want to pair?)
Wallet->>Wallet: Grant permissions
Wallet->>dApp: Return Address & Permissions
Operation Request
sequenceDiagram
dApp->>Wallet: Request
opt no threshold
Wallet->>Wallet: User confirmation
end
Wallet->>Wallet: Forge Operation
Wallet->>Wallet: Sign
Wallet->>Wallet: Broadcast
Wallet->>dApp: Response
Signing Request
sequenceDiagram
dApp->>Wallet: Request
opt no threshold
Wallet->>Wallet: User confirmation
end
Wallet->>Wallet: Sign
Wallet->>dApp: Response
warning
Thresholds could be abused to sign contract calls. Wallets must reject request with parameters.
Broadcast Request
sequenceDiagram
dApp->>Wallet: Request
Wallet->>Wallet: User confirmation
Wallet->>Wallet: Broadcast
Wallet->>dApp: Response