«Карма» отобрала финалистов московского блокчейн-хакатона 193

p2p

Блокчейн-платформа для p2p-кредитования «Карма» подвела итоги первого этапа хакатона среди блокчейн-разработчиков. В финальный этап прошли 16 разработчиков из Владивостока, Москвы, Подмосковья и Улан-Удэ.

В онлайн-этапе хакатона приняли участие более 100 участников из Владивостока, Москвы, Подмосковья и Улан-Удэ. Часть разработчиков объединилась в три команды, остальные действовали самостоятельно.

Организаторы хакатона сформировали пул идей проектов, близких к потребностям “Кармы”, которые должны были реализовать участники. Например, предлагалось разработать крипто-приложения (виртуальный обменник из крипты в фиат или “деанонимизатор» кошельков Bitcoin или Ethereum), а также приложения, не связанные с крипто-миром напрямую (агрегатор лучших телешоу 2018 года на блокчейне или форма автозаполнения профиля пользователя по фотографии документа).

По словам технического директора “Кармы” Дениса Свинарчука, несмотря на то, что темы были свободными, отбор был жестким.

“Мы хотели посмотреть, как ребята справятся с полным циклом проектирования: анализ, декомпозиция, реализация модулей и подзадач. Отбор проходил с полным запуском по правилам, если софт проекта не запускался — дальше исходники не смотрелись. Потом изучали и читали код”, — говорит Свинарчук.

По итогам онлайн-этапа в финальный раунд прошли 16 разработчиков. В частности, объединившиеся в команды. Например, ребята из Владивостока, которые впервые использовали python, как язык разработки, и примерно за сутки освоила новый для себя инструмент.

В финальном раунде все участники вновь смогут объединиться в новые команды или выступить по одиночке. Финал пройдет 12-13 мая в Москве в лофте “Авиатор” по адресу: Столешников переулок, 6 с 3.

Разветвление Ethereum было сделано намерено 808

Ethereum

Сбой в работе Ethereum, который повлиял на ряд крупных сервисов и криптобирж оказался не случайным. Разветвление сети произошло в результате изменения кода, которое было тайком вставлено в обновление клиента Geth — по иронии судьбы, как раз это изменение и должно было предотвратить подобный форк.

Возникновение двух сетей создало две конфликтующие истории транзакций — это означает, что пользователи Etheruem взаимодействовали с разными версиями блокчейна Ethereum. Это не только вызвало задержки, но и поставило под угрозу средства пользователей, отключив на несколько часов большинство приложений DeFi.

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

Разработчик Geth и эксперт по безопасности Ethereum Мартин Свенде предположил, что команда Ethereum не объявила об изменении, чтобы не привлекать внимание к самой ошибке — «тихое» исправление ошибки создаст меньший «сбой». Но возникает другой вопрос, почему об ошибке нельзя было сообщить конфиденциально только команде Geth. Также не понятно, почему об изменении не было сообщено компании Infura, которая является основой всей децентрализованной финансовой экосистемы Ethereum. Эти вопросы вызвали большое недовольство среди разработчиков и проектов, использующих Ethereum.

«Каждый крупный проект, с которым Ethereum-разработчики находятся в тесном контакте, должен иметь актуальную информацию об ошибках, которая поможет координировать плавное обновление, — сказал основатель Thesis Мэтт Луонго. — А когда форки становятся неожиданностью, то любой, кто построил проект на Ethereum, как мы, может потерять деньги».

Руководитель группы Ethereum Петер Силаджи заявил, что оставить обновление в тайне было проще и произошедший сбой был «меньшим злом».

«Мы все согласны с тем, что прозрачность — это главное и что мы все должны к ней стремиться. Но также важно внимательно изучить все детали, прежде чем начинать какое-то дело. В случае с Ethereum требуется много времени (недели, месяцы), чтобы заставить операторов узлов обновиться даже до запланированного хард-форка. А раскрытие того, что обновление содержит важные консенсусные исправления, всегда сопряжено с риском, что кто-то попытается опередить разработчиков и вывести сеть из строя. Конечно, так поступать не правильно, но отсрочка потенциальной атаки на достаточно долгое время, чтобы сделать большинство операторов узлов к ней невосприимчивыми, может стоить временного «удара»», — сказал Силаджи.

Он отметил, что команда Geth тоже согласилась, что раскрытие уязвимости было связано с слишком большим риском.

