Auro Wallet Docs
Ask or search…
K

mina_verifyMessage

This method is used to verify the validity of the signature info.

Params

interface VerifyMessageArgs{
// sign account address.
publicKey: string;
// sign message.
data: string;
// sign result.
signature: {
field: string;
scalar: string;
}
}

Result

interface ProviderError extends Error {
message: string; // error message.
code: number; // error code.
data?: unknown; // error body.
}
Promise<boolean | ProviderError>

Errors

20002
Signature verification failed.
This error is returned because an exception was thrown, please check the signature format.
23001
Origin dismatch.
Check origin safe.

Example

Request

let verifyMessageBody = {
"signature": {
"field": "13468724101429370746602596170094552502200193721398063751467629418902449650534",
"scalar": "5638584219029837254561020594864591092072844530049610703222272818700774330907"
},
"publicKey": "B62qr2zNMypNKXmzMYSVotChTBRfXzHRtshvbuEjAQZLq6aEa8RxLyD",
"data": "Click \"Sign\" to sign in. No password needed!\n\nThis request will not trigger a blockchain transaction or cost any gas fees.\n\nI accept the Auro Test zkApp Terms of Service: http://localhost:3000/\n\naddress: \niat: 1699294808439"
};
await window.mina?.verifyMessage(verifyMessageBody).catch((err: any) => err);

Result

// successful result.
false | true
// verify failed.
{
"message": "Verify failed",
"code": 20002
}