signature: "583624F09D1108B50CFB219F13F075AC03CD5C5450DE055B0963D8E814324C9B0A858BD34AF06E5290C436CC86872CBB13C7FE89972E77E6836249DCD2DAE40A"
},
- // mnemonic from nano.org, other values calculated by importing to exodus app
EXODUS: {
- MNEMONIC: 'company public remove bread fashion tortoise ahead shrimp onion prefer waste blade',
- BIP39_SEED: '924A962CAE64448812BE28A514093EBFEEED537D61A44318EB35F902961D21B2FCCD30008D33C8D1D5327A34B9B73281C4B27A0A3D004C1C2E85E8DBB234CBA8',
+ // mnemonic from nano.org, other values calculated by importing to exodus app
+ MNEMONIC_0: 'company public remove bread fashion tortoise ahead shrimp onion prefer waste blade',
+ BIP39_SEED_0: '924A962CAE64448812BE28A514093EBFEEED537D61A44318EB35F902961D21B2FCCD30008D33C8D1D5327A34B9B73281C4B27A0A3D004C1C2E85E8DBB234CBA8',
PRIVATE_0: 'CBB312CA6C48B2A2656723C7D4FDE774479D9FCC53EE23F46B877E3AA6D041BF',
PUBLIC_0: 'A8225A8F80079FB62E4A1BC577A684A2A93DB7303A4FD8CA5D0A90C5150F1182',
ADDRESS_0: 'nano_3c34dc9r13wzprq6n8y7gymabaob9pum1gkhu577t4nirnciy6e43g96m6ym',
+
+ // zero entropy mnemonic, other values calculated by importing to exodus app
+ ENTROPY_1: '00000000000000000000000000000000',
+ MNEMONIC_1: 'abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about',
+ BIP39_SEED_1: '5EB00BBDDCF069084889A8AB9155568165F5C453CCB85E70811AAED6F6DA5FC19A5AC40B389CD370D086206DEC8AA6C43DAEA6690F20AD3D8D48B2D2CE9E38E4',
+ PRIVATE_1: '89DA93509D22BC6704F2859C509055E0748707D3AAC17B783DEEFB6ECE8D8F45',
+ PUBLIC_1: '',
+ ADDRESS_1: 'nano_1ukkc34hq8ibidkdkdd9bjdijfpfndidrom8xy3cdmguhtjyp7zhd5tcwbgu',
}
})
})\r
\r
await test('nano.org Exodus test vector mnemonic', async () => {\r
- const wallet = await Wallet.load('Exodus', NANO_TEST_VECTORS.PASSWORD, CUSTOM_TEST_VECTORS.EXODUS.MNEMONIC)\r
+ const wallet = await Wallet.load('Exodus', NANO_TEST_VECTORS.PASSWORD, CUSTOM_TEST_VECTORS.EXODUS.MNEMONIC_0)\r
await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)\r
const account = await wallet.account()\r
\r
- assert.ok(await wallet.verify(CUSTOM_TEST_VECTORS.EXODUS.MNEMONIC))\r
- assert.ok(await wallet.verify(CUSTOM_TEST_VECTORS.EXODUS.BIP39_SEED))\r
+ assert.ok(await wallet.verify(CUSTOM_TEST_VECTORS.EXODUS.MNEMONIC_0))\r
+ assert.ok(await wallet.verify(CUSTOM_TEST_VECTORS.EXODUS.BIP39_SEED_0))\r
assert.ok(account instanceof Account)\r
assert.equal(account.publicKey, CUSTOM_TEST_VECTORS.EXODUS.PUBLIC_0)\r
assert.equal(account.address, CUSTOM_TEST_VECTORS.EXODUS.ADDRESS_0)\r
\r
await assert.resolves(wallet.destroy())\r
})\r
+\r
+ await test('zero entropy Exodus test vector mnemonic', async () => {\r
+ const wallet = await Wallet.load('Exodus', NANO_TEST_VECTORS.PASSWORD, CUSTOM_TEST_VECTORS.EXODUS.MNEMONIC_1)\r
+ await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)\r
+ const account = await wallet.account()\r
+\r
+ assert.ok(await wallet.verify(CUSTOM_TEST_VECTORS.EXODUS.MNEMONIC_1))\r
+ assert.ok(await wallet.verify(CUSTOM_TEST_VECTORS.EXODUS.BIP39_SEED_1))\r
+ assert.ok(account instanceof Account)\r
+ // assert.equal(account.publicKey, CUSTOM_TEST_VECTORS.EXODUS.PUBLIC_1)\r
+ assert.equal(account.address, CUSTOM_TEST_VECTORS.EXODUS.ADDRESS_1)\r
+\r
+ await assert.resolves(wallet.destroy())\r
+ })\r
})\r
])\r