So I PMed Evan about this, but I figured I'd throw this out to the community to see if you guys could come up with a solution.
I've been thinking about the denomination of coins in darksend and I think I've ran into a problem.
If I want to darksend 954 coins from Address A to Address B, how will this be denominated? The most obvious way to do it is:
9 entries into the 100 coin pool
5 entries into the 10 coin pool
4 entries into the 1 coin pool
The problem is - it will be clear that Address A sent 954 coins to address B by looking at the block chain - it doesn't matter how much mixing occurs, 954 coins leave address A, then sometime later 954 coins accumulate at address B.
The only way I can think of keep it anonymous is if the coins are sent to multiple receiving addresses. I suggested a while ago in the thread that maybe multiple addresses could be concatenated together and used as a "DarkRecieve" address - this would allow multiple coins to be received in denominated fashion.
Another potential solution is to require that in order to send 954 coins you must have a total of 1000 coins, but this would be a really bad solution because if you just wanted to send 101 coins you would need an addtional 899 coins in your wallet to enter into the 1000 coin pool to ensure anonymity.
Let me know if you guys can think of any great solutions.
Need more brainstorming!!111
To use a cash analogy, if I give you £954 and nobody sees the money changing hands, and neither of us keep any record of it except mentally, then we have an anonymous transaction.
If we are seen/photographed passing cash from one hand to the other, we're busted, or if records are later found, we're possibly incriminated.
However you mix the transaction, currently there are partial records, at least on the sending end. DarkSend by itself does not provide perfect anonymity, no one tool can accomplish that. Other steps need to be taken.
Password protecting the goddamn wallet on startup would alleviate the sender-record problem at least.