home.social

#rcq — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #rcq, aggregated by home.social.

fetched live
  1. Паничный PIN, который отдавал ключ от всего: разбор ошибок

    Мы делаем мессенджер RCQ ( rcq.app , исходники клиентов на github.com/rcq-messenger ). В нём есть штука, которую в разных приложениях называют по-разному: паничный PIN, duress PIN, подставной код. Смысл один. У вас просят разблокировать телефон, вы вводите второй PIN, и человек напротив видит приложение, в котором ничего интересного нет. В августе мы сели проверять какие у нас остались проблемы с этой фичей. Проверка началась как формальность перед внешним аудитом: пройти по коду, сверить с тем, что написано в модели угроз, поправить формулировки. Закончилась она тем, что на Android подставной PIN оказался не границей, а ключом от всей переписки.

    habr.com/ru/articles/1071030/

    #паничный_PIN #sqlcipher #pbkdf2 #argon2id #шифрование_на_устройстве #изъятие_телефона #Android #iOS #decoy #rcq

  2. Острова вместо серверов: как сделать мессенджер, который переживёт изъятие своего сервера

    Если вы хоть раз обсуждали «правильную» архитектуру мессенджера, вы знаете, что разговор всегда скатывается в два полюса, и оба плохие. Полюс первый: чистый P2P. Никаких серверов, клиенты говорят напрямую. Звучит красиво ровно до первого практического вопроса. Собеседник офлайн, а вы хотите написать ему сейчас. Куда уйдёт сообщение? В никуда, ждите, пока он включит телефон одновременно с вами. NAT, симметричные файрволы, спящий Android, который убивает фоновые сокеты. P2P горит на неудобстве. Полюс второй: сервер. Удобно, офлайн-доставка есть, пуши есть. И ровно одна коробка, в которой лежат личности всех, граф контактов всех, очереди всех. Эту коробку можно заблокировать по сети, можно изъять физически, можно прийти к оператору с предписанием. Серверные мессенджеры горят на сервере. Один из наших пользователей в бете сформулировал это лучше, чем мы в любой презентации: обсуждение альтернатив всегда имело два полюса. Либо ищем инфраструктуру как в Matrix, где все сидят по своим загонам и не пишут друг другу. Либо сидим без офлайн-сообщений как в P2P. Либо вообще не можем подключиться, потому что мосты для обхода блокировок съела моль. Мы делаем RCQ, мессенджер в духе старой аськи, но на современной крипте. И последние месяцы мы потратили на то, чтобы найти выход из этого треугольника. Ниже модель, к которой мы пришли, и, что важнее, места, где она пока спотыкается. Это не готовый протокол, это дизайн и первые слои. Но он внутренне непротиворечив, и спор о двух полюсах он закрывает.

    habr.com/ru/articles/1046291/

    #мессенджеры #децентрализация #федерация #обход_блокировок #сквозное_шифрование #p2p #метаданные #приватность #selfhosted #RCQ

  3. Острова и несколько личностей на одном устройстве: как мы делаем приватность частью архитектуры

    Когда делаешь приватный мессенджер, рано или поздно упираешься в неудобный вопрос: что именно защищает пользователя, ваши обещания или ваша архитектура. Обещания не проверить снаружи. Поэтому в RCQ мы старались, чтобы приватность держалась на устройстве и на структуре данных, а не на том, что мы хорошие ребята. В этой статье разберём две вещи, которые из этого выросли: острова (свой сервер) и мультиличность (несколько независимых зашифрованных аккаунтов на одном телефоне). И отдельно, без прикрас, расскажем, где у этого подхода границы. 1. Фундамент: сервер, который мало что знает Сначала коротко про основание, иначе дальше будет непонятно. - Идентификатор это UIN, просто число. Никакого номера телефона, никакой загрузки списка контактов. Аккаунт не привязан к личности, его можно сжечь и завести новый за секунды. - Sealed sender: отправитель запечатан внутри зашифрованного конверта, а не лежит в заголовке. На транспортном уровне сервер видит "кому доставить", но не "от кого". Кто это понимает, тот сразу видит, что граф общения на сервере не собирается. - Контент шифруется end-to-end: эфемерный X25519 на сообщение, HKDF, ChaCha20-Poly1305. Сервер пересылает шифротекст, ключей у него нет. Идея простая: сервер это в основном тупая труба для шифротекста. Нет телефонов, нет графа, нет содержимого. Это важно для всего дальнейшего. 2. Острова: свой сервер вместо нашего Раз сервер это тупая труба, его можно вынести куда угодно. Любая организация (редакция, юрфирма, команда, НКО) поднимает свой экземпляр RCQ, свой остров, и общается внутри него: свой сервер, свои UIN, своя история, свои группы, отдельно от публичной сети.

    habr.com/ru/articles/1041650/

    #RCQ #приватность #мессенджер #endtoend_шифрование #мультиаккаунт #selfhosted #sealed_sender #forward_secrecy #анонимность #open_source

  4. A big thank you to all thirty-five players who showed up to compete for #MTG's Standard #RCQ this past Saturday. Congratulations to the top eight finalists!

  5. Our next Magic Standard #RCQ is on March 7th. Win one of four invites to the upcoming #MTG Regional Championship, as well as promos and store credit. Tickets are available online now here: shorturl.at/9XkhE

    #magicthegathering