Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
25 февраля 2011, 6:26:07 PM   # 1
 
 
Сообщения: 294
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Я кросс проводки это из потока в службе технической поддержки, а также GitHub вопросов, но я думал, что он может получить еще некоторые взгляды здесь.

Предположим, что мы зашифровать ключи с открытым ключом отдельного закрытого ключа. Это закрытый ключ шифруется с помощью симметричного алгоритма, чей ключ получается из парольной фразы. Я считаю, что это, как работает GnuPG. Когда мы храним этот зашифрованный ключ в бумажнике, мы также хранить ссылки на соответствующий закрытый ключ. (Или, возможно, есть его в другом месте в файловой системе ... USB-накопитель? Смарт-карты? Брелока?) С помощью этой функциональности, мы могли бы подсказать пользователю ввести пароль один раз и расшифровать несколько ключей. Это также означает, что бумажник можно разделить на виртуальные разделы с различными ключами шифрования. Я думаю, что это позволило бы плавный переход, но это будет иметь обратную совместимость? [1]

Вот как я представляю себе, взаимодействуя с этим. Я хотел бы сохранить небольшое количество Bitcoin в незашифрованном виде. Это позволяет мне легко провести небольшое количество, обеспечивая при этом не потеряет много, если мое устройство скомпрометировано (хорошо для мобильных устройств). Я могу легко шифрования / расшифровки ключей, введя целевую сумму "перевод", Фактическое количество определяется путем выбора клавиши с операциями (выходов?) Суммированием приблизительно мишени [2]. Для того, чтобы тратить больше, чем в открытом виде, я должен ввести один (или более) ключевых фраз, а остальное автоматизирован.

[1] Может ли структура бумажника быть модифицирована для зашифрованных ключей и ссылок на шифрование секретного ключа, не вызывая разрывное изменение?

[2] Вы не можете разделить вывод транзакции без записи в блок цепи, не так ли?
BitterTea сейчас офлайн Пожаловаться на BitterTea   Ответить с цитированием Мультицитирование сообщения от BitterTea Быстрый ответ на сообщение BitterTea


Как заработать Биткоины?
Без вложений. Не майнинг.


25 февраля 2011, 6:28:15 PM   # 2
 
 
Сообщения: 1526
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Получил 1806 Биткоинов
Реальная история.





Я не уверен, что это должно сделать. Если я могу Троянской машину я все еще могу украсть все ваши монеты. Если я не могу Троянской вашу машины, как получить доступ к вашему кошельку?
Майк Хирн сейчас офлайн Пожаловаться на Mike Хирн   Ответить с цитированием Мультицитирование сообщения от Mike Хирн Быстрый ответ на сообщение Mike Хирн

25 февраля 2011, 6:42:33 PM   # 3
 
 
Сообщения: 294
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Я не уверен, что это должно сделать. Если я могу Троянской машину я все еще могу украсть все ваши монеты. Если я не могу Троянской вашу машины, как получить доступ к вашему кошельку?

Для ясности, я буду ссылаться на закрытые ключи для использования с Bitcoin как BPKs. Любые другие ключи упоминаться те, которые используются для шифрования / дешифрования BPKs.

Используя эту реализацию, я мог бы создать три уровня безопасности для моего кошелька.

Уровень 0 имеет незашифрованный BPKs. Доступ к моему кошельку достаточно, чтобы потратить эти монеты.
Уровень 1 имеет BPKs зашифрованы с GnuPG-подобной схеме, как описано выше, они зашифрованы закрытый ключ, хранящийся в бумажнике. В дополнение к доступу к моему кошельку, моя ключевая фраза требуется потратить эти монеты.
Уровень 2 такой же, как уровень 1, за исключением того, зашифрованная закрытый ключ хранится на смарт-карты или USB-накопителя. В дополнении к моей ключевой фразе и доступу к моему кошельку, аппаратное устройство хранения ключа необходимо потратить эти монеты.