«Несмотря на то, что обновление «приняло неожиданный оборот» из-разрыва сети, команда Geth считает, что держать эту проблему в секрете было правильным решением», — сказал разработчик.

Злоумышленник попытался атаковать сеть Monero 810

Monero

Таинственный хакер атаковал блокчейн Monero (XMR) и опубликовал некоторую конфиденциальную информацию. Он утверждает, что нашел «волшебную формулу взлома Monero» и в доказательство предоставил личную информацию пользователей Monero, включая их сексуальные предпочтения.

«Monero никогда не была настоящей конфиденциальной монетой. Еще в 2016 году проект Monero сообщил о множественных проблемах, которые использует в своей аналитике компания Ciphertrace, и с тех пор эти проблемы остаются нерешенным. Для того, чтобы привлечь внимание к этому вопросу, каждый день я буду публиковать транзакции, IP-адрес и порно предпочтения 100 «счастливых» пользователей Monero», — говорится на сайте Monero BADCACA.

Хакер намекнул, что информацию он извлек из узлов.

«Если ваша транзакция Monero застряла в мемпуле на несколько минут, то у меня для вас плохие новости — это значит, что ее перехватил сайт BADCACA», — сказал хакер.

Ведущий разработчик Monero Риккардо Спаньи объяснил происходящее. По его словам, в действиях хакера нет ничего тревожного, и на самом деле дизайн Monero делает практически невозможным идентифицировать пользователя.

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

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

Также Спаньи не подтверждает, что хакер взломал блокчейн. Суммы, адреса и конфиденциальные данные, связанные с этими транзакциями — все то, что указало бы на взлом — остались неизвестными. Тем не менее, хакер опубликовал порно предпочтения. Предположительно, «видео для взрослых» определяется на основе скаченных торрентов. Методы запутывания, такие как VPN, Tor или i2p, делают практически невозможным привязку пользователя к одному из IP-адресов, но маленький шанс есть всегда, или же хакер попытался создать такую видимость.

Спаньи объясняет, что хакер очень старался, чтобы осуществить такую ​​сложную атаку, но даже после всех усилий, он смог получить очень мало информации. Атака была недостаточно масштабной, чтобы эффективно сработать против Dandelion++ — для этого злоумышленнику пришлось бы запустить много тысяч узлов. Даже если бы он это сделал, то все равно не смог бы убедительно доказать связь между узлом и транзакцией, и ему пришлось бы просто гадать. К тому же, атака была совершенно бесполезна против тех, кто использует облегченный узел (например, MyMonero), удаленный узел (Monerujo), Tor или VPN.

Сеть Ethereum испытала проблемы 755

Ethereum

Сеть Ethereum столкнулась с проблемой, которая отразилась на поставщиках услуг. Сервис Infura сообщил, что испытал перебои в работе с API-интерфейсом основной сети Ethereum.

Infura предоставляет доступ к Ethereum для других приложений и сервисов. Из-за сбоя, некоторые клиенты Infura были вынуждены приостановить работу своих служб, среди них Metamask и Binance.

Проблемы Infura связаны с проблемой самого блокчейна Ethereum.
Binance и Blockchair указали, что в блокчейне произошло разветвление.

«Возможно, на блоке 11234873 произошло разделение цепочки Ethereum. После этого блока, Etherscan и Blockchair показывают две разные цепочки и разные данные. Сейчас мы решаем проблему, но снятие средств временно остановлено», — написал глава Binance.

«У нас возникла проблема с нашим проводником Ethereum и мы работаем над ее исправлением. Похоже, что есть разделение цепи, и некоторые узлы (в том числе наши и некоторых майнеров) застряли в меньшей цепоке», — пишет Blockchair.

Далее компания добавила, что проблема была успешно устранена путем обновления Geth — клиента Ethereum.

«В какой-то момент разработчики Ethereum внесли изменение в код, которое и привело к разделению цепочки, начиная с блока 11234873», — пояснил ведущий разработчик Blockchair Никита Жаворонков.

Он назвал этот инцидент «технически необъявленным хард-форком» и сказал, что изменения в код, возможно, были внесены еще несколько месяцев назад.

«Те, кто какое-то время не обновлял свои Geth-узлы (я предполагаю, что по меньшей мере на протяжении нескольких месяцев), разделились с теми, у кого были новые версии», — сказал Жаворонков, добавив, что отключение Infura, вероятно, возникло из-за той же проблемы.

