Author

Topic: Визуальный генератор приватных ключей (Read 557 times)

legendary
Activity: 2436
Merit: 1849
Crypto for the Crypto Throne!
А что Вы думаете о таком визуальном инструменте? https://bitcointalksearch.org/topic/html-color-alphabet-5184864
Как по мне, довольно бесполезная штука, тем не менее у меня появилась парочка вопросов к ним, очень хотелось бы их задать, но к сожалению я не могу этого сделать, т.к. оказалось, что для этого я должен быть как минимум младшим членом.

ничего не думаю, потому что это инструмент не для генерации и шифрования а для упрощения передачи и хранения информации. Когда ты передаешь не 40 знаков адреса (160 бит - 20 байт - 40 знаков) а некую цветовую гамму, или же приватник хранишь не 64 знаками (60-66) а той же цветовой гаммой.

Вопросы я задавать не могу там, так как там локальное правило: без подписей.
А у тебя есть уже 5 меритов, через недельку другую ты сможешь сам вопросы задать.

P.S: уже шесть меритов, интересную тему ты скинул  Cheesy
jr. member
Activity: 32
Merit: 34
Вот, это много обсуждалось здесь - https://bitcointalksearch.org/topic/seed-5123995
Можешь приватный ключ хоть шифром Цезаря зашифровать, и обывалы никогда не поймут что там спрятано, что это за последовательность.
А что Вы думаете о таком визуальном инструменте? https://bitcointalksearch.org/topic/html-color-alphabet-5184864
Как по мне, довольно бесполезная штука, тем не менее у меня появилась парочка вопросов к ним, очень хотелось бы их задать, но к сожалению я не могу этого сделать, т.к. оказалось, что для этого я должен быть как минимум младшим членом.
Не мог бы я попросить Вас об услуге, задать эти вопросы от моего имени?
legendary
Activity: 2436
Merit: 1849
Crypto for the Crypto Throne!
Да, я понял. Фотография тещи беспорядочно кувыркающейся на батуте, сделанная в случайный момент времени = нарисованному сердечку

Нет, скорее = использовать свой день рождения как источник энтропии. Может никто в мире не знает твой день рождения, даже ты сам толком (у людей первой половины ХХ века такое часто было) и никто тебя и не взломает. Но факт один - это источник с очень низкой энтропией.

Заманчивая идея спрятать приваткей в одном из кадров индийского фильма или 3 страницы журнала здоровье 1979г. вполне даже секьюрно согласитесь?

Да, но здесь свои сложности. Притом их не мало. Начнем по порядку:
1. Где то надо хранить это. А вдруг потеряется? (с изображениями на компе вариант потерял/удалил очень вероятен)
Если же хранить в отдельной папочке "важное изображение" то это никакая не секретность и не защита

2. Надо помимо самого изображения также сохранить метод дешифрации. Тоесть, или оригинальное издание книги или оригинальный пакет программ (если для изображения) и еще надо помнить что и как применить и в каком порядке. Очевидно, что пакет программ может тоже потеряться. А надо именно оригинальный, там в Paint 2005го года была одна разметка, а в 2015м другая, и все, уже тот же приватный ключ не получится.

А человеческая память то слаба, и может так выйти что или мы храним дома изображение + путь дешифрации или мы боимся что-то забыть. Если первый вариант, то он по надежности не особо сильно отличается от записанного приватного ключа разделенного на две части, или 24 + слово сида, где например хранится 12, 12 и слово отдельно. Если не отличается, то зачем усложнять себе жизнь?

Возник вопрос: Как сохранить приваткей без стороннего носителя информации?
Буду благодарен если подскажите, есть ли такая тема на форуме? Если нет, давайте ее создадим.
Пока могу предложить только один вариант - это запомнить, но с учетом того на что способен человеческий мозг, боюсь секьюрность такого ключа будет близка нулю.  Grin

Вот, это много обсуждалось здесь - https://bitcointalksearch.org/topic/seed-5123995
Можешь приватный ключ хоть шифром Цезаря зашифровать, и обывалы никогда не поймут что там спрятано, что это за последовательность.
jr. member
Activity: 32
Merit: 34

В противовес этому, 256 подбрасываний монетки каждый раз будут давать совсем другое значение, понимаешь?

Да, я понял. Фотография тещи беспорядочно кувыркающейся на батуте, сделанная в случайный момент времени = нарисованному сердечку.
Меня больше заинтересовал этот способ, не как метод получения, а как метод хранения ключа. Заманчивая идея спрятать приваткей в одном из кадров индийского фильма или 3 страницы журнала здоровье 1979г. вполне даже секьюрно согласитесь?
Но в процессе размышлений я пришел к выводу, что ни ваша ни моя секьюрность ничего не стоит, потому что мы упираемся в носитель информации и не можем без него обойтись.
Возник вопрос: Как сохранить приваткей без стороннего носителя информации?
Буду благодарен если подскажите, есть ли такая тема на форуме? Если нет, давайте ее создадим.
Пока могу предложить только один вариант - это запомнить, но с учетом того на что способен человеческий мозг, боюсь секьюрность такого ключа будет близка нулю.  Grin
legendary
Activity: 2436
Merit: 1849
Crypto for the Crypto Throne!
А я, скорей всего так бы и сделал, все лучше чем монетку подбрасывать)
Даже представил на минуту, как на смертном одре говорю. -Дети мои. Помните ту фотографию? Так вот, преобразуйте ее в черно-белое 1-битное изображение, уменьшите до размера 16x16 пикселей. Это и будет ваше наследство.  Grin

Опять таки, ты меня не совсем понял. Твой вариант - это секрет, но с низкой энтропией. Так как нет влияния случая от слова совсем. Приватные ключи полученные таким образом имеют вполне предсказуемый вариант и низкую энтропию. По сути, твой вариант это ГПСЧ, так как имеется единственное начальное значение откуда и выводится все остальное.

В противовес этому, 256 подбрасываний монетки каждый раз будут давать совсем другое значение, понимаешь?

Твой способ рабочий пока никому не известен секрет, даже сам факт знания что ты использовал фотографии тещи и как то их преобразовал и получил на поле 16 Х 16 - приватный ключ это уже сильное оружие.

Ну а знание того, что ты 256 раз подбросил монетку и результат использовал как приваткей им ничего не дает.
jr. member
Activity: 32
Merit: 34

А если одну фотографию, то это получится не очень секьюрно. Особенно если этот кошелек дарить самой теще. Ну как, вероятность что взломают невероятно низкая в конкретном случае, но приучать себя к такому не стоит, обязательно попадешься как то. Особенно если биткоин станет массовым и популярным.
А я, скорей всего так бы и сделал, все лучше чем монетку подбрасывать)
Даже представил на минуту, как на смертном одре говорю. -Дети мои. Помните ту фотографию? Так вот, преобразуйте ее в черно-белое 1-битное изображение, уменьшите до размера 16x16 пикселей. Это и будет ваше наследство.  Grin
legendary
Activity: 2436
Merit: 1849
Crypto for the Crypto Throne!
Идея с тещей мне понравилась. Решил немного ее усовершенствовать. Cheesy
Берем фото любимой тещи, производим несколько манипуляций, практически в любом графическом редакторе (я использовал CorelDraw и Paint) и ключ готов. Кстати теща неплохой источник энтропии.




Нет, так делать не стоит, и фотографии не очень хороший источник энтропии. Если брать принять определенные цвета пикселей как 1 а другие как 0 (относительно некоторой черты разделения) и взять несколько фотографий, тогда да. Ну или что-то похожее.

А если одну фотографию, то это получится не очень секьюрно. Особенно если этот кошелек дарить самой теще. Ну как, вероятность что взломают невероятно низкая в конкретном случае, но приучать себя к такому не стоит, обязательно попадешься как то. Особенно если биткоин станет массовым и популярным.
jr. member
Activity: 32
Merit: 34

 Grin Походу нашел  подарок для тещи. Она в последнее время  о биткоинах стала много  расспрашивать. Пусть покупает и складывает туда свою денюшку, которую под  матрасом держит.


Идея с тещей мне понравилась. Решил немного ее усовершенствовать. Cheesy
Берем фото любимой тещи, производим несколько манипуляций, практически в любом графическом редакторе (я использовал CorelDraw и Paint) и ключ готов. Кстати теща неплохой источник энтропии.


legendary
Activity: 2317
Merit: 2318
Это шутка? Они использовали вложенную библиотеку Питона для генерации "рандома" ? Или может я что-то не понимаю, и где то ошибаюсь?

