2

Suppose an auditor needs to review all the incoming Tx for a given wallet... or many wallets. What are the logical steps the Auditor needs to do?

Do they need to pre-generate a list of all possible public keys and watch new blocks for those transactions?

Assuming that there is no limit to BIP32 keys, that means the auditor would need an infinite amount of resources to audit a key (pre generation, and then cross referencing each incoming Tx). What are some appropriate ways to constrain this auditing?

1

Do they need to pre-generate a list of all possible public keys and watch new blocks for those transactions?

Essentially.

Assuming that there is no limit to BIP32 keys, that means the auditor would need an infinite amount of resources to audit a key (pre generation, and then cross referencing each incoming Tx). What are some appropriate ways to constrain this auditing?

Deterministic keys are used sequentially. Currently a client will scan up until they hit a sequence of unused addresses in a row and assume none past this gap have been used.

1

I have written tools that an auditor should find very helpful for this purpose.

The tool scans both receive and change addresses up to the gap limit, which is 20 by default (matches the standard), but can be adjusted if wished.

The steps can be as simple as:

  1. obtain the Master XPub key for the wallet.
  2. Go here to find all the addresses that have ever been used.
  3. Click "Generate Price History Report For These Addresses". This will generate a transaction history report, with historic USD prices.

If the website should not be available for any reason in the future, the tools are open source and can be found on github.

  1. github.com/dan-da/hd-wallet-addrs
  2. github.com/dan-da/bitprices

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.