Я мог бы просто быть с моим рокером, но это, кажется, довольно элегантно решить некоторые из проблем, связанные с паролем шифруется секретными ключами.
BitterTea сейчас офлайн Пожаловаться на BitterTea   Ответить с цитированием Мультицитирование сообщения от BitterTea Быстрый ответ на сообщение BitterTea

26 февраля 2011, 10:01:29 AM   # 4
 
 
Сообщения: 1526
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Правильно, план начинает работать на шаге 3, где ты "требуется аппаратное устройство, чтобы тратить монеты", На практике, что это означает, что вы хотите реализацию Bitcoin, которая работает на (несколько) безопасных аппаратных средствах, или по крайней мере, аппаратным средствам, которые менее вероятно, чем рабочий стол / сервер ПК, как то, что Bitcoin использует сегодня.

Это важный проект, хотя. Я спорил для использования смартфонов, чтобы сделать это на некоторое время теперь, и я медленно работаю в этом направлении. Другие устройства тоже возможно.

Просто шифровать ваш кошелек на вашем компьютере или даже хранение ключей на диске USB не работает, потому что мой троян может просто сидеть, ждать, пока ваша копия Bitcoin не запускается, и вы используете "отправить монеты" UI затем переписать адрес и сумму, которую вы хотите отправить после вы нажмете кнопку OK, но до того, как транзакция будет создана. Такие трояны не сложны. Если есть риск вообще ваш компьютер может получить взломан, вы не можете использовать Bitcoin безопасно сегодня (или, вернее, вы можете, но вы полагаетесь на неизвестность проекта, чтобы защитить вас). Это ключевая проблема, которую мы должны решить, как с помощью телефонов.
Майк Хирн сейчас офлайн Пожаловаться на Mike Хирн   Ответить с цитированием Мультицитирование сообщения от Mike Хирн Быстрый ответ на сообщение Mike Хирн

26 февраля 2011, 10:39:02 AM   # 5
 
 
Сообщения: 1372
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

мой троян может просто сидеть, ждать, пока ваша копия Bitcoin не запускается, и вы используете "отправить монеты" UI затем переписать адрес и сумму, которую вы хотите отправить после вы нажмете кнопку OK, но до того, как транзакция будет создана.

Конечно, что воровать все еще возможно, но я уверен, что шифрование бумажник может препятствовать сценарий детишки атаковать как "Бумажник средство резервного копирования" Несколько дней назад. Я считаю, что _you_ способны написать троян меняющийся GUI, но почему мы уезжаем дверь открытой для каждых воров собираются вокруг?

котировка
Такие трояны не сложны.

Открыть замок двери или окна перерыва очень легко сделать. Stilll, это обескуражить большинство людей ходить в ваш дом. Это не так совершенна, как живут в сейфе, но окна & Дверь соответствует потребностям 99% людей.

слякоть сейчас офлайн Пожаловаться на слякоть   Ответить с цитированием Мультицитирование сообщения от слякоти Быстрый ответ на сообщение слякоть

26 февраля 2011, 6:01:42 PM   # 6
 
 
Сообщения: 1652
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Я много думал и пытался обучить себя на передовой практике для обеспечения Bitcoin кошелька.

Часть раствора может быть смарт-карта, которая поддерживает ECDSA; PKCS # 11 Стандарт поддерживает эллиптическую криптографию ключа, поэтому целесообразно иметь аппаратный маркер, который хранит ваши личные ключей и никогда не позволяет их из маркеров.

Если маркер включает в себя некоторый тип биометрической идентификации (например, встроенный считыватель отпечатков пальцев или механизм для ввода пароля), то нет никакого способа для троян подделать новые сделки.

Но [микрофон] является right--, если ваш компьютер заражен трояном троянца может просто переписать адрес Bitcoin и количество прежде, чем программа запрашивает аппаратный маркер для подписи платежной операции. Единственный способ предотвратить это, если аппаратный маркер может каким-то образом показать детали сделки независимо от зараженного компьютера. Это один очень сложный аппаратный маркер ...

Надеюсь, Hal и bitcoinex теперь расскажите нам, как все это было решено лет назад и каким образом iPhone приложение синхронизируется с немым иш смарт-карты может использовать смарт-криптографию, чтобы заставить все это работать ....
Гэвин Андресен сейчас офлайн Пожаловаться на Гэвин Андресен   Ответить с цитированием Мультицитирование сообщения от Gavin Andresen Быстрый ответ на сообщение Гэвин Андресен

26 февраля 2011, 6:22:51 PM   # 7
 
 
Сообщения: 1232
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Я написал эту программу,
https://github.com/genjix/sekureco/blob/master/sekureco

Вместе с сервисом резервного копирования облака (см WWW),
https://github.com/genjix/sekureco

Мне нужно чтобы кто-то ветеринар безопасности мной объяснить, что он делает. Мне также нужно очистить код (комментарии, организации, в соответствии именование), но сейчас он шифрует / резервное копирование на сервер.

Для интеграции внутри Bitcoin клиента.

./ Sekureco это инструмент командной строки, вы можете работать с инструкциями справки. Смотрите также ReadME.

Она работает с использованием симметричного шифрования для бумажника файла (AES) и шифрования ключа AES с использованием асимметричного алгоритма шифрования (RSA).

Для стороны сервера резервного копирования, вы загружаете (только один раз) ваш RSA KeyPair + зашифрованный ключ AES. Сервер отвечает с 40 символов длинного случайного идентификационного кода, который затем используется для загрузки шифрованные бумажники. Если клиент хочет сделать резервную копию своего кошелька они нуждаются в ID, чтобы загрузить последнюю версию. Если пользователь правильно вводит пропуск в RSA пару ключей они могут скачать ключи или ID (который может быть использован для извлечения зашифрованных бумажников или загрузки новых версий). Если угадать проход неправильно, то функциональные возможности восстановления для этой учетной записи заблокирован в течение 10 часов.
genjix сейчас офлайн Пожаловаться на genjix   Ответить с цитированием Мультицитирование сообщения от genjix Быстрый ответ на сообщение genjix

26 февраля 2011, 6:36:26 PM   # 8
 
 
Сообщения: 1526
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

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

На современных телефонах приложения изолированы друг от друга. Наступление я описываю с UI фальсификации не представляется возможным. IOS по крайней мере (не уверен Android) поддерживает шифрование файлов таким образом, чтобы они расшифрованные только тогда, когда экран разблокирован с паролем телефонов. Он использует PBKDF2 с 50k итераций, по-видимому, и ключ устройства смешивают в так брут не представляется возможным. Это означает, что ваш бумажник является безопасным, если ваш телефон украли.

Существуют различные атаки возможны. Наиболее очевидным является корневые эксплойты на самих телефонах, если есть локальный корневой эксплойт то плохое приложение, которое вы можете установить еще украсть ваш кошелек, пока операционная система не будет исправлена. Но, по крайней мере, это не небезопасно, по-дизайн, как Mac / Linux / Windows является и локальными корневыми подвиги не так часто встречаются на этих устройствах. Различные третья сторона "джейлбрейка" Атаки могут быть использованы вредоносными программами на компьютере, чтобы прыгать пробел на свой телефон, вы можете решить, что с помощью телефона, который требует протерты побег из тюрьмы его (как One / S линии Nexus) или просто не подключить устройство в ненадежный компьютер. Будущее облако основе синхронизации в любом случае, я в принципе никогда не подключить мой телефон в свой ноутбук в эти дни, как он синхронизирует все через WiFi.

Если у вас есть кошелек, что вы действительно хотите защитить, смартфон, который вы не устанавливать случайные приложения, вы не просматривать веб-страницы с и никогда не подключен к ПК 99% безопасным, как в волшебной Bitcoin конкретного оборудования маркер будет, и стоимость этих устройств быстро падает.
Майк Хирн сейчас офлайн Пожаловаться на Mike Хирн   Ответить с цитированием Мультицитирование сообщения от Mike Хирн Быстрый ответ на сообщение Mike Хирн

