KIP-0034: Include WebRTC WebSocket/Signal Server in Chainweb Node (Prepare for WalletConnect Replacement)
This proposal suggests adding a WebRTC endpoint to Chainweb nodes for text-based communication. The goal is to distribute workload, improve efficiency, and replace the WalletConnect approach. The WebRTC WebSocket would establish peer-to-peer connections between browser-based dApps (local users) and wallets (local) for secure text-only communication.
The Chainweb node would handle and validate the initial connection setup only, enhancing privacy and enabling large-scale transaction data sharing directly between peers, bypassing relay servers.
Regarding KIP 0030 – Unified Standard for dApp-Wallet Communication:
- Same device: Postmessage for apps and crossbrowser
- Cross-device: WebRTC (as proposed in the nodes).
For the sake of developer UX, why not implement a single standalone, modular, extendable, and minimal library instead of two separate implementations? ( so we don't have to :) )
Message validation and most workflow remains the same either way.
Minimal Version:
- Plain messaging functions (documented) Additional: example
- Incoorporated message validation / extendable switch for message X, Y, Z (documented error & success messages)
- Allows to incoorporate pact-lang.js / hdwallet / spirekey-min.js? and others independently
Extended Version:
- Incorporated into the Kadena Client and Spirekey SDK