Все о безопасности блокчейн
Все о безопасности блокчейн
Благодаря возросшему интересу к биткоину и другим криптовалютам, технология блокчейн начинает пользоваться все более широким спросом и известностью. Блокчейн – это крайне универсальное изобретение, а его предполагаемое применение выходит далеко за пределы IT-сферы.
Заслуженно ли данная система считается чуть ли не идеальной для проведения самых различных операций, либо мы упускаем какую-то важную информацию?
Как работает технология блокчейн
Давайте начнем с краткого описания того, как работает эта технология и как вообще блокчейн развивался в течение последних нескольких лет. По сути, он представляет собой некую цифровую книгу учета, которая дублируется на тысячи компьютеров и распределяет информацию между ними. Такие компьютеры называются «узлами».
У каждого пользователя есть публичный и приватный ключ – оба ключа являются безопасными и защищены шифрованием. Они позволяют совершать определенный набор действий в системе. Предположим, два пользователя хотят совершить обмен посредством валюты, например, биткоина. Один из пользователей при помощи своих публичного и приватного ключей запускает процесс транзакции, а другой, также используя свои ключи, подтверждает действие. В результате подобных совместных действий транзакция передается на рассмотрение в публичную одноранговую систему.
На этом этапе один из участков целой системы проверяет информацию о транзакции. Это делается для того, чтобы удостовериться, что данные совпадают с уже имеющейся информацией. Иначе говоря, в том случае, если проверяющие информацию узлы подтвердят, что запустившая транзакцию сторона на самом деле не обладает той криптовалютой, которую она пытается использовать для передачи, тогда транзакция будет отклонена. Если же информация о наличии средств подтвердится, то транзакция будет одобрена и станет новым «блоком» в цепи.
Главные принципы безопасности
Вам наверняка всегда было интересно, почему же блокчейн считается настолько безопасной системой? Ведь работающие подобным образом технологии – далеко не новинка. Да и, казалось бы, совместные действия пользователей, происходящие в цифровой среде, могут быть отслежены злоумышленниками.
По сути, подобные опасения более чем разумны. И именно они являются одной из причин настолько значительных скачков курса биткоина.
Основные особенности системы защиты блокчейна
Давайте рассмотрим основные особенности, благодаря которым система считается защищенной.
Основой технологии блокчейн является электронный реестр всех финансовых транзакций. Как правило, такие электронные «бухгалтерские книги» являются одной из главных точек уязвимости. Если злоумышленники получат доступ к главному реестру записей, то это может привести к полнейшему «падению» системы, ведь, получив доступ к записям, злоумышленник может украсть неограниченную сумму денег либо овладеть какой-либо личной информацией, просто просмотрев список транзакций.
В блокчейне реестр записей является децентрализованным – это означает, что одиночный компьютер или система не могут получить контроль над всей «бухгалтерской книгой». А значит, для того, чтобы получить доступ к главному реестру записей, понадобилось бы организовать невероятно сложную и четко скоординированную операцию, согласно которой в один момент тысячи устройств были бы атакованы одновременно.
Другим принципом, обеспечивающим исключительную безопасность, является сама цепь транзакций. Главный реестр записей представляет собой длинную цепочку последовательных блоков. Каждый блок, входящий в данную цепь, является лишь частью общей структуры, которая берет свое начало от самой первой произведенной в данной системе операции.
Это значит, что любому, кто решит изменить информацию об одной транзакции, перед этим придется крайне аккуратно и точно изменить все записи, ведущие к этой транзакции. Исходя из чего, предполагаемое вмешательство выглядит крайне сложным процессом, что также является одним из плюсов в построении безопасности блокчейна.
Другие элементы системы безопасности
Кроме того, есть также и другие элементы, обеспечивающие защиту блокчейна.
Более двух пользователей подтверждают и обеспечивают безопасность проводимой транзакции. Даже в большинстве современных процессинговых систем в проверке задействованы только несколько уровней верификации – как правило, это продавец, покупатель и какие-то третьи лица (чаще всего банк или кредитное агентство).
Однако в системе блокчейна существует от нескольких сотен до нескольких тысяч различных узлов, на каждом из которых хранится полная копия реестра записей. Поэтому любой из этих узлов также может участвовать в проверке транзакции, и если узел по каким-то причинам не принимает транзакцию, то она будет отменена. Подобный расклад почти до минимума снижает возможность создания ложной или мошеннической транзакции.
Криптографические ключи, используемые системой в обменных процессах, также являются чудом современной кибербезопасности. Каждый зашифрованный ключ представляет собой длинную, сложную последовательность данных, практически не поддающуюся расшифровке. А если учесть, что для подтверждения требуются два таких уникальных ключа, то система начинает выглядеть чуть ли не неприступной крепостью. При этом считается, что блокчейн обладает уникальной системой безопасности, потому что при подобном уровне защиты в нем удается сохранить почти полную прозрачность транзакций.
Самые незащищенные места
Но, как уже говорилось, даже блокчейн не идеален. У него, как и у любой другой системы, есть слабые места. Так что, если вы планируете использовать криптовалюту и вкладывать в неё свои средства, или если вам в будущем придется иметь дело с блокчейном, то просто необходимо знать и понимать потенциально уязвимые места технологии. Поэтому постарайтесь запомнить следующие особенности, касающиеся безопасности данной технологии:
Если вы решите создать систему на основе технологии блокчейн с нуля, то одна небольшая ошибка может стать фатальной и «положить» всю вашу разработку. Конечно же, это нельзя считать недостатком самого блокчейна – это, скорее, касается особенностей его использования. Кроме того, среднестатистическому человеку намного труднее разобраться в блокчейне из-за его сложности, что, в свою очередь, означает, что многие не до конца понимают риски, связанные с использование системы, а также не полностью используют доступный функционал.
Для работы блокчейна необходимы как минимум несколько сотен, а еще лучше несколько тысяч согласованно работающих узлов. Именно из-за этого система является крайне уязвимой к атакам на начальных этапах работы. К примеру, если какой-либо пользователь сможет получить контроль над 51% узлов системы, то он сможет полностью контролировать результат работы. А если в системе всего 20 узлов, то подобный вариант развития событий более чем возможен.
- Скорость и эффективность сети
Структура блокчейна – это также одна из причин, по которой может быть нарушено нормальное функционирование системы. Так, если система получит слишком широкое распространение, а инфраструктура блокчейна окажется не готовой к такому объему операций, то в результате может снизиться скорость проведения транзакций, могут появиться проблемы с хранением данных, а это все не лучшим образом повлияет на эффективность сети.
Хоть и нельзя сказать, что данный пункт напрямую связан с безопасностью блокчейна, но политика системы может повлиять на ее применение и дальнейшее развитие. Учитывая то, что валюта в системе блокчейн является международной и децентрализованной, это, по сути, обесценивает национальную валюту, контролируемую государством. И, естественно, на данный момент управляющие органы некоторых государств стремятся ввести более строгие ограничения на использование блокчейна. Правительства разных стран надеются взять систему под контроль до того, как она станет серьезным конкурентом и начнет угрожать их экономике. Косвенным образом это также является существенной угрозой безопасности блокчейна, которая может значительно замедлить распространение технологии.
К примеру, NiceHash – сторонний рынок для майнинга биткоина – был не так давно взломан, в результате чего было украдено криптовалюты на более чем 60 миллионов долларов. Как оказалось, данная платформа была небезопасной. То есть, это не ошибка безопасности самой системы блокчейн. Скорее, наоборот, киберпреступники получили доступ к системе NiceHash при помощи блокчейна.
- При транзакциях в системе blockchain используются публичные и приватные криптографические ключи
Сами по себе такие ключи взломать почти невозможно, однако киберпреступник может получить их более простым и привычным способом. Например, ключи можно достать в том случае, если вы храните их на небезопасной или слабозащищенной платформе. Так, если кто-то взломает ваш почтовый ящик, то он сможет получить доступ ко всем вашим письмам, а значит, и к ключам вашего профиля в блокчейне. В таком случае злоумышленник сможет завладеть вашими средствами, выдав себя за вас. И это один из главных вопросов, касающихся безопасности системы.
- Традиционные мошеннические уловки
Пользователи системы также могут попасться на другие, более традиционные уловки мошенников. По сути, такие мошеннические схемы не считаются слабым местом в системе безопасности блокчейна. Так, к примеру, вы можете получить электронное письмо, в котором незнакомый вам человек будет убеждать вас, что именно вы стали тем счастливчиком, который выиграл что-то значительное. Либо же мошенники могут предложить вам потратить вашу криптовалюту на какой-то товар или услугу, которую вы никогда не получите.
Можно ли действительно назвать блокчейн защищенным?
Можно ли теперь, рассмотрев все эти пункты, с уверенностью сказать, что блокчейн – это защищенная и безопасная система?
Скорее, стоит сделать вывод, что система будет функционировать должным образом в том случае, если использовать ее правильно и аккуратно. Также стоит иметь в виду, что ее безопасность зависит от наличия достаточного количества пользователей, а многие бреши в безопасности появляются банально из-за человеческого фактора. Поэтому не стоит забывать, что у любой системы есть слабые места, и блокчейн совсем не исключение из этого правила.
WHATTONEWS
Главное о биткоине, альткоинах и майнинге криптовалют.
Копирование материалов только с указанием источника — WHATTONEWS.RU
Как защитить данные в блокчейне: Шесть принципов безопасности
Блокчейн рекламируют как одну из самых безопасных технологий, в которой применяется высокая степень шифрования данных, почти полностью защищающая их от несанкционированного и недобросовестного изменения. Несмотря на это, угрозы безопасности существуют. Их можно избежать, если придерживаться приведённых ниже принципов.
1. Хранение криптографических контрольных сумм данных
Вместо того чтобы хранить исходный контент непосредственно в блокчейне, в идеале надо следовать принципу зеркального хранения данных, когда в сети находится только криптографическая контрольная сумма (или зеркальное изображение). В таком случае значения хеша исходных данных соответствует этим зеркальным данным.
2. Безопасное хранение криптографических ключей
Доступ к блокчейну регулируется с помощью приватных криптографических ключей. Разумеется, они должны храниться в безопасном месте и не попадаться на глаза мошенникам, да и просто посторонним. Сохранение их в обычных текстовых файлах или использование в незашифрованном виде на устройствах угрожает безопасности, ведь злоумышленники могут получить доступ к ключам посредством шпионских программ. Не делайте этого, если вам дороги ваши данные.
3. Настройки защиты против взлома блокчейна с помощью грубой силы и атак 51%
Децентрализация блокчейна, о которой постоянно говорят, вызывает сомнения: так, незначительное количество крупных майнеров контролируют большую часть блокчейн-сетей биткоина и эфириума, самых известных криптовалют. Если консорциумы майнеров каким-либо образом получат достаточную вычислительную мощность, они смогут взять сеть под контроль при помощи грубой силы и изменить хранящиеся в ней данные. Хотя однозначно надёжная система защиты от таких угроз пока не выработана, способы предотвращения атак 51% есть. Это переход от более уязвимого консенсусного алгоритма Proof-of-Work к Proof-of-Stake, повышение количества необходимых подтверждений и другие методы.
4. Проверка качества кода блокчейн-сети
Код блокчейна требует контроля со стороны экспертов, и масштабируемость сети также стоит проверить до того, как доверять ей какую-либо информацию. Некачественный код создаёт угрозы, которых легко избежать, если вовремя провести тестирование.
Блокчейн как способ улучшить кибербезопасность
Одним из преимуществ блокчейна являются надежное хранение и передача данных. Неудивительно, что данную технологию рассматривают как новую основу для кибербезопасности. О том, как блокчейн может обеспечить защиту информации и предотвратить хакерские атаки, читайте в следующей статье.
Обеспечение мировой кибер-безопасности за последние несколько лет стало настоящей проблемой. И, судя по количеству и масштабу недавних хакерских атак, ситуация становится только хуже.
Несмотря на то, что хакеры активно развиваются в своем ремесле, способов борьбы с ними становится все больше и больше. На самом деле, уже существует непроницаемая для хакеров технология блокчейн, которая может защитить информацию от кибер-атак и повысить уровень кибер-безопасности во многих индустриях.
Блокчейн-технология 001
Блокчейн-технология появилась примерно десять лет назад, и изначально она была создана как основа для первой криптовалюты – биткоина. Однако технология уже распространилась по всему миру: люди внедряют блокчейн во многие индустрии, включая сферу кибер-безопасности.
Что такое блокчейн?
Блокчейн – это распределённая публичный реестр, работающий за счет миллионов пользователей по всему миру, подключенных к одной сети. Каждый пользователь может добавлять информацию в блокчейн, который защищен криптографией. Также каждый пользователь обязан проверить новую информацию на достоверность (proof of work) прежде, чем добавить ее в цепь. Весь процесс осуществляется при помощи трех ключей: публичного, приватного и ключа получателя. Эти ключи позволяют участника цепи проверять подлинность информации.
Мы публиковали множество статей о том, что такое блокчейн и где он может быть полезен – предлагаем вам более подробно ознакомиться с принципами работы данной технологии, пройдя по этой ссылке.
Как GuardTime использует блокчейн для защиты данных
GuardTime уже сегодня успешно использует технологию для обеспечения безопасности информации. Более того, компания не использует ключи для верификации информации. Вместо этого они распределяют фрагменты данных между узлами сети. Если кто-то пытается изменить информацию, система анализирует весь массив цепи, сравнивает с пакетом метаданных и исключает те блоки информации, которые не совпадают. Это означает, что стереть всю цепь можно только единственным способом – удалить каждый узел цепи по отдельности. Если даже всего один узел остается активным, всю систему можно перезапустить.
Подобным образом и работает система Guardtime, что позволяет определять, когда было внесено изменение в цепь и, соответственно, проверять эти изменения. Фактически нет никакой возможности изменить какой-либо блок, сохранив всю цепь неизменной – система сразу начинает проверку.
Предотвращение атак на отказ в обслуживании (distributed denial of service (DDoS))
Принцип работы DDoS-атак довольно прост, но крайне губителен. Хакеры могут использовать несколько инструментов для инициирования атаки, например, отправляя бесконечное количество запросов на сайт, тем самым увеличивая трафик настолько, что сайт не может с этим справиться. И такая атака продолжается до тех пор, пока сайт не выйдет из строя. DDoS-атаки происходят довольно часто, нанося ущерб таким компаниям, как Twitter, Spotify, SoundCloud и др.
На сегодняшний день проблема в предотвращении подобных атак кроется в системе доменных имен (Domain Name System, DNS). DNS представляет собой частично децентрализованное взаимное сопоставление IP-адресов с доменным именами и работает примерно по такому же принципу, как телефонная книга для интернета. Эта система отвечает за замену/сопоставление распознаваемых человеком имен доменов (например, steelkiwi.com) на машиночитаемые IP-адреса (состоящие из цифр).
Проблема в том, что фраза «частично децентрализованный» означает уязвимость системы перед хакерами, так как они могут атаковать центр сети DNS (главный узел, который концентрирует основной массив информации) и продолжать взламывать один сайт за другим.
Блокчейн как способ предотвратить DDoS-атаки
Внедрение блокченй-технологии позволит полностью децентрализовать DNS, распределяя информацию среди большого количества узлов сети, тем самым защищая систему от хакерских атак. Право редактировать домен будет только у тех, кто им владеет, и никакой другой пользователь не сможет внести изменения, что значительно снижает риск проникновения неавторизованных пользователей. Данная технология может обеспечить безопасность работу всей системы и сделать ее устойчивой к атакам кроме случая, когда одновременно будут удалены все узлы цепи.
Некоторые компании уже внедряют блокчейн для предотвращения подобных атак. Например, Blockstack обеспечивает полную децентрализацию DNS. Основной принцип, которым руководствуется компания, чтобы сделать сеть полностью децентрализованной – это убрать третьи стороны от управления серверами, ID системами и базами данных.
Если в сегодняшнюю систему DNS внедрить блокчейн, пользователи все также смогут создавать доменные имена, но только авторизованные пользователи смогут внести изменения в домены. Поскольку данные будут храниться на различных узлах (компьютерах) цепи, и у каждого отдельного пользователя будет копия всей информации на блокчейне – система фактически становится неуязвимой.
MaidSafe – аналогичная компания в Англии. Их цель также полностью децентрализовать сеть и создать что-то вроде альтернативы интернету, где каждый пользователь может пользоваться приложениями, хранить информацию и, в принципе, делать все то, что мы и делаем сейчас онлайн, но только в более безопасной среде. При регистрации на данном сервере вы сможете выбрать, какой объем своего хранилища вы можете отдать сети, за что система отдает вам взамен safecoin. Каждый файл, помещенный на сервер MaidSafe, шифруется, фрагментируется и распределяется между пользователями. Единственный человек, который может открыть доступ к информации – это ее владелец, что, по факту, является гарантом того, что в систему не может проникнуть неавторизованный пользователь.
Инновационное применение технологии блокчейн
Чем больше людей подключаются к сети, чем активнее развиваются технологии – тем больше производится информации, и тем больше хакеров пытаются украсть эту информацию или просто стереть ее. Технология блокчейн позволяет пользователям защищать свою информацию, тем самым влияя на будущее интернета.
Применение блокчейна уже давно вышло за рамки криптовалют и может быть крайне полезно в сфере кибер-безопасности. Внедрение строгого шифрования и системы распределения протоколов в сети может гарантировать любому бизнесу, что информация будет защищена от злоумышленников.
Серьезное влияние блокчейна на информационную безопасность
На этой неделе мы общаемся со Стефаном Ательевичем, Руководителем отдела контента и Комьюнити-менеджером в BitFortune. Имея обширный опыт в создании контента и любовь ко всему, что связано с криптовалютами, Стефан упорно работает над тем, чтобы помочь людям понять преимущества и потенциал крипто-индустрии. Вне работы Стефан любит узнавать о новых технологиях и инновациях в сфере ИТ-индустрии.
В нашу информационную эпоху вопрос безопасности данных стал одним из наиболее важных. Кажется, что вся наша жизнь стала отслеживаться через базы данных, а наша конфиденциальная информация стала уязвимой как никогда.
Вот почему информационная безопасность сегодня крайне актуальна. Хакерство превратилось в серьезную и распространенную проблему кибер-пространства, и организации со всего света вовлечены в своего рода гонку вооружений, чтобы устранить существующие недостатки в своих сетях и укрепить их против будущих кибер-атак.
Но для борьбы с растущей кибер-угрозой было создано новое оружие – технология блокчейн.
Что такое технология блокчейн?
Технология блокчейн, которая возникла при создании Bitcoin, – это своего рода распределенный реестр, который обрабатывает данные новым, весьма загадочным образом.
Информация хранится по всей сети в виде блоков с данными, которые защищены с помощью криптографии. Эти данные должны быть «добыты», что означает необходимость решения сложных математических головоломок для добавления к блокам. Затем решение показывается другим участникам сети блокчейн, которые проверяют его и прикрепляют указанные данные к блокам.
Если кто-то вводит новую часть данных в систему, она должна быть сперва проверена как минимум 51% участников сети блокчейн перед тем, как будет добавлена в новый блок. Как следствие, не существует некоего центрального хаба, где хранится вся информация. Вместо этого, она равномерно распределяется между пользователями. Это резко контрастирует с типичными методами централизованного хранения данных, используемыми во всем мире.
То, что добавляется в блоки, не может быть удалено и может быть просмотрено всеми участниками блокчейна (приватный блокчейн) или кем угодно (публичный блокейн). Это гарантирует, что никакие изменения в сети блокчейн не ускользнут из поля зрения.
В целом, мы можем определить блокчейн следующими характеристиками:
- Он децентрализован
- Он неизменен
- Он прозрачен
И именно эти черты делают его отличным решением для вопросов информационной безопасности.
Как блокчейн может усилить информационную безопасность
Децентрализация блокчейна значительно снижает вероятность фальсификации баз данных. Способ, которым хакерам обычно удается заполучить информацию, заключается в атаке того места, где кластеризованы все данные – мейнфрейма. В блокчейне это практически невозможно.
Потому что вся информация хранится распределенно по сети блокчейн, а потому для хакеров не существует той артерии данных, которую необходимо атаковать. Вместо этого им потребуется повредить одни и те же данные во всех блоках. Видя, что каждое изменение в блокчейне становится заметным всем участникам, причем оно должно быть утверждено их большинством, то такая атака потребовала бы безумного объема компьютерных мощностей, что мгновенно останавливает практически любого кибер-преступника от такого подвига.
Прозрачность и неизменность
Публичная сеть имеет то преимущество, что все ее данные находятся в поле зрения общественности. Любое изменение, сделанное в ней, неизбежно выявляется, легко обнаруживается и отслеживается любым, кто достаточно внимательно следит за изменениями. Обладая сотнями или даже тысячами глаз на этой незримой смотровой площадке, вероятность того, что изменения могут пройти незамеченными, практически равна нулю.
Кроме того, благодаря хэшированию, когда строка данных добавляется или изменяется, новая запись и предыдущая запись остаются видимыми, т.к. ни одна из них не может быть стерта. Таким образом, кибер-преступники сталкиваются с еще одной проблемой – отчетливо видимым «маркером», который указывает на каждый шаг их атаки.
В этом случае начинающий кибер-преступник должен будет незаметно войти в сеть блокчейн, сделать свои разрушающие действия с информацией и также незаметно уйти. Добавьте к этому ранее обсуждавшийся вопрос сложности доступа к каждому блоку, и вы получите задачу, слишком невыполнимую для практически каждого, кто хотел бы эффективно ее решить.
Мягкие точки безопасности блокчейна
Хотя все это представляет собой значительное повышение уровня безопасности данных, все же блокчейн не является абсолютно безопасным вариантом, поскольку в прошлом уже были крупномасштабные нарушения данных, такие как печально известный инцидент Mt Gox. Этой технологией можно злоупотреблять и манипулировать, но для этого потребуется значительно больше времени, ресурсов и усилий, чем в случае с традиционными технологиями.
В настоящее время наибольшей брешью в броне блокчейна являются централизованные биржи. Они более открыты к атакам в силу своей централизованной природы. Но именно из-за частых злонамеренных попыток украсть денежные средства с таких бирж, их ценность будет снижаться, а децентрализованные биржи, безусловно, станут нормой так скоро, как только технология получит достаточную известность и признание.
Впрочем, скоординированная атака все еще может случиться на самом блокчейне, в котором один участник или группа участников, владеющие большей частью майнинговых мощностей, сможет контролировать его так, как ей захочется.
Это называется «атака 51%», и она может нанести серьезный урон, как видно из Bitcoin Gold. Однако количество организаций и ресурсов, необходимых для подобного рода операций, делает такую атаку очень слабой проблемой для огромных платформ блокчейн с намного более высоким уровнем хеширования, чем первоначальный Bitcoin.
Блокчейн возьмет на себя защиту данных
Некоторые организации начали внедрять технологию блокчейна с выдающимися результатами. Например, эстонская софтверная компания Guardtime увидела, что ее блокчейн KSI инициирует заметные улучшения в работе эстонского правительства, например, в сфере морских перевозок и страхования, которые требуют серьезной реструктуризации.
Есть лишь немного сомнений в том, что эта революционная технология радикально повысит уровень безопасности данных, т.к. ее характеристики лучше всего подходят для противостояния все более частым нападкам и атакам со стороны кибер-преступников. И сдвиг в сторону блокчейна уже происходит.
Блокчейн явно зарекомендовал себя «дезинтегратором» индустрии, даже за пределами сектора информационной безопасности. Чтобы точно увидеть, как блокчейн меняет отрасли индустрии, посмотрите инфографику в конце этой статьи. В нем говорится о том, что делает блокчейн, чтобы изменить индустрию и поставить ее на совершенно другой, более высокий уровень.
Информационная безопасность
Аналитика, обзоры, исследования из мира Информационной Безопасности | (с) Иван Пискунов
МОИ ПРОЕКТЫ
пятница, 1 декабря 2017 г.
Блокчейн: атаки, безопасность и криптография
- Подтвердить авторство отправителя сообщения
- Гарантировать, что отправленное и подтвержденное через ЭП сообщение никто не сможет подделать
- Зная хеш-сумму (в нашем случае 3) нельзя определить исходный номер телефона.
- Нельзя подогнать номер телефона под заранее известную сумму (в нашем примере неприменимо, обязательно для bitcoin).
- Малое изменение номера телефона приведет к кардинальному изменению хеша (в нашем примере неприменимо, но обязательно для bitcoin).
Данный пример взят из статьи на Хабре.
Блокчейн, по мимо ИТ-феномена еще и явление социальное, вспомните хотя бы хайп вокруг биткоина и майнинг-фермы в Китае! А как известно в любой социальной группе рано или поздно происходят попытки обмана (мошенничества).
И так рассмотрим наиболее реалистичные и ключевые атаки на технологию Блокчейн и продукты построенные на его основе.
По сути майнинг подобен перебору лотерейных билетов. С разной вероятностью выигрыша. Так что для успешной атаки можно иметь даже меньше 51 процента мощности. Вероятность успеха при этом будет падать, но преступник может надеяться, что ему повезет.
Закрытый ключ – теория
Приватный ключ — это довольно общий термин и в различных алгоритмах электронной подписи могут использоваться различные типы приватных ключей.
Постараемся его представить: согласно этой статье, на всей Земле немногим меньше песчинок. Воспользуемся тем, что
, то есть
песчинок . А всего адресов у нас
, примерно
.
Открытый (публичный) ключ – теория
ECDSA в биткойне
- Выбирается некоторое целое k в пределах от 1 до n-1
- Рассчитывается точка (х, у) = k * G с использованием скалярного умножения
- Находится r = х mod n. Если r = 0, то возврат к шагу 1
- Находится s = (z + r * d) / k mod n. Если s = 0, то возврат к шагу 1
- Полученная пара (r, s) является нашей подписью
- Проверка, что и r, и s находятся в диапазоне от 1 до n-1
- Рассчитывается w = s -1 mod n
- Рассчитывается u = z * w mod n
- Рассчитывается v = r * w mod n
- Рассчитывается точка (x, y) = uG + vQ
- Если r = x mod n, то подпись верна, иначе — недействительна
Безопасность ECDSA связана со сложностью задачи поиска секретного ключа, описанной выше. Помимо этого, безопасность исходной схемы зависит от «случайности» выбора k при создании подписи. Если одно и то же значение k использовать более одного раза, то из подписей можно извлечь секретный ключ, что и произошло с PlayStation 3. Поэтому современные реализации ECDSA, в том числе используемые в большинстве биткойн-кошельков, генерируют k детерминировано на основе секретного ключа и подписываемого сообщения.
Отечественный ГОСТ Р 34.10-2012 vs ECDSA
ГОСТ Р 34.10-2012 – российский стандарт, описывающий алгоритмы формирования и проверки электронной цифровой подписи. Принят и введён в действие Приказом Федерального агентства по техническому регулированию и метрологии от 7 августа 2012 года № 215-ст вместо утратившего силу предыдущего ГОСТ Р 34.10-2001.
ГОСТ Р 34.10-2012 основан на эллиптических кривых. Стойкость этих алгоритмов основывается на сложности вычисления дискретного логарифма в группе точек эллиптической кривой, а также на стойкости хэш-функции.
После подписывания сообщения М к нему дописывается цифровая подпись размером 512 или 1024 бит и текстовое поле. В текстовом поле могут содержаться, например, дата и время отправки или различные данные об отправителе.
Насколько высок уровень безопасности технологии блокчейн на самом деле?
Технология блокчейн была создана, в частности, чтобы позволить людям, которые не доверяют друг другу, делиться ценными данными безопасным и защищенным способом. Это связано с тем, что блочная цепочка хранит данные, используя сложные математические и инновационные правила программного обеспечения, которые чрезвычайно сложно преодолеть посредством хакерской атаки для последующих манипуляций.
Но безопасность блокчейна — даже самых совершенных систем — может потерпеть неудачу в тех местах, где причудливые математические и программные правила вступают в контакт с людьми, которые являются опытными читерами. В реальном мире все намного легче может лишиться упорядоченности.
Чтобы понять, почему, стоит начать с попытки выяснить, что же делает блочную технологию «безопасной» в принципе. Хорошим примером в этом случае является Биткоин. В его блокчейне хранятся общие данные — это история каждой транзакции монет. Его базу данных также называют распределенной книгой. Она хранится в большом количестве экземплярах в сети пользователей криптовалютой, называемых «узлами». Каждый раз, когда кто-то отправляет транзакцию в регистр, узлы проверяют, чтобы убедиться, что она действительна.
Большое количество таких пользователей конкурируют за размещение действительных транзакций в блоки и добавление их в цепочку из предыдущих. Владельцы таких сетевых узлов называются майнерами. В качестве вознаграждения за участие в поддержании работы сети они получают выплаты в Биткоине.
Систему делают теоретически защищенной от несанкционированного доступа две вещи: криптографический код, уникальный для каждого блока, и «консенсусный протокол». Это процесс, посредством которого узлы в сети согласуются с общей историей транзакций.
Уникальный код (хеш) требует много времени и энергии для генерации. Он служит доказательством того, что майнер, добавивший блок в цепочку, проделал определенный объем вычислительной работы, чтобы заработать вознаграждение. По этой причине алгоритм Биткоина носит название «доказательство выполнения работы». Он также служит своего рода печатью, поскольку для изменения блока потребуется генерация нового хеша. Проверка хеша на соответствие определенному блоку очень проста, и как только узлы завершают этот процесс, они обновляют свои соответствующие копии блочной цепочки, после присоединения нового блока. Этот алгоритм носит название «консенсусный протокол».
Последний элемент безопасности состоит в том, что все хеши также служат связями в блок-цепочке. Каждый блок включает в себя уникальный хеш предыдущего блока. Поэтому, для внесения изменений в сеть потребуется вычислить новый хеш не только для блока, в котором он находится, но и для каждого последующего блока. И сделать это нужно до того, как другие узлы добавят следующий блок в цепочку. Поэтому, такой процесс требует огромной вычислительной мощности, которой современные компьютеры пока не обладают. Но даже в этом случае гарантировать успех невозможно. Добавляемые блоки будут конфликтовать с существующими, а другие узлы автоматически отклонят вносимые изменения. Это делает blockchain защищенным от несанкционированного доступа и любых попыток изменить хранящуюся в нем информацию.
Творческие способы обмана
Несмотря на обширную теорию, реализация всего этого объема теоретических расчетов на практике намного сложнее, чем кажется. Сам факт того, что любая система на базе блокчейна работает как Биткоин и многие другие криптовалюты, это не означает, что такие ресурсы обладают аналогичной безопасностью.
Даже когда речь заходит об использовании проверенных криптографических инструментов, их безопасность легко можно повредить случайным образом. Такого мнения придерживается Неха Нарула, директор Digital Currency Initiative MIT. Он отмечает, что Биткоин существует дольше всех блокчейн-проектов, поэтому прошел проверку временем.
Однако люди нашли творческие способы обмануть систему безопасности блокчейна. Эмин Гюн Сиер и его коллеги из Корнельского университета выявили способ прорвать защиту блочной цепочки, даже в случае контроля меньшее половины сетевых узлов. По их словам, нечестный на руку майнер способен добиться преимущества, заманив другие узлы в ловушку для разгадки уже решенных криптографических головоломок.
Другая возможность — это так называемая «атака затмения». Узлы блочной цепочки должны оставаться в постоянной связи, чтобы сравнивать данные. Злоумышленник, которому удастся управлять связью одного узла и обманывать его в принятии ложных данных, которые будут якобы поступать из остальной сети, потенциально может обмануть его в процессе расходование ресурсов или путем подтверждения поддельных транзакций.
Наконец, независимо от того, насколько безопасен протокол блокчейна, он существует не в вакууме. Криптовалютные баги обычно представляют собой сбои в тех местах сети, где блочные системы соединяются с реальным миром. Например, в клиентских программах и сторонних приложениях.
Так, хакеры могут проникнуть в «горячие кошельки» (подключенные к интернету приложения для хранения приватных ключей) и перевести средства на свой цифровой бумажник. Кошельки, принадлежащие онлайн-сервисам, занимающимся обменом криптовалют, стали основными целями хакеров. Многие биржи заявляют, что держат большую часть денег своих клиентов в «холодных» аппаратных кошельках (устройства хранения, отключенные от интернета). Но случай с японской биржей Coincheck в январе 2018 года, когда злоумышленники похитили более $500 млн, свидетельствует, что торговые площадки не всегда заботятся о безопасности средств трейдеров.
Возможно, самыми сложными контактными точками между блочными цепями и реальным миром являются смарт-контракты. Они представляют собой компьютерные программы, хранящиеся в определенных типах блокчейнов, которые могут автоматизировать транзакции. В 2016 году хакеры использовали непредвиденный баг в смарт-контракте, написанном на блокчейне Ethereum, чтобы украсть токенов ETH на сумму около $80 млн (по курсу на тот момент) из децентрализованной автономной организации (DAO).
Поскольку код DAO размещался на blockchain, сообществу Ethereum пришлось пойти на спорное обновление программного обеспечения — хардфорк. Это позволило им вернут свои деньги обратно, создав новую версию истории блочной цепочки, в которой кражи денег не было.
Вопрос централизации
Одной из предполагаемых гарантий безопасности блок-системы является децентрализация. Если копии блок-цепи хранятся на большой и широко распределенной сети узлов и нет ни одной слабой точки для внешних атак, то хакерам очень трудно собрать воедино достаточный объем вычислительной мощности для проникновения в сеть.
Однако недавняя работа ученых говорит о том, что ни Биткоин, ни Эфириум не децентрализованы, как принято считать. Они обнаружили, что в четырех наиболее крупных операциях по добыче BTC было сосредоточено более 53% среднего объема эмиссии токенов в неделю. В сети Ethereum в аналогичной ситуации на трех крупных майнеров пришлась доля в 61% от среднего недельного объема.
Некоторые говорят, что альтернативные протоколы консенсуса, которые не полагаются на традиционную эмиссию цифровых валют путем майнинга, могут быть более безопасными. Но эта гипотеза не была протестирована в широких масштабах, и новые протоколы, скорее всего, также будут иметь свои проблемы с безопасностью.
Другие видят будущий потенциал в развитии блочных цепочек, которым требуется разрешение на присоединение, в отличие от блокчейна Биткоина, где любой, кто загружает программное обеспечение, может стать участником сети. Такие системы являются анафемой анти-иерархической этики криптоконверсий, но этот подход привлекает финансовые и другие институты, которые хотят использовать преимущества единой криптографической базы данных.
Однако внедрение и таких систем вызывает немало вопросов. Кто будет иметь право выдавать разрешение? Как система обеспечит верификацию и контроль валидаторов сети? Система получения разрешений может обеспечить некоторое ощущение безопасности пользователей, но на самом деле такой подход просто обеспечит им больше контроля. Это, в свою очередь, означает, что они смогут вносить изменения независимо от того, согласны ли с ними другие участники сети. В такой ситуации фанаты криптовалют наверняка увидят нарушение основ самой идеи децентрализации цифровых денег.
Таким образом, в конечном итоге очень трудно говорить однозначно о безопасности блокчейна. От кого следует защищать сеть? В чем выражается эта безопасность? Как считают эксперты, «все зависит вашей перспективы».
Редакция: Команда BlockChainWiki
Технология блокчейн и криптовалюты. Быстрый старт
Получите книгу и узнайте все основы технологии блокчейн и криптовалюты за один вечер