Mixing doesn't work on 12.1?

traveling289

New Member
Feb 18, 2017
7
2
3
48
Hi there,

I upgraded my wallet, that seemed to work fine. Bought a couple dash and started mixing to see that it works on 12.1. After trying off and on for days, nothing is happening. Is mixing working since the upgrade?
 

oaxaca

Well-known Member
Foundation Member
Jul 8, 2014
573
832
263
Can you post a screenshot of your wallet or your coincontrol or your transactions or something that would help diagnose it?
 

traveling289

New Member
Feb 18, 2017
7
2
3
48
No, it definitely mixed some already and the rest should be enough to mix more.
@traveling289 can you please send me your debug.log so that I can have a closer look? [email protected]
Ok, see attached. Looks like the problem is evident in there. Lots of entries like this:

2017-02-22 00:56:12 CDarksendPool::CreateDenominated -- Error: Transaction amounts must be positive
2017-02-22 00:56:12 keypool return 1202
2017-02-22 00:56:12 CDarksendPool::CreateDenominated -- failed!
 

Attachments

  • Like
Reactions: UdjinM6

UdjinM6

Official Dash Dev
Dash Core Team
Moderator
May 20, 2014
3,638
3,538
1,183
Indeed, that's the problem - you have only way too small inputs which are less than even the smallest denomination. This means that they can't be broken into denominations without merging them into a large input first and Dash Core 12.1+ will not longer do this automatically for you because this means linking previous inputs together i.e. damaging privacy and letting blockchain crawlers to put pieces together. If you still want these coins to be mixed and you don't care about linking previous inputs, you have to take care of that manually by picking such inputs using Coin Control and sending them to yourself.
 

traveling289

New Member
Feb 18, 2017
7
2
3
48
Indeed, that's the problem - you have only way too small inputs which are less than even the smallest denomination. This means that they can't be broken into denominations without merging them into a large input first and Dash Core 12.1+ will not longer do this automatically for you because this means linking previous inputs together i.e. damaging privacy and letting blockchain crawlers to put pieces together. If you still want these coins to be mixed and you don't care about linking previous inputs, you have to take care of that manually by picking such inputs using Coin Control and sending them to yourself.
Lol! Well okay, I appreciate you taking the time to investigate and respond. +1 For Dash community!

However, not to be flip, but you must realize this is an highly technical response. I've been in the software industry for years my self, so hopefully I can figure this out, but if your team's real aim is to get beyond geeks and go mainstream like your polished marketing collateral says, stuff like this needs to "just work." PayPal and Visa have significant security issues too, but they would never impose their technical complexity on the user base over a transaction.

Anyway, I'll take a look at your suggestions and see what I can do. Thanks.
 
  • Like
Reactions: stan.distortion

traveling289

New Member
Feb 18, 2017
7
2
3
48
Ok, I took a look and indeed my wallet was full of dozens of tiny inputs no greater than .1 Dash. I decided to consolidate them by sending a transaction to myself, so now I have one input with 2.61 Dash. I started mixing, 3 denominations were created then it stopped. After a while I checked the debug log and see the successful denominations, but then eventually similar errors to before:

2017-02-25 13:41:29 CreateDenominated0 nValueLeft: 0.001643
2017-02-25 13:41:29 keypool reserve 1251
2017-02-25 13:41:29 CreateDenominated2: nOutputsTotal: 0, nValueLeft: 0.001643
2017-02-25 13:41:29 CreateDenominated2: nOutputsTotal: 0, nValueLeft: 0.001643
2017-02-25 13:41:29 CreateDenominated3: nOutputsTotal: 0, nValueLeft: 0.001643
2017-02-25 13:41:29 CDarksendPool::CreateDenominated -- Error: Transaction amounts must be positive

As far as I can tell mixing is broken in 12.1, and that seems like a pretty big deal since private send is the main feature of the currency. If you say the amount of 2.61 Dash is too small I would say:
1) The application should give me feedback that is a problem and not just quietly throw errors and do nothing on the surface.
2) 2.61 Dash may be small today, but it won't be for long at the rate Dash is appreciating. If at some point Dash become worth as much as Bitcoin is now (>$1,000 at the time of this writing) that would be pretty lousy to say $1,000 worth of Dash is too small to mix.

One last remark is that the dozens of inputs I had were mostly from a single 2 Dash ShapeShift transaction that sent a series of inputs each no larger than .1 Dash, so if that's a problem for the wallet and/or network to manage, then there's a bigger problem here.

