Рубрика «blockchain» - 10

Ошибки в смарт-контрактах или новый Security Alert от Parity - 1
7 8 Ноября Parity объявила о критической ошибке в коде, отвечающим за работу их multi-sig кошелька в основе которого лежит общедоступный смарт-котракт. Это уже второй подобный случай, первый произошел 19/07/2017, когда из-за найденной уязвимости смарт-контракта были выведены 150000 ETH (Подробнее на Хабре).

Попробуем описать в чем заключалась проблема и почему стали недоступны около $300 млн.
Читать полностью »

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

Технические особенности проведения ICO. Начало - 1

Привет! Сегодня мой рассказ пойдёт о техническом опыте проведения ICO на платформе Ethereum перед и во время ICO. Я поучаствовал пока в небольшом количестве проектов, но уже успел собрать некоторый технический бэкграунд. Могу поспорить, технический roadmap по проведению ICO аудитории Хабра будет интересен. Прошу под кат всех заинтересованных.

Читать полностью »

Всё биткоин-сообщество с некоторым опасением ожидало проведения хардфорка в течение этого месяца. Цель хардфорка — использовать преимущества нового протокола Segwit2x в обновлённой инфраструктуре биткоина. Этот протокол позволяет избавиться от ряда существующих проблем, например, увеличить производительность сети. Сейчас она ограничена рядом правил работы блокчейна биткоина.

Хардфорк биткоина остановлен. Что дальше? - 1

Неожиданно авторы проекта хардфорка отказались от своих намерений, решив не проводить его для увеличения размера блока. Основная причина — далеко не все представители блокчейн сферы считают нужным проводить хардфорк именно так, как его запланировали разработчики Segwit2x. Это расхождение во взглядах повлияло на то, что даже те игроки рынка, которые поддерживали форк, приветствовали его отмену. В их числе Xapo, Bitmain, Bloq, Blockchain, Shapeshift и ряд других организаций.
Читать полностью »

Разбираемся со смарт-контрактами: действительно ли они могут помочь вашему бизнесу? - 1

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

С тех про смарт-контракты захватили умы многих визионеров. В пример можно привести Виталика Бутерина, русско-канадского программиста и одного из сооснователей Ethereum — самой популярной децентрализованной платформы смарт-контрактов на базе блокчейна. Но технология развивается, причем стремительно, и уже сейчас существуют десятки других блокчейн-проектов, способных создавать «умные» контракты.

По словам специалистов сферы Джона Рима, Ян Чу и Дэвида Шацкого «смарт-контракты представляют собой следующий шаг в деле продвижения технологии блокчейн от протокола финансовых транзакций к универсальной утилите», — пишет Deloitte Insights. «Они (смарт-контракты, — прим. ред.) являются частью программного обеспечения, а не контрактами в юридическом смысле. При этом „умные“ контракты расширяют возможности блокчейна в плане сохранения записей о финансовых транзакциях, что автоматически дает гарантии выполнения многосторонних соглашений. Они используют компьютерную сеть, которая, в свою очередь, опирается на согласованные протоколы для обеспечения выполнения условий, заложенных в коде контракта, в верной последовательности».
Читать полностью »

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

Solidity — язык, созданный для разработки умных контрактов, существует относительно недавно — его разработка началась только в 2014 году и, как следствие, местами он ''сыроват''. В этой статье я начну с более общего описания работы EVM и некоторых отличительных особенностей solidity, которые нужны для понимая более низко-уровневой работы.

P.s Статья предпологает наличие некоторых базовых знаний о написании смарт-контрактов, а также о блокчейне Ethereum'a в целом, так что если вы слышите об этом в первый раз, то рекомендую сначала ознакомиться с основами, например, здесь:

Table of contents

  1. Memory
    • Storage
    • Memory
    • Stack
  2. Data location of complex types
  3. Transactions and message calls
  4. Visibility
  5. LinksЧитать полностью »

Blockchain глазами разработчика - 1

Зачем этот рассказ? Когда я изучал blockchain по открытым источникам, например по Википедии, информация казалась отрывочной и бессвязной. Прошло время, прежде чем она сложилась в целостную картину. Кажется, я знаю, в каком порядке и какими словами описать введение в blockchain, чтобы любой профессиональный разработчик смог понять общую картину за 1—1,5 часа. В тексте будут некоторые упрощения. Понятно, что в любой теме есть много деталей, куда можно при желании погрузиться.

Читать полностью »

Fairloris — комментируй все, всегда и везде - 1

Основное назначение проекта — дать пользователю единый инструмент для добавления комментариев к любой, доступной ему, веб странице в сети Интернет. Не имеет значения, есть ли на нужной странице функционал комментариев, доступны ли они текущему пользователю или нет, у него все равно будет возможность оставить свой комментарий и ознакомиться с комментариями других пользователей, зарегистрированных в системе Fairloris.
Читать полностью »

Несколько месяцев назад мне захотелось разобраться, о чём весь этот хайп: биткоин, токены, смарт-контракты, ICO. С биткоином всё было относительно просто, ведь есть замечательная книга bitcoinbook.

Со смарт-контрактами дело обстояло сложнее. Как оказалось, виной тому не самое удачное название. Когда мы слышим слово "контракт", в голову приходит юридический смысл термина: договор между двумя или более сторонами. И такое понимание смарт-контрактов имеет право на существование, но суть явления значительно шире, и контракт — не самый интересный и важный случай.

На волне популярности ICO зашла речь о государственном регулировании. Я не фанат ни государства, ни регулирования, но нужно признать, что государство — один из важнейших институтов, и без него не обойтись. Тем не менее мне кажется, что сообщество сфокусировало усилия на частном случае проблемы, причём не самом важном. Рассматриваемая технология, при правильном её применении, может до неузнаваемости изменить очень многие сферы жизни. Вместо того, чтобы рассматривать изолированный случай ICO и придумывать регулирование "по аналогии" с IPO, стоит подойти к делу более системно.

Когда появляется новая технология, и не совсем понятно, как её применять, возникает соблазн ориентироваться на старые модели. Так было со смартфонами: первые версии смартфонов на Windows Mobile пытались вместить интерфейс настольной операционной системы в маленький экран; с иконками, мышью и кнопкой "Пуск". Такие смартфоны вполне можно было использовать, но настоящая революция случилась, когда разработчики поняли, что смартфон — это не маленький компьютер, а нечто принципиально иное, и взаимодействие с пользователем должно строиться совсем по другим моделям.

Читать полностью »

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js