26 февраля 2011, 6:46:55 PM   # 9
 
 
Сообщения: 247
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Специально для пользователей Windows, я вижу только один твердый раствор в настоящее время: Загрузочный USB палку с Bitcoin установлен. Ничего другого, но Bitcoin, зависимость и инструмент для клонирования этого к другому USB флэшки. Вы хотите, чтобы положить свои сбережения там? Вы знаете адрес. Если вы хотите потратить, вы должны перезагрузить с USB флешки.

Внимание:
* Никогда не поставить эту палку в компьютер, работающий под окнами или любой другой. Вы кладете его только в машине, выключен, то вы начинаете его.
* Вы готовите, что палка не из ваших окон работает, но, например, от убунту LiveUSB / LiveCD (Afair нужны программы есть)

У меня уже есть что-то подобное для собственного использования, я думал о подготовке что-то для массового использования, но у меня есть много проектов, в настоящее время, и делает это не выгодно (извините, я такой ..., во всяком случае щедроты приветствуются) Это также нетривиальный убедить об этой вещи подлинности и безопасности. Я просто не могу предоставить вам ISO с этим, потому что тогда вы никогда не можете знать, если я не переключился некоторые двоичные файлы с чем-то умным.
comboy сейчас офлайн Пожаловаться на comboy   Ответить с цитированием Мультицитирование сообщения от comboy Быстрый ответ на сообщение comboy

26 февраля 2011, 10:11:31 PM   # 10
 
 
Сообщения: 1652
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

...Наиболее очевидным является корневые эксплойты на самих телефонах, если есть локальный корневой эксплойт то плохое приложение, которое вы можете установить еще украсть ваш кошелек, пока операционная система не будет исправлена. Но, по крайней мере, это не небезопасно, по-дизайн, как Mac / Linux / Windows является и локальными корневыми подвиги не так часто встречаются на этих устройствах.

Угу ... хранить много Bitcoins на обычно-подключенной к сети устройства сделало бы меня очень нервным. Я думаю, что мы будем видеть много смартфонов подвигов в течение следующих 5 лет (может быть, я буду приятно удивлен, и получится, что смартфон люди OS проделали большую работу, что делают их безопасными).

Но безопасность не является логическим, и мы четко должны делать то, что мы можем, чтобы помочь людям сохранить свои Bitcoin бумажники безопасности.
Гэвин Андресен сейчас офлайн Пожаловаться на Гэвин Андресен   Ответить с цитированием Мультицитирование сообщения от Gavin Andresen Быстрый ответ на сообщение Гэвин Андресен

1 марта 2011, 5:29:38 AM   # 11
 
 
Сообщения: 868
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Я написал эту программу,
https://github.com/genjix/sekureco/blob/master/sekureco

Вместе с сервисом резервного копирования облака (см WWW),
https://github.com/genjix/sekureco

Мне нужно чтобы кто-то ветеринар безопасности мной объяснить, что он делает. Мне также нужно очистить код (комментарии, организации, в соответствии именование), но сейчас он шифрует / резервное копирование на сервер.

Для интеграции внутри Bitcoin клиента.

./ Sekureco это инструмент командной строки, вы можете работать с инструкциями справки. Смотрите также ReadME.

Она работает с использованием симметричного шифрования для бумажника файла (AES) и шифрования ключа AES с использованием асимметричного алгоритма шифрования (RSA).

Для стороны сервера резервного копирования, вы загружаете (только один раз) ваш RSA KeyPair + зашифрованный ключ AES. Сервер отвечает с 40 символов длинного случайного идентификационного кода, который затем используется для загрузки шифрованные бумажники. Если клиент хочет сделать резервную копию своего кошелька они нуждаются в ID, чтобы загрузить последнюю версию. Если пользователь правильно вводит пропуск в RSA пару ключей они могут скачать ключи или ID (который может быть использован для извлечения зашифрованных бумажников или загрузки новых версий). Если угадать проход неправильно, то функциональные возможности восстановления для этой учетной записи заблокирован в течение 10 часов.

