@ledgerhq/vault-cli 0.56.0 → 0.57.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/commands/bake.js +6 -0
- package/bin/commands/bake.js.map +1 -1
- package/bin/commands/index.js +2 -0
- package/bin/commands/index.js.map +1 -1
- package/bin/commands/registerMigratedUsers.d.ts +32 -0
- package/bin/commands/registerMigratedUsers.js +51 -0
- package/bin/commands/registerMigratedUsers.js.map +1 -0
- package/bin/presets/1acc-1wt-0gr-1op-0ad.json +78 -0
- package/bin/presets/1acc-6wt-3gr-4op-2ad.json +1917 -0
- package/bin/presets/migration-1account-6whitelists-3groups-4users.json +1910 -0
- package/package.json +3 -3
package/bin/commands/bake.js
CHANGED
|
@@ -30,12 +30,18 @@ const empty_json_1 = __importDefault(require("../presets/empty.json"));
|
|
|
30
30
|
const beatles_json_1 = __importDefault(require("../presets/beatles.json"));
|
|
31
31
|
const beatles_legacy_json_1 = __importDefault(require("../presets/beatles-legacy.json"));
|
|
32
32
|
const erc20_json_1 = __importDefault(require("../presets/erc20.json"));
|
|
33
|
+
const migration_1account_6whitelists_3groups_4users_json_1 = __importDefault(require("../presets/migration-1account-6whitelists-3groups-4users.json"));
|
|
34
|
+
const _1acc_1wt_0gr_1op_0ad_json_1 = __importDefault(require("../presets/1acc-1wt-0gr-1op-0ad.json"));
|
|
35
|
+
const _1acc_6wt_3gr_4op_2ad_json_1 = __importDefault(require("../presets/1acc-6wt-3gr-4op-2ad.json"));
|
|
33
36
|
const wipe_1 = require("./wipe");
|
|
34
37
|
const PRESETS = {
|
|
35
38
|
empty: empty_json_1.default,
|
|
36
39
|
beatles: beatles_json_1.default,
|
|
37
40
|
"beatles-legacy": beatles_legacy_json_1.default,
|
|
38
41
|
erc20: erc20_json_1.default,
|
|
42
|
+
migration_1: migration_1account_6whitelists_3groups_4users_json_1.default,
|
|
43
|
+
"1acc-1wt-0gr-1op-0ad": _1acc_1wt_0gr_1op_0ad_json_1.default,
|
|
44
|
+
"1acc-6wt-3gr-4op-2ad": _1acc_6wt_3gr_4op_2ad_json_1.default,
|
|
39
45
|
};
|
|
40
46
|
exports.default = {
|
|
41
47
|
command: "bake",
|
package/bin/commands/bake.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bake.js","sourceRoot":"","sources":["../../src/commands/bake.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,wDAAgC;AAEhC,yDAIgC;AAGhC,uDAA+B;AAC/B,iEAAyC;AACzC,+DAAuC;AACvC,+DAAuC;AAGvC,uEAAiD;AACjD,2EAAqD;AACrD,yFAAmE;AACnE,uEAAiD;
|
|
1
|
+
{"version":3,"file":"bake.js","sourceRoot":"","sources":["../../src/commands/bake.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,wDAAgC;AAEhC,yDAIgC;AAGhC,uDAA+B;AAC/B,iEAAyC;AACzC,+DAAuC;AACvC,+DAAuC;AAGvC,uEAAiD;AACjD,2EAAqD;AACrD,yFAAmE;AACnE,uEAAiD;AACjD,uJAA+F;AAE/F,sGAA+D;AAC/D,sGAA+D;AAE/D,iCAA2C;AAE3C,MAAM,OAAO,GAA6B;IACxC,KAAK,EAAE,oBAAY;IAEnB,OAAO,EAAE,sBAAc;IAEvB,gBAAgB,EAAE,6BAAqB;IAEvC,KAAK,EAAE,oBAAY;IAEnB,WAAW,EAAE,4DAAkB;IAE/B,sBAAsB,EAAE,oCAAW;IAEnC,sBAAsB,EAAE,oCAAW;CACpC,CAAC;AAeF,kBAAe;IACb,OAAO,EAAE,MAAM;IACf,WAAW,EAAE,8BAA8B;IAC3C,IAAI,EAAE;QACJ;YACE,OAAO,EAAE,6CAA6C;SACvD;KACF;IACD,iBAAiB,EAAE,IAAI;IACvB,WAAW,EAAE,IAAI;IACjB,OAAO,EAAE;QACP;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,GAAG;YACV,WAAW,EAAE,sBAAsB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;iBACpD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC;iBAC3B,IAAI,CAAC,IAAI,CAAC,EAAE;YACf,IAAI,EAAE,MAAM;SACb;QACD,GAAG,oBAAU;QACb,GAAG,qBAAW;QACd,GAAG,oBAAU;QACb;YACE,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,qBAAqB;YAClC,IAAI,EAAE,OAAO;YACb,YAAY,EAAE,KAAK;SACpB;QACD;YACE,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,GAAG;YACV,WAAW,EAAE,4BAA4B;YACzC,IAAI,EAAE,OAAO;YACb,YAAY,EAAE,KAAK;SACpB;QACD,GAAG,kBAAW;KACf;IACD,GAAG,EAAE,CAAO,OAAoB,EAAiB,EAAE;QACjD,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE;YACvE,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAC;SACH;QAED,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3D,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QAED,IAAI,OAAO,CAAC,IAAI,EAAE;YAChB,MAAM,WAAI,CAAC,OAAO,CAAC,CAAC;SACrB;QAED,IAAI,QAAQ,CAAC;QAEb,IAAI,KAAK,EAAE;YACT,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAC9B;aAAM,IAAI,OAAO,CAAC,MAAM,EAAE;YACzB,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,kBAAkB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;aACrD;YACD,QAAQ,GAAG,MAAM,CAAC;SACnB;aAAM;YACL,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACxC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;SAC3D;QAED,+BAAgB,CAAC,QAAQ,CAAC,CAAC;QAC3B,MAAM,2BAAY,CAChB,QAAQ,EACR,gCAAiB,iCACZ,OAAO,KACV,MAAM,EAAE,OAAO,CAAC,GAAG,EACnB,YAAY,EAAE,OAAO,CAAC,YAAY,IAClC,EACF,EAAE,MAAM,EAAN,gBAAM,EAAE,CACX,CAAC;IACJ,CAAC,CAAA;CACF,CAAC;AAEF,MAAM,SAAS,GAAG,CAAO,OAAoB,EAAE,EAAE;;IAC/C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;QAClB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC9B;IACD,MAAM,EAAE,GAAG,kBAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,EAAE,CAAC;;QAItB,KAAyB,IAAA,OAAA,cAAA,EAAE,CAAA,QAAA;YAAhB,MAAM,IAAI,eAAA,CAAA;YACnB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACvB;;;;;;;;;IACD,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC7B,CAAC,CAAA,CAAC"}
|
package/bin/commands/index.js
CHANGED
|
@@ -20,6 +20,7 @@ const listen_1 = __importDefault(require("./listen"));
|
|
|
20
20
|
const proxy_1 = __importDefault(require("./proxy"));
|
|
21
21
|
const receive_1 = __importDefault(require("./receive"));
|
|
22
22
|
const recipe_1 = __importDefault(require("./recipe"));
|
|
23
|
+
const registerMigratedUsers_1 = __importDefault(require("./registerMigratedUsers"));
|
|
23
24
|
const send_1 = __importDefault(require("./send"));
|
|
24
25
|
const stats_1 = __importDefault(require("./stats"));
|
|
25
26
|
const wipe_1 = __importDefault(require("./wipe"));
|
|
@@ -65,6 +66,7 @@ exports.default = {
|
|
|
65
66
|
fetch_1.default,
|
|
66
67
|
getAuthToken_1.default,
|
|
67
68
|
getUserID_1.default,
|
|
69
|
+
registerMigratedUsers_1.default,
|
|
68
70
|
stats_1.default,
|
|
69
71
|
listen_1.default,
|
|
70
72
|
getSeed_1.default,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;;;AAAA,kDAAiC;AACjC,sDAAqC;AACrC,sDAAqC;AACrC,oDAAmC;AACnC,oDAAmC;AACnC,gEAA+C;AAC/C,wEAAuD;AACvD,gDAA+B;AAC/B,kEAAiD;AACjD,4DAA2C;AAC3C,gEAA+C;AAC/C,wDAAuC;AACvC,0DAAyC;AACzC,sDAAqC;AACrC,oDAAmC;AACnC,wDAAuC;AACvC,sDAAqC;AACrC,kDAAiC;AACjC,oDAAmC;AACnC,kDAAiC;AACjC,sDAAqC;AAKrC,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE,cAAc;QACtB,OAAO,EAAE;YACP,uDAAuD;YACvD,EAAE;YACF,yCAAyC;SAC1C;KACF;CACF,CAAC;AAEF,MAAM,OAAO,GAAG;IACd;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,sBAAsB;KACpC;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,GAAG;QACV,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,cAAc;KAC5B;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,GAAG;QACV,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,WAAW;KACzB;CACF,CAAC;AAEF,kBAAe;IACb,IAAI;IACJ,OAAO;IACP,WAAW,EAAE;QACX,cAAW;QACX,gBAAa;QACb,cAAW;QACX,gBAAa;QACb,aAAU;QACV,eAAY;QACZ,sBAAmB;QACnB,mBAAgB;QAChB,eAAY;QACZ,gBAAa;QACb,iBAAc;QACd,kBAAe;QACf,eAAY;QACZ,cAAW;QACX,iBAAc;QACd,eAAY;QACZ,gBAAa;QACb,qBAAkB;QAClB,qBAAkB;QAClB,yBAAsB;QACtB,gBAAa;KACd;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;;;AAAA,kDAAiC;AACjC,sDAAqC;AACrC,sDAAqC;AACrC,oDAAmC;AACnC,oDAAmC;AACnC,gEAA+C;AAC/C,wEAAuD;AACvD,gDAA+B;AAC/B,kEAAiD;AACjD,4DAA2C;AAC3C,gEAA+C;AAC/C,wDAAuC;AACvC,0DAAyC;AACzC,sDAAqC;AACrC,oDAAmC;AACnC,wDAAuC;AACvC,sDAAqC;AACrC,oFAAmE;AACnE,kDAAiC;AACjC,oDAAmC;AACnC,kDAAiC;AACjC,sDAAqC;AAKrC,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE,cAAc;QACtB,OAAO,EAAE;YACP,uDAAuD;YACvD,EAAE;YACF,yCAAyC;SAC1C;KACF;CACF,CAAC;AAEF,MAAM,OAAO,GAAG;IACd;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,sBAAsB;KACpC;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,GAAG;QACV,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,cAAc;KAC5B;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,GAAG;QACV,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,WAAW;KACzB;CACF,CAAC;AAEF,kBAAe;IACb,IAAI;IACJ,OAAO;IACP,WAAW,EAAE;QACX,cAAW;QACX,gBAAa;QACb,cAAW;QACX,gBAAa;QACb,aAAU;QACV,eAAY;QACZ,sBAAmB;QACnB,mBAAgB;QAChB,+BAA4B;QAC5B,eAAY;QACZ,gBAAa;QACb,iBAAc;QACd,kBAAe;QACf,eAAY;QACZ,cAAW;QACX,iBAAc;QACd,eAAY;QACZ,gBAAa;QACb,qBAAkB;QAClB,qBAAkB;QAClB,yBAAsB;QACtB,gBAAa;KACd;CACF,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { GateOptions } from "../types";
|
|
2
|
+
declare const _default: {
|
|
3
|
+
command: string;
|
|
4
|
+
description: string;
|
|
5
|
+
options: ({
|
|
6
|
+
name: string;
|
|
7
|
+
alias: string;
|
|
8
|
+
defaultValue: string;
|
|
9
|
+
description: string;
|
|
10
|
+
type: StringConstructor;
|
|
11
|
+
} | {
|
|
12
|
+
name: string;
|
|
13
|
+
type: BooleanConstructor;
|
|
14
|
+
description: string;
|
|
15
|
+
} | {
|
|
16
|
+
name: string;
|
|
17
|
+
alias: string;
|
|
18
|
+
type: StringConstructor;
|
|
19
|
+
typeLabel: string;
|
|
20
|
+
description: string;
|
|
21
|
+
defaultValue: string;
|
|
22
|
+
} | {
|
|
23
|
+
name: string;
|
|
24
|
+
type: StringConstructor;
|
|
25
|
+
description: string;
|
|
26
|
+
alias?: undefined;
|
|
27
|
+
typeLabel?: undefined;
|
|
28
|
+
defaultValue?: undefined;
|
|
29
|
+
})[];
|
|
30
|
+
run: (options: GateOptions) => Promise<void>;
|
|
31
|
+
};
|
|
32
|
+
export default _default;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const vault_common_1 = require("@ledgerhq/vault-common");
|
|
16
|
+
const gateOptions_1 = __importDefault(require("../gateOptions"));
|
|
17
|
+
const logger_1 = __importDefault(require("../logger"));
|
|
18
|
+
const registerMigratedUsers = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
19
|
+
const pool = vault_common_1.createDevicesPool(options);
|
|
20
|
+
const admin = yield pool.login(4);
|
|
21
|
+
logger_1.default.step("Fetching pending registrations");
|
|
22
|
+
const registrations = (yield admin.get("/requests?type=MIGRATE_OPERATOR&type=MIGRATE_ADMIN&status=PENDING_REGISTRATION")).edges.map((e) => e.node);
|
|
23
|
+
logger_1.default.info(`${registrations.length} request(s) found`);
|
|
24
|
+
logger_1.default.step("Registrations");
|
|
25
|
+
for (const req of registrations) {
|
|
26
|
+
const user = req.user;
|
|
27
|
+
if (!user.user_id)
|
|
28
|
+
continue;
|
|
29
|
+
const device = yield bruteforceUserID(pool, user.user_id);
|
|
30
|
+
if (!device)
|
|
31
|
+
continue;
|
|
32
|
+
console.log(`Registering ${user.user_id}`);
|
|
33
|
+
yield pool.registerDevice(device, req);
|
|
34
|
+
}
|
|
35
|
+
logger_1.default.success("Finished");
|
|
36
|
+
});
|
|
37
|
+
const bruteforceUserID = (pool, userID) => __awaiter(void 0, void 0, void 0, function* () {
|
|
38
|
+
for (let i = 10; i < 100; i++) {
|
|
39
|
+
const found = yield pool.getUserID(i);
|
|
40
|
+
if (found === userID)
|
|
41
|
+
return i;
|
|
42
|
+
}
|
|
43
|
+
return null;
|
|
44
|
+
});
|
|
45
|
+
exports.default = {
|
|
46
|
+
command: "registerMigratedUsers",
|
|
47
|
+
description: "Register migrated users that have a pending invitation",
|
|
48
|
+
options: [...gateOptions_1.default],
|
|
49
|
+
run: registerMigratedUsers,
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=registerMigratedUsers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerMigratedUsers.js","sourceRoot":"","sources":["../../src/commands/registerMigratedUsers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,yDAA2D;AAQ3D,iEAAyC;AAEzC,uDAA+B;AAE/B,MAAM,qBAAqB,GAAG,CAAO,OAAoB,EAAE,EAAE;IAC3D,MAAM,IAAI,GAAG,gCAAiB,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAElC,gBAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAE9C,MAAM,aAAa,GAAG,CACpB,MAAM,KAAK,CAAC,GAAG,CACb,gFAAgF,CACjF,CACF,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE3B,gBAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,mBAAmB,CAAC,CAAC;IACxD,gBAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAE7B,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;QAE/B,MAAM,IAAI,GAAa,GAAG,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,SAAS;QAC5B,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KACxC;IAED,gBAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC7B,CAAC,CAAA,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,IAAiB,EACjB,MAAc,EACU,EAAE;IAC1B,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,CAAC,CAAC;KAChC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAA,CAAC;AAEF,kBAAe;IACb,OAAO,EAAE,uBAAuB;IAChC,WAAW,EAAE,wDAAwD;IACrE,OAAO,EAAE,CAAC,GAAG,qBAAW,CAAC;IACzB,GAAG,EAAE,qBAAqB;CAC3B,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
{
|
|
2
|
+
"customUsernames": { "10": "Op10" },
|
|
3
|
+
"users": { "operators": [10] },
|
|
4
|
+
"groups": [],
|
|
5
|
+
"whitelists": [
|
|
6
|
+
{
|
|
7
|
+
"name": "10_diff_addr",
|
|
8
|
+
"addresses": [
|
|
9
|
+
{
|
|
10
|
+
"address": "GBXSD6LXWSNK5IAKYPLB5DLPWFSGXULRRMFNP2STXEQPWCZ2PI7IHD7J",
|
|
11
|
+
"currency": "stellar",
|
|
12
|
+
"name": "st1"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"address": "mpD934LSwXzgz57nW9zkdx729bGPvmh2gL",
|
|
16
|
+
"currency": "bitcoin_testnet",
|
|
17
|
+
"name": "tbtc1"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"address": "1DeGiqpCKUmUJR95hFWWSkdP4LqBmLUaUP",
|
|
21
|
+
"currency": "bitcoin",
|
|
22
|
+
"name": "bitcoin_legacy"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"address": "bc1q7gxq8ww5vvrq8pap7j989ynzucxk8v46hq9ta6",
|
|
26
|
+
"currency": "bitcoin",
|
|
27
|
+
"name": "bitcoin_segwit"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"address": "DFE4wtzrpoSVc7FequpT8PJBtid6dsYq9x",
|
|
31
|
+
"currency": "dogecoin",
|
|
32
|
+
"name": "doge1"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"address": "0x5f17bCD001Eb98fC9232805ccFBF84840103D064",
|
|
36
|
+
"currency": "ethereum",
|
|
37
|
+
"name": "eth1"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"address": "GBSHIMR7WEC63JDP7QD4QFXAKQ2PJ6FJFDRPQSFROCH6RQXTE2K42FZR",
|
|
41
|
+
"currency": "stellar",
|
|
42
|
+
"name": "st2"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"address": "rBTXb8UD3tXMXGXcy3BPyhWTQeL4ax12WL",
|
|
46
|
+
"currency": "ripple",
|
|
47
|
+
"name": "xrp1"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"address": "VxBBBDTAaRZbmyLaQ8tXAspRjg874YXDxW",
|
|
51
|
+
"currency": "viacoin",
|
|
52
|
+
"name": "via1"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"address": "LN4VNJZqsoKixygPr8UuLUyLsUJnB2sSQD",
|
|
56
|
+
"currency": "litecoin",
|
|
57
|
+
"name": "ltc11"
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
}
|
|
61
|
+
],
|
|
62
|
+
"accounts": [
|
|
63
|
+
{
|
|
64
|
+
"name": "BTC_TESTNET_1",
|
|
65
|
+
"currency": "bitcoin_testnet",
|
|
66
|
+
"derivationMode": "NATIVE_SEGWIT",
|
|
67
|
+
"rules": [
|
|
68
|
+
[
|
|
69
|
+
{
|
|
70
|
+
"type": "MULTI_AUTHORIZATIONS",
|
|
71
|
+
"steps": [{ "quorum": 1, "users": [10] }]
|
|
72
|
+
},
|
|
73
|
+
{ "type": "WHITELIST", "whitelists": ["10_diff_addr"] }
|
|
74
|
+
]
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
]
|
|
78
|
+
}
|