setupHushKeychain.ts 866 B

1234567891011121314151617181920212223242526272829303132333435
  1. /* Import modules. */
  2. import moment from 'moment'
  3. /* Set constants. */
  4. const ADDRESS_POOL_SIZE = 40 // NOTE: Recommended default is 100 addresses.
  5. const CHANGE_IDX = 0
  6. const HUSH_PROTOCOL_ID = 0x48555348
  7. export default async function () {
  8. console.time('Hush keychain initialization')
  9. /* Initialize locals. */
  10. let address
  11. let addressIdx
  12. let pkg
  13. for (let i = 0; i < ADDRESS_POOL_SIZE; i++) {
  14. /* Set address index. */
  15. addressIdx = i
  16. address = this.getBchAddress(HUSH_PROTOCOL_ID, CHANGE_IDX, addressIdx)
  17. pkg = {
  18. address,
  19. isUsed: false,
  20. isLocked: false,
  21. updatedAt: moment().unix(),
  22. }
  23. // console.log('PKG', addressIdx, pkg)
  24. this._keychain[HUSH_PROTOCOL_ID][addressIdx] = pkg
  25. }
  26. console.timeEnd('Hush keychain initialization')
  27. }