← BSV MCPInstall
Wallet

wallet_encrypt

Encrypts data using wallet keys. protocolID is a JSON array like [2,"protocolName"].

Read as Markdown

Result

The BRC-100 encrypt 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

FieldType / requiredDescription
plaintextarray of number
Required
Data bytes to encrypt
protocolIDJSONstring
Required
JSON array [securityLevel, protocolString]
keyIDstring
Required
See schema for details.
counterpartystring
Optional
See schema for details.
privilegedboolean
Optional
See schema for details.
privilegedReasonstring
Optional
See schema for details.
seekPermissionboolean
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": {
    "plaintext": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "description": "Data bytes to encrypt"
    },
    "protocolIDJSON": {
      "type": "string",
      "description": "JSON array [securityLevel, protocolString]"
    },
    "keyID": {
      "type": "string"
    },
    "counterparty": {
      "type": "string"
    },
    "privileged": {
      "type": "boolean"
    },
    "privilegedReason": {
      "type": "string"
    },
    "seekPermission": {
      "type": "boolean"
    }
  },
  "required": [
    "plaintext",
    "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

FieldType / requiredDescription
plaintextarray of number
Required
Data bytes to encrypt
protocolIDJSONstring
Required
JSON array [securityLevel, protocolString]
keyIDstring
Required
See schema for details.
counterpartystring
Optional
See schema for details.
privilegedboolean
Optional
See schema for details.
privilegedReasonstring
Optional
See schema for details.
seekPermissionboolean
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": {
    "plaintext": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "description": "Data bytes to encrypt"
    },
    "protocolIDJSON": {
      "type": "string",
      "description": "JSON array [securityLevel, protocolString]"
    },
    "keyID": {
      "type": "string"
    },
    "counterparty": {
      "type": "string"
    },
    "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": [
    "plaintext",
    "protocolIDJSON",
    "keyID"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}