Signing a Message
When a web application has established a connection to the ME wallet, it can prompt users to sign a message. This is commonplace amongst many dApps, as it gives application owners the ability to verify ownership of the wallet. Signing a message does not require any transaction fees.
Sats Connect provides an easy way to request message signing. Let's take a look at the code below.
import { BitcoinNetworkType, signMessage } from 'sats-connect';
// in a real app, you'll use the ME 'payment' address returned after a connection
const nativeSegwitAddress = 'bc1qcdmvsc8qqk8sr2st3mttu6fsmfrjzh5xrf4dch'
async function signWalletMessage() {
try {
await signMessage({
payload: {
network: {
type: BitcoinNetworkType.Mainnet,
},
address: nativeSegwitAddress,
message: 'Hello World. Welcome to the Magic Eden wallet!',
},
onFinish: (response) => {
alert(`Successfully signed message: ${response}`);
},
onCancel: () => {
alert('Request canceled');
},
});
} catch (err) {
console.error(err);
}
}
A successful prompt to sign a message will look something like this:

Last updated