Почему Питона? Это же JavaScript, это всё в браузере выполняется. В любом случае - это игрушечная программа и ожидать от неё использования серьёзного PRNG не стоит.
legendary
Activity: 2436
Merit: 1849
Crypto for the Crypto Throne!

Это шутка? Они использовали вложенную библиотеку Питона для генерации "рандома" ? Или может я что-то не понимаю, и где то ошибаюсь?

P.S: JavaScript код кстати тоже не может создавать сильную энтропию, хотя он по умолчанию практически везде используется (даже у Яна Колемана в его BIP39)
legendary
Activity: 2317
Merit: 2318
Только надо бы посмотреть, что задействует для генерации псевдослучайных чисел.

Math.random()
Не является криптографически безопасным методом!
legendary
Activity: 2436
Merit: 1849
Crypto for the Crypto Throne!
Удобная утилита.

Чаще всего когда звучит аргумент "зато удобен" то забивается большой болт на собственно безопасность. Ну или я не совсем понял о чем ты

Там предусмотрен и рандом режим. Только надо бы посмотреть, что задействует для генерации псевдослучайных чисел.

Опять, я об этом в своем посте и писал. Если есть сильный источник энтропии, тогда все отлично. Если к примеру любитель подбросить монетку 256 раз, или у тебя есть дома адронный коллайдер, чтобы замерять квантовые флуктации, или же ты взял вольтметр и пошел замерять скачки напряжения в электро сети или посторонний шум в парочке аудио файлов. Ну или имеешь сильный РНГ который использует что-то из этого - тогда да, пользуйся на здоровье.

Главное не писать там слова в стиле "Саня лучший Босс" и прочее. А то скажешь биткам "пока пока" довольно скоро.
legendary
Activity: 2156
Merit: 1132
Идея внешне интересная, но я бы крайне не советовал пользоваться ею. Будет так же история что и с некогда известными passphrase.

напомню суть: бралось некое слово, или фраза, хэшировалось с помощью sha256 и использовалось как приватный ключ. Для компьютера подбор тоже не реальный. Но вот проблема: То, что защищает от компьютера может плохо подходить против человека, и наоборот.

Существуют словари подбора, существуют soft способы и многое другое.
Вот к примеру первый сайт в поиске предлагает словарь на миллиард с хвостиком слов - https://crackstation.net/crackstation-wordlist-password-cracking-dictionary.htm

Переделать эти слова на проверку визуальным генератором - нет ничего проще. А человеческий мозг - это очень плохой источник энтропии.

Использовать можно только в "режиме монеты" - вот мой вердикт. Если не верите мне, вот вам цитата из известного https://iancoleman.io/bip39/ генератора:

"Entropy values must be sourced from a strong source of randomness. This means flipping a fair coin, rolling a fair dice, noise measurements etc. Do NOT use phrases from books, lyrics from songs, your birthday or street address, keyboard mashing, or anything you think is random, because chances are overwhelming it isn't random enough for the needs of this tool".

Удобная утилита. Там предусмотрен и рандом режим. Только надо бы посмотреть, что задействует для генерации псевдослучайных чисел.
legendary
Activity: 2436
Merit: 1849
Crypto for the Crypto Throne!
Будет так же история что и с некогда известными passphrase.
Brainwallet?

Так и вправду наверное лучше, да.
Просто термин passphrase как я помню был изначальным, но после того как появился BIP 39 с его 25м словом то постоянно возникает путаница. Поэтому все таки да, мозговой кошелек - термин получше.
legendary
Activity: 1848
Merit: 2033
Crypto Swap Exchange
Будет так же история что и с некогда известными passphrase.
Brainwallet?
legendary
Activity: 2436
Merit: 1849
Crypto for the Crypto Throne!
Идея внешне интересная, но я бы крайне не советовал пользоваться ею. Будет так же история что и с некогда известными passphrase.

напомню суть: бралось некое слово, или фраза, хэшировалось с помощью sha256 и использовалось как приватный ключ. Для компьютера подбор тоже не реальный. Но вот проблема: То, что защищает от компьютера может плохо подходить против человека, и наоборот.

Существуют словари подбора, существуют soft способы и многое другое.
Вот к примеру первый сайт в поиске предлагает словарь на миллиард с хвостиком слов - https://crackstation.net/crackstation-wordlist-password-cracking-dictionary.htm

