<p>Don't use a sha512 brainwallet generator like bitaddress.org to generate your brainwallet. Many people have lost their money by doing so.</p>

<p>Instead use a more secure salted scrypt like <a href="https://keybase.io/warp/" rel="nofollow noreferrer" title="warpwallet">warpwallet</a>.</p>

<p>For Ethereum, I made a warpwallet implementation <a href="https://dvdbng.github.io/memwallet/" rel="nofollow noreferrer" title="memwallet">here</a>, that is available as a web version and as a go executable. For extra security you should generate the addresses offline. </p>

CC BY-SA 3.0
2017-11-11T06:41:19.803Z
Thanks @David I read some problems with brain wallets. As far as I understood, it is because people used not secure passphrase. I chose something complicated and "not human". I was not too sure from the article...Am I safe? In case I chose some weird passphrase to generate the keys, am I safe? Thanks!
Yura
CC BY-SA 3.0
2017-11-12T11:00:02.520Z
@Yura If you choose the passphrase in a random way (e.g. by using a dice), have a big alphabet (upper and lower case letters, numbers, symbols..) and it's long enough (20+ characters for the sha512 brainwallet, 8+ characters for the salted warpwallet) the it's safe.

If the passphrase you choose just looks random but it really isn't (e.g. you used the first letters of each word of a obscure song) then it's not safe.

Using a harder algorithm and salt makes an attach orders of magnitude harder, is easy and there is no reason not to do it.
David Bengoa
CC BY-SA 3.0
2017-11-11T06:31:37.473Z
2017-11-12T10:58:31.813Z
2017-11-12T10:58:31.813Z
David Bengoa
<p>The approach below is very flexible because it applies not only to Ethereum but other cryptos as well that follow the BIP 32,39 and 44 Hierarchical Deterministic (HD) wallet standards. Because the BIP 39 Mnemonic conversions inherently applies Password Based Key Derived Function 2 (PBKDF2) that uses 2048 rounds of HMAC-SHA512 hashing that will partially compensate for poorly chosen brain wallets with little entropy. </p>

<p>Obviously, your brain wallet phrase, your BIP 39 seed words, and your BIP 39 Passphrase should be kept private, and all operation should be performed on an offline trusted computer.</p>

<p>Step 2 calculates the BIP 44 private key path for Ethereum, <strong>m/44'/60'/0'/0/0</strong>.
Results for Step 3 can be easily validated by configuring a Trezor with the BIP 39 seed words provided below and a BIP 39 Passphrase. (Ledger wallets use a different non-standard HD path for Ethereum.)    </p>

<p><strong>1. Computing BIP 39 seed words from from what should be a complex brain wallet:</strong></p>

<p><code>% echo -n "This is how you can create a BIP 39 brain wallet that is applied to Ethereum" | bx base16-encode | bx sha256 | bx mnemonic-new</code></p>

<p><strong><code>game bless rather reward fun person negative manage walnut blanket normal swamp glue garbage deer flip immense assault sponsor matter ethics scare cushion loop</code></strong></p>

<p>See <a href="https://github.com/libbitcoin/libbitcoin-explorer/wiki/bx-mnemonic-new" rel="nofollow noreferrer"><strong>mnemonic-new</strong></a> for details for using bitcoin-explorer commands.</p>

<p><strong>2. Computing the first of billions of Ethereum HD Wallet Private Keys, m/44'/60'/0'/0/0:</strong></p>

<p>% echo "game bless rather reward fun person negative manage walnut blanket normal swamp glue garbage deer flip immense assault sponsor matter ethics scare cushion loop" | bx mnemonic-to-seed <strong>-p "Your private HD Passphrase"</strong> | bx hd-new | bx hd-private -d -i 44 | bx hd-private -d -i 60 | bx hd-private -d -i 0 | bx hd-private -i 0 | bx hd-private -i 0 | bx hd-to-ec</p>

<p><strong><code>469225ff5a9fe8eea420568657792a2a1beb313db2dba607bdc59661f058c376</code></strong></p>

<p><strong>3. Computing the associated address for the private key:</strong></p>

<p>% echo -n 469225ff5a9fe8eea420568657792a2a1beb313db2dba607bdc59661f058c376 | bx ec-to-public -u | sed 's/^..//' | ./kec | cut -c 25-64</p>

<p><strong><code>d3de5bec3f1947563af2f0512bdf9d793225089a</code></strong></p>

CC BY-SA 4.0
2019-01-24T17:07:26.760Z
2019-01-27T19:16:52.753Z
2019-01-27T19:16:52.753Z
skaht
<p>This is a fork of warp wallet with the ability to generate ethereum and other coins using your passphrase. It's meant to be memory and time intensive to prevent brute force guessing.</p>

<p>fyi, i'm the creator of it. If that gives you a piece of mind. ;)</p>

<p><a href="https://xcubicle.github.io/memorypaperwallet/" rel="nofollow noreferrer">https://xcubicle.github.io/memorypaperwallet/</a></p>

<p><a href="https://i.sstatic.net/KwVjy.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/KwVjy.png" alt="enter image description here"></a></p>

CC BY-SA 4.0
2019-01-24T17:28:12.317Z
2019-01-24T17:28:12.317Z
Patoshi パトシ
<p>I have used <a href="http://1LXAn7gdA91z5eWoV9U5BdKDxWXZcgM8rM" rel="nofollow noreferrer">bitaddress.org</a> to create a brain wallet for my Bitcoin.
Now I would like to create a brain wallet for my Ethereum using Bitcoin Improvement Proposals (BIP) 32/39/44/49 technologies. Is there any reputable tool (preferably similar to bitaddress.org) or open source command line tools I can use to generate a brain address for Ethereum?</p>

