Since the discussion digressed to deanonymization through ring signature being compromised, I'd like to add an important point.
First of all, it's not exactly the matter of the sum that the attacker holds. It's about outputs that he controls. That means that even though you may have not more than 20% of the emission, you may be able to create a lot of smaller outputs, which would significantly diminish the barrier.
Secondly, a group of large holders may agree to use their outputs to act as one single malicious user and do it in a manner described above.
Finally, if somebody deanonymizes the outputs used in ring signatures, it
does not destroy anonymity. Anonymity in CN is achieved through untraceability (ring signatures) and unlinkability (stealth addresses). Even though the attacker would be able to identify which particular inputs were spent (untraceability removed), he would never be able to prove that 2 transactions were sent to one wallet or learn a balance of any wallet.
This extreme case decreases anonymity in general, but does not destroy it. Even without ring signatures, CN is much better off in terms of privacy protection than Bitcoin.
One other thing.
An open offer (until when and if I decide to close it):
If anyone can tell me exactly how many XMR are held here:
4BCkyJpxKT76d832D5viMX2MxFgXASxpkdf6zGhXp1tV8WonDBwU7qfT1eXPfjn9gHMju8s6ckVrhN6 t6tSWVZJUAwovRsa
I will multiply that amount times ONE HUNDRED and pay the winner.
Bonus:
If anyone can name a destination address and an amount sent from this account in the last 6 months
I will multiply the current balance of the above address by TEN and pay the winner. (Of course in this scenario you'd have to trust me as to my math wouldn't you?)
Due to unlinkability property it is impossible to tell your balance at all even if the ringsig did not exist. Destination address can not be learned due to the very same reason (each output is sent to a unique stealth address). The tx amount is also not identifiable as CN protocol sends more money than the tx requires (which is returned as change and obfuscates the transferred sum).
Does anybody here understand the way it works at all?