COMPAX

ВХОД

Тот же вход, что
у некастодиального кошелька

Мнемоника — она же фраза восстановления — создаётся на твоём устройстве и никуда не уходит. Ни номера телефона, ни адреса почты, ни кода из SMS, ни пароля, который кто-то может сбросить. Если ты хоть раз восстанавливал кошелёк по фразе, этот вход тебе уже знаком.

Экраны ниже — настоящие экраны приложения: четыре шага первого запуска в том порядке, в каком ты их увидишь.

ПЕРВЫЙ ЗАПУСК

Четыре экрана, и ни один из них
не спросит, кто ты

Наведи курсор на экран — он проиграется заново.

1

Создать личность или восстановить прежнюю

Две кнопки и ни одного поля: создать личность или восстановить ту, что уже есть. Приложению нечего проверять на сервере, поэтому и вводить нечего.

Чтобы создать личность, интернет не нужен: мнемонику устройство набирает из своего источника случайных чисел. Служба доставки об этом не узнаёт — аккаунтов у неё нет вообще.

Регистрации нет, поэтому нечего и подтверждать. SMS не придёт: твоего номера здесь никто не спрашивал.

9:41
COMPAXНастройка

Сообщения, группы и звонки, которые сервер переносит, но не может прочесть. Ваша личность — это пара ключей, а не учётная запись: просить её вернуть не у кого.

Создать новую личность

У меня уже есть секретная фраза

2

Мнемоника и есть аккаунт

BIP-39 — тот же стандарт, по которому фразу печатает аппаратный кошелёк. Слова показываются один раз и только на устройстве: другой копии нет нигде, потому что сервер держит лишь шифротекст, который не может прочитать.

Запиши слова на бумаге и храни в безопасном месте.

Потеряешь слова — потеряешь аккаунт. Обратная сторона того же свойства: аккаунт нельзя отобрать и нельзя выманить у поддержки.

9:41
Фраза восстановленияЗапишите её — показывается один раз
1ridge2copper3lantern4marble5vessel6orchard7silent8anchor9fabric10meadow11tunnel12quartz13harbor14willow15candle16pigment17gravel18summit19needle20cobalt21thicket22bramble23ferry24oxide

На бумаге, а не фотографией. Всё, что синхронизируется, лежит ещё где-то.

Записали?

Спросим три слова из неё — для проверки.

Готово, записано
3

Укажи имя и назови устройство

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

Нажми «Начать переписку» — и можно писать сообщения. Номер телефона и почта не нужны, поэтому ждать код подтверждения не придётся.

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

9:41
Почти готовоНастройка

Ваше имя

Mira

Имя устройства

Ноутбук Миры

Служба доставки

compax.chat

Несёт шифротекст и упорядочивает его. Ключей у неё нет.

Начать переписку
4

Второе устройство: те же слова

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

Убрать устройство так же просто: отзови потерянное, и мнемоника по-прежнему откроет все остальные.

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

9:41
Восстановить личностьНовое устройство

Введите 24 слова. Это устройство получает собственный ключ и заверяется личностью — другие ваши устройства не затрагиваются.

ridge copper lantern marble vessel orchard …

У этого устройства теперь свой ключ. Другие ваши устройства не затронуты.

Продолжить

ЧЕГО ЗДЕСЬ НЕ СПРАШИВАЮТ

Поля, которых нет
на экране

Аккаунт в мессенджере
  • Номер телефона и SIM, на которой записано имя
  • Адрес почты и код, который на него приходит
  • Пароль на сервере — его сбросит тот, кому сервер принадлежит
  • Контакты из твоего телефона, загруженные, чтобы найти друзей
  • Аккаунт, который можно заблокировать, и форма для апелляции
Compax
  • Мнемоника: создана на устройстве, показана один раз
  • Пара ключей — по открытому ключу тебя и узнают
  • Необязательный пароль, который не покидает устройство
  • Никаких контактов на сервере: искать человека там негде
  • Блокировать нечего: у сервера нет твоего аккаунта

Дело не в минимализме. Каждое поле слева нужно, чтобы по нему тебя нашли, выставили счёт или отключили от сервиса. Поля, которого нет на экране, нельзя потребовать и нельзя отдать.

СРАВНЕНИЕ

Рядом с кошельком,
который уже стоит у тебя

Некастодиальные кошельки отказались от аккаунтов десять лет назад — и вопрос входа на этом закрылся. Compax делает то же самое в мессенджере, а его кошелёк работает на той же мнемонике.

Некастодиальный кошелёк

Compax

Где создаётся ключ

На устройстве, из его случайных чисел

На устройстве, из его случайных чисел

Что его восстанавливает

Фраза BIP-39 из 12 или 24 слов

Фраза BIP-39 из 24 слов

Кто может его сбросить

Никто

Никто

По чему тебя узнают

Адрес, выведенный из ключа

Открытый ключ и имя, которое ты указал рядом

Что делает второе устройство

Набирает фразу заново

Набирает фразу и получает собственный ключ

Что сервис о тебе хранит

Ничего — сервиса нет

Шифротекст и порядок, в котором он пришёл

Что нужно вводить при входе

Ничего

Ничего

НА УСТРОЙСТВЕ

Опциональные поля

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

  1. 1

    Пароль

    Приложение просит его один раз — сразу после того, как слова записаны. PBKDF2 с 210 000 итераций превращает пароль в ключ, которым зашифрована мнемоника.

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

  2. 2

    Биометрия

    Лицо или отпечаток закрывают хранилище ключей, которое на устройстве уже есть. Это способ не набирать пароль каждый раз, а не замена ему.

    Предлагается на том же экране, что и пароль; отказаться — одно касание.

  3. 3

    Аппаратный ключ

    Ключ FIDO2 хранит тридцать два байта, которых нет больше нигде. Мнемоника шифруется ими вместе с паролем: hmac-secret выдаёт байты по касанию, а SHA-256 сводит обе половины в один ключ.

    Пока собрано для macOS и Linux: пункт про ключ появляется только там, где система сама сообщает, что умеет с ним работать. Привяжи сразу два — один носи с собой, второй держи дома.

ЦЕНА

Чем приходится платить за такой вход

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

ДАЛЬШЕ

Пройди эти четыре экрана

Весь первый запуск — около минуты, и первый экран — просто кнопка. Кошелёк работает на той же мнемонике, а что делать, если слова потеряны, — в разделе вопросов.