Bitcoin Forum
October 18, 2018, 03:11:39 PM *
News: Make sure you are not using versions of Bitcoin Core other than 0.17.0 [Torrent], 0.16.3, 0.15.2, or 0.14.3. More info.
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: Testing My Trezor Seed  (Read 549 times)
Kruddler
Jr. Member
*
Offline Offline

Activity: 45
Merit: 10


View Profile
December 03, 2017, 04:36:28 AM
 #1

I bought a Trezor the other day because the general consensus seems to be that it is the most secure way to hold on to Bitcoin. I unpacked it, followed the instructions (which were not very intuitive) and transferred a little DASH to my account. Before continuing, I wanted to test my seed to ensure that what I had written down is correct, that the system works correctly, and that I'm not going to lose all my coin if I lose the physical piece of hardware.

I assumed that this would be a simple task seeing that recovery is the most important part of backing something up. There's very little point in backing something up if you don't test the restore procedure. This is computing basics 101.

After hunting around a bit, I found a few Reddit topics etc. on the subject. Here is something on the subject:
https://www.reddit.com/r/TREZOR/comments/6mo858/is_it_possible_to_test_recovery_seed_on_existing/

In a nutshell, it seems that it can be done if you have Linux and are willing to run something at the command line. I tried for hours yesterday trying to find a Linux distro where I could get this to work, but I'm not good enough with Linux to figure this out and gave up. So, I emailed Trezor tech support, and one of the automatons shot back an email saying that I can wipe my device in order to test the seed. Nice one Einstein. Deleting your data before you test the recovery plan is a really smart move. It's not risky at all to roll the dice with your own money like that. I'm sure Trezor has a crack team of professionals there.

Anyway, what is the most straight forward way to test my Trezor seed? Do I need to buy a second Trezor to test with?
1539875499
Hero Member
*
Offline Offline

Posts: 1539875499

View Profile Personal Message (Offline)

Ignore
1539875499
Reply with quote  #2

1539875499
Report to moderator
1539875499
Hero Member
*
Offline Offline

Posts: 1539875499

View Profile Personal Message (Offline)

Ignore
1539875499
Reply with quote  #2

1539875499
Report to moderator
1539875499
Hero Member
*
Offline Offline

Posts: 1539875499

View Profile Personal Message (Offline)

Ignore
1539875499
Reply with quote  #2

1539875499
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1539875499
Hero Member
*
Offline Offline

Posts: 1539875499

View Profile Personal Message (Offline)

Ignore
1539875499
Reply with quote  #2

1539875499
Report to moderator
1539875499
Hero Member
*
Offline Offline

Posts: 1539875499

View Profile Personal Message (Offline)

Ignore
1539875499
Reply with quote  #2

1539875499
Report to moderator
1539875499
Hero Member
*
Offline Offline

Posts: 1539875499

View Profile Personal Message (Offline)

Ignore
1539875499
Reply with quote  #2

1539875499
Report to moderator
HCP
Hero Member
*****
Offline Offline

Activity: 756
Merit: 932

<insert witty quote here>


View Profile
December 03, 2017, 08:16:14 AM
 #2

You have a couple of options:

1. You can put your seed into the BIP39 Mnemonic tool (https://iancoleman.io/bip39) click the BIP44 tab... and make sure it is generating the same BTC addresses as the Trezor wallet. For added security, you should really do this on an offline machine (at at least using a live CD/USB like Tails etc), with a downloaded, offline copy of the tool...

2. Move your DASH (just in case), then wipe the Trezor and reload with your Seed to see if it regenerates the same wallets with history etc.

3. Get a 2nd hardware wallet like another Trezor or a Nano S etc... restore your seed onto that device.

4. Restore your seed into Electrum (again, on an offline machine), see if it creates the same BTC addresses as it currently does.

5. Use the python-trezor library and their "trezorctl" command line tool to do a dry-run

Personally, I tested with only one device by simply wiping the device and restoring before I sent any coins to it.


After hunting around a bit, I found a few Reddit topics etc. on the subject. Here is something on the subject:
https://www.reddit.com/r/TREZOR/comments/6mo858/is_it_possible_to_test_recovery_seed_on_existing/

In a nutshell, it seems that it can be done if you have Linux and are willing to run something at the command line. I tried for hours yesterday trying to find a Linux distro where I could get this to work, but I'm not good enough with Linux to figure this out and gave up.
This actually does work with Windows... I just tried it on Windows 10 with Python2.7 and a Trezor with firmware 1.5.2.

Code:
C:\Python27\Scripts\pip.exe install trezor

C:\Python27\Scripts\pip.exe install click

Download python-trezor from: https://github.com/trezor/python-trezor

Extract it... and then from the directory where you extracted it:
Code:
C:\Python27\Python.exe trezorctl recovery_device --dry-run


Kruddler
Jr. Member
*
Offline Offline

Activity: 45
Merit: 10


View Profile
December 03, 2017, 08:42:03 AM
 #3

Thanks. This is great. Especially the python stuff.

However, I guess the thing is, how can trust any of these tools? Even with the Windows python tool, there could be malware keyboard loggers on my computer, and I could be giving my seed to hackers...

You are right about tails. I have been fiddling with Tails, but it's insanely difficult to get working. For example, it doesn't come with Electrum 3 (it's got 2.? on there) so I can't use it to do a recovery because the older version of Electrum doesn't work.

Are hardware wallets fully compatible with each other? If I get a nano s, can I restore from my Trezor with the seed?

I'm tossing up whether to get a second Trezor, or a nano s.
OmegaStarScream
Staff
Legendary
*
Offline Offline

Activity: 1442
Merit: 1109


Hire BOUNTYPORTALS>Bounty management goo.gl/XKv9TK


View Profile
December 03, 2017, 09:01:34 AM
 #4

The tools he gave you are both open source and widely used by people, If they contained a malicious code, people would've known already. You can run them locally offline by downloading the code. I believe Trezor use BIP44 while Ledger nano S use BIP39 so you probably can't recover it so better get another Trezor.

HCP
Hero Member
*****
Offline Offline

Activity: 756
Merit: 932

<insert witty quote here>


View Profile
December 03, 2017, 09:36:15 AM
 #5

However, I guess the thing is, how can trust any of these tools? Even with the Windows python tool, there could be malware keyboard loggers on my computer, and I could be giving my seed to hackers...
The code actually asks for your seed to be input in a random order... the device asks for "Xth word" 24 times...  much like the advanced recovery mode within the Trezor Wallet WebUI. This makes it difficult to determine the correct order for the words.

But yes, if you're concerned about keyloggers... an offline PC, or a live USB/CD distro is the best idea.


Quote
Are hardware wallets fully compatible with each other? If I get a nano s, can I restore from my Trezor with the seed?
In a word... yes. I've tested the same seed on my Trezor and my Nano S.


I believe Trezor use BIP44 while Ledger nano S use BIP39 so you probably can't recover it so better get another Trezor.
They actually BOTH implement BIP39 AND 44...

BIP39 = https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
This BIP describes the implementation of a mnemonic code or mnemonic sentence -- a group of easy to remember words -- for the generation of deterministic wallets.
ie. the use of "seed words"


BIP44 = https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki
This BIP defines a logical hierarchy for deterministic wallets based on an algorithm described in BIP-0032 (BIP32 from now on) and purpose scheme described in BIP-0043 (BIP43 from now on).
ie. the use of a specific Derivation Path defined as: m / purpose' / coin_type' / account' / change / address_index

By default, all the hardware wallets (for BTC) use m/44'/0'/0'

Kruddler
Jr. Member
*
Offline Offline

Activity: 45
Merit: 10


View Profile
December 04, 2017, 05:07:16 AM
 #6

The code actually asks for your seed to be input in a random order... the device asks for "Xth word" 24 times...  much like the advanced recovery mode within the Trezor Wallet WebUI. This makes it difficult to determine the correct order for the words.

If I don't put them in the right order, I'm not testing anything. I'm only testing that I have a bunch of words written down that match a bunch of words on a USB stick.

I need to see that it retrieves each one of my addresses for each coin including ETC, ETH etc. And that my seed is enough to retrieve allof this.
Kruddler
Jr. Member
*
Offline Offline

Activity: 45
Merit: 10


View Profile
December 07, 2017, 08:04:52 AM
 #7

I tried restoring my seed on to a Ledger Nano S. Out of the four coins I have stored BTC, LTC, DASH, and BCH, only BTC shows up. This is exactly what I've been worried about.

I never trust technology (I'm a programmer), and I've now proven to myself that restoring from a seed is not as straight forward as everyone says it is.

Before I go out an buy another Trezor, any last ditch options for a restore that doesn't compromise my seed?
HCP
Hero Member
*****
Offline Offline

Activity: 756
Merit: 932

<insert witty quote here>


View Profile
December 07, 2017, 09:25:12 AM
 #8

I tried restoring my seed on to a Ledger Nano S. Out of the four coins I have stored BTC, LTC, DASH, and BCH, only BTC shows up. This is exactly what I've been worried about.
I never trust technology (I'm a programmer), and I've now proven to myself that restoring from a seed is not as straight forward as everyone says it is.
Then I believe that you've done something wrong during the restore, or while trying to "find" your coins. I've restored my Ledger Nano S... and all my BTC, BCH, BTG, LTC, DOGE and DASH history and coins have been available after a restore...

Just to double check, you installed each "app" to your Ledger Nano S via the "Ledger Manager" Chrome app (most likely having to uninstall an app or two in the process to fit them all on)... and then you opened the (somewhat confusingly named) "Ledger Bitcoin Wallet" Chrome app, entered your PIN and then selected the appropriate "app" for the coin that you wanted on the Ledger Device?

For good measure... I just restored the Trezor again as well... and all my BTC, BCH, LTC, DASH shows up there too!

DannyHamilton
Legendary
*
Offline Offline

Activity: 2198
Merit: 1381



View Profile
December 07, 2017, 11:35:23 AM
 #9

The code actually asks for your seed to be input in a random order... the device asks for "Xth word" 24 times...  much like the advanced recovery mode within the Trezor Wallet WebUI. This makes it difficult to determine the correct order for the words.
If I don't put them in the right order, I'm not testing anything. I'm only testing that I have a bunch of words written down that match a bunch of words on a USB stick.

I think you misunderstood.

The software specifies the order to enter the words.

For example:

Enter the 17th word.
Enter the 20th word.
Enter the 6th word.
Enter the 12th word
Enter the 4th word

And so on.

So you have to enter the words in the requested order instead of the written order.  The order requested is random, so anything capturing keystrokes won't be able to determine the real order of the words UNLESS it is also capturing the request on the screen at the same time.

Lucius
Legendary
*
Online Online

Activity: 1204
Merit: 1070


Fortis Fortuna Adiuvat


View Profile WWW
December 07, 2017, 01:37:50 PM
 #10

I tried restoring my seed on to a Ledger Nano S. Out of the four coins I have stored BTC, LTC, DASH, and BCH, only BTC shows up. This is exactly what I've been worried about.
I never trust technology (I'm a programmer), and I've now proven to myself that restoring from a seed is not as straight forward as everyone says it is.
Then I believe that you've done something wrong during the restore, or while trying to "find" your coins. I've restored my Ledger Nano S... and all my BTC, BCH, BTG, LTC, DOGE and DASH history and coins have been available after a restore...

Just to double check, you installed each "app" to your Ledger Nano S via the "Ledger Manager" Chrome app (most likely having to uninstall an app or two in the process to fit them all on)... and then you opened the (somewhat confusingly named) "Ledger Bitcoin Wallet" Chrome app, entered your PIN and then selected the appropriate "app" for the coin that you wanted on the Ledger Device?

For good measure... I just restored the Trezor again as well... and all my BTC, BCH, LTC, DASH shows up there too!

I have recently purchased Ledger Nano S and I was expected that if I install application for LTC that I will see that application in Chrome app,but there is only one app as you say,and it is confuses people so they think that only BTC wallet is installed.I hope they can make it more user friendly in future.

I did not use any tools or anything like that to check my seed,just checked few times every word to be sure I have the right words.

Kruddler are you now see all your coins in Ledger?

   ███                       
   █████                     
  ███████                    
 ██████████        █         
  █████████      ████        
  ████████      ██           
     ██████    ██            
       ██████████            
            ██████   ███████ 
         █████  ██████████████
       ███ ███  ████████████ 
       ██ █          █       
      █                      
     █                       
.
                          ██ 
                       █████ 
                      ███████
           █        ██████████
          ████      █████████
             ██      ████████
              ██    ██████   
              ██████████     
   ███████   ██████          
 ██████████████  █████       
   ████████████  ███ ██      
    ██████          █ ██     
                        █    
                         █  




███           
██████        
████████     
██████████    
████████████ 
██████████████
██████████████
████████████  
██████████    
████████      
██████        
███           
.

██████████
██████████
██████████
██████████
.

          ████
        ██████
      ████████
    ██████████
  ████████████
██████████████
██████████████
  ████████████
    ██████████
      ████████
        ██████
           ███
Kruddler
Jr. Member
*
Offline Offline

Activity: 45
Merit: 10


View Profile
February 05, 2018, 10:01:18 AM
Merited by Lucius (1)
 #11

Hi. Sorry for taking so long to reply. The answer is that no, I never all coins in the ledger. But, I think I know why...

Different apps have different logic for how they scan addresses. They're not supposed to. They're supposed to follow the Bitcoin BIPS. But I think my addresses had a gap, so the Ledger was skipping over it while the Trezor wasn't. That resulted in different values. From memory, I think the problem eventually went away.

But, After understanding the technology a lot better now, I am less worried. I've spent the last few months writing code for the Trezor so I have a very good understanding of how address generation works now.
Lucius
Legendary
*
Online Online

Activity: 1204
Merit: 1070


Fortis Fortuna Adiuvat


View Profile WWW
February 05, 2018, 01:15:28 PM
 #12

Hi. Sorry for taking so long to reply. The answer is that no, I never all coins in the ledger. But, I think I know why...

Different apps have different logic for how they scan addresses. They're not supposed to. They're supposed to follow the Bitcoin BIPS. But I think my addresses had a gap, so the Ledger was skipping over it while the Trezor wasn't. That resulted in different values. From memory, I think the problem eventually went away.

But, After understanding the technology a lot better now, I am less worried. I've spent the last few months writing code for the Trezor so I have a very good understanding of how address generation works now.

This is true,I also have problem with my Ledger Nano S not showing incoming transaction and this is because I use one of the generated addresses from Sign Message option.Ledger Google App just not scan all generated addresses,so even that address is generated by your wallet,balance on that address will not be visible on final balance.Luckily it can be solved by using Electrum and increase address gap limit.

I do not know how easy/difficult would be to change that from the developer side,but all my e-mails to Ledger support ended up with generic responses - How can we help you - Did you solve your problem?

   ███                       
   █████                     
  ███████                    
 ██████████        █         
  █████████      ████        
  ████████      ██           
     ██████    ██            
       ██████████            
            ██████   ███████ 
         █████  ██████████████
       ███ ███  ████████████ 
       ██ █          █       
      █                      
     █                       
.
                          ██ 
                       █████ 
                      ███████
           █        ██████████
          ████      █████████
             ██      ████████
              ██    ██████   
              ██████████     
   ███████   ██████          
 ██████████████  █████       
   ████████████  ███ ██      
    ██████          █ ██     
                        █    
                         █  




███           
██████        
████████     
██████████    
████████████ 
██████████████
██████████████
████████████  
██████████    
████████      
██████        
███           
.

██████████
██████████
██████████
██████████
.

          ████
        ██████
      ████████
    ██████████
  ████████████
██████████████
██████████████
  ████████████
    ██████████
      ████████
        ██████
           ███
Spendulus
Legendary
*
Offline Offline

Activity: 2030
Merit: 1074



View Profile
February 07, 2018, 12:14:50 AM
 #13

Hi. Sorry for taking so long to reply. The answer is that no, I never all coins in the ledger. But, I think I know why...

Different apps have different logic for how they scan addresses. They're not supposed to. They're supposed to follow the Bitcoin BIPS. But I think my addresses had a gap, so the Ledger was skipping over it while the Trezor wasn't. That resulted in different values. From memory, I think the problem eventually went away.

But, After understanding the technology a lot better now, I am less worried. I've spent the last few months writing code for the Trezor so I have a very good understanding of how address generation works now.

How would your addresses have a gap? Unless you imported private keys that should not be the case.
HCP
Hero Member
*****
Offline Offline

Activity: 756
Merit: 932

<insert witty quote here>


View Profile
February 07, 2018, 01:43:44 AM
 #14

This is true,I also have problem with my Ledger Nano S not showing incoming transaction and this is because I use one of the generated addresses from Sign Message option.Ledger Google App just not scan all generated addresses,so even that address is generated by your wallet,balance on that address will not be visible on final balance.Luckily it can be solved by using Electrum and increase address gap limit.

I do not know how easy/difficult would be to change that from the developer side,but all my e-mails to Ledger support ended up with generic responses - How can we help you - Did you solve your problem?
I wouldn't expect them to change anything... you're effectively asking them to fix something because you were using the software incorrectly (and/or in a non-standard way).

It would be like asking Apple to fix a "bug" in their OS because I decided to try and install OSX on a "hackintosh" using unsupported hardware.

You have selected an address from the "Sign Message" drop down... which is supposed to be used for signing messages. This list also includes change addresses. If you want to "receive" Bitcoins, use the "Receive" tab like the software is designed.

Looking at it from the other side... I suppose if the address has been "pre-generated" by the wallet and is included in the list... the wallet should be at least scanning that many addresses as it's "gap limit".

Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!