Bitcoin Forum
December 15, 2024, 02:58:15 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Needed: Security best practices for creating better Bitcoin services  (Read 1361 times)
ripper234 (OP)
Legendary
*
Offline Offline

Activity: 1358
Merit: 1003


Ron Gross


View Profile WWW
July 31, 2013, 11:13:14 AM
 #1

Over the last few years, a lot of experience has built up in the Bitcoin community regarding security practices.
One particular aspect is the security of Bitcoin Services (e.g. exchanges, wallets, stock exchanges, and any site that has bitcoins flowing through it / stores users' Bitcoins for a long time).

In order to benefit anyone that builds a similar security-critical website, I think it's essential we create some best practices focused in one centralized place, specifically targeted as service developers and operators (Securing your wallet is good for users, but doesn't say help too much to Bitcoin service operators).

I suggest we as a community pull our knowledge and create a similar resource that discusses building secure Bitcoin services.

Can any of the members who were involved in securing Bitcoin services step forward and create such a wiki entry with their knowledge?
(Or post your experience here if you're more comfortable with the forum than the wiki, we'll organize it into a coherent wiki entry)

P.S. if you're in good contact with operators of Bitcoin services, feel free to forward this to them.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
Kris
Donator
Hero Member
*
Offline Offline

Activity: 640
Merit: 500


View Profile
July 31, 2013, 11:16:49 AM
 #2

+1

When time allows it, I will tip in.
ripper234 (OP)
Legendary
*
Offline Offline

Activity: 1358
Merit: 1003


Ron Gross


View Profile WWW
August 07, 2013, 03:44:07 PM
 #3

Bump - is anyone interested in helping out?

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
Razick
Legendary
*
Offline Offline

Activity: 1330
Merit: 1003


View Profile
August 07, 2013, 04:26:24 PM
 #4

I will definitely look forward to reading this.

ACCOUNT RECOVERED 4/27/2020. Account was previously hacked sometime in 2017. Posts between 12/31/2016 and 4/27/2020 are NOT LEGITIMATE.
juca
Full Member
***
Offline Offline

Activity: 154
Merit: 100



View Profile
August 07, 2013, 05:40:34 PM
 #5

+1 indeed
I will be watching this thread. Probably, things will come in pieces here, than we could compile in the wiki later.

my first security tip is: whatever you do, use cold storage
acoindr
Legendary
*
Offline Offline

Activity: 1050
Merit: 1002


View Profile
August 07, 2013, 06:03:05 PM
 #6

I had this same idea. I think in general there should be a repository, maybe even a new forum for Bitcoin project code, PHP/Python, etc. Bitcoin itself it open source, but everyone would benefit if some other aspects of Bitcoin development also had shared knowledge/work. Why keep re-inventing the wheel? Everyone benefits from more stable, secure businesses. Securing wallets, dealing with DDoS, even legal issues like obtaining money transmitter licenses etc. shouldn't be problems every single business faces on its own, over and over.
Remember remember the 5th of November
Legendary
*
Offline Offline

Activity: 1862
Merit: 1011

Reverse engineer from time to time


View Profile
August 07, 2013, 06:04:00 PM
 #7

A while back I actually posted a thread regarding this, security practices for Bitcoiners.

BTC:1AiCRMxgf1ptVQwx6hDuKMu4f7F27QmJC2
ripper234 (OP)
Legendary
*
Offline Offline

Activity: 1358
Merit: 1003


Ron Gross


View Profile WWW
August 07, 2013, 10:43:40 PM
 #8

A while back I actually posted a thread regarding this, security practices for Bitcoiners.

link?

I actually found this now, not sure it's rich enough.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
juca
Full Member
***
Offline Offline

Activity: 154
Merit: 100



View Profile
August 07, 2013, 11:21:02 PM
 #9

I actually found this now, not sure it's rich enough.

i found this:
http://blog.coinbase.com/post/33197656699/coinbase-now-storing-87-of-customer-funds-offline
from your link

but reading it, i found a not such good statement:
Quote
Instead, we can safely move about 90% of those funds offline.  We do this by taking the sensitive data that would normally reside on our servers (the “private keys” which represent the actual bitcoins) and moving it to USB sticks and paper backups.  We then take these to a safe deposit box at an actual bank.  In this case we use the bank more like a vault instead of for storing any traditional currency.

