ttldtor
из интересного: раздел 27.10 File systems
ttldtor
1176 страница
ttldtor
ну понятно, что содрано с буста
🦥Alex Fails
Ага, с него самого
Gleb
ну понятно, что содрано с буста
Так буст и есть платформа для обкатывания фич будущих стандартов, не?
Ssi
вроде да
Vadim
Может немного не по теме, клиент c++) и всё же спрошу у знатоков :) я пишу сервер, чтобы войти клиент и сервер должны создать секретные ключи. начальные фазы: 1. создание общего секретного ключа по Диффи-Хеллману 2. шифрование на основе этого ключа, сообщения от клиента содержащего хэш пароля, необходимые для входа и другие. _. Пересылка данных для создания ключей происходит по открытому каналу (Диффи-Хеллман это позволяет, 3я сторона не может получить секретный ключ на основе этих данных, так как у сервера и клиента есть еще один известный только им ключ). _. Процесс генерации ключей привязан на сервере к логину, то есть чтобы начать операцию серверу приходит сообщение вида: [1,1,Login] - код операции, фаза операции, для какого пользователя. _. 3я сторона может создать секретный ключ под любым логином, но чтобы войти необходим еще хэш пароля. _. Кто угодно может начать с сервером процесс генерации секретных ключей (!) тем самым мешая пользователю войти создавая левые ключи, которые временно будут привязаны к логину. Что с этим можно сделать? куда смотреть?
Anonymous
Может немного не по теме, клиент c++) и всё же спрошу у знатоков :) я пишу сервер, чтобы войти клиент и сервер должны создать секретные ключи. начальные фазы: 1. создание общего секретного ключа по Диффи-Хеллману 2. шифрование на основе этого ключа, сообщения от клиента содержащего хэш пароля, необходимые для входа и другие. _. Пересылка данных для создания ключей происходит по открытому каналу (Диффи-Хеллман это позволяет, 3я сторона не может получить секретный ключ на основе этих данных, так как у сервера и клиента есть еще один известный только им ключ). _. Процесс генерации ключей привязан на сервере к логину, то есть чтобы начать операцию серверу приходит сообщение вида: [1,1,Login] - код операции, фаза операции, для какого пользователя. _. 3я сторона может создать секретный ключ под любым логином, но чтобы войти необходим еще хэш пароля. _. Кто угодно может начать с сервером процесс генерации секретных ключей (!) тем самым мешая пользователю войти создавая левые ключи, которые временно будут привязаны к логину. Что с этим можно сделать? куда смотреть?
Главное - никогда не нарушать правило: "Никогда не пиши реализацию криптоалгоритмов самостоятельно". Копать в сторону openssl. Всё это давно реализовано.
Vadim
это не велосипед, я уже использую OpenSSL для создания ключей шифрования (DH), и шифрую алгоримом AES. тоже с помощью OpenSSL.
Vadim
Главное - никогда не нарушать правило: "Никогда не пиши реализацию криптоалгоритмов самостоятельно". Копать в сторону openssl. Всё это давно реализовано.
Rafael 🌵
А лучше стараться не использовать new без умных указателей )
Обычный RAII вроде это и говорит, а ради умных указателей тянуть буст - моветон
🦥Alex Fails
shared_vector
Rafael 🌵
Зачем буст? Они уже в стандарте
Он же сказал, что там легаси код
Rafael 🌵
Он же сказал, что там легаси код
Никто не будет везде new менять на умные поинтеры
Dumitru
Ааа я это пропустил
Rafael 🌵
Этими средствами разрабы яндекса даже пользуются
🦥Alex Fails
А я юзаю _CrtDumpMemoryLeaks()
Nikita
хорошо когда есть valgrind
Kirill
Я запилил Яндексу внешнюю сортировку.
Kirill
Вроде нормально.
Maxim
Это та которая слиянием?
Kirill
Да.
Kirill
А вы специально поддерживаете 400 участников? :) Вчера, вроде, 401 был.
Kirill
Народ, тут вопрос у товарища возник. Какая структура данных может быть использована для наиболее эффективного поиска объекта по набору тегов?
Artem
какая задача?
Artem
найти все объекты, удовлетворяющие набору тегов?
[object Object]
Привет, народ. Стоит задача, решить задачу. Что делать?
Artem
эффективность - это скорость поиска?
Artem
поиск происходит много раз?
Artem
насколько много обычно тегов у объектов, насколько много бывает тегов
Kirill
У объектов тегов около 20
ovf
и сколько тегов в наборе
Artem
да
Kirill
Всего тегов хз, но много
Artem
это монгольский язык
Artem
ты ищешь по набору и хочешь те, у которых есть весь набор
Kirill
ты ищешь по набору и хочешь те, у которых есть весь набор
Ну вот, допустим, у объекта 1 есть теги A, B и D. У объекта 2 есть теги B и C. Если запрос на тег B, то должны быть выданы оба (на самом деле, один случайный из них). Если запрос B и D, то только первый.
Kirill
Желательно еще, чтобы можно было задавать исключающие теги, т.е. те, которых НЕ должно быть у объекта.
Artem
ну если наборы неравномерно распределены
ovf
а объектов сколько?
Kirill
Допустим, несколько миллионов. :)
Maxim
Деревья приходят в голову сразу
Kirill
Деревья приходят в голову сразу
Что ключами является?
Artem
то можно хранить мапу "маска -> удовлетворяющие ей объекты" и хранить маски в дереве по частоте встречи тегов и при запросе находить в дереве все маски, удовлетворяющие твоей и по ним поконкатенировать результаты
ovf
ну в общем да, открываешь любую книгу про бд на главе "индексы" и реализуешь оттуда то, что нравится.
Kirill
Надо поесть. Потом осмыслю. Спасибо.
ovf
не забудь теги похешить
Vladislav
http://stackoverflow.com/questions/5201003/data-structure-for-querying-whether-a-given-subset-exists-in-a-collection-of-set
Ned
я попробую повторить свой недавний вопрос: есть ли какие-нибудь канонические правила на тему того, делать ли функцию членом, другом или оформлять вне класса?
Ned
в каком случае каким образом действовать?
Maxim
У макконела не смотрел?
Alexey
Здравый смысл?
🦥Alex Fails
эт где?
Стивен Макконелл. Совершенный код. Тут вроде в материалах есть. И скоро в кинотеатрах^W на канале @procxxlib
Maxim
Да. Я про него
🦥Alex Fails
Крутая книга. Очень классная. Хорошо структурирует инфу о проектировании софта
Kirill
Да, я кайфанул, когда прочитал.
Maxim
Угу. Можно прямо по главам идти, как по инструкции при разработке
🦥Alex Fails
Кстати, да. Надо б перечитать😊
Anonymous
А время?
Maxim
А что тебя смущает?
Anonymous
Время
🦥Alex Fails
Да быстро она читается
🦥Alex Fails
Это Кнут долго идет
🦥Alex Fails
Пряники лучше😂
Anonymous
О чём книга то?
Anonymous
Или в supro?
Maxim
Это Кнут долго идет
Ага, хотя бы потому что кнут раз в 5 больше
Rafael 🌵
ребзи, поясните за жизнь: у меня есть вектор и я хочу сделать shared_ptr на один из его объектов, как мне это сделать?
Rafael 🌵
надо обойтись без копирования