В данной небольшой заметке приведен краткий анализ очередного блокчейн проекта papyrus.global, планирующего изменить рекламный рынок. Описание блокчейн идей подавало надежды, что здесь команда действительно займется разработкой. В ходе анализа сайта и белой бумаги выяснилось, что обещания не выполнены. Анализ смарт контракта выявил примитивное качество кода и отсутствие понимания блокчейн идеологии. Заявленного MVP или каких-либо конкретных технических схем обнаружено не было.
Анализ сайта papyrus.global
Похоже, авторы проекта хотят избавиться от мошенничества и необоснованных трат в рекламе — жалобы на это находятся на самых видных местах сайта:
И тут же рядом находится решение: просто добавим блокчейн и все проблемы сами как-то уйдут.
Разумеется, главная страница и пара маркетинговых фраз не могут пояснить задумку (будем читать о ней в Белой бумаге), но от простой замены одной рядовой базы данных (SQL) на другую рядовую базу данных (blockchain) никакие проблемы не исчезают сами собой. Оба эти решения одного рода — это базы данных. Причем blockchain очень плохая база по скудности функций, не предназначенная для хитрого выявления мошенничества.
Далее идет схема:
Из нее можно сделать предположения:
- Блокчейн проекта — это форк Ethereum.
- Раз это форк Ethereum, то это уже противоречит заявлению, что проект собирается делать блокчейн. Разумеется, в форке планируют внести свои доработки, но это явно не собственный блокчейн.
- С другой стороны очень позитивно, что авторы проекта трезво понимают суть блокчейна и не пытаются сделать свой с нуля.
На счет маркетингового сравнения в таблице, там многочисленное лукавство:
- Транзакции в Bitcoin не стоят $20 (порядка $1). Транзакции в Ethereum не стоят $1 (порядка 5 центов).
- Скорость 1 млн транзакций в секунд: о таком кричат многие создатели иных блокчейнов. Но пока никто на практике не видел проектов на таких блокчейнах с такими сумасшедшими скоростями.
- При использовании локального форка Ethereum, даже с доработками, достичь такой скорости невозможно. При использовании параллельных блокчейнов — такое возможно, но это уже вопросы масштабирования проекта, а не достижения блокчейна.
Далее на сайте перечисляют маркетинговые преимущества, почему этот проект лучше остальных. Это бесполезная для анализа информация, ее любой рекламный проект бы про себя написал.
Попробуем воспользоваться MVP и посмотреть, что существует в проекте, помимо сайта и Белой бумаги
К сожалению, ссылки на https://advertiser.papyrus.global/ и https://publisher.papyrus.global/ не открываются, возвращая ошибку от CloudFlare:
Тестирование проводилось в указанное на скриншоте время.
Из следующих ниже новостей стало понятно, что MVP запущено в марте 2018. Сейчас декабрь 2018. За полгода можно было отладить работоспособность MVP. Вероятно, проект мертв.
Поверхностный анализ Белой бумаги
На весь документ удалось найти только одну-две страницы, описывающие техническую сторону того, что и как авторы задумали реализовать. К сожалению, все технические детали — такая же вода, как и другие страницы Белой бумаги с маркетинговой водой. Аудитор не проводил какой-то тщательный анализ, но по результатам беглого осмотра в целом о проекте можно заключить:
- поставлено цель избавится от чего-то в рекламе
- как этого достичь не описано
- никаких практический деталей не раскрыто
- почти весь контент Белой бумаги, кроме пары страниц — это обычные маркетинговые главы на тему «все плохо», «мы сделаем лучше», оценить их читатель может самостоятельно и без технической подготовки
Анализ страницы «FAQ»
Страница — https://papyrus.global/faq/
Голословные и противоречивые утверждения. Если какой-то проект заявляет, что создал самый крутой в мире блокчейн и даже использует его сейчас — откройте этот шедевр всему миру! Зачем вы его используете только для каких-то рекламных целей? Посрамите сотни других команд, разрабатывающих собственные блокчейн решения для универсального применения.
Итого: либо сделайте новый блокчейн, либо занимайтесь рекламой. Когда совмещают сразу две темы, это легкий маркетинговый перебор с обещаниями.
Сотни точно таких же проектов писали тоже самое: «мы обещаем избавить от мошенничества». И предлагали такое же решение — просто перенесем данные из SQL в блокчейн и мошенничество пропадет. Почему и как — никто не смог ответить.
Обещания про масштабирование и прочие технические инновации не подтверждены ни в одном документе с сайта проекта.
Это очень хорошие обещания. Но не реализуемые. Представим, что прямо сейчас ваш код получил команду нарисовать на экране пользователя какой-то баннер. Кто и как вычислит, какое рекламное объявление среди тысяч должно сработать? Какие функции базы данных «Ethereum» позволит осуществить поиск, сортировку, фильтрацию? В блокчейне и его смарт контрактах нет таких функций. Если рассмотреть любую функцию подробно, то окажется, что ее вынужден выполнять SQL. Это расходится с обещаниями.
Сейчас смарт контракт 0xCB95cA62AACdc3C608aA2E78057e918a1B180616 заблокирован от дальнейшей возможности эмиссии токенов (переменная mintingFinished установлена. в «true»). Как проект собирается проводить TGE не понятно: больше токенов выпустить не могут, но деньги собрать хотят. Планируется выпустить новый токен (новый смарт контракт) и обмануть инвесторов 1+2 раундов? Планируется проводить TGE без выдачи токенов?
Анализ смарт контракта
Смарт контракт для ICO располагается по адресу:
https://etherscan.io/address/0xCB95cA62AACdc3C608aA2E78057e918a1B180616
Первое, что бросается в глаза, проект выглядит умершим:
Большое кол-во восклицательный знаков — это попытки держателей токенов их перевести. Но перевод заблокирован админом смарт контракта. Это, скорее всего не инвесторы, а баунти участники. Слабая активность за год.
Операции без восклицательного знака — это либо несущественная активность держателей токена, либо действия админа
В смарт контракте админ (владелец) оставил себе безлимитное вечное право включать или отключать «паузу обмена», переменная «transferable». Это означает, что даже, если бы ICO было очень успешное, то компания могла бы в любой момент заблокировать всем движение всех токенов.
Сейчас ситуация иная. В начале 2018 года ICO компания по сбору средств провалилась и админ даже не снимал «паузу обмена», которая так и запрещает всем обмен токенами.
Если проанализировать историю запросов к смарт контракту с 5-й страницы и далее (https://etherscan.io/txs?a=0xCB95cA62AACdc3C608aA2E78057e918a1B180616&p=5), то можно заметить следующее. Какой-то скрипт генерирует множество транзакций, в каждой из которой производится рассылка токенов ровно одному участнику.
Это говорит о низкой квалификации программиста осуществляющего рассылку. Более разумно использовать метод, когда в одной транзакции рассылается сразу 100-200 или более токенов (зависит от размера блока в блокчейне). Упаковка команд в одну транзакцию частично экономит газ и снижает нагрузку на блокчейн в 100+ раз. По объему в блокчейн записываются такие же данные, но резко снижается флуд на транзакции. Именно из-за таких примеров Ethereum лежит во время ICO. Причина не в ажиотаже, а очень примитивных методах работы с блокчейном.
Исходный код смарт контракта выявил следующее:
- Абсолютно бесконтрольная возможность админа смарт контракта по эмиссии токена. Эмиссия никак не связана с продажами. Например, админ может выпустить сколько угодно токенов себе. Или каким-то инвесторам продать токены по иной скидке, чем заявлено.
- Код смарт контракта почти целиком состоит только из стандартных функций для реализации ERC20 и ничего полезного не делает.
- На этом этапе проявляется полное непонимание участников команды принципов ICO и идеологии блокчейн-сообщества. Продажа токенов должна происходить так, чтобы у компании не было никаких путей выпустить токены без получения оплаты.
- Ради экономии текста, не приводятся другие заключения. Сюда целиком подходят выводы других наших аудитов, где так же наблюдается очень низкий технический уровень первого публичного продукта компании (смарт контракта для ICO). Если кратко — это «ICO на коленке» (код уровня «Hello, world!»), чрезвычайно низкий технический уровень реализации смарт контракта.
Общее заключение
1. Проект выглядит как техническое мошенничество, когда авторы обладают хорошими и позитивными целями, но не имеют никаких решений, как их достичь. Ключевой элемент «Мы вместо SQL применим blockchain» является заведомо ошибочным. Это говорит либо о недостатке технической квалификации (блокчейну приписываются мифически особенности), либо о попытке лукавства: авторы понимают, что 95% данных и вычислений будет в SQL, а блокчейн используется только для поиска денег у блокчейн-сообщества.
2. К сожалению, таких проектов сотни. Они слово в слово повторяют одно и тоже. Все, что было написано про наши старые аудиты UBEX и XCHNG можно приписать и этому проекту. Ознакомится с аудитом на клоны: