Вернуться   Биткоин Форум > Обслуживание Обсуждение
7 сентября 2012, 5:34:16 PM   # 1
 
 
Сообщения: 428
Цитировать по имени
цитировать ответ
по умолчанию Re: Безопасная сделка Обработка для обмена

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


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

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

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

1. Сервер будет иметь 256-битный AES ключ, полученный из пароля и соли. Это не будет храниться в любом месте системы.
   а. Пароль нужно будет предоставить при запуске приложения для "начальная загрузка" приложение и сгенерировать ключ.

2. Сервер будет иметь 2048-битный RSA ключ, который он будет использовать для подписания сделок в системе.
   а. Открытый ключ будет храниться в виде обычного текста в файле конфигурации.
   б. Закрытый ключ будет храниться в зашифрованном виде в файле конфигурации, используя AES ключ сервера.

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

4. Каждый пользователь будет иметь 2048-битный RSA ключ, связанный с его учетной записью и хранится в базе данных.
   а. Открытый ключ будет храниться в базе данных в виде простого текста.
   б. Закрытый ключ будет храниться в базе данных зашифрованы с использованием ключа AES пользователя.
   с. Когда пароль пользователя изменяется или сброс, новый ключ RSA будет создан для пользователя.
      я. Старый ключ RSA будет оставаться в силе для сделок, созданных до даты был создан новый ключ. Это должно гарантировать, что в процессе производства
         операции (приказы, изъятие и т.д.), которые были подписаны со старым ключом все еще может быть обработано.
   д. Ассоциация ключа к пользователю будет цифровая подпись сервера (хэш идентификатора пользователя + зашифрована закрытый ключ + открытый ключ + временная метка).
      я. Это позволяет предотвратить пользователь доступ к базе данных от несанкционированного доступа с помощью ключа или связать свой собственный ключ к другому пользователю
          для того, чтобы фальсифицировать подписанные сделки от этого пользователя.

5. Пользователь сможет отправить запрос, подписанный Bitcoin вывода.
   а. Запрос будет подписан с закрытым ключом хэша пользователя из (ID + идентификатор пользователя + количество + решения + временную метку)
      я. Само по себе это уязвимо от атак. См 6 (б) для решения, чтобы уменьшить этот риск.

6. просит на самом деле будет обработан другим приложением + bitcoind работает на отдельной машине с межсетевым экраном всех входящих портов заблокирован и доступ только через консоль.
   а. Перед обработкой запроса, приложение будет проверять подпись запроса.
      я. Расчетный хэш (ID + идентификатор пользователя + количество + обратиться + временной меткой) в запросе совпадает подписан хэш.
      II. Ключ, используемый для подписи запроса на самом деле принадлежит пользователю, связанные с запросом.
      III. Ключ, используемый для подписи запроса был действительным, как метки времени по требованию.

   б. Приложение обработки будет держать отдельную локальную базу данных с идентификаторами всех обрабатываемых транзакций. 
      я. Перед обработкой транзакции, он будет сначала проверить, что сделка не была уже обработана. 
      II. Если бы это было, то сделка будет отклонена. Это необходимо для защиты от атак.

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

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


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


7 сентября 2012, 6:38:50 PM   # 2
 
 
Сообщения: 2002
Цитировать по имени
цитировать ответ
по умолчанию Re: Безопасная сделка Обработка для обмена

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





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

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

7 сентября 2012, 6:49:56 PM   # 3
 
 
Сообщения: 428
Цитировать по имени
цитировать ответ
по умолчанию Re: Безопасная сделка Обработка для обмена

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

-MarkM-


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



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW