Отрицаемость по конструкции, а не по абзацу.
Большинство функций «отрицаемости» — это строка на маркетинговой странице. Decoy-кошелёк существует, говорит страница, поэтому под принуждением вы открываете decoy, а ваши реальные средства остаются скрытыми. Абзац делает всю работу; код делает очень мало. Вот что нужно, чтобы отрицаемость стала свойством системы.
Что такое decoy-сессия
Decoy — это не второй кошелёк, живущий рядом с реальным в общем бэкенде. Это отдельная сессия — отдельное runtime-состояние на устройстве со своим материалом ключей, представлением баланса и историей транзакций. Когда вы настраиваете duress PIN, вы подготавливаете вторую сессию на устройстве, а не «decoy-аккаунт» на сервере. Реальная сессия и decoy-сессия никогда не сосуществуют в месте, которое бэкенд может запросить.
Что означает «ноль вызовов к бэкенду»
Decoy-сессия делает ноль вызовов к бэкенду — не меньше, не вызовы, которые выглядят так же. Decoy читает балансы из публичной блокчейн-инфраструктуры (данные, которые любой может прочитать для любого адреса) и подписывает транзакции локально. Она никогда не аутентифицируется к инфраструктуре Veyrnox, потому что нет токена сессии для отправки и нет идентификатора пользователя для отправки. Бэкенд, по дизайну, никогда не уведомляется о существовании двух сессий.
Как это принудительно в коде
Отрицаемость, зависящая от того, что каждый будущий инженер запомнит не добавлять сетевой вызов в decoy-путь — это отрицаемость со сроком годности. Принуждение живёт в сетевом слое: decoy-сессия работает против поверхности без аутентифицированного канала к инфраструктуре Veyrnox — нет кода, достижимого из decoy-сессии, который построил бы аутентифицированный запрос. Это ограничение, а не политика. Нативный код кошелька ещё не опубликован; до этого эта страница ссылается на глубокий разбор дизайна, а не на конкретный файл. Смотрите текущий статус проверки на странице статуса функций.