Тот, кто достаточно глубоко разбирается в криптах, наверняка знает, что централизация, пусть даже и ради удобства пользователя, чревата потерей всех положительных свойств криптовалюты. А именно?—?любой кошелек, ключи от которого хранятся не только у вас, вам принадлежит весьма условно. Да-да. Заметим, что это действенный способ экспресс оценки любого криптопроекта. Он централизован??—?несем в корзину! Нет? Тогда попробуем разобраться. Кажется, есть компромиссный вариант.

Сегодня я расскажу о веб-кошельке Биткоина и Эмеркоина, который создала компания Аспанта. Они попытались найти такой компромисс, совмещая несовместимое. Посмотрим, насколько хорошо это им удалось.

Пожалуйста, дедосьте!

Итак, неубиваемость вебкошелька начинается со стандартного хода, фронтенд Emercoin One работает на фреймворке Angular2 и спрятан за CloudFlare. Следующий уровень: физическое разделение компонентов Emercoin One на пять независимых серверов: Фронтенд, Бэкэнд, SQL, отдельных кошельков Биткоин и Эмеркоин. Первые три автоматически масштабируемые настолько, насколько возможно, чтоб выдержать любую атаку. Все сервера (кроме фронтенда) вообще не имеют внешних IP адресов, они находятся где-то глубоко в недрах корпорации, за семью печатями и восемью замками.

Воруй, ломай, брутфорсь!

Разумеется, в любом ПО есть вероятность существования дырочек и дыр, через которые экспертные хакеры могут проникнуть на фронтэнд сервер и сдампить базу данных. Разумеется, юзеры будут столь щедры, что установят пароль, хэш к которому уже известен вселенскому злу. При этом, критических данных злоумышленник не получит. Он узнает баланс, список имен NVS, но сделать с ними ничего сможет, так как для этого нужен Spending Password, который не хранится на фронтенде с SQL.

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

Кроме того, за здоровьем и безопасностью всех этих серверов следят системы мониторинга в реальном времени.

Разумеется, при создании аккаунта, Emercoin One проверяет пароли на слабость: как бы не хотелось установить пароль аккаунта и пароль для траты средств в заветные “qwerty”, система не даст такой возможности. Кроме того, есть возможность доступа к системе по API, со временем разработчики могут дополнить вебваллет возможностью продавать/покупать монеты прямо в нём. Такая возможность заложена в ядро.

Таким образом, создатели сделали все возможное и от них зависящее, чтобы минимизировать самый главный риск любого крипто-проекта?—?кражи пользовательских средств.

И последнее, у Emercoin One есть клиент под iOS. Причем, аккаунт (кошелек) может быть одним и тем же. И, как следствие, можно управлять своими монетами как на iPhone, так и через веб.



Сайт Emercoin One: wallet.emercoin.one
Мобильное приложение: в App Store

Комментарии (12)


  1. devel0per
    08.11.2017 19:18

    Начали с

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


    И свели все к
    фронтенд Emercoin One работает на фреймворке Angular2 и спрятан за CloudFlare
    и че? где тут децентрализация?

    Разве у вас нет возможности перехватить «Spending Password» если это вам очень захочется?


    1. snvakula
      08.11.2017 19:22
      +1

      Мне кажется, что статья не про MitM ;)


    1. olegarch
      08.11.2017 21:40

      Тут речь идёт об одном из возможных вариантов кошелька — WEB-кошельке. Это как раз решение для «поколения WWW», которым лень ставить полный клиент.
      А децентрализацию обеспечивают как раз таки полные клиенты (кошельки), которых подавляющее большинство.
      Естественно, использование любого сервера, в том числе и E1, подразумевает доверие к этому серверу. Верите серверу — пользуйтесь. Не верите — скачивайте себе полную ноду, и будет Вам счастье с истинной децентрализацией.
      Статья же фокусируется на архитектурных решениях, заложенных в основу WEB-версии кошелька, призванных минимизировать ущерб пользователей от возможных успешных атак на сервер.


  1. chegivara
    08.11.2017 19:29

    Первые три автоматически масштабируемые настолько, насколько возможно, чтоб выдержать любую атаку.

    Сильное заявление.
    В какого бога нам верить?


    1. EShumilov Автор
      08.11.2017 19:34
      +1

      В единственного, конечно.


      1. JekaMas
        08.11.2017 19:45
        +1

        Рамен.


  1. Psychosynthesis
    08.11.2017 20:26
    +1

    Обычно компании, делающие заявления в духе «наш XXX — самый безопасный XXX» выглядят феерически тупо в глазах общественности при первом же публичном взломе их продуктов.

    Судя по заголовку, вам не терпится почувствовать себя на их месте.


  1. mwizard
    08.11.2017 20:26

    Что помешает вашему фронтэнду иногда, для специальных людей, выдавать небольшой отличающийся js, который будет spending password записывать и отправлять, куда надо?


    1. snvakula
      08.11.2017 20:32

      Вероятно, автор имел в виду защиту не от провайдера облачной услуги, а от постороннего вмешательства.


  1. amaksr
    08.11.2017 21:15

    фронтенд Emercoin One работает на фреймворке Angular2 и спрятан за CloudFlare
    и какое это отношение имеет к безопасности?

    физическое разделение компонентов Emercoin One на пять независимых серверов
    Как это улучшает безопасность? Взломав фронтенд можно посмотреть куда он коннектится, и идти ломать дальше по цепочке — ровно то же делается если серверы физически не разделены, и нет никакой разницы внутренние у них IP или внешние

    Проникнуть с сервера фронтенда в бэкенд тоже нельзя
    если нельзя залогинится, то это не значит, что нельзя туда проникнуть и пошарить через API

    Emercoin One проверяет пароли на слабость
    круто…

    Мне кажется более правильно было бы вообще запретить файрволом соединения из фронтенда в бакенд — пусть бакенд коннектится к фронтенду, и по бинарному TCP сам берет запросы и отправляет ответы. В этом случае взлом фронтенда сам по себе ничего бы не дал, и злоумышленнику пришлось бы поднимать модифицированный фронтенд, чтобы слать какие-нибудь injections в бакенд.


  1. Neraverin
    08.11.2017 21:46

    Любой кейлоггер написанный на коленке собирает ваш ароль аккаунта и пароль для траты средств. Пароли кстати очень круто проверяет — asdfgh123 съел без предупреждений. Безопасность! Надежная двухфакторная аутентификация? Не, не слышал.


  1. ploop
    09.11.2017 00:25

    как бы не хотелось установить пароль аккаунта и пароль для траты средств в заветные “qwerty”, система не даст такой возможности

    Ну и пойдёт в пень. Так как ради банальной возможности пощупать придётся выдумывать/генерировать сложный пароль.

    Ваша ЦА домохозяйки что ли? Люди, разбирающиеся в криптах, вполне осмысленно выбирают пароли. И если мне нужен разовый кошель на 30 секунд, то и «123» вполне сгодится.