Author Topic: Cold storage?  (Read 9644 times)

0 Members and 1 Guest are viewing this topic.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
nope ..

the account key is the master key that is used by TITAN to scan for transactions that go to keys that were DERIVED from the account key
the imported (into the account) keys are just some extra keys that ARE NOT used by TITAN to scan for dereived keys

//edit: I guess this only makes sense to my brain :)

Offline Riverhead

Looks like you guys are figuring it out.    The primary idea that needs to sink in is that an AccountKey is different than a key in the account.


My working assumption is that an ACCOUNT private key can be imported into a new wallet and retrieve all the funds for that ACCOUNT. Any wallet that has that ACCOUNT private key imported would also have access to that ACCOUNT's funds (like a shared bank account).

Offline bytemaster

Looks like you guys are figuring it out.    The primary idea that needs to sink in is that an AccountKey is different than a key in the account. 
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline Riverhead

I have had success retrieving funds for an account with just the private key so I'm happy there. It works as you say.


So the advantage of a sub account is that no one can register it, right? Yes, I still need to read the wiki :). Riverhead just RTFM already!

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Great thread. Now I can create riverhead-coldstorage for reals :).
or maybe coldstorage.riverhead !?!


Anyway .. during my tryouts ... I also fell into the trap of simply importing the privatekey into an existing account just to realize that TITAN just doesn't work that way ...
think of the account key (private/public) to be the Master key for your TITAN transactions for THAT PARTICULAR account name ..
All private keys that you import into that account ... are just stored there and have nothing to do with the MASTER keys of that account.

Further, the wallet also has a WALLET MASTER KEY (that you cannot simply export in clear-text, but is part of the backupJSON) ... that key is used to derive the account keys ...
once you loose one of your accounts .. but still own the wallet in which you created it you can recreate it with a command I just forgot :)

Offline Riverhead

Great thread. Now I can create riverhead-coldstorage for reals :).

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
Awesome.  Thanks Xeroc.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
It doesnt really matter if you register it or have it as a local contact as long as you can ensure that you name does not get registered by s.o. else in the meantime .. registering an account prevents the hurdles you described.

If the public key is in your local contacts could you import its private key with wallet_import_private_key <wif_key> without the [account_name] [create_new_account] [rescan] portion just like it was registered on the blockchain?  I just created a local contact account named local-coldstorage, sent funds to it.  and then entered
Code: [Select]
wallet_import_private_key <wif_key> completelydifferent true false  it pulled in the name local-coldstorage instead of completelydifferent.

Am I understanding you.  In order to successfully import I need to have the public key either in my local contacts or registered on the blockchain?

In short:

Registered accounts:
wallet_import_private_key <wif_key>

Non-registered accounts:
wallet_import_private_key <wif_key> localaccountname true false

If you have sent funds to that 'local' or registered account IT DOES NOT HELP if you just import that private key to an EXISTING account! You need to make sure that a new (or reghistered) account uses that key as account key

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
It doesnt really matter if you register it or have it as a local contact as long as you can ensure that you name does not get registered by s.o. else in the meantime .. registering an account prevents the hurdles you described.

If the public key is in your local contacts could you import its private key with wallet_import_private_key <wif_key> without the [account_name] [create_new_account] [rescan] portion just like it was registered on the blockchain?  I just created a local contact account named local-coldstorage, sent funds to it.  and then entered
Code: [Select]
wallet_import_private_key <wif_key> completelydifferent true false  it pulled in the name local-coldstorage instead of completelydifferent.

Am I understanding you.  In order to successfully import I need to have the public key either in my local contacts or registered on the blockchain?
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline Riverhead

It doesnt really matter if you register it or have it as a local contact as long as you can ensure that you name does not get registered by s.o. else in the meantime .. registering an account prevents the hurdles you described.
If you register it's no longer cold storage. I'm going off the assumption cold storage and paper wallet are different terms for the same thing?
That statement is wrong .. as you can pay for the registration using a different account ..

account A tells (and pays) the blockchain that account "B" corresponds tthe public key BSX.....
I stand corrected! That is great to know  +5%

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
It doesnt really matter if you register it or have it as a local contact as long as you can ensure that you name does not get registered by s.o. else in the meantime .. registering an account prevents the hurdles you described.
If you register it's no longer cold storage. I'm going off the assumption cold storage and paper wallet are different terms for the same thing?
That statement is wrong .. as you can pay for the registration using a different account ..

account A tells (and pays) the blockchain that account "B" corresponds tthe public key BSX.....

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
It could be registered on the blockchain under its public key without the private key ever touching your wallet.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline Riverhead

You can also create an account as a parameter of wallet_import_private_key. This may get around the registration issue.

That should work too, and would be way less of a pain.  Shouldn't even require being registered on the blockchain, right?
Correct.
It doesnt really matter if you register it or have it as a local contact as long as you can ensure that you name does not get registered by s.o. else in the meantime .. registering an account prevents the hurdles you described.
If you register it's no longer cold storage. I'm going off the assumption cold storage and paper wallet are different terms for the same thing?
« Last Edit: August 25, 2014, 11:12:33 am by Riverhead »

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
You can also create an account as a parameter of wallet_import_private_key. This may get around the registration issue.

That should work too, and would be way less of a pain.  Shouldn't even require being registered on the blockchain, right?
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
It doesnt really matter if you register it or have it as a local contact as long as you can ensure that you name does not get registered by s.o. else in the meantime .. registering an account prevents the hurdles you described.