Create Wallets

Overview

You can generate or manually create multisignature and TSS wallets with BitGo. Once created, you can configure security policies for your wallets, dictating how transactions can occur.

Generate Wallets

Create a self-managed hot wallet and keys all in one step. When you generate a wallet, BitGo does the following:

  • Creates a user keychain locally on your machine and uploads an encrypted key, using the provided passphrase (skipped if userKey is provided).
  • Creates a backup keychain locally on your machine and uploads the public key.
  • Creates a BitGo keychain on a BitGo hardware-security module (HSM) and a backup key if backupXpubProvider is set to true.
  • Creates a wallet on the blockchain with these 3 public keys.

Manually Create Wallets

Create a custodial wallet or a self-managed, hot or cold, wallet. You must create your own keys prior to manually creating a self-managed wallet.

Prerequisites

Steps: Multisig

  • SDK (Generate)
  • SDK (Manual)
  • Express (Generate)
  • API (Manual)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 const { BitGo } = require('bitgo'); // Fill in with actual access token const accessToken = '<your_actual_access_token>'; // Initialize the SDK const bitgo = new BitGo({ accessToken: accessToken, env: 'test', }); // Generate hot wallet async function createHotWalletSimple() { const newWallet = await bitgo.coin('tbtc').wallets().generateWallet({ label: 'my hot Wallet', passphrase: 'VerySecurePassword1234', }); console.log(JSON.stringify(newWallet, undefined, 2)); }

Step Result

  • Generate
  • Manual
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 { "wallet": { "id": "62f002e7b1440900072b8472fc8a9de8", "users": [ { "user": "62ab90e06dfda30007974f0a52a12995", "permissions": [ "admin", "view", "spend" ] } ], "coin": "tbtc", "label": "Generated TBTC Wallet", "m": 2, "n": 3, "keys": [ "62f002e79b12b800077bea85071f633f", "62f002e759cafb0007f3002f885697e9", "62f002e77bd7400007ee7f10ed8c5af3" ], "keySignatures": { "backupPub": "20f0854d0af1b22fad685a7580a4b8b45fc22a8a35a426f6c86c450faca5bdc9666bc2a88d7961ecdf9724a4247abcdc05bebef679d013ab309c15be9097c64cee", "bitgoPub": "1ffdb32d0618b3ef93e0b85f9499d6d4a7a96fb47b2e9851d31e57ff790bb7c49f2c0456ccb666fedfd5f51c2b477456c48fe69c4b171ae7bfbaf8851432b8be45" }, "enterprise": "62c5ae8174ac860007aff138a2d74df7", "tags": [ "62f002e7b1440900072b8472fc8a9de8", "62c5ae8174ac860007aff138a2d74df7" ], "disableTransactionNotifications": false, "freeze": {}, "deleted": false, "approvalsRequired": 1, "isCold": false, "coinSpecific": {}, "admin": {}, "clientFlags": [], "walletFlags": [], "allowBackupKeySigning": false, "recoverable": false, "startDate": "2022-08-07T18:22:31.000Z", "type": "hot", "buildDefaults": {}, "customChangeKeySignatures": {}, "hasLargeNumberOfAddresses": false, "multisigType": "onchain", "config": {}, "balance": 0, "confirmedBalance": 0, "spendableBalance": 0, "balanceString": "0", "confirmedBalanceString": "0", "spendableBalanceString": "0", "receiveAddress": { "id": "62f002e7b1440900072b848123196453", "address": "2MwMtk2qWsP54LHqBqEk8cbgqtmG2qV5XSi", "chain": 10, "index": 1, "coin": "tbtc", "wallet": "62f002e7b1440900072b8472fc8a9de8", "coinSpecific": { "redeemScript": "00206ad786997ee4798fcaa70651b041e26b798127aaea3898a6dce306b6de2ce0e4", "witnessScript": "522103c6b657f7a39b7a7f956f3b46ab9cc62f9ed0a184549d5ae0b6b54de0052ac7f721034116165f883397724e86f14918031d70231c64187cfacded4aa51a6c658b9bc2210285d4c028327832c85ce57e921500a758038aefb841a542c3775793137295c52e53ae" } }, "pendingApprovals": [] }, "userKeychain": { "id": "62f002e79b12b800077bea85071f633f", "pub": "xpub661MyMwAqRbcGqD3oX9sGtEjJZVQrtMYHqWPkDaeVpj8SugdVJwnF5zkiSTZoMo181UNkGDx5HKDtWSxNMZvdxnkrw2aXr19UQKxGiPxmhX", "ethAddress": "0x500e9d8a71d51dc0d9e0f0e98d12276dbe177ee4", "source": "user", "type": "independent", "encryptedPrv": "{\"iv\":\"GD26lmXg0os1DLrXYXMMPA==\",\"v\":1,\"iter\":10000,\"ks\":256,\"ts\":64,\"mode\":\"ccm\",\"adata\":\"\",\"cipher\":\"aes\",\"salt\":\"KsRm/x1BTRw=\",\"ct\":\"rqRbdviwV2B6rrqNYEUvUhSdN0acfM+D4fBSVn0BK/LePdCePW1K73QbIWOeYH0KujjGCjJ7eyRLNPokY7jx43a6n6vJlyvKaXZnVyMhVnlI8WipdPiE/jwcXAESqKaTNV2TsZF5X8jGb4jHmE3rdoAvbcDShvo=\"}", "prv": "xprv9s21ZrQH143K4M8ahVcrukHzkXevTRdgvcanwqB2wVC9a7MUwmdXhHgGs8SGmt3kZLh7BMKmb8H6ZWEcjUWCyhVk8Vcrs5jPRbJwJBHUAi9" }, "backupKeychain": { "id": "62f002e759cafb0007f3002f885697e9", "pub": "xpub661MyMwAqRbcGYpcqRc8eafSixRBaEdtpXF1nxEaHuUQoHHs8rJLSSp1bpE3dS4rVC943wBzZqGkzeed91GoaMRXuiJo3evDydLVRsgnQNi", "ethAddress": "0xbd0a837c9d01b7d33915059f39793aa4b1391847", "source": "backup", "type": "independent", "prv": "xprv9s21ZrQH143K44k9jQ58HSiiAvahAmv3TJKQzZpxjZwRvUxibJz5teVXkZGaqV4a4HPeJon6QutcFe1pGZ89MDa1HssyGYhEQjag8S8pYPe" }, "bitgoKeychain": { "id": "62f002e77bd7400007ee7f10ed8c5af3", "pub": "xpub661MyMwAqRbcFZC9odQHUoA8C6AAj8pyHicqCHBjPFuTSygwb4UEeNXugroXVt1ChWKa3XXAo7onCjDWTYoVriVvExQkjiSoET5Fjq6ub32", "ethAddress": "0x33b45cabc7251825675880385e862f5b109be96f", "source": "bitgo", "type": "independent", "isBitGo": true }, "warning": "Be sure to backup the backup keychain -- it is not stored anywhere else!" }

