manage-bap-backup

📁 b-open-io/bsv-skills 📅 5 days ago
1
总安装量
1
周安装量
#41625
全站排名
安装命令
npx skills add https://github.com/b-open-io/bsv-skills --skill manage-bap-backup

Agent 安装分布

replit 1
opencode 1
cursor 1
claude-code 1
antigravity 1
gemini-cli 1

Skill 文档

Manage BAP Backup

Export and import BAP identity backups using the bsv-bap library.

Installation

bun add bsv-bap @bsv/sdk

Export Identity

import { BAP } from "bsv-bap";

// Load existing identity
const bap = new BAP({ rootPk: storedWif });
bap.importIds(encryptedIds);

// Export for backup
const backup = bap.exportForBackup("My Identity");
// {
//   ids: "QklFMQ...",
//   createdAt: "2026-01-17T02:45:04.015Z",
//   rootPk: "L1SJx4SfhuGkZHwjgYatQfe2yn8iqHpenvHxsDt9Vnsz7wMT8FqG"
// }

// Save to file
import { writeFileSync } from "node:fs";
writeFileSync("backup.json", JSON.stringify(backup, null, 2));

Import Identity

import { BAP } from "bsv-bap";
import { readFileSync } from "node:fs";

// Load backup
const backup = JSON.parse(readFileSync("backup.json", "utf-8"));

// Create BAP from backup
const bap = new BAP({ rootPk: backup.rootPk });
if (backup.ids) {
  bap.importIds(backup.ids);
}

// Access identities
const idKeys = bap.listIds();
const identity = bap.getId(idKeys[0]);
console.log(identity.idName, identity.getIdentityKey());

List Identities

// List all identity keys
const idKeys = bap.listIds();

for (const key of idKeys) {
  const identity = bap.getId(key);
  console.log(`${identity.idName}: ${key}`);
  console.log(`  Root: ${identity.rootAddress}`);
  console.log(`  Current: ${identity.getCurrentAddress()}`);
}

Encrypted Backups (.bep)

For encrypted backup files using AES-256-GCM, use the bitcoin-backup CLI:

bun add -g bitcoin-backup

# Encrypt a backup
bbackup enc backup.json -p "password" -o identity.bep

# Decrypt a backup
bbackup dec identity.bep -p "password" -o decrypted.json

See encrypt-decrypt-backup skill for full bitcoin-backup reference.

CLI Option

For quick operations, use the bap CLI:

npm install -g bsv-bap

bap export              # Export identity JSON to stdout
bap export > backup.json
bap import backup.json  # Import from file
bap info                # View current identity

Related Skills

  • create-bap-identity – Create new BAP identities
  • encrypt-decrypt-backup – bitcoin-backup CLI for .bep files
  • key-derivation – Type42 and BRC-43 key derivation

Related

BAP identities can be used for OAuth authentication with Sigma Identity. See @sigma-auth/better-auth-plugin for integration patterns.