Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C/C++ Сетевое программирование
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2016, 01:34   #1
offmonreal
Пользователь
 
Регистрация: 24.01.2008
Сообщений: 21
Восклицание Чат на C++ (free open source) не коммерческий прожект

Всем привет.
Хочу написать немного необычный чат.
Ищу желающих принять участие в опенсоурсном проекте.

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

Коротко что надо минимум от желающего.
Знания:
  • С++
  • QT
  • Linux
  • SmartGit (не принципиально)
  • IDE Netbeans

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

Серверная часть разрабатывается на линуксе клиентская кроссплатформенная (QT).

Возможно заинтересую начинающих программистов, код стараюсь досконально комментировать.
offmonreal вне форума Ответить с цитированием
Старый 27.10.2016, 11:00   #2
Avazart
Форумчанин
 
Аватар для Avazart
 
Регистрация: 13.08.2011
Сообщений: 184
По умолчанию

Не QT а Qt.
Для Qt есть QtCreator, а IDE Netbeans - это ...

Как собираетесь обходить NAT без "сервера" ?
Avazart вне форума Ответить с цитированием
Старый 27.10.2016, 11:13   #3
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от offmonreal Посмотреть сообщение
Нет единого сервера, нет баз данных, нет хранение истории переписки, нет регистрации, нет логинов, нет паролей.
Мне прям стало интересно - а что есть?
waleri вне форума Ответить с цитированием
Старый 27.10.2016, 11:52   #4
offmonreal
Пользователь
 
Регистрация: 24.01.2008
Сообщений: 21
Стрелка

Попробую приоткрыть чуть более схему работы.
Анализируя все существующее на сегодняшний день (системы общений, шифрования сообщений (данных)) я сделал вывод что они все имеют ряд уязвимости.
А способы которые не имеют этих уязвимостей либо напрямую запрещены государством или неудобны в использовании.
Я выбрал последний вариант и приступил....
Всю часть посвященную обычно серверу будет выполнять клиент
но только своих данных а не чужих.
Цитата:
Как собираетесь обходить NAT без "сервера" ?
Сервер - свободное программное обеспечение способное одновременно обрабатывать тысячи соединений и выполняет роль -почты(только пересылка данных). Если непонятно.. то проще говоря пользователь сам выберет сервер, которые в открытом доступе, для общения с определенным контактом.. надеюсь идею уловили.
Клиент будет хранить у себя все что нужно (и это главное неудобство для пользователя).
Цитата:
Не QT а Qt.
Для Qt есть QtCreator, а IDE Netbeans - это ...
Серверную часть разрабатываю в Netbeans.

Цитата:
Мне прям стало интересно - а что есть?
я вам ссылку в личку кину, дабы не пиарить сайты не по теме.
offmonreal вне форума Ответить с цитированием
Старый 27.10.2016, 12:01   #5
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
Сервер - свободное программное обеспечение способное одновременно обрабатывать тысячи соединений и выполняет роль -почты(только пересылка данных). Если непонятно.. то проще говоря пользователь сам выберет сервер, которые в открытом доступе, для общения с определенным контактом.. надеюсь идею уловили.
jabber переизобретаете? + вы же говорили без сервера, а тут он вот

Если у вас нет логинов, паролей и т.д. (хотя уже сомневаюсь - ведь по последнему посту клиент все хранит), то как я смогу из 1000 человек на сервере написать Алисе? Какие гарантии, что это Алиса меня зовет гулять, а не уродливый Боб?
p51x вне форума Ответить с цитированием
Старый 27.10.2016, 19:23   #6
offmonreal
Пользователь
 
Регистрация: 24.01.2008
Сообщений: 21
Вопрос

Цитата:
p51x
Я все верно описал.
Просто для того чтобы ответить на ваши вопросы мне прям все нужно досконально
здесь описать.

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

Цитата:
Какие гарантии, что это Алиса меня зовет гулять, а не уродливый Боб?
Хитрожопому Бобу придется как минимум завладеть секретным ключом(который не передается по сети) чтобы составить правильное сообщение которое до меня дойдет.

Остались вопросы пишите...
и это не жаба.. если уже есть что похожее дайте знать... велосипедов хватает
offmonreal вне форума Ответить с цитированием
Старый 27.10.2016, 20:32   #7
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

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

Цитата:
Хитрожопому Бобу придется как минимум завладеть секретным ключом(который не передается по сети) чтобы составить правильное сообщение которое до меня дойдет.
Цитата:
нет логинов, нет паролей.
1. Ключи откуда вылезли?
2. В большинстве современных мессенджеров ключ не передается и используются сессионные.
3. Т.е. приходим к стандартному вопросу: начальный обмен ключами
4. Если верить вашему первому посту, то п. 3 прийдется каждый раз повторять перед разговором
5. Если нет единого сервера и ничего не хранится, как узнать, что два сообщения с разных серверов пришли от одного и того же человека?

