The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск p2p-мессенджера Communist 1.4"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для слежения за появлением новых сообщений в нити, нажмите "Проследить за развитием треда".
. "Выпуск p2p-мессенджера Communist 1.4" +/
Сообщение от Аноним (-), 25-Июн-22, 14:50 
> Не говоря уж о времени разбирать чужие решения и вникать в чужой код.
> Это не есть хорошо, но пока ситуация именно такова.

Я конечно понимаю что NIH штука кусачая, но вы и правда надеетесь дойти своим ходом до удачных идей быстрее чем суммарный общепланетарный интеллект по тематике?

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

А как он тогда задумывался? И что продумывалось?

> "Сначала сделать, потом сделать, чтобы работало, затем - чтобы работало хорошо".
> Сейчас проект на этапе "чтобы работало", дальше будет - "чтобы работало хорошо".

С точки зрения написания софта, некоторые решения бывает очень сложно переиграть "потом". А писать несколько раз одно и то же все-таки обидно и время очень жрет. Поэтому иногда имеет смысл сперва немного подумать, посмотреть как другие делали, что им икалось, а потом кодить, имхо.

> При работе с текстом от кодировок вы не уйдёте никак. Особенно
> в кроссплатформенном приложении.

С точки зрения именно нижнего уровня можно слать мсг как бинарный блоб в виде как его отдал более высокий уровень, без изменений. А хотел ли кто-то продвинуто парсить уникод это вообще вопрос номер два. Кто-то хотел, кому-то в боте обнаружения !help для реакции на команду хватило, как hardcoded константы в виде набора байтов. А заодно так можно при случае мелкую аватарку или кастомный смайлик какой слать, например.

И нет, icu там таки не линкуется. Просто это мои проблемы что делать с пришедшим мсг. Если продвинутый лингвизм, может и icu поюзать. А в простых случаях можно и забить на это. Зачем боту понимающему пяток команд типа !help сдался icu?

Это называется разделение функциональности. Название libtoxcore намекает что это core месенжера. А ui уже другой уровень абстракций. Вот он и займется этим - если вообще есть и оно ему надо.

> Только в Коммунисте использован ещё один трюк - "сложение" ключей, чтобы даже сам
> пользователь не знал, через какие ключи идёт обмен данными.

У токса на самом деле ключи разные быают. Есть ключ транспортного уровня, DHT ID. Чтобы послать сообщение между системами в DHT, надо знать DHT ID назначения. Знание IP:port недостаточно, надо знать еще DHT ID. Оно там походу ключ 25519, а ширина DHT специально 256 битов, как ключи 25519. У торента DHT 160 битов, как SHA1. Этого мало чтобы адрес DHT был ключом публичного крипто "напрямую".

Есть другой ключ, долговременный. DHT'шный ключ чисто технический и зачастую временный. У бутстрапов он постоянный, это несколько портит их приваси но они ж и так публичные. Однако они равноправны с юзерами, просто юзеры иногда меняют "технический" ключ DHT для улучшения приваси.

Долговременный ключ который юзеры дают как идентификатор для поиска - не есть DHT ID и в DHT нет никого с таким "адресом".

А почему оно на самом деле такое? А потому что https://nacl.cr.yp.to/box.html - основано на вот этой штуке. В более попсовом, быстром и портабельном виде это известно как libsodium.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск p2p-мессенджера Communist 1.4, opennews, 25-Июн-22, 09:38  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру