Auro Wallet Docs
Ask or search…

Sign Message

This scenario is mainly used to sign information. that can be used for login verification.

Sign Message

This method is used for sign message.
interface SignedData {
publicKey: string;
data: string;
signature: {
field: string;
scalar: string;
interface ProviderError extends Error {
message: string;
code: number;
data?: unknown;
type SignMessageArgs = {
const content = `Click "Sign" to sign in. No password needed!
This request will not trigger a blockchain transaction or cost any gas fees.
I accept the Auro Test zkApp Terms of Service: ${window.location.href}
address: ${currentAccount}
iat: ${new Date().getTime()}`;
const signContent:SignMessageArgs = {
const signResult: SignedData|ProviderError = await window.mina?
.catch((err: any) => err);

Sign Json Message

This method is used for sign JSON data , Auro Wallet will format message.
type JsonMessageData = {
type SignJsonMessageArgs = {
readonly message: Array<JsonMessageData>
const msgParams = [
{ label: "Label:", value: "Sign Confirm" },
label: "Message:",
value: "Click to sign in and accept the Terms of Service",
label: "URI:",
value: window.location.href,
label: "Chain ID:",
value: network.chainId,
label: "Chain Name:",
label: "Issued At:",
value: new Date().getTime(),
label: "Resources:",
value: "",
const signResult:SignedData|ProviderError = await window.mina
message: msgParams
.catch((err: any) => err);

Verify Message

This methods is used for verify signed Message.
let verifyResult:boolean|ProviderError = await window.mina
.catch((err: any) => err);
console.log(verifyResult); // If the result is successful, it will return true.