wallet_verifySignature
Verifies a digital signature using wallet keys. Supply exactly one of data or hashToDirectlyVerify.
Read as MarkdownResult
The BRC-100 verifySignature result, encoded as JSON text. Wallet failures return an error result.
Permissions
Forwarded to the connected wallet under the configured app origin. Its protocol, certificate or basket permission checks apply to the requested operation.
In role-routed configurations, walletRole selects an assigned wallet. Identity methods default to the identity role; encryption and HMAC use the encryption role. Transaction and basket operations follow their assigned role. An unavailable role fails rather than borrowing another key.
Definition 1
Full catalog · Legacy local wallet; Legacy local identity; External BRC-100 wallet
| Field | Type / required | Description |
|---|---|---|
| data | array of number Optional | Data bytes that were signed |
| hashToDirectlyVerify | array of number Optional | Pre-computed 32-byte hash that was signed |
| signature | array of number Required | Signature bytes |
| protocolIDJSON | string Required | JSON array [securityLevel, protocolString] |
| keyID | string Required | See schema for details. |
| counterparty | string Optional | See schema for details. |
| forSelf | boolean Optional | See schema for details. |
| privileged | boolean Optional | See schema for details. |
| privilegedReason | string Optional | See schema for details. |
| seekPermission | boolean Optional | See schema for details. |
Nested fields are required only when their parent object or array item is supplied.
Full input schema
{
"type": "object",
"properties": {
"data": {
"description": "Data bytes that were signed",
"type": "array",
"items": {
"type": "number"
}
},
"hashToDirectlyVerify": {
"description": "Pre-computed 32-byte hash that was signed",
"type": "array",
"items": {
"type": "number"
}
},
"signature": {
"type": "array",
"items": {
"type": "number"
},
"description": "Signature bytes"
},
"protocolIDJSON": {
"type": "string",
"description": "JSON array [securityLevel, protocolString]"
},
"keyID": {
"type": "string"
},
"counterparty": {
"type": "string"
},
"forSelf": {
"type": "boolean"
},
"privileged": {
"type": "boolean"
},
"privilegedReason": {
"type": "string"
},
"seekPermission": {
"type": "boolean"
}
},
"required": [
"signature",
"protocolIDJSON",
"keyID"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Definition 2
Full catalog · Local Vault · broadcasting disabled; Local Vault · all roles; Local Vault · payment role only; Local Vault + sponsor
| Field | Type / required | Description |
|---|---|---|
| data | array of number Optional | Data bytes that were signed |
| hashToDirectlyVerify | array of number Optional | Pre-computed 32-byte hash that was signed |
| signature | array of number Required | Signature bytes |
| protocolIDJSON | string Required | JSON array [securityLevel, protocolString] |
| keyID | string Required | See schema for details. |
| counterparty | string Optional | See schema for details. |
| forSelf | boolean Optional | See schema for details. |
| privileged | boolean Optional | See schema for details. |
| privilegedReason | string Optional | See schema for details. |
| seekPermission | boolean Optional | See schema for details. |
| walletRole | "payments" | "identity" | "ordinals" | "encryption" Optional | Select the configured root key for this BRC-100 call. Defaults to the role for the method; action continuations retain their original role. |
Nested fields are required only when their parent object or array item is supplied.
Full input schema
{
"type": "object",
"properties": {
"data": {
"description": "Data bytes that were signed",
"type": "array",
"items": {
"type": "number"
}
},
"hashToDirectlyVerify": {
"description": "Pre-computed 32-byte hash that was signed",
"type": "array",
"items": {
"type": "number"
}
},
"signature": {
"type": "array",
"items": {
"type": "number"
},
"description": "Signature bytes"
},
"protocolIDJSON": {
"type": "string",
"description": "JSON array [securityLevel, protocolString]"
},
"keyID": {
"type": "string"
},
"counterparty": {
"type": "string"
},
"forSelf": {
"type": "boolean"
},
"privileged": {
"type": "boolean"
},
"privilegedReason": {
"type": "string"
},
"seekPermission": {
"type": "boolean"
},
"walletRole": {
"description": "Select the configured root key for this BRC-100 call. Defaults to the role for the method; action continuations retain their original role.",
"type": "string",
"enum": [
"payments",
"identity",
"ordinals",
"encryption"
]
}
},
"required": [
"signature",
"protocolIDJSON",
"keyID"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}