Bitcoin Forum
May 08, 2024, 05:01:00 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Q: New output script types  (Read 321 times)
gangtraet (OP)
Full Member
***
Offline Offline

Activity: 159
Merit: 100


View Profile
May 03, 2017, 11:14:52 AM
 #1

Hi,

Thanks for the new Armory version.  I am patiently waiting for the OS X version while still running the latest pre-release.   Grin

I have a question about the new output script types available in the newest Armory.  Do I understand it correctly that it is when I generate an address to receive bitcoins that I select the type?

If so, I assume the new types generate different bitcoin addresses based on the same(?) underlying private key (I am here assuming that Armory still generates a single chain of private keys.  I guess that cannot have changed if it is still sufficient to back the old wallet file up). 

Are the new ways of generating bitcoin addresses Armory-specific, or are they standardized?  I am asking because who knows what will happen to the Armory project in the future.  At some point it may be discontinued, or the blockchain may become so big that I can no longer run Bitcoin Core.  It gives me peace of mind that I can always run Armory in a tiny virtual environment and extract the private keys to another wallet.  But that of course requires that the other wallet can generate the same kinds of output.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
goatpig
Moderator
Legendary
*
Offline Offline

Activity: 3668
Merit: 1347

Armory Developer


View Profile
May 03, 2017, 11:41:42 AM
 #2

Quote
If so, I assume the new types generate different bitcoin addresses based on the same(?) underlying private key (I am here assuming that Armory still generates a single chain of private keys.  I guess that cannot have changed if it is still sufficient to back the old wallet file up). 

A private key yields a unique public key, that public key can encapsulated in any variations of output scripts. The new scripts are just that, different ways to use a public key. The code still makes sure a public is used once, regardless of what script type it was used as.

Quote
Are the new ways of generating bitcoin addresses Armory-specific, or are they standardized?

There is no real standard to begin with. BIP32/44 assumes P2PKH but doesn't really distinguish between compressed and uncompressed public keys anyways.

The conclusion of the Berlin s3nd meet was that we (wallet/service providers) are better off enforcing incompatibility than to try to get things done under one standard, as it just won't fit all use cases.

Quote
I am asking because who knows what will happen to the Armory project in the future.  At some point it may be discontinued, or the blockchain may become so big that I can no longer run Bitcoin Core.  It gives me peace of mind that I can always run Armory in a tiny virtual environment and extract the private keys to another wallet.  But that of course requires that the other wallet can generate the same kinds of output.

The 2 script types you can expect other wallets to support are P2PKH and P2SH-P2WPKH. As for running Armory in a restricted environment, I have ideas to reduce the requirements (like running off of a pruned node), but they aren't priorities atm.

gangtraet (OP)
Full Member
***
Offline Offline

Activity: 159
Merit: 100


View Profile
May 03, 2017, 12:00:00 PM
 #3

Quote
If so, I assume the new types generate different bitcoin addresses based on the same(?) underlying private key (I am here assuming that Armory still generates a single chain of private keys.  I guess that cannot have changed if it is still sufficient to back the old wallet file up). 

A private key yields a unique public key, that public key can encapsulated in any variations of output scripts. The new scripts are just that, different ways to use a public key. The code still makes sure a public is used once, regardless of what script type it was used as.

Yes, the public key will of course be the same.  But a bitcoin address based on P2PKH will be different from one based on P2SH-P2PK, even if the key is the same (is that not so?).

Quote
The 2 script types you can expect other wallets to support are P2PKH and P2SH-P2WPKH. As for running Armory in a restricted environment, I have ideas to reduce the requirements (like running off of a pruned node), but they aren't priorities atm.

I will stick to P2PKH for now then...  Smiley

As for the resources required to run Armory: So far I manage just fine with my laptop and the blockchain on a USB disk.  But if Bitcoin is to remain useful, the block size must increase somehow (either through a fork, or through segwit - in the long run I expect both), and at some point I (or my heirs restoring my paper wallet) may give up running a full node.  Nice to know that there is always another way of extracting the bitcoins, even in the worst-case scenario.  Of course I hope that improvements to Armory will keep it running...


goatpig
Moderator
Legendary
*
Offline Offline

Activity: 3668
Merit: 1347

Armory Developer


View Profile
May 03, 2017, 12:11:31 PM
 #4

Yes, the public key will of course be the same.  But a bitcoin address based on P2PKH will be different from one based on P2SH-P2PK, even if the key is the same (is that not so?).

The script hash will be different if that's what you are asking about, and balance scanning means looking up script hashes in outputs rather than pub keys in inputs. So yes, you have to look for script hashes, regardless of the underlying pub key.

Quote
As for the resources required to run Armory: So far I manage just fine with my laptop and the blockchain on a USB disk.  But if Bitcoin is to remain useful, the block size must increase somehow (either through a fork, or through segwit - in the long run I expect both), and at some point I (or my heirs restoring my paper wallet) may give up running a full node.  Nice to know that there is always another way of extracting the bitcoins, even in the worst-case scenario.  Of course I hope that improvements to Armory will keep it running...

There is a scenario with blocks over P2P to allow Armory to run against a pruned node. I may also run a public DB once I get encryption up, to allow users to cash out from my DB instead of having to sync Core. But that will be a one time support out more than anything else.

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!