Bitcoin Forum
June 21, 2024, 08:29:59 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Bitcoin / Bitcoin Technical Support / Re: Encrypt Wallet on: July 27, 2014, 03:52:17 PM
I assume you are talking about the wallet.dat bitcoin core uses, other clients might work differently.

The wallet.dat contains (among other data) your private keys, thus it is essential for the security of yours coin that they are protected. The algorithm used is AES256 IIRC.

This will indeed make the file unreadable while encrypted.

Thanks a lot! But what is IIRC?
2  Bitcoin / Bitcoin Technical Support / Re: Encrypt Wallet on: July 27, 2014, 03:41:38 PM
It's complicated  Wink

The wallet.dat file itself is a set of key/value pairs in Berkeley DB BTREE v9 format. Most of it is not encrypted, except for certain values including the private keys themselves and the master key. More specifically:

A 32-byte random master key or "mkey" is generated using OpenSSL's RAND_bytes(). This PRNG is seeded by /dev/urandom on Linux or by CryptGenRandom() on Windows. Additionally on Windows, Bitcoin adds additional entropy from a screen shot and from Windows perfmon counters (possibly because OpenSSL didn't use CryptGenRandom() in early versions?).

The mkey is used as an encryption key to encrypt each individual Bitcoin private key using AES-256 in CBC mode with PKCS7 padding and an initialization vector of SHA-256(SHA-256(the respective public key)).

Your password, plus an 8-byte salt which is initially generated using RAND_bytes() and stored in wallet.dat, is fed into PBKDF1-SHA-512 (normal PBKDF1 doesn't use SHA-512) with a certain number of iterations (stored in wallet.dat) to generate 512 bits of derived key data. The iteration count is initially set such that it will take about 1/10th of a second to run the iterations on whichever CPU the password is added (or modified).

This derived data is divided into three parts. The first 256 bits are used as an encryption key, the next 128 bits are used as in initialization vector, and the remaining bits are discarded. This encryption key and initialization vector are then used to encrypt the mkey (again using using AES-256 in CBC mode with PKCS7 padding), and the encrypted mkey is stored in wallet.dat.

Upon a password change, only the encrypted mkey needs to be recomputed and written back to wallet.dat, while it's unencrypted value and all of the Bitcoin private keys which it encrypts remain unchanged.

This is exactly what I want to know. It is very helpful and thanks a lot!

But then I came up with a question (probably very silly), what if this wallet.dat file is manually being deleted, is there any backup itself ?
3  Bitcoin / Bitcoin Technical Support / Encrypt Wallet on: July 26, 2014, 08:26:56 AM
What do encrypt wallet actually do in the Bitcoin code?

More specifically, I am curious what it encrypts, what algorithm it use and the outcome of the encryption (maybe just a unreadable file?).

4  Other / Meta / Re: About the watchlist on: July 25, 2014, 02:42:15 PM
I am new to the forum and there's still a lot for me to digest.

I am interested in a few topics and intuitively add it to the watchlist. However, when I go into my watchlist I found nothing.

Later, I figure out that I can have a view of all my interested topic in the edit watchlist window. But I wonder if this is the right way to review them, I mean, I can accidentally delete them...

In my experience, when you open a post once it dissapears from the watchlist.
What I always do is to go to  Profile -> Show posts, and find the post I'm interested in. This works out better for me than the watchlist.
Sometimes I also bookmark a post in my browser.

This is good. Another way to access topics that you have posted. But it dedicated to my posts, not my watch list.

Anyway it is helpful and thanks.
5  Other / Meta / Re: About the watchlist on: July 25, 2014, 02:28:53 PM
When you put a topic in your watchlist, you can then, in "Edit watchlist" which you can find at the top left of the Watchlist section, see all the topics which you have watched in the past even if there is no new reply.

Guess I will go for the "Edit watchlist", it is well organised and I can actually control it. Just try to be careful not to delete things.
6  Other / Meta / About the watchlist on: July 25, 2014, 11:39:00 AM
I am new to the forum and there's still a lot for me to digest.

I am interested in a few topics and intuitively add it to the watchlist. However, when I go into my watchlist I found nothing.

Later, I figure out that I can have a view of all my interested topic in the edit watchlist window. But I wonder if this is the right way to review them, I mean, I can accidentally delete them...
7  Alternate cryptocurrencies / Announcements (Altcoins) / Re: [ANN] Storj - Decentralized Storage on: July 23, 2014, 10:02:44 AM
The idea sounds very interesting.

Will spend some time to go through the detail.
8  Bitcoin / Project Development / Re: Distributed trustless poker on: July 23, 2014, 09:55:39 AM
Would love to see your progress.
9  Bitcoin / Project Development / Re: Distributed/Decentralized Poker Proposal on: July 23, 2014, 09:48:05 AM
Regarding the decentralized poker implementation, there do have research paper showing that it works. However, to make it practical/ fast enough, it might not be that easy.

As for collusion, if you can pick a trusted host, you probably can pick the honest players.

There is a lot to resolve but with more and more people working on it, surely it will get better.
10  Bitcoin / Development & Technical Discussion / Re: The blockchain, charted on: July 18, 2014, 10:24:25 AM
Its worth taking a look.

It will be much better if more information or some analysis is presented along with the charts.
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!