It's not like I'm really all that concerned about the privacy of a couple Dash. I'm just trying to see if things work in 12.1, and it appears they don't. At least not with a modest sized wallet. I've uploaded a couple more log files if you're interested. (There's 2 because I stopped Dash, rename the original ".old", then restarted)

Thanks.
 

Attachments

UdjinM6

Official Dash Dev
Dash Core Team
Moderator
May 20, 2014
3,638
3,538
1,183
Ok, I took a look and indeed my wallet was full of dozens of tiny inputs no greater than .1 Dash. I decided to consolidate them by sending a transaction to myself, so now I have one input with 2.61 Dash. I started mixing, 3 denominations were created then it stopped. After a while I checked the debug log and see the successful denominations, but then eventually similar errors to before:

2017-02-25 13:41:29 CreateDenominated0 nValueLeft: 0.001643
2017-02-25 13:41:29 keypool reserve 1251
2017-02-25 13:41:29 CreateDenominated2: nOutputsTotal: 0, nValueLeft: 0.001643
2017-02-25 13:41:29 CreateDenominated2: nOutputsTotal: 0, nValueLeft: 0.001643
2017-02-25 13:41:29 CreateDenominated3: nOutputsTotal: 0, nValueLeft: 0.001643
2017-02-25 13:41:29 CDarksendPool::CreateDenominated -- Error: Transaction amounts must be positive

As far as I can tell mixing is broken in 12.1, and that seems like a pretty big deal since private send is the main feature of the currency. If you say the amount of 2.61 Dash is too small I would say:
1) The application should give me feedback that is a problem and not just quietly throw errors and do nothing on the surface.
2) 2.61 Dash may be small today, but it won't be for long at the rate Dash is appreciating. If at some point Dash become worth as much as Bitcoin is now (>$1,000 at the time of this writing) that would be pretty lousy to say $1,000 worth of Dash is too small to mix.

One last remark is that the dozens of inputs I had were mostly from a single 2 Dash ShapeShift transaction that sent a series of inputs each no larger than .1 Dash, so if that's a problem for the wallet and/or network to manage, then there's a bigger problem here.

It's not like I'm really all that concerned about the privacy of a couple Dash. I'm just trying to see if things work in 12.1, and it appears they don't. At least not with a modest sized wallet. I've uploaded a couple more log files if you're interested. (There's 2 because I stopped Dash, rename the original ".old", then restarted)

Thanks.
1. agree
2. actually, I guess you just found a bug, congrats :)
 
  • Like
Reactions: stan.distortion

demo

Well-known Member
Apr 23, 2016
3,114
263
153
Dash Address
XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
As far as I can tell mixing is broken in 12.1, and that seems like a pretty big deal since private send is the main feature of the currency.
PrivateSend will become more and more obsolete, or lets say dangerous and not safe to use, as long as Dash is now directly or indireclty connected to coinfirm.
 
Last edited:

UdjinM6

Official Dash Dev
Dash Core Team
Moderator
May 20, 2014
3,638
3,538
1,183
PrivateSend will become more and more obsolete, or lets say dangerous and not safe to use, as long as Dash is now directly or indireclty connected to coinfirm.
This is pure FUD. The bug has nothing to do with mixing process itself, it's the way inputs are tallied before mixing. Coinfirm has nothing to do with this bug or mixing process in general. Not a single line of code was written to make their job easier. Moreover, 12.1 has stronger privacy due to not linking previous inputs from different addresses when creating denominations and randomized session cool downs to make timing analysis harder.
 
  • Like
Reactions: stan.distortion

demo

Well-known Member
Apr 23, 2016
3,114
263
153
Dash Address
XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
This is pure FUD. The bug has nothing to do with mixing process itself, it's the way inputs are tallied before mixing. Coinfirm has nothing to do with this bug or mixing process in general. Not a single line of code was written to make their job easier. Moreover, 12.1 has stronger privacy due to not linking previous inputs from different addresses when creating denominations and randomized session cool downs to make timing analysis harder.
Of course coinfirm has nothing to do with this specific bug, but coinfirm is a "force" that is going against the idea of mixing coins.

And as long as part of the core team seems to serve coinfirm, this is what spreads Fear, Uncertainty and Doubt.

"No one can serve two masters. For you will hate one and love the other; "

You cannot serve Coinfirm and PrivateSend at the same time. The one contradicts the other.
 

demo

Well-known Member
Apr 23, 2016
3,114
263
153
Dash Address
XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
Congrats on your first "dumb" from me, you really made me tired of you now
:(


:confused:What this dumb refers to?
Am I dumb when saying that some members of the core team serve Coinfirm?
Or, am I dumb when saying that PrivateSend's and Coinfirm's goals contradict eachother?
Mixing is flagged as risk in coinfirm , isnt it?
 
Last edited:

demo

Well-known Member
Apr 23, 2016
3,114
263
153
Dash Address
XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
You cannot serve Coinfirm and PrivateSend at the same time. The one contradicts the other.
@UdjinM6
"You" is plural, it refers to the core team and not to you personally. Is this misunderstanding that made you rate me as dumb? Please forgive me, I didnt mean that you as a person serve coinfirm. I believe that you are trying hard to provide a strong PrivateSend service for all the Dash community, and I understand very well that this task is not an easy one. But, as long as I stupidly think that some core members may serve coinfirm, I am giving you the dumb advice to watch your back.
 

traveling289

New Member
Feb 18, 2017
7
2
3
48
1. agree
2. actually, I guess you just found a bug, congrats :)
Ok, yes, bugs in software are unavoidable at some point. Is there anything else I can do to help? File the bug in an issue tracker somewhere? Any other information that is helpful to resolve the issue?
 

UdjinM6

Official Dash Dev
Dash Core Team
Moderator
May 20, 2014
3,638
3,538
1,183
Ok, yes, bugs in software are unavoidable at some point. Is there anything else I can do to help? File the bug in an issue tracker somewhere? Any other information that is helpful to resolve the issue?
I'm working on it. I made first attempt to fix it https://github.com/dashpay/dash/pull/1364 but it looks like there is smth else.
I don't think there is anything you can help with, I guess I just need to cleanup some things first and re-think the process a bit and then implement it correctly. Half way there I'd say...
Thanks for reporting and sorry for inconvinience! :)