Wallet Connect - подключайте свой кошелек к любым блокчейн-приложениям
WalletConnect - это протокол, который обеспечивает безопасное, децентрализованное и удобное взаимодействие между мобильными кошельками и веб-приложениями. Благодаря этому протоколу, пользователь может подписывать транзакции и возвращаться к веб-приложению, не раскрывая свои личные данные, включая ключи доступа к своим криптоактивам.
WalletConnect использует технологию WebSockets для установки и поддержки соединения между мобильным кошельком и веб-приложением. Коммуникация между устройствами происходит через протокол JSON-RPC, который дает возможность приложениям получать доступ к данным и функциям кошелька, безопасно и быстро.
Вот пример использования WalletConnect для отправки транзакции через мобильный кошелек, который поддерживает этот протокол, на веб-приложение.
На стороне веб-приложения:
javascript
const walletConnector = new WalletConnectProvider({
infuraId: "INFURA_ID",
qrcodeModalOptions: {
mobileLinks: [
"rainbow",
"metamask",
"argent",
"trust",
"imtoken",
"pillar",
"gnosisSafe",
],
},
});
await walletConnector.enable();
const web3 = new Web3(walletConnector);
const accounts = await web3.eth.getAccounts();
const tx = {
from: accounts[0],
to: "0x123456...",
value: web3.utils.toWei("1", "ether"),
};
const signedTx = await web3.eth.signTransaction(tx);
const transactionData = await web3.eth.sendSignedTransaction(
signedTx.rawTransaction
);
На стороне мобильного кошелька приложение должно начать отображение QR-кода, который содержит запрос на подключение кошелька к веб-приложению. Пользователь должен отсканировать QR-код через мобильное приложение для кошелька, который поддерживает WalletConnect, для установления соединения.
Как только соединение установлено, мобильная устройство готово к подписыванию и отправке транзакции на сеть. Пользователь сможет просмотреть и подтвердить транзакцию через мобильное приложение.
WalletConnect - это отличный пример технологии, которая может значительно упростить жизнь пользователей криптоактивов, предоставляя безопасный и удобный способ взаимодействия между мобильным кошельком и веб-приложением.