Я очень заинтересован в этой функции ... если вы загрузите пару ключей RSA и AES зашифрованный ключ, не сервер, то есть все необходимое для дешифрования бумажник? Это не было бы хорошо. Вот что я думаю, что я хотел бы сделать:

Во-первых, я думаю, что поддержка в официальном клиенте для резервного кошелька является абсолютным должно быть. С точки зрения пользователя, они бы запустить клиент, введите данные один раз для поставщика услуг резервного копирования кошелек, все шифрование будет сделано в официальном клиенте (только сильно шифрованные бумажники когда-либо отправлены поставщику услуг резервного копирования). Пользователь должен только ввести доменное имя для резервного копирования службы по своему выбору (я оставлю дизайн для выставления счетов из этого поста на данный момент ... в основном потому, что я надеюсь, что эта услуга будет предлагаться бесплатно первоначально в то время как Bitcoin завоевывает все большую популярность ... но и потому, что я не дал ему какой-либо мысли). После того, как пользователь вводит имя домена для службы по своему выбору, он будет обратиться в службу и получить уникальный идентификатор для резервного копирования (этот идентификатор будет использоваться для восстановления и пользователь должен быть проинструктирован, чтобы сохранить этот идентификатор в безопасном месте в случае, если они когда-нибудь понадобится, чтобы получить доступ к резервной копии для целей восстановления). Я предлагаю просто используя идентификатор, чтобы служба не должны осуществлять какие-либо создания учетной записи и такие, и пользователь не должен пройти через этот процесс (однако, другой альтернативы можно было бы использовать адрес электронной почты пользователей и делает электронное письмо с подтверждением ... что бы свести к минимуму риск пользователя забывания назначенного резервного идентификатора).

Теперь для шифрования бумажника. Я хотел бы спросить у пользователя пароль и обеспечить некоторую базовую минимальную энтропию и пароль силы. Затем взять пароль и применить криптографический хэш с солью (т.е. SHA256) с получением производного пароля, скажем, 24 байт в длину. Это ключ, который будет использоваться для шифрования бумажника с AES-256. Зашифрованный кошелек передается на сервер с помощью SSL (который использует публичные крипто ключ). Сервер может зашифровать еще раз для хранения на диске (в случае, если кто-то получает доступ к файлам на сервере).

Клиент будет автоматически резервное копирование на сервер каждый раз, когда создается новый Bitcoin адрес (запрос пароля пользователя, если они еще не вошли в него, но, вспомнив, сервер и идентификатор / данные электронной почты). Пароль пользователя никогда не будет храниться на диске.

Восстановление потребует сервера назначается идентификатор кошелька (или адрес электронной почты), чтобы получить резервный бумажник и пользователю необходимо поддерживать свой пароль (который будет хэш, чтобы получить ключ AES-256 для дешифрования).

Примечание: Я понимаю, что хэширования пароля с солью на самом деле не добавляет много дополнительной защиты против грубой атаки силой пароля, если злоумышленник знает, соль и хэш-алгоритм (примечание, для немногих дополнительной безопасности, соль может быть полученный от сервера и быть различными для каждой учетной записи ... злоумышленнику необходимо будет знать, что соль поколения метод сервер использует). Если злоумышленник не знает алгоритм хэширования или соль, то хэш обеспечивает более длительный, и, следовательно, более безопасным, ключ шифрования.

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

Одним из возможных вариантов я думал об этом, но отбрасываются, чтобы использовать GPG авторизацию для проверки подлинности с помощью службы и для безопасного хранения долго, генерируется ключ AES на клиентской машине. Однако это имеет тот недостаток, опираясь на локальном хранилище, чтобы сохранить ключи, необходимые для аутентификации и дешифрования (а затем вам потребуется решение для резервного копирования этого файла, а также !!!).