Цитата:
если уже есть что похожее дайте знать
Я уже привел. Там и шифрование есть, и не единыц сервер, и хранение истории можно отключить, и даже пересобрать под себя...
p51x вне форума Ответить с цитированием
Старый 27.10.2016, 22:08   #8
offmonreal
Пользователь
 
Регистрация: 24.01.2008
Сообщений: 21
По умолчанию

Уважаемый p51x не путайте меня и людей вашими "логическими" умозаключениями. Но рад что Вам
Цитата:
нравится
У меня нет желания писать очевидные вещи.. но я сделаю исключение еще разок
Если вам не интересно и вы считаете
Цитата:
меня не далеким
можете дальше не участвовать в дискуссии.
Так сказать я ВАС понял..

Повторюсь ПАРОЛЕЙ И ЛОГИНОВ НЕТ - в привычном понимании этого выражения.
ДНК и отпечатки пальцев или радужную оболочку глаза никто не называет
логином или паролем - но это тоже способы идентификации.
Логин- это в моем понимании идентификатор пользователя. Очень часто он несет смысловую нагрузку о человеке его придумавшем. А еще у некоторых одинаковые логины в разных системах что тоже для конфиденциальности плохо.
Пароль - это в моем понимании ключ который в паре с логином позволят идентифицироваться на сервере. Пароль как правило не очень длинные чтобы их было легче запомнить а у многих они еще и одинаковые на всех к примеру почтовых ящиках и форумах.. По стилю составленного пароля зачастую можно идентифицировать его владельца.

Надеюсь вы наконец-то уловили смысл разницы.

Вас интересовал вопрос начального обмена ключами.. т.е пунк 3.
Эту задачу я возложил на пользователя а не на систему.
На данном этапе проектирования я считаю что пользователь сам должен
побеспокоится о том как ему передать ключ.
Лично в руки на флеш носителе или отправить почтой зашифровав GPG.
Или еще как...
Я считаю что вариантов передачи ключа так много что это и будет частью залога безопасности перехвата его злоумышленниками.
offmonreal вне форума Ответить с цитированием
Старый 28.10.2016, 07:50   #9
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Тут уже давали эту ссылку, но повторю https://ru.wikipedia.org/wiki/%D0%AD...B5%D1%80%D0%B0

Цитата:
Надеюсь вы наконец-то уловили смысл разницы.
Надеюсь, раз вы пишите софт, а не на кухне рассуждаете о паролях, то опуститесь до нашего уровня и что-то почитаете по криптографии и защите информации.

Цитата:
Эту задачу я возложил на пользователя а не на систему.
Чем тогда ваш мессенджер будет толичаться от существующих?

Цитата:
Я считаю что вариантов передачи ключа так много что это и будет частью залога безопасности перехвата его злоумышленниками.
Вот оно солнце криптографии, а то всякие там математики придумывают алгоритмы разделения секретов и ассиметричную криптографию...

Итак, повторюсь, если нет единого сервера, нет логина, нет хранения ключа, ... как пользователи будут идентифицировать, что сегодняшний Вася и вчерашний это один и тот же человек? Перед каждым разговор обмениваться ключами? Зачем тогда ваш мессенджер?
p51x вне форума Ответить с цитированием
Старый 28.10.2016, 10:04   #10
offmonreal
Пользователь
 
Регистрация: 24.01.2008
Сообщений: 21
Смех

Цитата:
p51x
может плохо объясняю.. все может быть...
Цитата:
нет хранения ключа
А тут отсебячинка пошла... я такого не писал... и даже не намекал.
Еще разок попробую донести по поводу
Цитата:
3. Т.е. приходим к стандартному вопросу: начальный обмен ключами
Пользователь сам должен встретится лично со своим будущим контактом
и обменяться ключами (на флешке предположим).
Но все может быть... может он отправит почтой или скайпом..

Я читал про ассиметричную криптографию она поддается криптоанализу.
Даже на вики это не скрывают.. возможно вы до конца не читали но как правило в самом низу статьи на вики пишут о возможных способах анализа или взлома шифров.
Но есть алгоритмы шифрования с абсолютной стойкостью.. вот их и планируется использовать..
offmonreal вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Morfy - OPEN SOURCE CMS awilum WordPress и другие CMS 1 27.11.2015 10:29
Media Player Open Source coNsept Общие вопросы .NET 0 31.10.2014 15:12
Вы принимаете участие в open source проектах? Levsha100 Свободное общение 5 18.08.2012 10:42
Open Source asmars Общие вопросы C/C++ 3 11.03.2012 20:15
Open Source YaCy.net VirpeX Свободное общение 0 13.02.2011 02:39