Безопасность аккаунта
Что защищает аккаунт и деньги на нём
Правила, записанные до первой строчки кода, и каждое из них — ограничение для нас, а не функция, которую потом можно тихо выключить. Ключи кошелька — отдельная тема со своими угрозами, и у неё своя страница.
Открыть аккаунтКак войти и как вывести
Для аккаунта нужна почта или аккаунт Telegram. Двухфакторная аутентификация предлагается при регистрации и настраивается секунд за тридцать: TOTP по RFC 6238, его понимает любое приложение-аутентификатор.
Она по желанию, и стережёт она входную дверь: с включённой двухфакторной одного украденного пароля мало, чтобы попасть в аккаунт. Это не второе подтверждение на каждый вывод — уже открытую сессию повторно не спрашивают. Включение двухфакторной, как и смена пароля, завершает все остальные сессии, и это тот рычаг, за который надо дёрнуть, если кажется, что внутри есть кто-то ещё.
Уведомления о деньгах приходят в Telegram, и без привязки аккаунт не может ни пополнить баланс, ни заказать карту, ни подключить подписку. Человек, которому нельзя сообщить, что его деньги двинулись, пользуется деньгами вслепую.
Данные карты через нас не проходят
Номер карты, срок действия и CVV рисует карту партнёр-эмитент, в своём собственном фрейме. Через бэкенд Blomo они не идут, и их нет ни в нашей базе, ни в наших логах.
Это стоит сказать точно, потому что отраслевая формулировка «данные карт хранятся безопасно» обычно означает ровно обратное: что они хранятся. У нас они не хранятся вовсе, и взлом Blomo не может выдать номер карты, которого там никогда не было.
Учёт нельзя переписать задним числом
Баланс — это не число в колонке, которое кто-то увеличивает. Это сумма проводок, а сами проводки пишутся только вперёд: база отказывает в изменении и в удалении.
Отказывает именно база, а не наш код. Даже приложение с полными правами на запись не исправит проведённую операцию. Ошибка исправляется так, как бухгалтеры исправляют её веками, — сторнирующей проводкой, — и история происходившего остаётся целой и проверяемой.
Каждое ончейн-событие применяется ровно один раз, сколько бы раз сеть его нам ни отдала. Пополнение, посчитанное дважды, ошибочно ровно настолько же, насколько потерянное, и от обеих бед защищает идемпотентность.
Что мы храним и как долго
Виртуальные карты не требуют документов ни на одном шаге: ни при регистрации, ни при пополнении, ни при выпуске, ни при оплате. На обычном пути нет ни паспорта, ни селфи, ни подтверждения адреса, ни анкеты о происхождении средств. Входящие средства при этом проверяются, и раздел 6 договора описывает, что вправе запросить расширенная проверка, если пополнение вызвало санкционный вопрос или вопрос по отмыванию. Исключение — пластик, и требование там исходит от партнёра-эмитента, а не от Blomo.
Логи хранятся семь дней и удаляются. Причина короткая: данные, которых больше нет, не утекут, их не запросят по требованию и не продаст тот, кто от нас ушёл.
Как это устроено внутри
Приложение работает без права менять схему базы: оно может работать с данными и ничего сверх того. Схему меняет отдельный путь миграций со своими учётными данными, поэтому взломанный API не удалит таблицу.
Служба подписи живёт отдельно от приложения и отвечает только на небольшой фиксированный набор запросов. Операции «отправь на такой-то адрес» у неё нет: служба, принимающая получателя от вызывающего, — это служба, которая заплатит любому, кто убедительно попросит.
- Двухфакторная аутентификация
- TOTP по RFC 6238: предлагается при регистрации, защищает вход
- Номер карты и CVV
- Рисует эмитент, через бэкенд Blomo не проходят
- Проводки
- Не редактируются и не удаляются — исправление только сторно
- Ончейн-события
- Применяются один раз, сколько бы раз ни пришли
- Уведомления о деньгах
- Telegram, и без привязки деньги двигать нельзя
- Логи
- Хранятся семь дней, потом удаляются
- Документы
- Для виртуальных карт не нужны ни на одном шаге
- Может ли приложение менять схему базы
- Нет, прав на это у него нет
Вопросы
О чём спрашивают чаще всего
Двухфакторная аутентификация обязательна?
Она предлагается при регистрации и остаётся по желанию. С включённой двухфакторной одного украденного пароля мало, чтобы попасть в аккаунт; это проверка на входе, а не второе подтверждение на каждый вывод. TOTP по RFC 6238, подойдёт любое приложение-аутентификатор.
Хранит ли Blomo номера карт?
Нет. Номер, срок и CVV рисует партнёр-эмитент в своём фрейме, через бэкенд Blomo они не проходят. Их нет ни в базе, ни в логах.
Можно ли поправить баланс руками?
Нет. Баланс — сумма проводок, а база отказывает в изменении и удалении проводок: даже само приложение не исправит проведённую. Исправление делается сторнирующей проводкой, и история остаётся полной.
Что будет, если одно пополнение придёт дважды?
Оно зачислится один раз. У каждого ончейн-события есть признак, который принимается только однажды, поэтому повторная доставка от сети ничего не меняет.
Сколько хранятся логи?
Семь дней, потом удаляются. Данные, которых больше нет, не утекут.
Защищает ли всё это Blomo Wallet?
Blomo Wallet — другая вещь с другим набором угроз: он некастодиальный, ключ создаётся и используется на вашем устройстве, и переместить из него деньги Blomo не может. У этой темы своя страница.
Дальше
Читать дальше
Откройте аккаунт и проверьте сами
Почта или Telegram, без документов, а двухфакторная аутентификация настраивается секунд за тридцать.