Обратите внимание, локально хранить кошелек должен быть также AES-256 зашифрованные на диске ... тот же пароль (с хэшированием и посолом) может быть использован для ключа шифрования. Это позволит пользователю ввести один пароль при запуске, чтобы расшифровать локальный кошелек ... и хэш в ключ для шифрования резервной копии. Пароль пользователя будет только в памяти временно для создания этих хэш (тем самым снижая риск кражи этого пароля из памяти ... хотя хэш, используемый для шифрования резервных копий будет по-прежнему находиться в памяти).
Стив сейчас офлайн Пожаловаться на Steve   Ответить с цитированием Мультицитирование сообщения от Steve Быстрый ответ на сообщение Steve

1 марта 2011, 9:33:49 AM   # 12
 
 
Сообщения: 1232
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Я написал эту программу,
https://github.com/genjix/sekureco/blob/master/sekureco

Вместе с сервисом резервного копирования облака (см WWW),
https://github.com/genjix/sekureco

Мне нужно чтобы кто-то ветеринар безопасности мной объяснить, что он делает. Мне также нужно очистить код (комментарии, организации, в соответствии именование), но сейчас он шифрует / резервное копирование на сервер.

Для интеграции внутри Bitcoin клиента.

./ Sekureco это инструмент командной строки, вы можете работать с инструкциями справки. Смотрите также ReadME.

Она работает с использованием симметричного шифрования для бумажника файла (AES) и шифрования ключа AES с использованием асимметричного алгоритма шифрования (RSA).

Для стороны сервера резервного копирования, вы загружаете (только один раз) ваш RSA KeyPair + зашифрованный ключ AES. Сервер отвечает с 40 символов длинного случайного идентификационного кода, который затем используется для загрузки шифрованные бумажники. Если клиент хочет сделать резервную копию своего кошелька они нуждаются в ID, чтобы загрузить последнюю версию. Если пользователь правильно вводит пропуск в RSA пару ключей они могут скачать ключи или ID (который может быть использован для извлечения зашифрованных бумажников или загрузки новых версий). Если угадать проход неправильно, то функциональные возможности восстановления для этой учетной записи заблокирован в течение 10 часов.

Я очень заинтересован в этой функции ... если вы загрузите пару ключей RSA и AES зашифрованный ключ, не сервер, то есть все необходимое для дешифрования бумажник? Это не было бы хорошо. Вот что я думаю, что я хотел бы сделать:
Да, но это необходимый компромисс для людей, которые не являются неопытными пользователями. Если они теряют свои ключи.

котировка
Во-первых, я думаю, что поддержка в официальном клиенте для резервного кошелька является абсолютным должно быть. С точки зрения пользователя, они бы запустить клиент, введите данные один раз для поставщика услуг резервного копирования кошелек, все шифрование будет сделано в официальном клиенте (только сильно шифрованные бумажники когда-либо отправлены поставщику услуг резервного копирования). Пользователь должен только ввести доменное имя для резервного копирования службы по своему выбору (я оставлю дизайн для выставления счетов из этого поста на данный момент ... в основном потому, что я надеюсь, что эта услуга будет предлагаться бесплатно первоначально в то время как Bitcoin завоевывает все большую популярность ... но и потому, что я не дал ему какой-либо мысли). После того, как пользователь вводит имя домена для службы по своему выбору, он будет обратиться в службу и получить уникальный идентификатор для резервного копирования (этот идентификатор будет использоваться для восстановления и пользователь должен быть проинструктирован, чтобы сохранить этот идентификатор в безопасном месте в случае, если они когда-нибудь понадобится, чтобы получить доступ к резервной копии для целей восстановления). Я предлагаю просто используя идентификатор, чтобы служба не должны осуществлять какие-либо создания учетной записи и такие, и пользователь не должен пройти через этот процесс (однако, другой альтернативы можно было бы использовать адрес электронной почты пользователей и делает электронное письмо с подтверждением ... что бы свести к минимуму риск пользователя забывания назначенного резервного идентификатора).

Теперь для шифрования бумажника. Я хотел бы спросить у пользователя пароль и обеспечить некоторую базовую минимальную энтропию и пароль силы. Затем взять пароль и применить криптографический хэш с солью (т.е. SHA256) с получением производного пароля, скажем, 24 байт в длину. Это ключ, который будет использоваться для шифрования бумажника с AES-256. Зашифрованный кошелек передается на сервер с помощью SSL (который использует публичные крипто ключ). Сервер может зашифровать еще раз для хранения на диске (в случае, если кто-то получает доступ к файлам на сервере).

Клиент будет автоматически резервное копирование на сервер каждый раз, когда создается новый Bitcoin адрес (запрос пароля пользователя, если они еще не вошли в него, но, вспомнив, сервер и идентификатор / данные электронной почты). Пароль пользователя никогда не будет храниться на диске.
Наведение нового пароля после каждого отправить или новый адрес сделан будет раздражать. Может быть, это может быть сделано как PokerStars- они имеют нормальный ввод пароля для входа в систему (с возможностью сохранения пароля), но вы также можете обновить до ввода ключевого маркера устройства RSA. Может быть, мы могли бы смотреть на выпуск тех, для Bitcoin пользователей, которые хотят больше безопасности за небольшую плату.

котировка
Восстановление потребует сервера назначается идентификатор кошелька (или адрес электронной почты), чтобы получить резервный бумажник и пользователю необходимо поддерживать свой пароль (который будет хэш, чтобы получить ключ AES-256 для дешифрования).

Примечание: Я понимаю, что хэширования пароля с солью на самом деле не добавляет много дополнительной защиты против грубой атаки силой пароля, если злоумышленник знает, соль и хэш-алгоритм (примечание, для немногих дополнительной безопасности, соль может быть полученный от сервера и быть различными для каждой учетной записи ... злоумышленнику необходимо будет знать, что соль поколения метод сервер использует). Если злоумышленник не знает алгоритм хэширования или соль, то хэш обеспечивает более длительный, и, следовательно, более безопасным, ключ шифрования.

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

Одним из возможных вариантов я думал об этом, но отбрасываются, чтобы использовать GPG авторизацию для проверки подлинности с помощью службы и для безопасного хранения долго, генерируется ключ AES на клиентской машине. Однако это имеет тот недостаток, опираясь на локальном хранилище, чтобы сохранить ключи, необходимые для аутентификации и дешифрования (а затем вам потребуется решение для резервного копирования этого файла, а также !!!).

Да, и я не люблю возиться с ключами пользователя либо.

котировка
Обратите внимание, локально хранить кошелек должен быть также AES-256 зашифрованные на диске ... тот же пароль (с хэшированием и посолом) может быть использован для ключа шифрования. Это позволит пользователю ввести один пароль при запуске, чтобы расшифровать локальный кошелек ... и хэш в ключ для шифрования резервной копии. Пароль пользователя будет только в памяти временно для создания этих хэш (тем самым снижая риск кражи этого пароля из памяти ... хотя хэш, используемый для шифрования резервных копий будет по-прежнему находиться в памяти).

Звучит довольно всеобъемлющий и лучше, чем то, что я сделал. Может кто-нибудь увидеть точку отказа в этой схеме?
genjix сейчас офлайн Пожаловаться на genjix   Ответить с цитированием Мультицитирование сообщения от genjix Быстрый ответ на сообщение genjix

1 марта 2011, 12:50:57 PM   # 13
 
 
Сообщения: 868
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

котировка
котировка
Я очень заинтересован в этой функции ... если вы загрузите пару ключей RSA и AES зашифрованный ключ, не сервер, то есть все необходимое для дешифрования бумажник? Это не было бы хорошо. Вот что я думаю, что я хотел бы сделать:
Да, но это необходимый компромисс для людей, которые не являются неопытными пользователями. Если они теряют свои ключи.

