Представьте, что ваши деньги лежат в банке на особенном счету. Особенность счета состоит в том, что даже банк не имеет доступа к вашим деньгам, потому что счет зашифрован и никто кроме вас не знает пароля. И так как Биткоин никакой не банк, а распределенная сеть компьютеров, то ваш счет нельзя даже просто стереть вместе со всеми деньгами.
Теперь представьте что ваш счет находится в Биткоин-кошельке на вашем компьютере. Конечно же вы защитите кошелек паролем, чтобы в случае кражи или взлома, добраться до его содержимого было бы не просто. Кроме того, на случай кражи компьютера, вы конечно же сделали резервную копию кошелька и храните эти данные на флешке в запертом сейфе. Теперь вы боитесь не только за компьютер, но и за сейф, который также могут взломать.
Теперь представьте, что вы знаете какую-то очень длинную фразу, которая настолько уникальна, что могла бы прийти в голову только вам. Эта фраза — это даже не пароль к вашему кошельку, а сам адрес кошелька и заодно приватный ключ к нему. Приватный ключ от Биткоин-кошелька — это 64 символа из набора A-F и цифр 0-9, и, наверное, не существует на свете ни одного человека, кроме какого-нибудь одаренного мнемониста, способного запомнить его. Фразу на человеческом языке запомнить, напротив, легко, а при помощи криптографических преобразований можно получить вполне себе (на вид) случайный ключ. До тех пор, пока сохраняются два необходимых обязательных условия: вы помните ключевую фразу и эту ключевую фразу никто во всем мире кроме вас не знает — можете смело перевести деньги на подобный кошелек, а жесткий диск с программой-кошельком отправить под пресс.
Описанная уникальная фраза и есть, так называемый “умственный кошелек” или “brainwallet”. Создать его просто. На сайте brainwallet.org в поле “Passphrase” введите свою уникальную фразу, а в поле “Address” увидите адрес кошелька, на который уже можно переводить деньги. Приватный ключ в поле “Private Key” вам понадобится в будущем, когда вы вновь захотите получить доступ к кошельку — просто придется ввести ту же самую фразу еще раз и получившийся ключ проимпортировать в кошелек (например Coinbase позволяет сделать это).
Хочется добавить, что фраза должна быть действительно уникальной и не предсказуемой, но при этом вы должны быть уверены, что способны ее запомнить. Например, фраза “О сколько нам открытий чудных готовит просвещенья дух.”, которую я привел на скриншоте в качестве примера, ни в коем случае не годится. Все, подобного рода отрывки, цитаты и шаблонные выражения будут в первую очередь использованы хакерами для атаки по словарю. К примеру, в этой ветке на reddit, пользователь жалуется, что его 4 BTC были украдены из его “умственного кошелька”, потому что при его создании использовался отрывок из некой поэмы. То, что эта поэма написана на языке африкаанс хакеров не остановило.
User
Уточнюсь. То есть достаточно для ошибки чтобы Passphrase совпали у двух пользователей?
coinsideru
Да, если Passphrase совпадет у двух пользователей, то оба они получат одинаковые ключи от одинакового адреса. Но, букв много, а слов еще больше, поэтому хоть теоретически это совпадение может иметь место, практически действительно случайный набор слов совпасть у двух людей “не может”. Здесь “не может” означает настолько малую вероятность, которую в теории вероятностей и криптографии называют “negligible”.
Вам не обязательно запоминать ряд слов, из которых можно получить ключи. Вы можете сгенерировать и сразу запомнить цифры самого приватного ключа, как если бы это был очень длинный телефонный номер. Есть много техник, но самая известную описал русский невролог Александр Лурия: наблюдавшийся им Мнемонист запоминал любое количество цифр при помощи ассоциаций. Этот метод доступен и простым людям. Вот, например, описано здесь http://www.superidea.ru/intel/mem/dom4.htm