besu-network-manager
Version:
TypeScript library for managing Hyperledger Besu networks with Clique consensus using Docker
33 lines • 1.18 kB
JavaScript
export class GenesisGenerator {
static generateGenesis(config) {
let extraData = '0x' + '0'.repeat(64);
for (const validator of config.validators) {
extraData += validator.startsWith('0x') ? validator.slice(2) : validator;
}
extraData += '0'.repeat(130);
const genesis = {
config: {
chainId: config.chainId,
berlinBlock: 0,
clique: {
blockperiodseconds: 4,
epochlength: 30000
}
},
coinbase: '0x0000000000000000000000000000000000000000',
difficulty: '0x1',
extraData,
gasLimit: '0xa00000',
mixHash: '0x0000000000000000000000000000000000000000000000000000000000000000',
nonce: '0x0',
timestamp: '0x5c51a607',
alloc: {
'0xaeeB85e5b9aD65E72F9924E68a164B85110d3df8': {
balance: '0x200000000000000000000000000000000000000000000000000000000000000'
}
}
};
return genesis;
}
}
//# sourceMappingURL=GenesisGenerator.js.map