Переделать эти слова на проверку визуальным генератором - нет ничего проще. А человеческий мозг - это очень плохой источник энтропии.

Использовать можно только в "режиме монеты" - вот мой вердикт. Если не верите мне, вот вам цитата из известного https://iancoleman.io/bip39/ генератора:

"Entropy values must be sourced from a strong source of randomness. This means flipping a fair coin, rolling a fair dice, noise measurements etc. Do NOT use phrases from books, lyrics from songs, your birthday or street address, keyboard mashing, or anything you think is random, because chances are overwhelming it isn't random enough for the needs of this tool".
legendary
Activity: 2744
Merit: 1588

 Grin Походу нашел  подарок для тещи. Она в последнее время  о биткоинах стала много  расспрашивать. Пусть покупает и складывает туда свою денюшку, которую под  матрасом держит.


А Вы коварный  Grin
hero member
Activity: 1358
Merit: 635

поэтому используйте эти ключи только ...... для ..... подарков  другим.



 Grin Походу нашел  подарок для тещи. Она в последнее время  о биткоинах стала много  расспрашивать. Пусть покупает и складывает туда свою денюшку, которую под  матрасом держит.

legendary
Activity: 1974
Merit: 4715
Это визуальный генератор закрытых ключей биткойнов.

Квадрат 16x16 (= 256) используется для генерации, где каждая ячейка представляет один бит. Идея состоит в том, что заполненная ячейка представляет бит равный «1» , а не заполненная ячейка представляет бит равный «0» в ключе. Такой способ позволяет создавать визуальные ключи, которые могут быть легко запомнены человеком, но едва различимы для компьютеров. Вы можете рисовать картинки, логотипы, рисунки, любимые символы и так далее. Вы также можете создавать свои собственные узоры и конструкции и использовать их в качестве своего ключа. Преимущество такого способа в том, что вы можете «сохранить» этот ключ в памяти, просто взапомнив рисунок.

Существует также возможность генерировать ключ в "режиме монеты". Известно, что наиболее безопасный способ генерирования ключа биткойнов - это подбрасывать монету 256 раз и записывать каждый результат как 1 или 0 в зависимости от стороны монеты. Визуальный генератор закрытых ключей может помочь вам в этом. Просто начните подбрасывать монету и заполняйте ячейки построчно от 1x1 до 16x16, и после 256 результатов у вас будет бессмысленная «картинка», представляющая ваш уникальный закрытый ключ. Вы можете быть уверены, что никто в мире никогда не генерировал такой же ключ или не сгенерировал бы его в будущем. Вероятность такого совпадения настолько мала, что она действительно равна 0 для всех настоящих и  будущих поколений.

Все приватные ключи генерируются на стороне клиента, в браузере. Сайт не копирует и не сохраняет сгенерированную информацию. Но для большей безопасности рекомендуется скачать весь сайт и сгенерировать ключ в автономном режиме.


Визуальный генератор закрытых ключей: https://btckeygen.com


Структура проекта:


Code:
1) index.html               ---> основной файл HTML с объектами и ссылками на скрипты и стили
2) css/visualPrivKey.css    ---> таблица стилей
3) js/visualPrivKeyMain.js  ---> основной скрипт с вычислениями
4) js/bitcoinJS-lib.js      ---> BitcoinJS-lib v0.1.3-default (формулы ECDSA)
5) js/QRcode.js             ---> Генератор QR-кода для JavaScript

На картинках показаны примеры ключей и их визуализация из проекта:

1) Шаблон 1 и соответствующий ключ + адрес (сжатый):


2) Шаблон 2 (сердце) и его ключ + адрес (несжатый):


3) Визуализация пользовательского ключа HEX (ключ был взят из общего доступа в  Интернете, и он соответствует несжатому адресу BTC с транзакциями):


ПРЕДУПРЕЖДЕНИЕ. Шаблон / логотип / фигура, используемые при генерации биткойн-ключа, могут быть уязвимы, поэтому используйте эти ключи только в образовательных целях, для развлечений или  подарков  другим.
Для хранения реальных денег используйте рандомный режим, чтобы заполнить каждый бит вашего ключа случайными символами, переворачивая монету 256 раз..


Это перевод, оригинал принадлежит   MrFreeDragon

Jump to: