Bitcoin и безопасность

Bitcoin и безопасность

Bitcoin и безопасность

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

В 2011 году американский эксперт систем компьютерной безопасности Дэн Камински (Dan Kaminsky) пытался взломать Bitcoin, но не смог найти уязвимости в системе. По мнению Дэна Камински, устойчивость к взлому системы «Биткойн» обусловлена тем, что при разработке изначально предусматривалась вероятность разнообразных атак, «в коде есть признаки, что аудит проводили люди вроде нас».

11 марта 2013 года после выхода версии 0.8 программы-клиента выявилась несовместимость формата блоков с предыдущей версией программы. Подобная несовместимость форматов регулярно встречается при разработке других программ и обычно решается методом обратной совместимости. Но в системе «Биткойн» программный модуль версии 0.7 отвергал блоки нового формата, что привело к разделению цепочки блоков на две параллельные, которые продолжали наращивать разные версии программы. Произошёл фактический раскол на две параллельные платёжные системы. Было принято решение срочно отказаться от версии 0.8. Примерно через семь часов версия «цепочки 0.7» стала стабильно превышать «цепочку 0.8», которая в соответствии с протоколом была отвергнута.

В системе «Биткойн» невозможно обжаловать и/или отменить транзакции, даже если будет доказано, что владелец о них не знал и не хотел их проводить. Если у пользователя будет украден пароль доступа и биткойны будут переданы на другой адрес, то потерпевший не сможет выяснить, кто это сделал, так как адрес получателя не содержит идентификационной информации. Также нет механизма гарантировать возврат платежа в случае, когда оплата произведена, но услуга или товар не получены. Этим пользуются мошенники.

Есть множество сообщений об использовании для воровства биткойнов ошибок и уязвимостей в сторонних системах. Ранее известная проблема генератора случайных чисел в ОС Android позволяет в некоторых случаях подобрать электронные ключи, в том числе для системы «Биткойн». В 2011 году была выявлена ошибка обработки неподтверждённых транзакций в системах бухгалтерского учёта многих сервисов обмена, которая позволяла произвести зачисление средств без передачи биткойнов. Игнорирование этой проблемы привело к банкротству Mt.Gox. Зафиксированы и другие взломы площадок обмена и пулов совместной добычи. В конце 2013 года с транзитных счетов подпольного магазина Sheep Marketplace было украдено 96 000 биткойнов, принадлежавших пользователям.

В апреле 2014 года Лаборатория Касперского сообщила о росте вирусных атак, направленных на кражи биткойнов, в том числе через воровство файлов с ключами (wallet.dat).

Биткойн-безопасность

С точки зрения Биткойн-безопасности выделяют 2 направления:

  1. Выполнение платежей.
  2. Блочный контроль.

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

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

Однако на практике майнеры объединяют свои усилия в «майнинговые пулы», чтобы чаще генерировать блоки. В майнинговом пуле один участник создает блок-кандидат, а остальные получают возможность «добывать» его. Если кто-либо из участников выигрывает, «добыча» распределяются между участниками пула. Это приводит к тому, что каждый участник получает вознаграждение чаще, но в меньшей сумме, как лотерейный синдикат. Такое сглаживание денежных потоков хорошо работает для окупаемости вложений, необходимых для покупки оборудования для майнинга. Как следствие, владельцы майнингового пула обладают большей властью над сетью биткойнов с точки зрения создания блоков, голосования по изменениям протокола и, возможно, перезаписи последних данных в регистре.

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

Ваша способность делать эту перетасовку увеличивается с помощью «мощности майнинга», но она уменьшается с возрастом блока, который вы пытаетесь заменить (чем старше блок, тем сложнее перезаписать), так как каждый блок «требует» определенного объёма мощности для создания, и вы конкурируете с остальной частью сети, чтобы создавать блоки.

Мошенничество. Трудно писать о безопасности биткойнов без упоминания Mt Gox, раннего обмена биткойнами. Биткойн-биржи — это сайты, на которые вы идете, чтобы покупать или продавать биткойны. Если вы хотите купить биткойны, сначала сделайте банковский перевод на банковский счет биржи. Когда они видят средства в своём банке, они позволяют вам делать заказы на покупку биткойнов у продавцов. Аналогичным образом, продавцы должны отправлять биткойны в кошельки для биткойнов обмена, прежде чем система обмена позволит им продать биткойны. Обмен действует как условное депонирование, удерживая деньги и биткойны, а затем освобождает их после совершения сделки.

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

Безопасно ли использование биткойн бумажников?

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

Как обезопасить использование своего бумажника?

Есть несколько способов сделать процесс использования вашего биткойн бумажника более безопасным:

Зашифровать кошелек (бумажник)

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

Делайте резервные копии

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

Используйте оффлайн («холодное») хранилище

Если вы побаиваетесь хранить биткойны в цифровом виде опасаясь хакеров, есть еще один способ: «холодное» хранение. Технически это хранение биткойнов в режиме оффлайн, когда ваш биткойн бумажник не имеет подключения к интернету. Это хорошая идея — хранить основную часть биткойнов в режиме оффлайн и если нужно немного потратить то сделать трансфер нужного количества на отдельный онлайн бумажник. Многие биткоин клиенты имеют опции создания «холодных» хранилищ. Также можно сделать полный аналог просто распечатав приватный ключ на бумаге и хранить эту информацию в безопасном месте. Есть сайты предлагающие услуги генерации бумажных биткойн кошельков. Они генерируют биткойн адресс и создают изображение содержащее два QR кода: один публичный адресс, который можно использовать для приема биткойнов. Второй — это приватный ключ, который может быть использован для того чтобы потратить биткойны, полученные на этот адрес.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

14 − 5 =