moving funds to usb sticks are not such a good idea. usb sticks are prone to failure. paper wallets would be the correct choice.
gweedo
Legendary
*
Offline Offline

Activity: 1498
Merit: 1000


View Profile
August 07, 2013, 11:30:04 PM
 #10

I can be involved in this, I am always pentesting my own vms and coding new ways to protect and make Bitcoins safer, and keeping it as automated as possible.
monsterer
Legendary
*
Offline Offline

Activity: 1008
Merit: 1007


View Profile
August 15, 2013, 09:11:01 PM
Last edit: August 15, 2013, 09:44:11 PM by monsterer
 #11

I would be interested to read more on this subject.

I found this thread which is interesting, talks about physical security and hot wallets:

https://bitcointalk.org/index.php?topic=81341.0
ripper234 (OP)
Legendary
*
Offline Offline

Activity: 1358
Merit: 1003


Ron Gross


View Profile WWW
August 28, 2013, 07:34:39 AM
 #12

FYI, I just got approached by someone whose website was hacked, who asked me about security practices.
I referred him to this thread, but sadly it still doesn't contain any significant information, so I'd like to bump it again and ask anyone who built a website that handles Bitcoin to contribute from their experience.

You can contribute from your bad experience as well - if you built a website that was hacked, tell us what you did wrong so we can learn from it.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
CIYAM
Legendary
*
Offline Offline

Activity: 1890
Merit: 1086


Ian Knowles - CIYAM Lead Developer


View Profile WWW
August 28, 2013, 07:42:23 AM
 #13

In regards to *offline* safe storage (not normal day to day stuff).

As well as generating keys securely offline and using only air-gapped comms (via QR codes) I also use GPG to be able to safely keep copies of the private keys.

I put a set of tools for doing this into a Live Distro using Open SUSE here: http://susestudio.com/a/kp8B3G/ciyam-safe

(it isn't the most pretty system but it is about as secure as you can get)

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
ripper234 (OP)
Legendary
*
Offline Offline

Activity: 1358
Merit: 1003


Ron Gross


View Profile WWW
August 28, 2013, 07:44:07 AM
 #14

In regards to *offline* safe storage.

As well as generating keys securely offline and using only air-gapped comms (via QR codes) I also use GPG to be able to safely keep copies of the private keys.

I put a set of tools for doing this into a Live Distro using Open SUSE here: http://susestudio.com/a/kp8B3G/ciyam-safe

(it isn't the most pretty system but it is about as secure as you can get)

Interesting approach, thanks for sharing.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
gweedo
Legendary
*
Offline Offline

Activity: 1498
Merit: 1000


View Profile
August 28, 2013, 08:02:20 AM
 #15

I am about to reveal a huge trade secret here. I dumped bitcoind, in favor for bitcoinj and a jetty embedded web server, which only does read only operations to the site (get address, check balance, get confirmations). Then if you need to send bitcoins, write that into the program, using the timer class almost like cron so that is all automatic. Then I use the encrypt the wallet with a 40 character password, which is changed every month.

Basically write your own bitcoin client using libraries, that is the most secure way.
ripper234 (OP)
Legendary
*
Offline Offline

Activity: 1358
Merit: 1003


Ron Gross


View Profile WWW
September 06, 2013, 10:12:17 AM
 #16

I am about to reveal a huge trade secret here. I dumped bitcoind, in favor for bitcoinj and a jetty embedded web server, which only does read only operations to the site (get address, check balance, get confirmations). Then if you need to send bitcoins, write that into the program, using the timer class almost like cron so that is all automatic. Then I use the encrypt the wallet with a 40 character password, which is changed every month.

Basically write your own bitcoin client using libraries, that is the most secure way.

Yeah, that's a great idea.
We specifically deal in various alts, and I have yet to see a java-based library (or any, in fact) that handles them.
I think that our fastest and perhaps most scalable approach would be to use bitcoind/litecoind/namecoind directly.
This way we don't have to try and keep up with the newest alts, but can just use the existing daemon software.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
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!