如何解密 bitcoin.com json AES 钱包备份?

How to decrypt a bitcoin.com json AES wallet backup?

假设您有比特币 wallet.json 备份,格式如下:

{
  "ct" : "xyz",
  "iter" : 10000,
  "adata" : "",
  "salt" : "xyz",
  "cipher" : "aes",
  "ks" : 128,
  "v" : 1,
  "mode" : "ccm",
  "iv" : "xyz",
  "ts" : 64
}

其中 xyz 是唯一值,钱包使用密码加密。您可以使用什么工具来解密这种钱包格式?

您可以使用老版本的Bitgo NodeJS包解密钱包:

// index.js
var BitGoJS = require('./node_modules/bitgo/src/index.js');
var bitgo = new BitGoJS.BitGo();

console.log('Decrypting...');
var password = 'passw0rd';
var encryptedWallet = '{"iv":"xyz","v":1,"iter":10000,"ks":128,"ts":64,"mode":"ccm","adata":"","cipher":"aes","salt":"xyz","ct":"xyz"}';
var decryptedString = bitgo.decrypt({ password: password, input: encryptedWallet });

console.log('Private key:', decryptedString);

// package.json
{
  "name": "Decrypt",
  "version": "1.0.0",
  "scripts": {
    "start": "node index.js"
  },
  "dependencies": {
    "bitgo": "1.0.0"
  }
}

passwordencryptedWallet 变量替换为您自己的值后,您可以 npm installnpm start 解密钱包。