Pages:
Author

Topic: Can Bitcoin wallets be trusted? - page 2. (Read 3788 times)

sr. member
Activity: 266
Merit: 250
July 13, 2014, 10:37:24 PM
#28

Most bitcoin wallets are open source. This means that anyone is able to inspect the code of the wallet to ensure that these types of attacks could not happen.

typical geek answer. so this is what you would reply with if your grandma asked the question, just before she went and downloaded a wallet from a website she never personally heard of but had been told by a friend to go there...
The same thing could be said about apps or any other software out there.
legendary
Activity: 1302
Merit: 1004
Core dev leaves me neg feedback #abuse #political
July 13, 2014, 10:11:06 PM
#27
Excellent advice given in this thread.

I would like to add that large amounts of coins should be put into
cold storage wallet to begin with, and only transferred out
of cold storage using an offline-signed transaction.
sr. member
Activity: 644
Merit: 260
July 13, 2014, 09:28:07 PM
#26
This is an important step to take if you truly want to be paranoid about your wallet. This would only prevent an attack if an attacker was able to get control over the domain, but not the dev's private PGP key, and the public PGP key is found somewhere outside of the domain. If a user finds the dev's public PGP key on the same website/domain that they are downloading the file from then the attacker could simply change the PGP key listed and sign a message saying that their (malicious) download is the most up to date and correct one.
Well, it seems that at some point you will need to trust someone or something.
But to minimize the problem of replaced PGP keys, I would publish my public key in all my public profiles I have.
I think a better way for most users would simply be to search the forums for reports of incorrect code being on a particular wallet. There will enviably be people that will check the PGP key and check the source code to make sure everything is "on the up and up" and if not will report it. This would be much simpler for the less technically inclined.  

The problem is, exploits can go on for some time before they are noticed. In the meantime, everyone downloading the file and not verifying the signature is at great risk.
This is true, however people will often report when they lose bitcoin as you likely see often on these forums and on reddit (if you read reddit) when people lose their bitcoin. I would think that if there was some kind of exploit on say Multibit for example that the community would be able to make this conclusion quickly when a lot of people report loosing their coins when using multibit.

EDIT: the more technological inclined should still check the PGP signature and the source code on github for any issues, and when something is not right should report it and make it public.
hero member
Activity: 658
Merit: 500
Buy and sell bitcoins,
July 13, 2014, 05:17:56 PM
#25
This is an important step to take if you truly want to be paranoid about your wallet. This would only prevent an attack if an attacker was able to get control over the domain, but not the dev's private PGP key, and the public PGP key is found somewhere outside of the domain. If a user finds the dev's public PGP key on the same website/domain that they are downloading the file from then the attacker could simply change the PGP key listed and sign a message saying that their (malicious) download is the most up to date and correct one.
Well, it seems that at some point you will need to trust someone or something.
But to minimize the problem of replaced PGP keys, I would publish my public key in all my public profiles I have.
I think a better way for most users would simply be to search the forums for reports of incorrect code being on a particular wallet. There will enviably be people that will check the PGP key and check the source code to make sure everything is "on the up and up" and if not will report it. This would be much simpler for the less technically inclined. 

The problem is, exploits can go on for some time before they are noticed. In the meantime, everyone downloading the file and not verifying the signature is at great risk.
member
Activity: 109
Merit: 10
July 13, 2014, 04:53:05 PM
#24
i agree -- i just think it's important to make sure you're getting the file that the developer intends. as another poster pointed out, an attack on the developer's site/man-in-the-middle attack could put you at risk if you don't confirm with a PGP signature.

This, I cannot stress how important it is to make sure that you are getting the version that the developer intended and not one that has been placed there with malicious intent thanks to some security hole on the site. The best thing would be to go through every line of code for the open source program and understand what each does, but this requires both a shit ton of time and a knowledge that a majority of people lack.

<---Critical information there. Always check your source and verify the signature.
full member
Activity: 210
Merit: 100
July 13, 2014, 04:14:03 PM
#23
Online wallets may be unsafe, yes. If you don't possess the private key for your bitcoin's addresses, you basically don't own them. All you've got is an IOU...
sr. member
Activity: 644
Merit: 260
July 13, 2014, 04:02:32 PM
#22
This is an important step to take if you truly want to be paranoid about your wallet. This would only prevent an attack if an attacker was able to get control over the domain, but not the dev's private PGP key, and the public PGP key is found somewhere outside of the domain. If a user finds the dev's public PGP key on the same website/domain that they are downloading the file from then the attacker could simply change the PGP key listed and sign a message saying that their (malicious) download is the most up to date and correct one.
Well, it seems that at some point you will need to trust someone or something.
But to minimize the problem of replaced PGP keys, I would publish my public key in all my public profiles I have.
I think a better way for most users would simply be to search the forums for reports of incorrect code being on a particular wallet. There will enviably be people that will check the PGP key and check the source code to make sure everything is "on the up and up" and if not will report it. This would be much simpler for the less technically inclined. 
hero member
Activity: 658
Merit: 500
July 13, 2014, 01:14:46 PM
#21
This is an important step to take if you truly want to be paranoid about your wallet. This would only prevent an attack if an attacker was able to get control over the domain, but not the dev's private PGP key, and the public PGP key is found somewhere outside of the domain. If a user finds the dev's public PGP key on the same website/domain that they are downloading the file from then the attacker could simply change the PGP key listed and sign a message saying that their (malicious) download is the most up to date and correct one.
Well, it seems that at some point you will need to trust someone or something.
But to minimize the problem of replaced PGP keys, I would publish my public key in all my public profiles I have.
sr. member
Activity: 448
Merit: 250
It's Money 2.0| It’s gold for nerds | It's Bitcoin
July 13, 2014, 01:04:25 PM
#20
Most bitcoin wallets are open source. This means that anyone is able to inspect the code of the wallet to ensure that these types of attacks could not happen.
Even if the code itself is open source, what guarantees me that the build I'm getting was not compiled from a modified source which will take coins away? Especially on phone apps. I have no way to prove that the source code matches the app I see on Google Play or App Store?

This is why I would rely only on a PGP signature. In theory, it can only be generated by the owner of the corresponding private key. So if you trust the developer (of say, Multibit or Electrum), the signature verifies the integrity of the file and shows that the key owner vouches for the file contents. That's pretty much as good as it gets.
This is an important step to take if you truly want to be paranoid about your wallet. This would only prevent an attack if an attacker was able to get control over the domain, but not the dev's private PGP key, and the public PGP key is found somewhere outside of the domain. If a user finds the dev's public PGP key on the same website/domain that they are downloading the file from then the attacker could simply change the PGP key listed and sign a message saying that their (malicious) download is the most up to date and correct one.
hero member
Activity: 742
Merit: 502
Circa 2010
July 13, 2014, 07:27:09 AM
#19
i agree -- i just think it's important to make sure you're getting the file that the developer intends. as another poster pointed out, an attack on the developer's site/man-in-the-middle attack could put you at risk if you don't confirm with a PGP signature.

This, I cannot stress how important it is to make sure that you are getting the version that the developer intended and not one that has been placed there with malicious intent thanks to some security hole on the site. The best thing would be to go through every line of code for the open source program and understand what each does, but this requires both a shit ton of time and a knowledge that a majority of people lack.
full member
Activity: 154
Merit: 1000
Fica Tranquilo
July 13, 2014, 06:14:09 AM
#19
Stick with the most common used walles and you should be fine.

bitcoin-qt, electum, multibit or armory.

Choices enough.

Good point too, recap updated:

a) Download a well known, often used wallet from trusted source
b) Check MD5 hash
c) Check PGP signature
d) Have your wallet in a dedicated PC, used exclusively for this usage (come on you stingy BTCers... playing holder of the future of the world economy and not willing to spend 100 bucks in a basic system?)
e) Encrypt wallet
f) Physically disconnect LAN cable when not in use for paranoia users.
g) Faraday cage... wait, wouldn't this also screw the HDD? Cheesy

Eth.

after
e) Encrypt wallet
comes
f) make backups, usb, hdd
sr. member
Activity: 467
Merit: 266
July 13, 2014, 06:18:56 AM
#18

With this I would feel quite safe... There are evil wizards around tho... physically disconnect LAN cable when not in use for paranoia users.

Many malware apps are smart enough to go dormant when the network is off and will reactivate when it comes back.

For 40$, you could make a dedicated raspberry pi wallet entirely offline.
Download the official OS Image. Add the required packages. Then disconnect from the network forever. Install the rest from official tar balls. Create an encrypted wallet and you are good to go.