Я лично никогда не использовал бы такую ​​услугу, если бы я знал, что кто-то имел возможность расшифровывать мой бумажник. Я думаю, что люди должны быть обязаны предпринять необходимые шаги, чтобы помнить (или хранить в сейфе где-то) их бумажник пароль, это самая безопасная практика и защищает их и услуги, которые держат очень ценные данные. Пользовательский интерфейс может сделать это очень понятно пользователю (если они потеряли или забыли свой пароль, их бумажник ушел навсегда). Обратите внимание, я думаю о схемах расщепления до зашифрованном виде их пароля и хранение его на три отдельные услуги ... или с использованием открытого ключа трех таких служб резервного копирования для шифрования ключа таким образом, чтобы требовать услуг по координации с друг с другом, если восстановление необходимо. Я думаю, что что-то вдоль этих линий все еще может быть возможно, но могут быть добавлены позже, если действительно необходимо, но я бы абсолютно дизайн, чтобы быть необязательными и поставляются с оговорками и предупреждения, которые вы даете людям средство доступа к содержимому своего кошелька с помощью обмен такой информации.


котировка
Наведение нового пароля после каждого отправить или новый адрес сделан будет раздражать. Может быть, это может быть сделано как PokerStars- они имеют нормальный ввод пароля для входа в систему (с возможностью сохранения пароля), но вы также можете обновить до ввода ключевого маркера устройства RSA. Может быть, мы могли бы смотреть на выпуск тех, для Bitcoin пользователей, которые хотят больше безопасности за небольшую плату.

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

Кстати, я хотел упомянуть, что я могу помочь с кодировкой (мой IRC ручка gasteve), если вы хотите помочь. Я думаю, что получение этого права имеет важное значение, и это облегчит для мирян, чтобы иметь уверенность в хранении значительных сумм Bitcoin в своих кошельках.

Постскриптум Клиент должен также проверить резервные копии после загрузки с помощью повторной загрузки, расшифровки и проверки содержимого. А возможность резервного копирования на два или более услуги должна быть включена в клиенте (для дополнительной избыточности) и, возможно, даже по умолчанию.
Стив сейчас офлайн Пожаловаться на Steve   Ответить с цитированием Мультицитирование сообщения от Steve Быстрый ответ на сообщение Steve

1 марта 2011, 10:27:04 PM   # 14
 
 
Сообщений: 35
Цитировать по имени
цитировать ответ
по умолчанию Re: Идеи для зашифрованного реализации бумажника

Специально для пользователей Windows, я вижу только один твердый раствор в настоящее время: Загрузочный USB палку с Bitcoin установлен. Ничего другого, но Bitcoin, зависимость и инструмент для клонирования этого к другому USB флэшки. Вы хотите, чтобы положить свои сбережения там? Вы знаете адрес. Если вы хотите потратить, вы должны перезагрузить с USB флешки.

Внимание:
* Никогда не поставить эту палку в компьютер, работающий под окнами или любой другой. Вы кладете его только в машине, выключен, то вы начинаете его.
* Вы готовите, что палка не из ваших окон работает, но, например, от убунту LiveUSB / LiveCD (Afair нужны программы есть)

У меня уже есть что-то подобное для собственного использования, я думал о подготовке что-то для массового использования, но у меня есть много проектов, в настоящее время, и делает это не выгодно (извините, я такой ..., во всяком случае щедроты приветствуются) Это также нетривиальный убедить об этой вещи подлинности и безопасности. Я просто не могу предоставить вам ISO с этим, потому что тогда вы никогда не можете знать, если я не переключился некоторые двоичные файлы с чем-то умным.

Я использую этот метод для всех моих банковских операций. У меня есть Puppy Linux 5.2 на SD карту 2GB, что я подключить к адаптеру USB. Преимущества этого один раз настроить так, как вы хотите, чтобы переключатель защиты от записи хорошо, чтобы остановить что-либо нежелательное записываются на SD-карту. И Puppy Linux работает полностью в оперативной памяти на хостинг ПК, устройства не установлены, что дает очень высокий уровень безопасности, на мой взгляд. Я только начинаю экспериментировать с Bitcoin на него, и он работать нормально мне просто нужно, чтобы получить все процедуры рассортированные но очень многообещающие. Существует даже 1 Гб осталась, чтобы сохранить резервные копии вашего кошелька.
Пугало сейчас офлайн Пожаловаться на Пугало   Ответить с цитированием Мультицитирование сообщения от Страшила Быстрый ответ на сообщение Пугало



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW