Комментарии 86
Звучит, конечно, неплохо - а практическое применение есть? Звучит как будто максимум можно организовать локальный домовой чат, ибо "неограниченное покрытие сети" расчитывает на наличие приложения + включенный bt у всех вокруг.
Кажется очевидным как минимум одно: использование на протестах, когда глушат интернет. И помнится, что возможность организации децентрализованного чата у кого-то (может Signal?) уже была.
Bt LE глушится прям вообще минимальными мощностями только вот.
Briar
Firechat
Была. Вот, наслаждайтесь.
Briar — одна из децентрализованных сетей с открытым исходным кодом без централизованных серверов и с минимальной зависимостью от внешней инфраструктуры. Соединения выполняются через Bluetooth, Wi-Fi или через Интернет через Tor, и все сообщения зашифрованы оконечным шифрованием. Соответствующий контент хранится в зашифрованном виде на устройствах участников. Долгосрочные планы для проекта «включая блоги, картографирование кризисов и совместное редактирование документов».
(Википедия)
И это, кажется, не единственный такой проект.
У детища Дорси более экономное потребление энергии. Для смартфона - по сути, на уровне паразитных потерь. Но и глушится BLE гораздо легче по той же причине. Я бы, скорее, предположил, что это средство общения в тех местах, где сотовая сеть перегружена или по каким-то причинам недоступна. В 2018 я был на мероприятии, где у того же Билайна сети не было настолько, что иногда телефон просто не видел оператора. Благо, у меня были SIM от других операторов и связь у меня всё-таки был - я в том месте был не впервые, поэтому подготовился. И подозреваю, что проблема никуда не делась до сих пор. А ещё должно, наверное, зайти туристам.
Но зачем? Типичному домовому чату гораздо лучше живется в обычных мессенджерах.
Да, минимум затрат со стороны организатора (создать группу в любом мессенджере и повесить объявления в подъездах), минимум усилий со стороны "опытных пользователей ПК" (особенно, если ссылку повесить в виде QR-кода), существование - пока существует мессенджер, а если что - процедура повторяется с дополнительной рассылкой в ещё существующем чате.
Но для особо тяжёлых случаев подобный мессенджер - неплохой вариант. Но, опять же, его надо будет как-то раздать. У того же Briar-а есть такая функция.
Но, что важно, у Bichat нет клиентов ни подо что, кроме продукции Apple. То есть в реальной жизни эта штука пока что неприменима от слова "совсем".
Проблем как раз море.
Пользователь уехал на работу и не видит сообщений. Для типичного пользователя «софт плохой не работает». Видосик со своим котиком который случайно выбежал и добрый человек ищет хозяина он не увидит.
Ставить еще приложение. Зачем? У него уже есть парочка.
Видосик с потерявшимся у подъезда котиком в такой мессенджер пролезет? А в обычный пролезет.
Пользователь просто живет чуть подальше и за тегами чуть потолще. Все, опять не работает.
Фоточки клубники с развала за углом не отправить. И опять не работает.
В любом обычном мессенджере по этом все просто работает.
Я понимаю. Я и написал, что для совсем тяжёлых случаев. Например, как вот сейчас ломают сети и местами пропадает мобильная связь. Но тут тот же Briar оказывается куда более интересным вариантом, поскольку: (1) он УЖЕ умеет работать и по WiFi (напрямую), и по Bluetooth, и через Интернет (там указан TOR, но, возможно, и без него может, потому что TOR ещё поднять надо), и (2) может раздавать себя, для чего надо просто пройти простую процедуру внутри приложения и включить точку доступа. То есть один человек с таким приложением в доме или группе домов может организовать такую связь в случае обрыва связи ради спасения нас, умом скорбных, от коварного Запада. А ещё у них есть парное приложение Briar Mail как раз для случаев временного выпадения из сети.
Кажется, стоит изучить Briar внимательнее: в Томске пока что связь не теряется, но мало ли.
Фатальный недостаток бриара - нет клиента под яблоко.
Они писали, что связано это с какими-то ограничениями платформы.
Там есть минимум одно ограничение - нельзя поставить приложение из файла. А у Бриара это одна из важных фишек: имея установленное приложение, можно его раздавать окружающим. То есть один человек с приложением способен построить вокруг себя сеть. А с продукцией Apple такой фокус не прокатит. Хотя, кажется, Apple что-то там такое собиралась сделать, чтобы можно было ставить сторонние магазины, но насчёт установки просто из файла не уверен. А без этого построить сеть не выйдет, ведь один из сценариев - отключение доступа в Интернет или радикально ухудшение этого доступа. Какой уж тут AppStore!
Ещё раз: для повседневного использования - не самый удобный мессенджер. В том числе и потому, что нет нормальных клиентов для дэсктопов. По той же причине я практически не использую WhatsApp: когда я за компьютером, я не отслеживаю то, что приходит на телефон, потому что большая часть общения происходит в Telegram, для которого клиент как раз есть. Но в случае сбоя связи какую-то связь с соседями такие мессенджеры как Briar организовать могут. Хорошим вариантом была бы внутридомовая сеть, но её надо поддерживать, а это не так просто, чтобы такое мог сделать кто угодно, и она требует оборудования. А далеко не все маршрутизаторы такое могут. Особенно, если это оборудование провайдера, а не собственное.
То есть если Briar доуступен только на Андройде то ок.
А если Bichat на Apple, то " эта штука неприменима" ?
:)
https://briarproject.org/download-briar-desktop/ — частично есть на десктопах, в отличие от :-)
Не умеет там bluetooth и тор.
Зачем сравнивать несравнимое? Все эти децентрализованные мессенджеры НЕ замена телеге или вотсапу. Это нишевой продукт для специфических ситуаций.
Например, в январе 2022 года в Казахстане полностью вырубили интернет и мобильную связь на фоне массовых протестов. Вот в таком случае сабж мог бы обеспечить какую-никакую связь. Впрочем, для этого нужно достаточное количество организованных людей, да ещё и правильно расставленных.
Проще было бы тупо раздать друг другу рации.
Briar может всё то же самое, плюс может раздавать себя. И да, достаточно расставить людей и обеспечить их устройства питанием, чтобы они могли, в том числе, раздавать приложение.
Почему у всех отключение интернета ассоциируется только с массовыми протестами? Как же РФ на 9 мая и Иран во время вооруженного конфликта с Израилем?
При должном количестве устройств покрытие сети ничем не ограничено.

Есть ощущение, что тру децентрализованный мессенджер можно сделать на базе крипты, желательно POW.
Сообщения хранятся в блокчейне, ключи только на устройствах пользователей, каждое сообщение стоит несколько копеек. Все прозрачно, но без ключей нет возможности прочитать.
Очень слабая пропускная способность этих pow сетей.
Покажите мне тех странных людей которые будут платить за сообщения в мессенджерах.
Если речь о нескольких копейках за сообщение, и некоторых неоспоримых плюсах такого мессенжера, то скорее покажите мне этих странных людей, для кого это было бы принципиальной проблемой.
Другое дело, что ни о каких нескольких копейках на PoW речи не может и быть. Все эти системы набирают блок тразакций, объемом в единицы мегабайт, раз в n минут, затем подписывают и распространяют остальным участникам сети. Вся пропускная способность всей сети измеряется мегабайтами в минуту. Именно поэтому, чтобы отправить кому-то биток в его сети сравнительно быстро, надо платить суммы в единицах долларов, потому что сама отправка это и есть сообщение о деталях этой отправки, зачастую меньше килобайта текста, и именно столько, со стороны сети стоит его вписать в блокчейн.
И вот такое, да, для мессенжера, не нужно.
Я так и н же понял что я получу заплатив одну копейку за то что я отправил вот этого котика в вашем мессенджере? И что потеряют отправив его в соседнем бесплатно?
Котика можете заменить на список покупок / вопрос когда будешь / фотки с рыбалки и все остальное типичное.
Не продали.
Есть kaspa у которой 10 блоков в секунду и обещают 100 блоков когда-нибудь. Вполне себе скорости.
Покажите мне этих странных людей, которые будут платить, чтобы заплатить (чтобы оплата прошла). Ах да...
А СМС совсем никто не пользовался за всю его историю?
ДругВокруг - в общем чате все сообщения платные.
Блокчейн? В мессенджер? А зачем? А уж хранение сообщений в блокчейне…
Интересно, как у него сделана маршрутизация. Если всё отправляется всем вокруг в надежде, что однажды сообщение дойдёт, то начнётся шторм из сообщений. Если считать число ретрансляций и удалять сообщения, которые прошли N клиентов, то не будет никакой гарантии доставки. Если вокруг приёмника много других клиентов, а отправитель вне зоны действия, то приёмника зафлудят повторами.
Что-то мне кажется трафик там минимальный будет, до тех пор пока там только текст. Для длинных текстов можно лимит сделать и бан для флудеров. В остальном не выглядит как проблема.
А если два района города друг с другом переписываются, но между ними узкая цепочка посредников шириной в одно устройство?
Всё равно меньше чем видео-трафик, текст он очень не большой.
Но и тут всего лишь блютус. Мегабит с небольшим в секунду вроде бы при хорошем раскладе.
это целый мегабит (и более - в расширенном режиме). люди в интернет лазили на 64 и менее, а тут - целый мегаабит. причем передаем 256 байт зашифрованного текста.
Мегабит в BLE это низкоуровневая скорость передачи одного пакета. Ради Low Energy между пакетами вставлена куча пауз, полудуплексность, подтвеждение каждого пакета, в итоге от мегабита остаётся от силы пара кбайт/с, в лучшем случае - несколько десятков кбайт/с, если устройства поддерживают все последние стандарты и разрешают приложениям выставлять минимальные тайминги
Ну почему, в синтетических тестах при физической скорости в 1М, пропускная способность будет в районе 700к (это еще от конкретной железки зависит).
Да и честная скорость уж точно не 2к, наушники же прекрасно передают звук, как через пропритарные кодеки поверх BLE, так и используя кодеки BLE.
Это вероятно специально настроенные железки, где все включено и тюнингованно. И iOS, и Андроид, насколько я знаю, имеют ограничения на Connection interval и не используют этот интервал полностью, что сильно ограничивает производительность BLE.
Нашел вот такую статью, где на 1М Phy выжали 478 Кбит/с (60КБ/с) при теоретическом лимите в 660 КБит/с, но оба девайса - микроконтроллеры nrf52 со вручную настроенными тайминигами. Для сравнения практический пример: когда андроид-приложение nRF Connect заливает прошивку на тот же микроконтроллер nRF52, скорость выходит около 5Кб/с.
Да и честная скорость уж точно не 2к, наушники же прекрасно передают звук, как через пропритарные кодеки поверх BLE, так и используя кодеки BLE.
Вы про BLE Audio с телефона на наушники? Если честно, еще не держал таких в руках, но думаю, что там OS подкручивает параметры BLE так, как не доступно простому приложению.
Но признаю, используя все фичи BLE на обоих микроконтроллерах (2M Phy, Data length extension), в этой же статье была достигнута скорость 1371 Кбит/с (170 КБ/с) при теоретическом пределе в 1400.
Как я понимаю в синтетических тестах идет стриминг данных из мастера в слейв нотификациями без подтверждения, отсюда и такие скорости.
Скорость прошивки nRF52 может быть низкой не из за BLE, а из за внутреннего флеша, там же есть задержки при сохранении страниц. У нордика в этом плане грустно, до 90 мс на страницу, это прям очень долго.
Нотификации без подтверждения это само собой, но там на более нижнем уровне (LL) все равно стороны обязательно чередуются и каждый следующий пакет подтверждат предыдущий (битами SN и NESN).
Скорость прошивки nRF52 может быть низкой не из за BLE, а из за внутреннего флеша, там же есть задержки при сохранении страниц.
Да, наверное вы правы
Наушники в основном используют ВТ классик протокол. Поддержка 2mbps для BLE отсутствует в очень многих моделях телефонов и работать это не будет. Поможет только замена чипов. А на 1 mbps вы много не наслушаете.
Они вроде где-то писали как раз что максимальное число узлов = 7...
ttl, сообщение проходит не больше "семи рук". А количество узлов по идее ограничивается только числом подключившихся/отвалившихся в секунду.
Я подумал что это приложение работает на устройствах LoRa с прошивкой Meshtastic. Там да, по bluetooth к телефону подключается передатчик и через мобильный интерфейс можно отправить сообщение другому узлу или нескольким. Такая связь работает в условиях полного отсутствия мобильных сетей и интернета. Сами устройства не дорогие, а корпус можно распечатать на 3d принтере.
Где-то попадался проект с расстановкой таких вот узлов вдоль размеченных туристических троп, да и просто в гребенях, где нормальной связи нет и не будет, пока Маску не разрашет работать на территории РФ.
Если коротко, то я бы сделал так: столбик с солнечной панелью и/или ветрогенератором, аккумулятор (даже не слишком толстого будет достаточно, поскольку в течении суток всегда есть подзарядка) с теплорегуляцией, узел LoRa с GNSS и Bluetooth с WiFi-точкой для улучшения позиционирования клиентов и раздачи приложения в аварийных случаях.
Лул, помню был на j2me и симбиан. Все новое забытое старое.
там еще наполеоновские планы https://github.com/jackjackbits/bitchat/blob/main/WIFI_DIRECT_PLAN.md
и lora и wifi и ультразвук
протокол и принципы работы расписаны подробнеше но перегонять со swift придется толпу кода
Как бы не проще было бы в тот же Briar встроить поддержку BLE, если она там уже не встроена. А всё остальное у него уже есть.
P.S. А, нет, LoRa там нет, потому что это дополнительное устройство нужно. А стандартных как бы тоже нет. Я имею в виду, готовых устройств, способных через Bluetooth|/BLE связываться с телефоном одним концом и с Mesh-сетью LoRa другим.
В текущем виде это похоже на бред. Там радиус заявлен предельный порядка 300 метров.
Самая главная ошибка в том, что это в принципе работать не будет если вокруг нет толпы таких же отбитых гиков с включенным блютут и ретрансляторами.
Не очень понятно что мешало сразу на wi-fi делать.
Если б заявляли это просто как прикол было б даже забавно — использовать это например для чата на каких-то конференциях... Пока что выглядит как очередная всратая шизуха от типа который убедил весь мир что чирикать твитами по 140 символов это прикольно, а комменты под постами не нужны.
Судя по всему, они переизобрели Fido?
Всё новое – это хорошо забытое старое
Супер странная история.
У BLE mesh за одну посылку можно передать 12 байт полезной нагрузки. Если реальное сообщение больше, то оно сегментируется кусочки. При этом, если сообщений много, то пропускная способность сети падает довольно заметно.
Второе - это авторизация в сети. В BLE mesh могут заходить только авторизованные устройства, в Mesh 1.0 это прям физическая приблуда для авторизации или телефон в этой роли. И им надо подходить к каждому авторизуемому устройству и пускать в сеть.
В 1.1 ввели удаленную авторизацию, но опять же должно быть центральное устройство которое управляет авторизацией устройств в сети.
Возможно все участники сети могут авторизовывать друг друга, но тогда и ключики должны быть у всех.
Ну и третье, BLE mesh это не mesh сеть, там просто просто широковещательно рассылаются пакеты с количеством "хопов" указанным отправителем
Кажется, просто пытаются повторить то, что уже сделано в проекте Briar. Но там хотя бы можно делать удалённую авторизацию в сети "знакомых". Ну и, в целом, то, что надо лично подойти, в таких проектах "не баг, а фича", потому что они строятся на доверии. То есть это сеть для "друзей", а не для всех. А "для всех" - это обычные MESH-сети вроде CJDNS.
BLE mesh
да там похоже только название одинаковое. по синезубу то все лепят кто что хочет
static let serviceUUID = CBUUID(string: "F47B5E2D-4A9E-4C5A-9B3F-8E1D2C3A4B5C")
static let characteristicUUID = CBUUID(string: "A1B2C3D4-E5F6-4A5B-8C9D-0E1F2A3B4C5D")
что то подскажут эти цифры?
стандартные uuid
0x2ADB Mesh Provisioning Data In
0x2ADC Mesh Provisioning Data Out
0x2ADD Mesh Proxy Data In
0x2ADE Mesh Proxy Data Out
00001827-0000-1000-8000-00805f9b34fb "Mesh Provisioning Service"
00001828-0000-1000-8000-00805f9b34fb "Mesh Proxy Service"
вроде никак не корелирует
В BLE 128 битные UUID обычно для проприетарных сервисов, стандартизированные сервисы 16 битные.
Но мэш трогал не так плотно, чтобы ответить в соответствии со стандартом тут сделано или нет
На мой взгляд такие вещи нужно начинать как протокол сообщений, а поверх можно уже и мессенджеры и игры разрабатывать и шлюзы прикручивать.
Читаю эту фигню и очень огорчен :( Идиотизм "создателей продуктов" перехлестывает через край здравого смысла пено-бурлящим океаном дерьма... Когда то очень очень давно, в далекой далекой галактике я сделал такую шуку: https://github.com/sevstels/Ubertooth-Win Она крошит BLE как белка орехи. О какой безопасности мы говорим, "создатели"?! Относительно тезиса о невозможности блокировки. Снова херня. У BLE 3 канала установления соединения. достаточно туда повесить 3 передатчика на пару ватт и всё в радиусе нескольких км перестанет соединяться. Есть еще достаточно простых методов чтоб это перестало работать. Но они думаю не пригодятся. Ведь создатель этого "криминального шедевра" не подумал, что при первом же шухере, спецслужбы каждого государства захотят достать его из под дивана и засунуть ему паяльник в отверстие сзади...
Все обсуждают передачу сообщений.
1) А как найти нужный контакт? Публиковать в сеть свой ключ?
2) А как убедиться что контакт не поддельный в итоге? (Заменил символ в ключе и уже другой контакт, централизованной проверки нет, человек хрен такие ключи строки разберет сам проверит)
3) А как понять кто тебе написал?
4) Как перенести свой аккаунт на другое устройство?
Для всех более идеальный вариант:
1) делаем приложение которое через известные мессенджеры передает шифрованные сообщения
2) шифруем сообщения ключами переданными лично при встрече
А еще очевидна проблема зависающих сообщений не получивших ответа о получении:
1) сколько их хранить? 1день, месяц, год?
2) рейтинг узлов. Надо ли передавать сообщение на узел который не передает их дальше?
Джек Дорси представил Bitchat — децентрализованный мессенджер на базе Bluetooth Low Energy