Bitcoin Forum
May 04, 2024, 11:43:44 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2]  All
  Print  
Author Topic: Are Hardware Wallets to be trusted?  (Read 758 times)
ttookk
Hero Member
*****
Offline Offline

Activity: 994
Merit: 513


View Profile
December 14, 2017, 12:07:39 AM
 #21

This is a question I asked myself recently as well. And refering to open source code doesn't completely solve the question, because the main attack vector I see, if a hardware wallet manufacturer would want to access customers funds, would be a bad random number generator.

I don't know how trezor and ledger generate their privkeys, though. Does anybody have any insight in that?
1714866224
Hero Member
*
Offline Offline

Posts: 1714866224

View Profile Personal Message (Offline)

Ignore
1714866224
Reply with quote  #2

1714866224
Report to moderator
1714866224
Hero Member
*
Offline Offline

Posts: 1714866224

View Profile Personal Message (Offline)

Ignore
1714866224
Reply with quote  #2

1714866224
Report to moderator
1714866224
Hero Member
*
Offline Offline

Posts: 1714866224

View Profile Personal Message (Offline)

Ignore
1714866224
Reply with quote  #2

1714866224
Report to moderator
The forum was founded in 2009 by Satoshi and Sirius. It replaced a SourceForge forum.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714866224
Hero Member
*
Offline Offline

Posts: 1714866224

View Profile Personal Message (Offline)

Ignore
1714866224
Reply with quote  #2

1714866224
Report to moderator
1714866224
Hero Member
*
Offline Offline

Posts: 1714866224

View Profile Personal Message (Offline)

Ignore
1714866224
Reply with quote  #2

1714866224
Report to moderator
1714866224
Hero Member
*
Offline Offline

Posts: 1714866224

View Profile Personal Message (Offline)

Ignore
1714866224
Reply with quote  #2

1714866224
Report to moderator
legonappy
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
December 14, 2017, 05:38:00 PM
 #22

Hardware wallets are the most trustworthy among all types of bitcoin wallets. However, a large amount of bitcoin is always unsafe. So be careful.
bob123
Legendary
*
Offline Offline

Activity: 1624
Merit: 2481



View Profile WWW
December 14, 2017, 06:47:15 PM
 #23

I've been using armory and my own brain key. (I'll let all of you decide if I'm a fool or not). But as the password has over 100 characters I'm fairly confident that,at over 10^130, that it's safe.

Your 'brain key' contains 'over 100 characters' and its at about 10^130, interesting.
It seems like you are using a set of 10 characters and a set of 130. Thats pretty unefficient..
Why not using a set of 62 character (a-z,A-Z,0-9) and only a length of 72 with the same entropy?

Oh.. and did you already know that bitcoin private keys are taken out of a 2^160 pool ? Thats about 10^48.
Compared to your 10^130 thats pretty weak Sad  You can be proud to have a password which is massively stronger than the thing it protects.
Since in this scenario it is easier to crack btc and as we all know bitcoin can't be broken, such a long password may be a bit (?) paranoid, but i'll let you decide.

RGBKey
Hero Member
*****
Offline Offline

Activity: 854
Merit: 658


rgbkey.github.io/pgp.txt


View Profile WWW
December 15, 2017, 01:34:11 AM
 #24

This is a question I asked myself recently as well. And refering to open source code doesn't completely solve the question, because the main attack vector I see, if a hardware wallet manufacturer would want to access customers funds, would be a bad random number generator.

I don't know how trezor and ledger generate their privkeys, though. Does anybody have any insight in that?

What we really need is open source hardware. Devices that people can assemble themselves. Unfortunately the skill required to do something like this would be much higher than the average cryptocurrency enthusiast.
ttookk
Hero Member
*****
Offline Offline

Activity: 994
Merit: 513


View Profile
December 16, 2017, 03:43:20 AM
 #25

This is a question I asked myself recently as well. And refering to open source code doesn't completely solve the question, because the main attack vector I see, if a hardware wallet manufacturer would want to access customers funds, would be a bad random number generator.

I don't know how trezor and ledger generate their privkeys, though. Does anybody have any insight in that?

What we really need is open source hardware. Devices that people can assemble themselves. Unfortunately the skill required to do something like this would be much higher than the average cryptocurrency enthusiast.

I was actually just yesterday thinking about a different approach: roll the dice.

Make a spreadsheet with all the words used for the seed. Align them in a way that you can divide them in a way that makes sense (see below).

Get some dice, for example two W10 dice (two w10 dice can be used to roll numbers between 00-99), then create your seed by rolling the dice until you have 24 words. Put them into your hardware wallet --> totally trustless, ultra paranoid DIY random number generator. Now, at least the seed is generated safely.

Addendum: I haven't found the word list yet, but I assume it is not divisible by 10 or 100. With that in mind: to keep the chances of hitting a word as even as possible, it may be prudent to use different dice (Your local D&D dealer can help you out).


Speaking of assembling themselves: I recently thought about getting an old smartphone, physically disconnect anything that can broadcast and flash a custom ROM on it, which functions as a wallet. Input and output will be handled via camera and QR-Codes (Seed creation, see above Wink ).
HCP
Legendary
*
Offline Offline

Activity: 2086
Merit: 4316

<insert witty quote here>


View Profile
December 16, 2017, 03:48:42 AM
 #26

Addendum: I haven't found the word list yet, but I assume it is not divisible by 10 or 100. With that in mind: to keep the chances of hitting a word as even as possible, it may be prudent to use different dice (Your local D&D dealer can help you out).
You mean the BIP39 wordlist? https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt

█████████████████████████
████▐██▄█████████████████
████▐██████▄▄▄███████████
████▐████▄█████▄▄████████
████▐█████▀▀▀▀▀███▄██████
████▐███▀████████████████
████▐█████████▄█████▌████
████▐██▌█████▀██████▌████
████▐██████████▀████▌████
█████▀███▄█████▄███▀█████
███████▀█████████▀███████
██████████▀███▀██████████
█████████████████████████
.
BC.GAME
▄▄░░░▄▀▀▄████████
▄▄▄
██████████████
█████░░▄▄▄▄████████
▄▄▄▄▄▄▄▄▄██▄██████▄▄▄▄████
▄███▄█▄▄██████████▄████▄████
███████████████████████████▀███
▀████▄██▄██▄░░░░▄████████████
▀▀▀█████▄▄▄███████████▀██
███████████████████▀██
███████████████████▄██
▄███████████████████▄██
█████████████████████▀██
██████████████████████▄
.
..CASINO....SPORTS....RACING..
█░░░░░░█░░░░░░█
▀███▀░░▀███▀░░▀███▀
▀░▀░░░░▀░▀░░░░▀░▀
░░░░░░░░░░░░
▀██████████
░░░░░███░░░░
░░█░░░███▄█░░░
░░██▌░░███░▀░░██▌
░█░██░░███░░░█░██
░█▀▀▀█▌░███░░█▀▀▀█▌
▄█▄░░░██▄███▄█▄░░▄██▄
▄███▄
░░░░▀██▄▀


▄▄████▄▄
▄███▀▀███▄
██████████
▀███▄░▄██▀
▄▄████▄▄░▀█▀▄██▀▄▄████▄▄
▄███▀▀▀████▄▄██▀▄███▀▀███▄
███████▄▄▀▀████▄▄▀▀███████
▀███▄▄███▀░░░▀▀████▄▄▄███▀
▀▀████▀▀████████▀▀████▀▀
ttookk
Hero Member
*****
Offline Offline

Activity: 994
Merit: 513


View Profile
December 16, 2017, 03:54:07 AM
Last edit: December 16, 2017, 11:47:22 AM by ttookk
 #27

Addendum: I haven't found the word list yet, but I assume it is not divisible by 10 or 100. With that in mind: to keep the chances of hitting a word as even as possible, it may be prudent to use different dice (Your local D&D dealer can help you out).
You mean the BIP39 wordlist? https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt

Woohoo, yes, thanks Smiley

Ok, looks like the magic number 8 is the way to go. There are 8-sided dice, so that shouldn't be a problem… oh, and a 4-sided die at the end.

Alternatively, 16-sided die, leaves a rest of 8, so a 8-sided die for the finish. Saves one round, too.
16 pages with 128 words per page, 16 lines with 8 words per line. First, roll the page, then the line, then the word. Repeat 23 times.


Are the keys checksumed, though? This would mean that not every combination automatically works…
RGBKey
Hero Member
*****
Offline Offline

Activity: 854
Merit: 658


rgbkey.github.io/pgp.txt


View Profile WWW
December 17, 2017, 01:25:31 AM
 #28

Addendum: I haven't found the word list yet, but I assume it is not divisible by 10 or 100. With that in mind: to keep the chances of hitting a word as even as possible, it may be prudent to use different dice (Your local D&D dealer can help you out).
You mean the BIP39 wordlist? https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt

Woohoo, yes, thanks Smiley

Ok, looks like the magic number 8 is the way to go. There are 8-sided dice, so that shouldn't be a problem… oh, and a 4-sided die at the end.

Alternatively, 16-sided die, leaves a rest of 8, so a 8-sided die for the finish. Saves one round, too.
16 pages with 128 words per page, 16 lines with 8 words per line. First, roll the page, then the line, then the word. Repeat 23 times.


Are the keys checksumed, though? This would mean that not every combination automatically works…

It doesn't look like it to me. It seems the whole phrase is just hashed together with some salt (the string "mnemonic" plus your passphrase, if you have one), which means there's no checksum. You should be able to use dice to generate a valid BIP39 phrase by using the wordlist. Source.
codewench
Member
**
Offline Offline

Activity: 93
Merit: 39


View Profile
December 17, 2017, 03:40:16 AM
 #29

Are the keys checksumed, though? This would mean that not every combination automatically works…

It doesn't look like it to me. It seems the whole phrase is just hashed together with some salt (the string "mnemonic" plus your passphrase, if you have one), which means there's no checksum. You should be able to use dice to generate a valid BIP39 phrase by using the wordlist. Source.

There is a check value. Look further up in BIP39 in the "Generating the mnemonic" section. The dictionary of 2048 words results in a bit sequence 33/32nds of the needed length(s). The extra bits are the check value.
Pages: « 1 [2]  All
  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!