For backups, take a picture of the qr code from an old phone with no SIM card. Check that they can be decoded. Save to several micro SD. Hide them. Then wipe your phone. I hope that it's good enough.
sr. member
Activity: 338
Merit: 255
July 13, 2014, 06:05:32 AM
#17
Stick with the most common used walles and you should be fine.

bitcoin-qt, electum, multibit or armory.

Choices enough.

Good point too, recap updated:

a) Download a well known, often used wallet from trusted source
b) Check MD5 hash
c) Check PGP signature
d) Have your wallet in a dedicated PC, used exclusively for this usage (come on you stingy BTCers... playing holder of the future of the world economy and not willing to spend 100 bucks in a basic system?)
e) Encrypt wallet
f) Physically disconnect LAN cable when not in use for paranoia users.
g) Faraday cage... wait, wouldn't this also screw the HDD? Cheesy

Eth.
hero member
Activity: 658
Merit: 500
July 13, 2014, 06:04:04 AM
#16
Stick with the most common used walles and you should be fine.

bitcoin-qt, electum, multibit or armory.

Choices enough.

i agree -- i just think it's important to make sure you're getting the file that the developer intends. as another poster pointed out, an attack on the developer's site/man-in-the-middle attack could put you at risk if you don't confirm with a PGP signature.
full member
Activity: 154
Merit: 1000
Fica Tranquilo
July 13, 2014, 06:00:25 AM
#16
Stick with the most common used wallets and you should be fine.

bitcoin-qt, electum, multibit or armory.

Choices enough.
hero member
Activity: 658
Merit: 500
July 13, 2014, 05:46:32 AM
#15
Recap:

a) Download from trusted source
b) Check MD5 hash
c) Check PGP signature (if available?)
d) Have your wallet in a dedicated PC, used exclusively for this usage (come on you stingy BTCers... playing holder of the future of the world economy and not willing to spend 100 bucks in a basic system?)
e) Encrypt wallet

With this I would feel quite safe... There are evil wizards around tho... physically disconnect LAN cable when not in use for paranoia users.

Eth.

PGP signature is a must for me. but i'm a stickler for security. this is also the reason why i miss out on all the altcoin pumps -- don't trust the developers or the software. Sad
legendary
Activity: 1264
Merit: 1008
July 13, 2014, 05:28:09 AM
#14
The Bitcoin block chain is trustless in the sense that it's automatically secure. What about Bitcoin wallets? Can't they make fraud payments with the users' bitcoins? If someone installs an insincere Bitcoin wallet then it can start paying bitcoins to some other Bitcoin address than what the user has intended. Or?

Short answer:  no.

Long answer:  if the wallet is running on an offline machine in a faraday cage then yes
sr. member
Activity: 338
Merit: 255
July 13, 2014, 04:33:05 AM
#13
Recap:

a) Download from trusted source
b) Check MD5 hash
c) Check PGP signature (if available?)
d) Have your wallet in a dedicated PC, used exclusively for this usage (come on you stingy BTCers... playing holder of the future of the world economy and not willing to spend 100 bucks in a basic system?)
e) Encrypt wallet

With this I would feel quite safe... There are evil wizards around tho... physically disconnect LAN cable when not in use for paranoia users.

Eth.
full member
Activity: 126
Merit: 100
July 13, 2014, 02:55:51 AM
#12
A similar problem could happen with for example web browsers. In practice for desktops the vast majority of people use one of the established browsers such as Internet Explorer, Google Chrome, Firefox, Safari or Opera. These browsers are sincere, unless someone downloads and installs a hacked version. And for mobile devices the situation is similar although a few less known web browsers are available there.

For Bitcoin something similar could happen, that only a few big and trusted Bitcoin wallets would be used in practice if Bitcoin becomes really huge and mainstream.

Still, the trustless innovation in Bitcoin is revolutionizing and it would be good to have that even for the wallets.
legendary
Activity: 3416
Merit: 4658
July 12, 2014, 08:44:30 PM
#11
What about Bitcoin wallets? Can't they make fraud payments with the users' bitcoins?

Fraudulent wallets?  Certainly.

If someone installs an insincere Bitcoin wallet then it can start paying bitcoins to some other Bitcoin address than what the user has intended.

Absolutely.

This is why it is important to be careful about ANY software that you install on your computer (not just bitcoin software).  It is entirely possible that you could install non-bitcoin software that has bitcoin wallet stealing programming hidden in it.  Install some "free game" that some friend on Facebook tells you about, and the next time that you log into your wallet, poof all your bitcoins are gone.
Pages:
Jump to: