I am not making the large assumptions of about technical, you are confused. If I have to generate 100000 keys in a short time, that will eat a lot of cpu power. The decentralized client doesn't have to generate any keys. You are just saying cause your is a more of a client, than a web server that it does handle transactions in a very low cpu manner that is true. Then you can't calculate taint cause you again are not validating transactions.
Also you said non-technical should have access to anonymity where does the decentralized client make a person program or make it different? If you double click you can use that mixer, unlike yours where a 3rd party has to set it up and be trusted. Big Difference.
You didn't answer my question without a full blockchain you can't calculate taint at all. Bitcoinj is currently only uses SPV headers, not enough information for taint. So how are you calculating taint in a SPV blockchain since it is impossible?
Most online stores are using bitpay and coinbase. Also you could just use a bitcoind and by not creating raw txs you can get a pretty random mixer. So again how is this helping anyone?
Stop dancing around my questions and answer them, otherwise I will be force to label this as a scam, as it does not produce what you claim it produces.
Maybe you misunderstood what I meant by 'technical' - I don't mean that their hardware is worse, but that they don't have enough technical knowledge of how bitcoin and computers work to use decentralized mixing systems. Even the easiest software is confusing for many people, and a website-based centralized mixer where all one has to do is send their coins is a much easier and likelier solution for these non-technical users. This program also does not create tens of thousands of new addresses initially. It is possible to scale this program as your needs scale, adding addresses as you need them.
I think you might be confused about how this program achieves both mixing and taint-reduction. It's possible to control taint without having to calculate it - once we know that taint is the measurement of a connection between two addresses, we can make sure that the deposit and withdrawal have as little possible or no connection at all. This is done in all cases by distancing the deposit address from the withdrawal address by sending the coins through various intermediary transactions, but also trying as often as possible to not use the deposit at all until after the associated withdrawal is made. There are checks and balances in the code that make sure this happens whenever it can. The only time that a deposited address is used at all for an associated withdrawal is if there aren't any other available funds available in the system - but also keep in mind that this deposit has been mixed into the system if it is used, providing anonymous coins anyways.
It's apparent that you're taking a very dogmatic stance against centralized mixers. I think all the issues you're trying to point out isn't a problem in my program or my code, but a problem with the current ecosystem of centralized mixers. Start a thread with your critique of centralized mixers, I'd be more than willing to participate.