<p>Thank you all</p>

CC BY-SA 4.0
2019-01-24T18:50:19.690Z
I'm voting to close this question as off-topic because it would be better asked on the Ethereum stackexchange.
G. Maxwell
<address><ethereum><address-generation><coldstorage><brain-wallet>
How to create Ethereum brain address?
Yura
# How to create Ethereum brain address?

(Asked by: username_0 on 2017-11-10)

I have used [bitaddress.org](http://1LXAn7gdA91z5eWoV9U5BdKDxWXZcgM8rM) to create a brain wallet for my Bitcoin.
Now I would like to create a brain wallet for my Ethereum using Bitcoin Improvement Proposals (BIP) 32/39/44/49 technologies. Is there any reputable tool (preferably similar to bitaddress.org) or open source command line tools I can use to generate a brain address for Ethereum?

Thank you all

**Tags:** address, ethereum, address-generation, coldstorage, brain-wallet

> **Comments:**
> **username_1**: I'm voting to close this question as off-topic because it would be better asked on the Ethereum stackexchange.  

---

## 3 answers

### Answer by username_2 on 2017-11-11. Score: 1

Don't use a sha512 brainwallet generator like bitaddress.org to generate your brainwallet. Many people have lost their money by doing so.

Instead use a more secure salted scrypt like [warpwallet](https://keybase.io/warp/ "warpwallet").

For Ethereum, I made a warpwallet implementation [here](https://dvdbng.github.io/memwallet/ "memwallet"), that is available as a web version and as a go executable. For extra security you should generate the addresses offline.

> **Comments:**
> **username_0**: Thanks @username_2 I read some problems with brain wallets. As far as I understood, it is because people used not secure passphrase. I chose something complicated and "not human". I was not too sure from the article...Am I safe? In case I chose some weird passphrase to generate the keys, am I safe? Thanks!  
> **username_2**: @username_0 If you choose the passphrase in a random way (e.g. by using a dice), have a big alphabet (upper and lower case letters, numbers, symbols..) and it's long enough (20+ characters for the sha512 brainwallet, 8+ characters for the salted warpwallet) the it's safe.  If the passphrase you choose just looks random but it really isn't (e.g. you used the first letters of each word of a obscure song) then it's not safe.  Using a harder algorithm and salt makes an attach orders of magnitude harder, is easy and there is no reason not to do it.  

---

### Answer by username_3 on 2019-01-24. Score: 0

The approach below is very flexible because it applies not only to Ethereum but other cryptos as well that follow the BIP 32,39 and 44 Hierarchical Deterministic (HD) wallet standards. Because the BIP 39 Mnemonic conversions inherently applies Password Based Key Derived Function 2 (PBKDF2) that uses 2048 rounds of HMAC-SHA512 hashing that will partially compensate for poorly chosen brain wallets with little entropy.

Obviously, your brain wallet phrase, your BIP 39 seed words, and your BIP 39 Passphrase should be kept private, and all operation should be performed on an offline trusted computer.

Step 2 calculates the BIP 44 private key path for Ethereum, **m/44'/60'/0'/0/0**.
Results for Step 3 can be easily validated by configuring a Trezor with the BIP 39 seed words provided below and a BIP 39 Passphrase. (Ledger wallets use a different non-standard HD path for Ethereum.)

**1. Computing BIP 39 seed words from from what should be a complex brain wallet:**

`% echo -n "This is how you can create a BIP 39 brain wallet that is applied to Ethereum" | bx base16-encode | bx sha256 | bx mnemonic-new`

**`game bless rather reward fun person negative manage walnut blanket normal swamp glue garbage deer flip immense assault sponsor matter ethics scare cushion loop`**

See [**mnemonic-new**](https://github.com/libbitcoin/libbitcoin-explorer/wiki/bx-mnemonic-new) for details for using bitcoin-explorer commands.

**2. Computing the first of billions of Ethereum HD Wallet Private Keys, m/44'/60'/0'/0/0:**

% echo "game bless rather reward fun person negative manage walnut blanket normal swamp glue garbage deer flip immense assault sponsor matter ethics scare cushion loop" | bx mnemonic-to-seed **-p "Your private HD Passphrase"** | bx hd-new | bx hd-private -d -i 44 | bx hd-private -d -i 60 | bx hd-private -d -i 0 | bx hd-private -i 0 | bx hd-private -i 0 | bx hd-to-ec

**`469225ff5a9fe8eea420568657792a2a1beb313db2dba607bdc59661f058c376`**

**3. Computing the associated address for the private key:**

% echo -n 469225ff5a9fe8eea420568657792a2a1beb313db2dba607bdc59661f058c376 | bx ec-to-public -u | sed 's/^..//' | ./kec | cut -c 25-64

**`d3de5bec3f1947563af2f0512bdf9d793225089a`**


---

### Answer by username_4 on 2019-01-24. Score: 0

This is a fork of warp wallet with the ability to generate ethereum and other coins using your passphrase. It's meant to be memory and time intensive to prevent brute force guessing.

fyi, i'm the creator of it. If that gives you a piece of mind. ;)

<https://xcubicle.github.io/memorypaperwallet/>

[![enter image description here](https://i.sstatic.net/KwVjy.png)](https://i.sstatic.net/KwVjy.png)


---