Через некоторое время с проблемой справилась и криптобиржа Binance, возобновив для Ethereum все сервисы. Компания Infura также сообщила, что ее команда определила причину сбоя и готовит исправление.

Разработчики нашли уязвимость в коде монеты Bitcoin SV 769

Bitcoin SV

При разветвлении монеты Bitcoin SV (BSV) из Bitcoin Cash, разработчики ориентировались на создание более быстрых и простых переводов средств, но эта идея требовала исключения из кода некоторых важных технических характеристик биткоина.

Разработчики пошли на этот шаг и одна из удаленных функций — это так называемая хеш-функция pay-to-script (P2SH), которая дает возможность отправлять транзакцию, подписывая ее «скриптом», а не адресом открытого ключа. Эти скрипты создают особые условия, которые должны быть соблюдены для доступа к отправленным биткоинам. Чаще всего такие скрипты используются в транзакциях с мультиподписями — транзакциях, требующих утверждения более чем одной стороной.

Разработчик Bitcoin Core и бывший технический директор Blockstream Грегори Максвелл сообщил на Reddit, что разработчики BSV удалили функцию P2SH из кода BSV. В кошельке ElectrumSV (и, скорее всего, в других подобных), разработчики заменили эту функцию облегченной и специфичной для BSV версией, называемой «аккумулятор нескольких подписей», которая использует метод P2PKH.

До того, как в 2012 году в биткоине появились транзакции P2SH, единственный тип транзакций был с помощью функции хеширования открытого ключа — P2PKH. Причина, по которой в биткоине стала использоваться именно функция P2SH заключается в том, что P2PKH плохо работает в транзакциях с мультиподписью. На самом деле она настолько небезопасна, что держатели BSV уже теряют средства.

«Ее скрипты вообще изначально не обладали безопасностью», — объясняет Максвелл.

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

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

Пользователь BSV Аарон Чжоу потерял 600 BSV в результате атаки, использовавшей эту уязвимость. В переговорах в чате с разработчиками BSV, он сказал, что доверял их технологиям, потому что так заверяли СМИ и сеть поддерживает сам Кэлвин Эйр. В ответ разработчик ему сказал, что Чжоу сам виноват и ему стоило вносить в кошелек только «небольшие суммы».

Максвелл сказал, что если бы разработчики BSV проявили больше внимания и сделали элементарное тестирование, то обнаружили ошибку.

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

Разработчики кошелька Electrum SV пока не дают комментариев.

Сеть монеты Grin подверглась «атаке 51%» 739

Grin

Некая группа майнеров совершила «атаку 51%» на конфиденциальную монету Grin (GRIN) и в настоящее время контролирует более половины хэш-мощности.

На момент написания, группа смогла набрать 58,1% от общей хэш-мощности сети Grin. На пул 2Miners осталось 24,6%, а майнеры Sparkpool удерживают 11,3%.

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

Данные GrinScan показывают, что неизвестные майнеры смогли реорганизовать как минимум один блок, но их намерения пока не ясны. Контроль более 51% хешрейта не обязательно означает, что у майнеров есть дурные намерения — ранее у Sparkpool было до 60% хэш-мощности Grin, но это никак не отразилось на работе сети.

Виталик Бутерин сделал ставки Ethereum на $1,4 млн 973

Ethereum

Основатель Ethereum Виталик Бутерин сделал свои первые ставки для поддержания следующей итерации блокчейна. С адреса Бутерина было отправлено 100 транзакций по 32 ETH каждая — всего 3200 ETH. На момент публикации монеты оцениваются примерно в 1,4 миллиона долларов. Для Бутерина это около 1% от всех его активов.

Средства были отправлены в запущенный в среду депозитный контракт Ethereum 2.0. С момента запуска он набрал 38693 ETH на сумму около 17 миллионов долларов. Каждый участник должен внести минимум 32 ETH. Для запуска первого блока требуется, чтобы 16384 валидаторов внесли в контракт 524288 ETH. То есть на данный момент еще нет и 10% от необходимой суммы.

Ожидается, что организация Ethereum Foundation также сделает ставку, но возможно, они не захотят присоединяться так рано, поскольку есть риски в отношении финализации нового блокчейна. Вдобавок внесенные средства будут заблокированы на срок не менее двух лет. Однако процентная ставка в размере 21% является довольно большим стимулом.

Ожидается, что сеть Ethereum 2.0 будет запущена в ближайшее время, возможно, в начале декабря.