COMPAX

ОТВЕТЫ

Часто задаваемые
вопросы

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

Основы

Это мессенджер или кошелёк?

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

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

Нужно ли что-то знать про крипту, чтобы этим пользоваться?

Чтобы отправить сообщение — совсем ничего.

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

На каких платформах он работает?

macOS, iOS, Android, веб и расширение для браузера. Везде одинаковый интерфейс: то, чему научился на телефоне, ты уже знаешь на компьютере.

Можно пользоваться и вообще не трогать кошелёк?

Да. В деньгах здесь нет ничего обязательного. Группа без кошелька — это групповой чат, и она им и остаётся, пока кто-нибудь не откроет в ней кошелёк.

Деньги

Кто держит деньги группы?

Никто. В этом всё дело.

У группового кошелька нет владельца: ключ каждого подписанта создан на его собственном устройстве и там же остаётся, а адрес собран из всех сразу. Чтобы вывести из него деньги, нужно столько подписей, о скольких договорилась группа, — любые двое из трёх, любые пятеро из девяти, как поставили. Пока не подписало достаточно, платёж — это запрос.

Кто платит комиссию сети?

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

Какие сети и монеты?

Bitcoin, Ethereum, BNB, Tron и Solana, вместе с токенами на них. Они лежат в одном списке под общим балансом.

Каждая монета говорит, в какой она сети, и это сделано намеренно, а не для красоты: USDT в Tron и USDT в Ethereum — не одни и те же деньги, и список, где они одной строкой, — это список, из которого рано или поздно отправят не в ту сеть.

Что происходит, когда кто-то уходит из группы?

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

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

Вы можете заморозить или отменить платёж?

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

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

Приватность и своё хозяйство

Может ли сервер читать мои сообщения?

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

Это верно и для запросов на платёж, и для разговора вокруг них.

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

Сколько всё это хранится и на скольких людей рассчитано?

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

Настройки федерации по умолчанию рассчитаны примерно на сотню человек и по паре устройств на каждого, и каждое из этих чисел — строка в файле настроек, а не предел протокола. Групповой кошелёк на Bitcoin берёт до пятнадцати ключей с любым порогом между; на остальных сетях потолок — их собственный.

Шифрование вы придумали сами?

Нет. Это MLS, опубликованный как RFC 9420, и тот же стандарт используют другие мессенджеры — в этом и смысл назвать его, а не описать своими словами.

Что MLS делает важного именно для группы — это трудная часть: когда кто-то входит или выходит, ключи у всех меняются в этот самый момент, а не при следующем удобном случае.

А если я потеряю телефон?

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

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

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

Исходный код открыт?

Пока исходный код закрыт. Мы сообщим, когда он станет открытым.

Могу ли я поднять свой сервер?

Да — для запуска своего сервера есть Docker. Его можно развернуть на сервере компании, сообщества или на домашнем компьютере.

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

НАЧНИ ЗДЕСЬ

Начни пользоваться Compax

Скачай приложение, чтобы переписываться и пользоваться кошельком в одном месте