Every wallet can generate as many addresses as I want in order to obfuscate the origin and destination of transactions.

But each account has exactly one key-pair and it is trivial to get the public key from the address.

Am I correct in assuming that it would be fairly easy to create a list of all the addresses belonging to a public key and by extension to an account? Or is there something I am missing?

The use case for such a database would be for law enforcement to find out who has sent money to whom, for example.

  • Re: "it is trivial to get the public key from the address" - the public key is the address. Re: "to create a list of all the accounts belonging to a public key and by extension to an account" - one account has one public key. Or are you talking about accounts owning contracts?
    – Afr
    Oct 7 '16 at 19:48
  • I changed the text. Thank you for your comment. It is the list of addresses for an account that I would like to create
    – Micha Roon
    Oct 9 '16 at 11:36

Everything on the blockchain is public. Every transaction can be traced and accounts can easily be linked.

This is true of Bitcoin as well, and most other cryptocurrencies.

In the future, however, we will be able to verify transactions from the Zcash blockchain, which preserves privacy using zkSNARKS. This will allow decentralized exchange between the two, which will make anonymization much easier. In the slightly more distant future, we hope to add zkSNARKS to Ethereum itself, providing privacy to users natively.

See https://github.com/ConsenSys/Project-Alchemy for the beginnings of the Zcash relay and https://github.com/zcash/babyzoe for the zkSNARK work


you are talking about pseudoanonimity for the cryptocurrencies, there is a lot of papers to read about this subject.

in your question you have two false statements:

1-it is trivial to get the public key from the address. you cannot get a pub key from an addresse

2-assuming that it would be fairly easy to create a list of all the addresses belonging to a public key=> the pub key isn't brodcasted in the network it is used only as seed for address.

the pseudo anonimity is rather depending on linking accounts or on information's leak on the internet where for exemple you publish your addresse on your blog. there is come solution to this problem : Mixing transactions,zeroknowledge, etc.

  • Note that once you spend from an address, the public key is revealed. The public key is most certainly broadcasted, unless you are talking about BIP 32 wallets, which are not widely implemented in Ethereum Oct 10 '16 at 15:20
  • Well, when you sign a transaction, the public key can be easily derived from there. Jun 3 '18 at 13:41

It's not difficult with the help of blockchain analysis solutions. Resources used for it range from blockchain explorers to costly B2B tools. There are also hybrid solutions like Cryptohound. The latter works well on tracing money flows from various addresses (BTC/ETH up to date), providing token and trading analytics. It has some nice widgets for blockchain analytics:

Graph Widget for the viewing, expanding and exploring of the transactions and relationships of any searched addresses Balance Widget summarizes the list and total value of all tokens held over some time Statement Widget supports the Graph Widget by providing more details related to all incoming and outgoing transactions, with historical balances viewed in the currency of your choice.

Check available solutions; maybe it would be helpful for your future researches.

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.