Note: Some networks, such as Ethereum, don't immediately return a new multisignature address, since creating a new address requires a blockchain transaction. The blockchain must confirm this transaction before you can use the address. The parameter pendingChainInitialization identifies if an address is awaiting confirmation.

You can save the wallet ID in the response, then wait for the blockchain to confirm the address before using it.

Steps: TSS

  • SDK (Generate)
  • SDK (Manual)
  • Express (Generate)
  • API (Manual Custodial)
  • API (Manual Hot)
1 2 3 4 5 6 7 8 9 10 async function createHotWalletSimple() { const newWallet = await bitgo.coin('teth').wallets().generateWallet({ label: 'ETH TSS Wallet', passphrase: 'VerySecurePassword1234', multisigType: 'tss', passcodeEncryptionCode: 'random string', walletVersion: 3, // Required for ECDSA assets, such as ETH and MATIC }); console.log(JSON.stringify(newWallet, undefined,2)); }

Step Result

  • Generate
  • Manual
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 { "wallet": { "id": "62fe5f94884df600074cdc15fae1abe8", "users": [ { "user": "609af9f02c6830000697b303f61a5c2e", "permissions": ["admin", "view", "spend"] } ], "coin": "teth", "label": "ETH TSS Wallet", "m": 2, "n": 3, "keys": [ "62fe5f94d89e4a00071d85c54cfebcba", "62fe5f94c03e3900080e73cb395cd919", "62fe5f9463b6760007c3176949f34e97" ], "keySignatures": {}, "tags": ["62fe5f94884df600074cdc15fae1abe8"], "disableTransactionNotifications": false, "freeze": {}, "deleted": false, "approvalsRequired": 1, "isCold": false, "coinSpecific": { "rootAddress": "7NwYFpzArex957uyRGgnK6sA6HqBuq4DnX2DPRaK9GSH", "pendingChainInitialization": true, "minimumFunding": 2447136, "lastChainIndex": { "0": 0, "1": -1 }, "nonceExpiresAt": "2022-08-18T05:28:31.270Z", "trustedTokens": [] }, "admin": {}, "clientFlags": [], "walletFlags": [], "allowBackupKeySigning": false, "recoverable": true, "startDate": "2022-08-18T15:49:40.000Z", "type": "hot", "buildDefaults": {}, "customChangeKeySignatures": {}, "hasLargeNumberOfAddresses": false, "multisigType": "tss", "config": {}, "pendingChainInitialization": true, "balanceString": "0", "confirmedBalanceString": "0", "spendableBalanceString": "0", "receiveAddress": { "id": "62fe5f94884df600074cdc25eb35d889", "address": "7NwYFpzArex957uyRGgnK6sA6HqBuq4DnX2DPRaK9GSH", "chain": 0, "index": 0, "coin": "tsol", "wallet": "62fe5f94884df600074cdc15fae1abe8", "coinSpecific": { "rootAddress": "7NwYFpzArex957uyRGgnK6sA6HqBuq4DnX2DPRaK9GSH", "minimumFunding": 2447136, "type": "native", "pendingChainInitialization": false, "trustedTokens": [] } }, "pendingApprovals": [] }, "userKeychain": { "id": "62fe5f94d89e4a00071d85c54cfebcba", "source": "user", "type": "tss", "commonKeychain": "2fb16032a36f781f5993c32e91e9907ba0902af8b7e3a0c70cdd083c2bea9a28ea7aa3dee8dd4c25615c6fb358d084b2ecd6f029fc37a050e08db89105f71125", "encryptedPrv": "{\"iv\":\"nv8WlGBqnE+6ubwAPNBOqQ==\",\"v\":1,\"iter\":10000,\"ks\":256,\"ts\":64,\"mode\":\"ccm\",\"adata\":\"\",\"cipher\":\"aes\",\"salt\":\"GTKk69nRJoA=\",\"ct\":\"cUtqq+KBfT7CFB10Cxos0QRbv4GrgIukMeWalRKC9JbOiDoo9chScy2IHa/ZmBEoXo3RDeAaOkFuLA+BTusrSO1o6lS+Z2r3cvYm1L6wWKRZwxmimWMKTPhJf3rCCEMxxeLMmypxn0wH3MMTWmHEdxLpyKtRm05Yzg7CbyBcsjEWU87Ude7h6CuJfkakaFQ5QgZBD2DI4nuwahKVfrBWVTHQCoj+Qdi3C7tdMDylkh9FJvkrbXXHrb+EJi/xph8lEnlABza35fHToJASAri7CVcLdvltru9j4FwuHcjb9ZZQCSruSQ46KEW3p/R/oVR/lyDc60qwIFo9eEyiNBCB9ul5EBQjjSCrRoJTrjjrH9RqcxBkgpAFCDv9Du5GEegKW/Ttb47aD7xeLJ5iOIdEpodYBpT8yMB0nWZNBei2LGOo4WauIPyyAr3RSEH4R904wFN+vG009yF/pcVTD6g4e6MRtCx8/2PgrJBYwBPZbd6zgAZtvXlZca1LPJaj7HFgkPgeKLEmaP7wB2KVT1OMGlhTlrsvT6vNh7tPnOMjVoORN7lDqCeKIBVlZRnUvKUBlrDxVfW6LrTh6K3DWoPFsPxKsFzfyXwadBi2NHSk0s6DQsNrIYqeujvzpcAOlHEMrG3OtKKao4id9PDTofTs0+3i2yQScKEvueN7Ya9p1gnluuIbx/+6cMFCIIwcd1pK5T6l4tGTl+eqC5GSv4G7inXEGc3N6AbeNk4BoBzUGyo3+fvrCRdY3wWs3jA/9HJ16fyukRZ9uN7T679ZvT2JQuQJdLu9LdDAhB/S5zcTFe5oE9Jm1iSqCcuGPN/kfjgH8+rzvrL1AHhfz+PQTYNWHxrwpWQfqpPb+ZpY5drMAcXR0f+97OFJNK63p+om72l08DUXEcXrPJyElqh95LhXeUYifAaVBJuvtfMj0I0plQrQwvUffe2MFyRDvNjTj/+PTqmHgLpumXI4bDvntPR7Q8lRlgg4IB8jRpq92tDD2gmNBUWTtfFPmvE=\"}" }, "backupKeychain": { "id": "62fe5f94c03e3900080e73cb395cd919", "source": "backup", "type": "tss", "commonKeychain": "2fb16032a36f781f5993c32e91e9907ba0902af8b7e3a0c70cdd083c2bea9a28ea7aa3dee8dd4c25615c6fb358d084b2ecd6f029fc37a050e08db89105f71125", "prv": "{\"uShare\":{\"i\":2,\"t\":2,\"n\":3,\"y\":\"075005d8c8a44634aa73225675abfa1036fd3a0764eb807a3728a4b5b9bec247\",\"seed\":\"15b87bb76cec8a555940c6a31ed404d59a4bf66f5e3470f3034e2b7e1528df44\",\"chaincode\":\"31ed69024f158f73f7b946c04c98b112cfd92d8497d437b17c54d5d696189af4\"},\"bitgoYShare\":{\"i\":2,\"j\":3,\"y\":\"5d3534d906f7ef423cfe72240dae60559c31e73c1bfa9e91ff51a5d74da4e9d6\",\"u\":\"5cf80061e0d18822d50a25f757fc70eb8f25f61e7ac10c7617fc02df77f7e806\",\"chaincode\":\"3a1438a916a492cf544f95a95af720f991a05192f6264ff345925412fb3956b8\"},\"userYShare\":{\"i\":2,\"j\":1,\"y\":\"a4f709a89807591b1d5ad1376a752e03d2909971b99a173404d468320998a6c2\",\"u\":\"8b0ea4a373bb49b36d7218ef943499dcf907bcc08b55f1aa029ef8fa499f3800\",\"chaincode\":\"7e790233832329e215539349b140b2a68b5d71126e3d18ac1ea68ea774a51f79\"}}", "encryptedPrv": "{\"iv\":\"eGaVYuP5cPLepdqFRId/lA==\",\"v\":1,\"iter\":10000,\"ks\":256,\"ts\":64,\"mode\":\"ccm\",\"adata\":\"\",\"cipher\":\"aes\",\"salt\":\"QnKcL+luZ0s=\",\"ct\":\"YjoXasZ1JEWx/Gu/K5h+zRuDpr37TBcCWcnjQ6i6Q4wGi2HRyZpEk/GLTwSDdXZS3G6a++uUf06DmFCKFSGOd3oXMZNcAXFUEuvEhxkY9ATwKlqMP3tYaJDgcp8qrr8JXjHiGUldzDzfIj4xqLfuQ7KnWnlBo+XHPdnAymm+L2qt/KrdMIFu8LWclLcHv6PMx4gbKOpYepidbv91dOFK6QXO8hyWTthruKIJ1p0W8WLS5TUPAnMgw8viL4YyVEhIopguToXaMPCWsRbttSWYUBPaP5J3njtd/HYXTrYVC8tgW3WxSvkHytWNxuFZzCDSfCzlUQlXhczFQ20cntNsVD93/E+ZAIzM93WcFH91p2kTcOydqZSuwsmhjiNQAR8tFhJWQ7s6k10f+StE12gE89ZeZTuKtP41y36BFYvrZUkYtOlLAdAf3FpXGD7ktnHgPFm2Tf2C7XjQcGrJOTXqd9jscvMWIHZ/aeiZYNEC6rwuq6+3YiayFIyIPBeQ14xkDHq+Szs43xYVb6wDaZMyhP6q2C2HUPdR4GIW0GJcD9WHX4oaI0hvmcufUwGF+fyAeEViNkb9OZKiQxSQ88LJOR76L4tLUhopHItG3BuHsQoa2CV+bbPw1k609QU4cgVWXs4dWWk0AqjibPHtL0rHct+Y8zY0GsIkY1CYlJ8T8WBv54v3lz/xG6OkFN68zJKG/+0X8UDQaCSEYYbD78JxduFcFriagi9S9uQKRy97Y+oXcVUrAJjzCNXENE1ro5/EWLF+LctHe15q/+k37ttCVmtM0UpNiBfsl16bzALXEAj5WxApd7yDeINEFJuHCaN4el8805HH/FAOKI08LcEGu9J5Q0sfWLzizal83pSlra1Yvp+bWt7CeNkSjPGkLvqV5i7dvHwMzbgUdYC9/Dw2d6A2ryCVpamdWSS8MsHbeUbjH5yz2TLM8Ausy/HYH/KZzrcxmPi/v/EcE1ONg1WfQVek2QeDIeyoQCWY60Di1om15G/iblgq\"}" }, "bitgoKeychain": { "id": "62fe5f9463b6760007c3176949f34e97", "source": "bitgo", "type": "tss", "commonKeychain": "2fb16032a36f781f5993c32e91e9907ba0902af8b7e3a0c70cdd083c2bea9a28ea7aa3dee8dd4c25615c6fb358d084b2ecd6f029fc37a050e08db89105f71125", "isBitGo": true, "keyShares": [ { "from": "user", "to": "bitgo", "publicShare": "a4f709a89807591b1d5ad1376a752e03d2909971b99a173404d468320998a6c27e790233832329e215539349b140b2a68b5d71126e3d18ac1ea68ea774a51f79", "privateShare": "-----BEGIN PGP MESSAGE-----\n\nwX4DUQ8XhGVGcTISAgMEDuFkYYp7hUa75rRgsgVACa69Y/8VAgwePsISckvh\n1RtNxopbqnuoZnHZ3e+4QjtsDE37eH0wnH8iyg5f0tQiRDAifL/cGlMl5RHJ\nzPX/IX/g7x/pzF7HHv2KNcDjFDYLdJ5SuNOerex57nnZcA/E9KPSsQFirKCL\n9ttvbwOij8eF6hExU7BNLgWShN0XlK+vfQwKwFEqwC8eueFRl4ar9a1MwX4G\n0dkoaWchrtVvICvjkYM88S4DhBZQnxnq8GMieQmSJcSc0HW/35YgYBeCLCfD\nTvu7VKNfiahZUyz5FTg+mCRHpZfPjLM5idCBlel55aYpKP0Eyi+G0NCqD7KG\nkgPg+gGaX9fLT+X0pictFP2bubp8L4Y1+4XR8jZBlZs9yGrjMA==\n=ACr7\n-----END PGP MESSAGE-----\n", "privateShareProof": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nxk8EYv5fjRMFK4EEAAoCAwSDNexnnOLv2cRBHm+R5R6tZ9JG6CzXSo49d9lf\n1+3oMWZw3lan0wjONexbxxIVt3o5h7uKBkzvGXc4pJJtHYflzVUzZmUyN2I3\nODYyNmU1NGUyZDk1NTVhNGMgPHVzZXItM2ZlMjdiNzg2MjZlNTRlMmQ5NTU1\nYTRjQDNmZTI3Yjc4NjI2ZTU0ZTJkOTU1NWE0Yy5jb20+wowEEBMIAB0FAmL+\nX40ECwkHCAMVCAoEFgACAQIZAQIbAwIeAQAhCRB8m5Mu/ewU9RYhBLOjUCU5\nBHMbo4dU03ybky797BT1nrgBAKJ1q2YTMuouv6rvUFbPCD4qnzNIKBVMcWYq\ny7menfcYAQDfdButPr74WaM6yK7Avqddu37LshQ+2zxxOWXwc1Ijgc5TBGL+\nX40SBSuBBAAKAgMEY7SRLN0e1bKn0ipT9Tb9lfMjUtP+VFjNHQA9qJ2XwjXL\nG8SfqnN12/lW5VHPpaGQIm6afljuzK6ibcoWHxuKiAMBCAfCeAQYEwgACQUC\nYv5fjQIbDAAhCRB8m5Mu/ewU9RYhBLOjUCU5BHMbo4dU03ybky797BT1vOQA\n/iOWOPiKUV2wsBlb7WqMUIaS7Rp0rCv3quRBruCLoW78AQDpSfraSGBBPWPx\n4ADrSC8PIEmTefZ1DL7OnczDHPP2S84zBGL+X40WCSsGAQQB2kcPAQEHQJOx\nyHYRrls5P2L8yP06eJy405VGUUfz56AvlAWcjpuMwngEGBMIAAkFAmL+X40C\nGyAAIQkQfJuTLv3sFPUWIQSzo1AlOQRzG6OHVNN8m5Mu/ewU9WRuAQDWTzEp\n2oBzuT6NeiR/EUQ0ueW3W9WlMpg++dGhXkbkfwD/QIosDlWUri24rxdrMPON\n9ybdjREoBC2v2H0X9Ff0irY=\n=upKB\n-----END PGP PUBLIC KEY BLOCK-----\n" }, { "from": "backup", "to": "bitgo", "publicShare": "075005d8c8a44634aa73225675abfa1036fd3a0764eb807a3728a4b5b9bec24731ed69024f158f73f7b946c04c98b112cfd92d8497d437b17c54d5d696189af4", "privateShare": "-----BEGIN PGP MESSAGE-----\n\nwX4DUQ8XhGVGcTISAgMEinkO6ISiOFQ69DQ41Q9gTjjL5gpUPVkFvkJhwCp0\nSYhpQ7nPjPQr0jPfz2UJB3HGoFCd0FrcnEB5MWZmuxx7uzDkQs8Gv+/Fdb1r\nNECSYbmm/I5R+GKN1qhVULiskCJbY5VKy6EzyEyjQHbWsahcRAbSsQH5Nxx4\nOtQUnoA5f0k2Zf8I0OFuBAzUqkhEgYMuI3/AKJOQt3CtQvlWSBkHd3Ha6WOH\nz8NrO/HwrKjPuzXxy35ec1H2vuDp2NOtC/esEITNz/njI0zlfsAMKHFvdfTM\nqN7hxIiQ7xZBEX2C/PdRKm0OOCGs8FbRADoZFYOm8OXkrWZ8CnNe4Qsrmw7t\n8UAIblHxGnIspI8q8pU0/RzJ/caYab+jEZln6CyFlT3gwW+jDQ==\n=PZpk\n-----END PGP MESSAGE-----\n", "privateShareProof": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nxk8EYv5fjRMFK4EEAAoCAwSDNexnnOLv2cRBHm+R5R6tZ9JG6CzXSo49d9lf\n1+3oMWZw3lan0wjONexbxxIVt3o5h7uKBkzvGXc4pJJtHYflzVUzZmUyN2I3\nODYyNmU1NGUyZDk1NTVhNGMgPHVzZXItM2ZlMjdiNzg2MjZlNTRlMmQ5NTU1\nYTRjQDNmZTI3Yjc4NjI2ZTU0ZTJkOTU1NWE0Yy5jb20+wowEEBMIAB0FAmL+\nX40ECwkHCAMVCAoEFgACAQIZAQIbAwIeAQAhCRB8m5Mu/ewU9RYhBLOjUCU5\nBHMbo4dU03ybky797BT1nrgBAKJ1q2YTMuouv6rvUFbPCD4qnzNIKBVMcWYq\ny7menfcYAQDfdButPr74WaM6yK7Avqddu37LshQ+2zxxOWXwc1Ijgc5TBGL+\nX40SBSuBBAAKAgMEY7SRLN0e1bKn0ipT9Tb9lfMjUtP+VFjNHQA9qJ2XwjXL\nG8SfqnN12/lW5VHPpaGQIm6afljuzK6ibcoWHxuKiAMBCAfCeAQYEwgACQUC\nYv5fjQIbDAAhCRB8m5Mu/ewU9RYhBLOjUCU5BHMbo4dU03ybky797BT1vOQA\n/iOWOPiKUV2wsBlb7WqMUIaS7Rp0rCv3quRBruCLoW78AQDpSfraSGBBPWPx\n4ADrSC8PIEmTefZ1DL7OnczDHPP2S84zBGL+X40WCSsGAQQB2kcPAQEHQKza\nW5oyWlrrA0Rkrn0sj5KIVSdT+iJNBWTg2tqvIcW0wngEGBMIAAkFAmL+X40C\nGyAAIQkQfJuTLv3sFPUWIQSzo1AlOQRzG6OHVNN8m5Mu/ewU9WRuAP41TA0X\nKRT3I0hpFxRCKdNnw0tuFd+P5/yP2N58rcqHKAEAgP8vA0rQH5iVG6lVJnSV\nXft5KbuPvikOUPKgHbjt42o=\n=0VRu\n-----END PGP PUBLIC KEY BLOCK-----\n" }, { "from": "bitgo", "to": "user", "publicShare": "5d3534d906f7ef423cfe72240dae60559c31e73c1bfa9e91ff51a5d74da4e9d63a1438a916a492cf544f95a95af720f991a05192f6264ff345925412fb3956b8", "privateShare": "-----BEGIN PGP MESSAGE-----\n\nwX4Dsgak31RbtBYSAgMEdr3WIJZ7GHUlR+bsxmEWnYLHNG7in4Jt39Nk/D1L\nZ5Bn81Hm1u+RMO6qMEtSVjSst8tlnsAXaDW8wcXN0Rp3dzD7fB6UqrFWJET9\nME9Xs1rF1rWcGyZPf3Tx8lbGj3cO3B6AwkLPK9+m/7zVlfo/rWLSsQGHWUL+\n6IoSF884L3LPAEvpvqFk0yFSFak/GJnOc9zBlbzkR1uaPC3xUicnf6IwLiuc\ntPPy+i0ZMTTi4euOAVuwYJqfNbJMLjfzgeSBEefFsXtiL6odnmbI4LReNp1M\n438rNRIrf4kbo8+BMvi04NVy0xQmAiiOe3esi2nfjP/+spx/cq9ulDg7v3eh\nWz5gJzbfiaA/dxqKjSPJjhmMH/UgpfXGajPdWgOp0N4LnTdJdQ==\n=eNny\n-----END PGP MESSAGE-----\n" }, { "from": "bitgo", "to": "backup", "publicShare": "5d3534d906f7ef423cfe72240dae60559c31e73c1bfa9e91ff51a5d74da4e9d63a1438a916a492cf544f95a95af720f991a05192f6264ff345925412fb3956b8", "privateShare": "-----BEGIN PGP MESSAGE-----\n\nwX4Dsgak31RbtBYSAgMEoWHzLXIv1fpf8QDagafOtCRBYyi9Od+wsyacE3yF\ni/0cjX7wPQtgYlfthcpB8SJGBgLnlMcB/Vvx21gGa+QA3jDpXD/pnbTrrVf2\ntRCE8C0iDCUkF+jOQMEL25jj72kzQDao6lMLdflH3nQdxfnNwAjSsQFbR/hS\nrY8iAQQmvkkpWdmFK9DMnMUN9oWaeyzMqqi4AIwjAFEDqtDT4gJmLm61oPnc\nfClwOj+VZv3IKXS1rpDk7OPVbQinNWLLsLJ7gfM/gxDqn4KbWnfNMpsNMBS+\nbL6M9oIYU0S6iUovh/2rfZu7UqxoRDQElBnmKiWAL/krA0TriK4LgNqpVKcV\n57xBGhLV5RsPN/D5E94I4kJCUKQR8U6ooQ4/DCbYgaCtkL4u9A==\n=xFCw\n-----END PGP MESSAGE-----\n" } ], "walletHSMGPGPublicKeySigs": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nxk8EYv5fjRMFK4EEAAoCAwSDNexnnOLv2cRBHm+R5R6tZ9JG6CzXSo49d9lf\n1+3oMWZw3lan0wjONexbxxIVt3o5h7uKBkzvGXc4pJJtHYflzVUzZmUyN2I3\nODYyNmU1NGUyZDk1NTVhNGMgPHVzZXItM2ZlMjdiNzg2MjZlNTRlMmQ5NTU1\nYTRjQDNmZTI3Yjc4NjI2ZTU0ZTJkOTU1NWE0Yy5jb20+wowEEBMIAB0FAmL+\nX40ECwkHCAMVCAoEFgACAQIZAQIbAwIeAQAhCRB8m5Mu/ewU9RYhBLOjUCU5\nBHMbo4dU03ybky797BT1nrgBAKJ1q2YTMuouv6rvUFbPCD4qnzNIKBVMcWYq\ny7menfcYAQDfdButPr74WaM6yK7Avqddu37LshQ+2zxxOWXwc1IjgcLBiAQT\nEwgB2QUCYv5fkgILCZcUgAAAAAAOAIBjb21tb25LZXlDaGFpbjJmYjE2MDMy\nYTM2Zjc4MWY1OTkzYzMyZTkxZTk5MDdiYTA5MDJhZjhiN2UzYTBjNzBjZGQw\nODNjMmJlYTlhMjhlYTdhYTNkZWU4ZGQ0YzI1NjE1YzZmYjM1OGQwODRiMmVj\nZDZmMDI5ZmMzN2EwNTBlMDhkYjg5MTA1ZjcxMTI1PRSAAAAAAAwAKHVzZXJH\ncGdLZXlJZGIzYTM1MDI1MzkwNDczMWJhMzg3NTRkMzdjOWI5MzJlZmRlYzE0\nZjU/FIAAAAAADgAoYmFja3VwR3BnS2V5SWRiM2EzNTAyNTM5MDQ3MzFiYTM4\nNzU0ZDM3YzliOTMyZWZkZWMxNGY1VRSAAAAAAAwAQHVzZXJTaGFyZVB1YjNh\nMTQzOGE5MTZhNDkyY2Y1NDRmOTVhOTVhZjcyMGY5OTFhMDUxOTJmNjI2NGZm\nMzQ1OTI1NDEyZmIzOTU2YjhXFIAAAAAADgBAYmFja3VwU2hhcmVQdWIzYTE0\nMzhhOTE2YTQ5MmNmNTQ0Zjk1YTk1YWY3MjBmOTkxYTA1MTkyZjYyNjRmZjM0\nNTkyNTQxMmZiMzk1NmI4AhUIAhYAAhsDAh4BACEJEIk1GwgMa6d7FiEEdEvk\nP/ydEzeilCdeiTUbCAxrp3vloQD/ciVeNu9cmoB2mgeLDrp0L5iFrawCiTne\nQ4C0JtkwAxUA/i6N+1Re0QdVhg2UAsz6RTgXEyuFYL1UexdoWd8/ogwPzlME\nYv5fjRIFK4EEAAoCAwRjtJEs3R7VsqfSKlP1Nv2V8yNS0/5UWM0dAD2onZfC\nNcsbxJ+qc3Xb+VblUc+loZAibpp+WO7MrqJtyhYfG4qIAwEIB8J4BBgTCAAJ\nBQJi/l+NAhsMACEJEHybky797BT1FiEEs6NQJTkEcxujh1TTfJuTLv3sFPW8\n5AD+I5Y4+IpRXbCwGVvtaoxQhpLtGnSsK/eq5EGu4IuhbvwBAOlJ+tpIYEE9\nY/HgAOtILw8gSZN59nUMvs6dzMMc8/ZLxk8EYv5fjRMFK4EEAAoCAwSDNexn\nnOLv2cRBHm+R5R6tZ9JG6CzXSo49d9lf1+3oMWZw3lan0wjONexbxxIVt3o5\nh7uKBkzvGXc4pJJtHYflzVUzZmUyN2I3ODYyNmU1NGUyZDk1NTVhNGMgPHVz\nZXItM2ZlMjdiNzg2MjZlNTRlMmQ5NTU1YTRjQDNmZTI3Yjc4NjI2ZTU0ZTJk\nOTU1NWE0Yy5jb20+wowEEBMIAB0FAmL+X40ECwkHCAMVCAoEFgACAQIZAQIb\nAwIeAQAhCRB8m5Mu/ewU9RYhBLOjUCU5BHMbo4dU03ybky797BT1nrgBAKJ1\nq2YTMuouv6rvUFbPCD4qnzNIKBVMcWYqy7menfcYAQDfdButPr74WaM6yK7A\nvqddu37LshQ+2zxxOWXwc1IjgcLBiAQTEwgB2QUCYv5fkwILCZcUgAAAAAAO\nAIBjb21tb25LZXlDaGFpbjJmYjE2MDMyYTM2Zjc4MWY1OTkzYzMyZTkxZTk5\nMDdiYTA5MDJhZjhiN2UzYTBjNzBjZGQwODNjMmJlYTlhMjhlYTdhYTNkZWU4\nZGQ0YzI1NjE1YzZmYjM1OGQwODRiMmVjZDZmMDI5ZmMzN2EwNTBlMDhkYjg5\nMTA1ZjcxMTI1PRSAAAAAAAwAKHVzZXJHcGdLZXlJZGIzYTM1MDI1MzkwNDcz\nMWJhMzg3NTRkMzdjOWI5MzJlZmRlYzE0ZjU/FIAAAAAADgAoYmFja3VwR3Bn\nS2V5SWRiM2EzNTAyNTM5MDQ3MzFiYTM4NzU0ZDM3YzliOTMyZWZkZWMxNGY1\nVRSAAAAAAAwAQHVzZXJTaGFyZVB1YjNhMTQzOGE5MTZhNDkyY2Y1NDRmOTVh\nOTVhZjcyMGY5OTFhMDUxOTJmNjI2NGZmMzQ1OTI1NDEyZmIzOTU2YjhXFIAA\nAAAADgBAYmFja3VwU2hhcmVQdWIzYTE0MzhhOTE2YTQ5MmNmNTQ0Zjk1YTk1\nYWY3MjBmOTkxYTA1MTkyZjYyNjRmZjM0NTkyNTQxMmZiMzk1NmI4AhUIAhYA\nAhsDAh4BACEJEIk1GwgMa6d7FiEEdEvkP/ydEzeilCdeiTUbCAxrp3tTRAD/\nRDW0thkl52hPWZfT5fXx+OGlJd9OFr4/QPJH9O/OoJ8A/Al6xAIgHlaubXL5\nhgjcAJv1u4oEtDdYR69N8sANYp2MzlMEYv5fjRIFK4EEAAoCAwRjtJEs3R7V\nsqfSKlP1Nv2V8yNS0/5UWM0dAD2onZfCNcsbxJ+qc3Xb+VblUc+loZAibpp+\nWO7MrqJtyhYfG4qIAwEIB8J4BBgTCAAJBQJi/l+NAhsMACEJEHybky797BT1\nFiEEs6NQJTkEcxujh1TTfJuTLv3sFPW85AD+I5Y4+IpRXbCwGVvtaoxQhpLt\nGnSsK/eq5EGu4IuhbvwBAOlJ+tpIYEE9Y/HgAOtILw8gSZN59nUMvs6dzMMc\n8/ZL\n=r9gK\n-----END PGP PUBLIC KEY BLOCK-----\n" }, "warning": "Be sure to backup the backup keychain -- it is not stored anywhere else!" }

Note: If you want your wallet to show up in the UI, please pass in enterprise: <ENTERPRISE_ID> as a parameter to your generateWallet() function.

Next

See Also