Skip to content

Commit

Permalink
Merge pull request #681 from input-output-hk/feat/address-generator
Browse files Browse the repository at this point in the history
feat: add script to generate addreses
  • Loading branch information
mkazlauskas committed Apr 4, 2023
2 parents 4dfd93f + 7cb07ec commit ab415c5
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 0 deletions.

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions packages/e2e/test/dump/addresses/no-history-mainnet.json

Large diffs are not rendered by default.

43 changes: 43 additions & 0 deletions scripts/generate-addresses.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
// Usage: node scripts/generate-addresses.js 10000 1
// Where 10000 is # of addresses, and 1 is NetworkId (mainnet)

/* eslint-disable import/no-extraneous-dependencies */
const { Cardano } = require('@cardano-sdk/core');
const { util, InMemoryKeyAgent } = require('@cardano-sdk/key-management');
const Crypto = require('@cardano-sdk/crypto');
const CML = require('@emurgo/cardano-serialization-lib-nodejs');
const fs = require('fs');

const mnemonicWords = util.generateMnemonicWords();
const numAddresses = Number.parseInt(process.argv[2]);
const networkId = Number.parseInt(process.argv[3]);
const passphrase = 'passphrase';

(async () => {
const keyAgent = await InMemoryKeyAgent.fromBip39MnemonicWords(
{
accountIndex: 0,
chainId: networkId === 0 ? Cardano.ChainIds.Preprod : Cardano.ChainIds.Mainnet,
getPassphrase: async () => passphrase,
mnemonic2ndFactorPassphrase: passphrase,
mnemonicWords
},
{
bip32Ed25519: new Crypto.CmlBip32Ed25519(CML),
inputResolver: {},
logger: console
}
);

const addresses = [];
let index = 0;
while (addresses.length < numAddresses) {
const { address, rewardAccount } = await keyAgent.deriveAddress({ index: index++, type: 0 });
addresses.push({
address,
stake_address: rewardAccount,
tx_count: 0
});
}
fs.writeFileSync('addreses.json', JSON.stringify(addresses));
})();

0 comments on commit ab415c5

Please sign in to comment.