• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information

Darksend: To seed or not to seed?

pille

Well-known member
Is my understanding right, when Pipy mixed 620 DASH 2 rounds he used more than 1000 new addresses? Thats a big problem in my eyes. I mean you not only can loose your current used wallet on a live system. HDDs, SSDs, USB Sticks, whatever... can crash everytime, Shouldn't the keypool cover at least one mixing session? At least a warning before start mixing if its the case: "This Darksend operation exceeds your currend keypool size. In case of Hardware failure you will loose all your coins! Please create a wallet with keypool > x and try again".

PUSH. Thoughts? Any solution for this?
 
With a seed you can create unlimited addresses and restore them. Here it is explained for bitcoin https://en.bitcoin.it/wiki/Deterministic_wallet . All future DS Addresses would be covered with creating a seed. Thats how I understand it.
Ah.. I understand seeds in deterministic wallets... But running DS creates and changes many many addresses during the process before the process is completed or user stops the mixing (before the final address of each denom.. ) It'll be interesting to see Udjin's next explanation. :)

EDIT: On the other hand, I just thought about it.... Probably the devs are going to make Encompass or Electrum or SomeOtherHDWallet able to run DS and everything else like the standard Dash wallet right now.. ?
 
Last edited by a moderator:
Ah.. I understand seeds in deterministic wallets... But running DS creates and changes many many addresses during the process before the process is completed or user stops the mixing (before the final address of each denom.. ) It'll be interesting to see Udjin's next explanation. :)

EDIT: On the other hand, I just thought about it.... Probably the devs are going to make Encompass or Electrum or SomeOtherHDWallet able to run DS and everything else like the standard Dash wallet right now.. ?
Just like pille suggested: one seed - multiple addresses. Using simple seed and going from (seed+1) to (seed+X) gives you X privatekeys -> X public keys -> X addresses you can easily restore knowing seed and X you'd like to scan to from 1 so there will be no need to rely on keypool at all.
 
Just like pille suggested: one seed - multiple addresses. Using simple seed and going from (seed+1) to (seed+X) gives you X privatekeys -> X public keys -> X addresses you can easily restore knowing seed and X you'd like to scan to from 1 so there will be no need to rely on keypool at all.
Ah.... Got it. So this is in the plan that we'll have the deterministic feature to be built in the Dash standard wallet, like the Encompass Standard wallet?
What I don't like about this is like what ThomasV said, "Electrum does not let you use an arbitrary sequence of words as seed. This is because humans are not good at generating really random phrases. " (https://bitcointalk.org/index.php?topic=153990.0) so we can't put in words that we can remember by heart, and still have to use something else to remember the seed.
 
Ah.... Got it. So this is in the plan that we'll have the deterministic feature to be built in the Dash standard wallet, like the Encompass Standard wallet?
What I don't like about this is like what ThomasV said, "Electrum does not let you use an arbitrary sequence of words as seed. This is because humans are not good at generating really random phrases. " (https://bitcointalk.org/index.php?topic=153990.0) so we can't put in words that we can remember by heart, and still have to use something else to remember the seed.
Well, it's not a plan but a very possible outcome I would say

Yes, humans are always a "good" point of failure :grin: However I think of DS addresses as of some technical ones so... do they really need to be human memorizable? The point here is not remembering it but holding it (encrypted) inside wallet.dat so first time you backup your wallet.dat you already have it and can restore at any time. I'm still thinking of best way to implement this though and might be missing smth. Suggestions are welcome :smile:

PS. Moved posts out of old thread:rolleyes:
 
I like the idea to have the seed stored encrypted in the wallet. This should be automatic with creating a new wallet (user dont even have to see/know about it). Would you like to keep private keys (keypool) for "normal" transactions and the seed for darksend only? is seed as secure as a private key?

What I read a seed has about 128bit but when I paste a privat key into my password manager it reports 282bit. So seems less secure?

And I guess one have to start with a fresh wallet to use the feature when implemented?

And yes, only random phrases please.
 
Last edited by a moderator:
I like the idea to have the seed stored encrypted in the wallet. This should be automatic with creating a new wallet (user dont even have to see/know about it). Would you like to keep private keys (keypool) for "normal" transactions and the seed for darksend only? is seed as secure as a private key?

What I read a seed has about 128bit but when I paste a privat key into my password manager it reports 282bit. So seems less secure?

And I guess one have to start with a fresh wallet to use the feature when implemented?

And yes, only random phrases please.

Well, we can use it and even simplify the whole thing...
DRAFT:
wallet will use specific account "DSMIXING" or smth like that and generate some address for it i.e. generate priv key and use it as seed:
1) "seed" will be stored by standard functionality, no new structures, fully forward-backward compatible
2) user can change it at any time by simply generating new address (old is still there) again by standard function but ofc we'll make specific rpc call/interface buttons for it to make it easier
3) user can dump it like any other priv key and store it somewhere else or even use general paper wallet to store DS seed :cool:

EDIT: #1 is not completely true, we need to store X somewhere
 
Last edited by a moderator:
We should fork encompass/electrum and add DS and IX functionality there instead of hacking deterministic address features onto the QT client; I think that would be safer as we are not really tinkering with address generation there (which is a key feature) but rather with implementing services like DS and IX.
 
Let's not forget, we will need to refill keys for merchants too. Let's think about a solution that covers both the mixing and a merchant with heavy transactions. I suggested running with 1000 keys above what is used on Bitcointalk, either with the reserve keys variable or with keypool=x and x=1000 + keys used. The keypoolrefill command would then run before the automatic backups.
 
We should fork encompass/electrum and add DS and IX functionality there instead of hacking deterministic address features onto the QT client; I think that would be safer as we are not really tinkering with address generation there (which is a key feature) but rather with implementing services like DS and IX.
Hummm... instead of supporting individuals that allowed the Dash community to have access to an Electrum style wallet (Encompass) and convinced SatoshiLabs to include Dash in its "select" group of firmware supported coins, you want to go solo?

I think I am starting to understand vertoe position on the Dash community... and may follow the footprints...

Don't be surprised or scream fowl play if Dash is removed from Trezor (or clones like KeepKey) in their future firmware updates... sorry.. everyone is fighting for memory space...
 
Last edited by a moderator:
you want to go solo?

Absolutely. There is nothing wrong with wanting dedicated Electrum style wallets and servers for Dash if we are trying to become a dominant medium of exchange worldwide. Encompass and Trezor are nice, don't get me wrong, but Dash is a throw in for each of these projects. We are building a Dash brand, and dedicated wallets are a big part of that, regardless if they are in use at the present.

I think I am starting to understand vertoe position on the Dash community... and may follow the footprints...

That would be unfortunate as you have obviously taken an interest in helping out. I hope you reconsider as your help would be great in creating a dedicated Dash Electrum style wallet.

Don't be surprised or scream fowl play if Dash is removed from Trezor (or clones like KeepKey) in their future firmware updates... sorry.. everyone is fighting for memory space...

What is your point here? Are you threatening us with this? What is your motivation to do that? If you have the influence to get us kicked off their systems, what's in it for you? Know this, even if you do succeed in carrying out your petty threat, we as a community will accomplish our goals and create standalone infrastructure without depending on a few individuals to decide whether we are in or out.

Having said all that, I hope that you will help us. If not, have a nice life, and to quote vertoe, thanks for all the fish.
 
TaoOfSatoshi : best of luck then.

I strongly believe that going solo is not the best software architecture (and that realization came after creating a dedicated Electrum-DRK client in March 2015). I was so in favor of this new currency agnostic architecture that I gave $1500 to Encompass to further develop their project, including Trezor/Encompass multi-currency with multisig support.

I will be turning off my electrum-drk-server tonight.

I would never intentionally arm a project. I was merely projecting eventual commercial consequences to the Dash community not adopting or supporting innovative projects (which was well demonstrated over the last 6 months).

Agree with you... without vertoe Dash Encompass would have not been possible.

Another one down, i hope 10 more will show up...
 
Last edited by a moderator:
TaoOfSatoshi please stop acting like "you're not doing what community wants, goodbye then". You are not the community, you just one of us. And so am I. There should be all kind of different development going on not just the one that is "officially supported" or the one that you or me like.

ELM4ever please, don't. I really appreciate your work with Encompass and Trezor guys, your support in hosting severs and Tor relays, writing Tor guides etc. I'm sure there are others who appreciate your efforts but just being silent. That would be a pity to see you go...
 
Could you please chillax? It's sunday.

dash_testosterone.jpg
 
TaoOfSatoshi please stop acting like "you're not doing what community wants, goodbye then". You are not the community, you just one of us. And so am I. There should be all kind of different development going on not just the one that is "officially supported" or the one that you or me like.

ELM4ever please, don't. I really appreciate your work with Encompass and Trezor guys, your support in hosting severs and Tor relays, writing Tor guides etc. I'm sure there are others who appreciate your efforts but just being silent. That would be a pity to see you go...
UdjinM6 It was not my intention to come across that way, but this guy was basically saying exactly that; if we continue to develop a stand alone Dash client, he will walk and discourage others from working with us. HE was acting like he was the community, taking it into his hands what direction we should take, and issuing threats if we don't. I don't like such tactics. I'm just saying if he has to go because of that, we will get over it, because we will. This project is bigger than any one individual, as you said.
 
Back
Top