Author

Topic: Paper Backup (Read 839 times)

legendary
Activity: 3640
Merit: 1345
Armory Developer
December 23, 2013, 11:58:49 AM
#12
This has been a known issue for a while.  The modularization of the code made it difficult for me to avoid the N2 runtime for address generation -- it really wasn't that hard to fix, but I had other priorities.

On that note, goatpig went ahead and fixed it in his branch, so it should appear in 0.91.

It isn't that big an issue.  I was just responding to this post.

Properties can generate thousands more

If someone asks for "thousands" of addresses, the program will appear to lock-up.

When I was testing a java program that generated Armory addresses, I asked for 10k addresses.  This corrupted my wallet file when I force closed the program, thinking it had crashed.  (highlighting the benefits of the paper wallet backup).

There is indeed a difference between Armory crashing and Armory hanging. We plan on adding some UI notifications to make the distinction easier.
legendary
Activity: 1232
Merit: 1083
December 23, 2013, 06:38:45 AM
#11
This has been a known issue for a while.  The modularization of the code made it difficult for me to avoid the N2 runtime for address generation -- it really wasn't that hard to fix, but I had other priorities.

On that note, goatpig went ahead and fixed it in his branch, so it should appear in 0.91.

It isn't that big an issue.  I was just responding to this post.

Properties can generate thousands more

If someone asks for "thousands" of addresses, the program will appear to lock-up.

When I was testing a java program that generated Armory addresses, I asked for 10k addresses.  This corrupted my wallet file when I force closed the program, thinking it had crashed.  (highlighting the benefits of the paper wallet backup).
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
December 23, 2013, 02:28:42 AM
#10
There is a inefficiency with address creation.

In order to calculate address 101, you need address 100, so they have to be created in sequence.

Assuming you only have 100 addresses, then, when creating address 110, it has to calculate 101, 102 up to 110.

If you have 100 addresses and you ask for 1000 more, it will create them in the following order

Create(101), creates 101
Create(102) creates 101 and then 102
Create(103) creates 101, 102 and then 103
...
Create(1000), creates 101, 102, 103, ...., 999 and then 1000

What it should do is just run create(1000) and use the 900 addresses created.  However, it loops, through create(101) to create(1000).

If you ask for 100 addresses at once, it has to calculate around 5000 addresses due to this system.  If you ask for 500, then it calculates 125000 addresses.

This might be fixed in 0.9, but it means that you must ask it for addresses in short steps.

I think unlocking the wallet might help.

This has been a known issue for a while.  The modularization of the code made it difficult for me to avoid the N2 runtime for address generation -- it really wasn't that hard to fix, but I had other priorities.

On that note, goatpig went ahead and fixed it in his branch, so it should appear in 0.91.
legendary
Activity: 2912
Merit: 1060
December 21, 2013, 01:56:51 AM
#9
Is that less safe? It seems like less encryption. Is there a discussion about that somewhere?

The chaincode is now extracted out of the root key, obviously in a fashion that can't reveal the root key. It increases recovery security in the sense that the chaincode isn't generated in an isolate fashion regarding the root key, so a damaged chaincode can be recovered.

It increases determinism in the wallets while maintaining the same level of security.

Coo
legendary
Activity: 3640
Merit: 1345
Armory Developer
December 20, 2013, 03:58:51 PM
#8
Is that less safe? It seems like less encryption. Is there a discussion about that somewhere?

The chaincode is now extracted out of the root key, obviously in a fashion that can't reveal the root key. It increases recovery security in the sense that the chaincode isn't generated in an isolate fashion regarding the root key, so a damaged chaincode can be recovered.

It increases determinism in the wallets while maintaining the same level of security.
legendary
Activity: 2912
Merit: 1060
December 19, 2013, 09:06:15 PM
#7
Is that less safe? It seems like less encryption. Is there a discussion about that somewhere?
legendary
Activity: 1232
Merit: 1083
December 19, 2013, 09:04:42 PM
#6
.9 seems to have removed chain code

It still exists, it is just generated from the root key.  This means you only need to store half as much on the paper wallet.
legendary
Activity: 2912
Merit: 1060
December 19, 2013, 08:40:41 PM
#5
.9 seems to have removed chain code
legendary
Activity: 1232
Merit: 1083
December 19, 2013, 11:14:57 AM
#4
There is a inefficiency with address creation.

In order to calculate address 101, you need address 100, so they have to be created in sequence.

Assuming you only have 100 addresses, then, when creating address 110, it has to calculate 101, 102 up to 110.

If you have 100 addresses and you ask for 1000 more, it will create them in the following order

Create(101), creates 101
Create(102) creates 101 and then 102
Create(103) creates 101, 102 and then 103
...
Create(1000), creates 101, 102, 103, ...., 999 and then 1000

What it should do is just run create(1000) and use the 900 addresses created.  However, it loops, through create(101) to create(1000).

If you ask for 100 addresses at once, it has to calculate around 5000 addresses due to this system.  If you ask for 500, then it calculates 125000 addresses.

This might be fixed in 0.9, but it means that you must ask it for addresses in short steps.

I think unlocking the wallet might help.
legendary
Activity: 2912
Merit: 1060
December 19, 2013, 10:58:38 AM
#3
Properties can generate thousands more
legendary
Activity: 1193
Merit: 1003
9.9.2012: I predict that single digits... <- FAIL
December 09, 2013, 02:39:46 PM
#2
For example I create paper backup and generate too many new addresses. After that my house is burn with computer. I'll restore my wallet from paper and how i can see new addresses generated after backup? I know that uses seed. But from one seed i can generate billions addresses.

When you restore your wallet, Armory will check the 100 first addresses to see if any are used. If address 79 is used, it will check all addresses up to address 179, and so on.

If your addresses aren't used, just click "Receive Bitcoins" and the addresses will be created one by one.
legendary
Activity: 1334
Merit: 1004
TTM
December 09, 2013, 05:55:08 AM
#1
For example I create paper backup and generate too many new addresses. After that my house is burn with computer. I'll restore my wallet from paper and how i can see new addresses generated after backup? I know that uses seed. But from one seed i can generate billions addresses.
Jump to: