Криптография, стоит ли тратить время?
От: Максим Россия  
Дата: 13.02.22 10:03
Оценка:
По работе приходилось заниматься теорией кодирования для СХД (коды Рида-Соломона, поля Галуа и вот это вот все), тема очень интересная, но в целом, достаточно узкоспециализированная. Вероятность, что эти знанния пригодятся где-то еще не очень высока. Поскольку криптография опирается на схожий математический аппарат, подумываю не взглянуть ли в эту сторону. Как вы считаете, имеет ли смысл тратить год на это направление или выхлоп в итоге будет примерно как от теории кодирования?
Errare humanum est
Re: Криптография, стоит ли тратить время?
От: vsb Казахстан  
Дата: 13.02.22 10:09
Оценка: 4 (1) +3
Здравствуйте, Максим, Вы писали:

М>По работе приходилось заниматься теорией кодирования для СХД (коды Рида-Соломона, поля Галуа и вот это вот все), тема очень интересная, но в целом, достаточно узкоспециализированная. Вероятность, что эти знанния пригодятся где-то еще не очень высока. Поскольку криптография опирается на схожий математический аппарат, подумываю не взглянуть ли в эту сторону. Как вы считаете, имеет ли смысл тратить год на это направление или выхлоп в итоге будет примерно как от теории кодирования?


Ну моё имхо.

1. Общее понимание принципов криптографии и ориентирование в современных алгоритмах. Это лучше всего для любого разработчика, математика тут не нужна, а знания полезны и позволят не делать полную дичь.

2. Создание своих алгоритмов. Это никому не нужно, все алгоритмы уже созданы или будут созданы умнейшими людьми на планете, а в их число войти, думаю, малореально.

3. Взлом криптосхем. Вот тут уже нужно детальное понимание криптографических принципов, алгоритмов и тд. Чтобы понимать, когда определённое сочетание алгоритмов приводит к проблемам и взломать систему эксплуатируя эту проблему. Т.е. до пункта 1 большинство разработчиков не доходят и о криптографии имеют очень смутное впечатление по моему опыту, то в целом многие криптосхемы кривые и косые, но всё же просто так их не взломать без хороших знаний.

Теоретически ты можешь до пункта 3 дойти и ломать (или проверять) чужие криптосхемы. Но насколько это востребовано — я вообще не представляю.
Re[2]: Криптография, стоит ли тратить время?
От: Максим Россия  
Дата: 13.02.22 10:18
Оценка:
vsb>Ну моё имхо.

Спасибо за ответ. Да, пункт 1 одноназно будет полезен всем. Пункт 2 малореален для 99.999... людей — область очень консервативная, никто рисковать новыми схемами не будет. Да и как показывает практика, сделать что-то действительно надежное и новое задача крайне сложная. Пункт 3 мне не очень интересен.

А вот реализация существующих подходов/пртоколов/алгоритмов кому-то может быть интересна? В теории кодирования, допустим, тоже все изобретено 50 лет назад, но вот реализация под конкретную платформу/систему — задача очень актуальная.
Errare humanum est
Re[3]: Криптография, стоит ли тратить время?
От: andyp  
Дата: 13.02.22 11:13
Оценка: +2 :)
Здравствуйте, Максим, Вы писали:

М>... В теории кодирования, допустим, тоже все изобретено 50 лет назад...


Знатока сразу видать Берро написал свою первую статью про турбо-коды в 1997, fountain codes, polar codes из 2000х.
Re: Криптография, стоит ли тратить время?
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 13.02.22 15:06
Оценка: 4 (1)
Здравствуйте, Максим, Вы писали:

М>Как вы считаете, имеет ли смысл тратить год на это направление или выхлоп в итоге будет примерно как от теории кодирования?

Смысла нет если тебе по работе предложили этим позаниматься. Ты просто потратишь год, подзабудешь то что знал и деактуализируешь свои текущие знания которые приносят деньги. Это всё интересно в фоне изучать, дома, но не более.
Sic luceat lux!
Re: Криптография, стоит ли тратить время?
От: scf  
Дата: 13.02.22 15:39
Оценка: 4 (1) +1
Здравствуйте, Максим, Вы писали:

М>По работе приходилось заниматься теорией кодирования для СХД (коды Рида-Соломона, поля Галуа и вот это вот все), тема очень интересная, но в целом, достаточно узкоспециализированная. Вероятность, что эти знанния пригодятся где-то еще не очень высока. Поскольку криптография опирается на схожий математический аппарат, подумываю не взглянуть ли в эту сторону. Как вы считаете, имеет ли смысл тратить год на это направление или выхлоп в итоге будет примерно как от теории кодирования?


Я бы сказал, что для программиста это выхлоп неправильный. Годовая возня с числодробительными алгоритмами должна давать выхлоп в умении проектировать, реализовывать и тестировать числодробительные алгоритмы, без привязки к математике. Если математика первична, то на выходе получается математик-программист (придумаю алгоритм и закодирую его на сях самым ужасным образом), профессия значительно менее востребованная, чем программист-математик (Пишу качественные приложения, при необходимости могу найти/адаптировать и реализовать сложный алгоритм).
Re: Криптография, стоит ли тратить время?
От: m2l  
Дата: 13.02.22 15:42
Оценка: 4 (1) +1
Здравствуйте, Максим, Вы писали:

М>По работе приходилось заниматься теорией кодирования для СХД (коды Рида-Соломона, поля Галуа и вот это вот все), тема очень интересная, но в целом, достаточно узкоспециализированная. Вероятность, что эти знанния пригодятся где-то еще не очень высока. Поскольку криптография опирается на схожий математический аппарат, подумываю не взглянуть ли в эту сторону. Как вы считаете, имеет ли смысл тратить год на это направление или выхлоп в итоге будет примерно как от теории кодирования?


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

И да, насчёт схожего математического аппарата — это некоторая иллюзия.
Re[2]: Криптография, стоит ли тратить время?
От: Максим Россия  
Дата: 13.02.22 15:56
Оценка:
m2l>что ты имеешь в виду насчёт тратить время.

Имелось в виду изучение теории (различные криптографические алгоритмы и протоколы) и последующая реализация их на каких-нибудь конкретных платформах чтобы "набить руку". По моим подсчетам, это примерно год может занять (в фоне, после работы). Собственно хочу понять, можно ли потом такие знания "продать". Ну или можно забить и потрать год на погружение в ML или еще что-то востребованное.
Errare humanum est
Re: Криптография, стоит ли тратить время?
От: Pzz Россия https://github.com/alexpevzner
Дата: 13.02.22 16:51
Оценка: 4 (1) +2
Здравствуйте, Максим, Вы писали:

М>По работе приходилось заниматься теорией кодирования для СХД (коды Рида-Соломона, поля Галуа и вот это вот все), тема очень интересная, но в целом, достаточно узкоспециализированная. Вероятность, что эти знанния пригодятся где-то еще не очень высока. Поскольку криптография опирается на схожий математический аппарат, подумываю не взглянуть ли в эту сторону. Как вы считаете, имеет ли смысл тратить год на это направление или выхлоп в итоге будет примерно как от теории кодирования?


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

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

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

В общем, я думаю, криптографию надо знать и понимать в достаточной степени, чтобы уметь сознательно ее применять в своих программах (и вообще, осозновать ее применимость для решения тех или иных практических задач).
Re[3]: Криптография, стоит ли тратить время?
От: m2l  
Дата: 14.02.22 07:46
Оценка: 4 (1) +1
Здравствуйте, Максим, Вы писали:

М>Имелось в виду изучение теории (различные криптографические алгоритмы и протоколы) и последующая реализация их на каких-нибудь конкретных платформах чтобы "набить руку". По моим подсчетам, это примерно год может занять (в фоне, после работы). Собственно хочу понять, можно ли потом такие знания "продать". Ну или можно забить и потрать год на погружение в ML или еще что-то востребованное.


То, о чем ты говоришь вполне востребовано в сфере крипты/nft. Если желаешь в эту сферу — то наверное можно и за полгода руку набить. Но, если отступать от сугубо прикладного применения — то всё начинает упираться в довольно специфическую комбинацию разделов математики. Т.е. у тебя не будет линейного, поступательного развития, как с тем же программированием. Насколько ты глубоко сможешь погрузится в эту область, после определенной границы, будет зависит от того, как хорошо ты знаком с математикой — теория чисел, групп, теория вероятностей и математической статистики, всякие там исчисления и т.д. И, наверное, лучше иметь соответствующий склад ума.

С ML ситуация сейчас более размазанная. С одной стороны, там внутри тоже математика (но проще чем то что в крипте) и крайне желательно её знание. Но при этом это не обязательно, обучать работающие модельки можно и без какого-либо понимания как оно там внутри работает — и это вполне востребовано.
Re[2]: Криптография, стоит ли тратить время?
От: Sharov Россия  
Дата: 14.02.22 12:11
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>3. Взлом криптосхем. Вот тут уже нужно детальное понимание криптографических принципов, алгоритмов и тд. Чтобы понимать, когда определённое сочетание алгоритмов приводит к проблемам и взломать систему эксплуатируя эту проблему. Т.е. до пункта 1 большинство разработчиков не доходят и о криптографии имеют очень смутное впечатление по моему опыту, то в целом многие криптосхемы кривые и косые, но всё же просто так их не взломать без хороших знаний.

vsb>Теоретически ты можешь до пункта 3 дойти и ломать (или проверять) чужие криптосхемы. Но насколько это востребовано — я вообще не представляю.

Востребовано, особенно в ФСБ или АНБ. Но едва ли человек самостоятельно сможет дойти до такого уровня. Тут нужна
как минимум мехматовская подготовка, край ИКСИ (вроде так называется академия при ФСБ) закончить. Очень серьезная
мат. подготовка нужна, т.е. речь идет о профессии математик (криптограф).
Т.е. весьма не просто, а востребованность крайне специфическая -- секретность, подписки и т.п.
Безусловно, есть и частники, просто не понятна их бизнес модель в таком случае -- на чем они зарабатывают,
кто их клиенты, кроме гос. структур?
Кодом людям нужно помогать!
Re[3]: Криптография, стоит ли тратить время?
От: Максим Россия  
Дата: 14.02.22 12:28
Оценка:
S>Безусловно, есть и частники, просто не понятна их бизнес модель в таком случае -- на чем они зарабатывают,
S>кто их клиенты, кроме гос. структур?

Ну, например, всевозможные мессенджеры типа телеграма. Помню было много обсуждений насчет mtproto, кому-то ведь нужно было это реализовывать на конкретных платформах.
Возможно банковские/финансовые приложения, которые общаются с серверами должны на борту что-то подобное иметь. Речь именно о том, насколько могут быть востребованы навыки программирования подобных систем. Речи про работу на ФАПСИ/ФСБ, взломе протоколов итд нет.
Errare humanum est
Re[3]: Криптография, стоит ли тратить время?
От: Pzz Россия https://github.com/alexpevzner
Дата: 14.02.22 12:34
Оценка: :)
Здравствуйте, Sharov, Вы писали:

S>Востребовано, особенно в ФСБ или АНБ. Но едва ли человек самостоятельно сможет дойти до такого уровня. Тут нужна

S>как минимум мехматовская подготовка, край ИКСИ (вроде так называется академия при ФСБ) закончить. Очень серьезная
S>мат. подготовка нужна, т.е. речь идет о профессии математик (криптограф).

Я слышал, ФСБ само приходит к интересным ему людям, в образе мужичка с невзрачной внешностью и заманчивым предложением. И вопрос о родословной тех, к кому они приходят, волнует их не меньше, чем математические способности возможного кандидата.
Re[4]: Криптография, стоит ли тратить время?
От: Sharov Россия  
Дата: 14.02.22 12:37
Оценка: 4 (1)
Здравствуйте, Максим, Вы писали:

S>>Безусловно, есть и частники, просто не понятна их бизнес модель в таком случае -- на чем они зарабатывают,

S>>кто их клиенты, кроме гос. структур?
М>Ну, например, всевозможные мессенджеры типа телеграма. Помню было много обсуждений насчет mtproto, кому-то ведь нужно было это реализовывать на конкретных платформах.

Я, кстати, сам на днях хотел его поковырять, хотя бы на уровне вики. Пока не получилось.

М>Возможно банковские/финансовые приложения, которые общаются с серверами должны на борту что-то подобное иметь. Речь именно о том, насколько могут быть востребованы навыки программирования подобных систем. Речи про работу на ФАПСИ/ФСБ, взломе протоколов итд нет.


Востребовано, но я не думаю, что это возможно без глубокого погружения в область. Тут либо гении типа Дурова-старшего,
либо криптографы с навыками программирования. Это мое мнение, может все не так уж и страшно (сложно). В любом
случае для общего развития я бы взял специализацию на курсере какой-нибудь.
Кодом людям нужно помогать!
Re[4]: Криптография, стоит ли тратить время?
От: Sharov Россия  
Дата: 14.02.22 13:29
Оценка: 4 (1)
Здравствуйте, Pzz, Вы писали:

Pzz>Я слышал, ФСБ само приходит к интересным ему людям, в образе мужичка с невзрачной внешностью и заманчивым предложением. И вопрос о родословной тех, к кому они приходят, волнует их не меньше, чем математические способности возможного кандидата.


Увы, но приходится учитывать канал возможной утечки заранее. Таковы реалии. Я когда пытался учиться в аспирантуре
по своей специальности (кб, но по специальности я так и не работал), то для зачета по английскому надо было
тексты по специальности переводить. Я переводил текст, по-моему Нила Коблица, известного криптографа. Так
он в этой работе сокрушался по поводу открытости науки, ибо у них недавно была какая-то открытая тусовка по
криптографии , куда приехали ребята из АНБ, и настоятельно рекомендовали некоторые доклады убрать из
программы. Крайне специфичная и непростая эта область.
Кодом людям нужно помогать!
Re[4]: Криптография, стоит ли тратить время?
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 14.02.22 15:12
Оценка: +1
Здравствуйте, Максим, Вы писали:

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

Алгоритмы для mtproto создал Дуров старший который проф. математик с диссером. Какие алгоритмы будешь создавать ты, простой программист, не ясно.
М>Возможно банковские/финансовые приложения, которые общаются с серверами должны на борту что-то подобное иметь.
Без профильного мат. образования тебя не допустят к таким разработкам.
Sic luceat lux!
Re[5]: Криптография, стоит ли тратить время?
От: Максим Россия  
Дата: 14.02.22 15:54
Оценка:
М>>Ну, например, всевозможные мессенджеры типа телеграма. Помню было много обсуждений насчет mtproto, кому-то ведь нужно было это реализовывать на конкретных платформах.
K>Алгоритмы для mtproto создал Дуров старший который проф. математик с диссером. Какие алгоритмы будешь создавать ты, простой программист, не ясно.

Изобретение алгоритма — это научная работа, реализиция его на конкретной аппаратной платформе оптимальным образом — инженерная работа. Везде выше я имел именно инженерную составляющую. Например, математика, которая используется для реализайии RAID в Linux известна уже много десятилетий (http://ftp.dei.uc.pt/pub/linux/kernel/people/hpa/raid6.pdf), а вот реализация всего этого дела с использованием доступных для конкретного CPU инструкций актуально и сегодня. Но вот чтобы все это реализовать, нужно понимать, что ты делаешь, хотя конечно, новым Шенноном ты не станешь.
Errare humanum est
Re[2]: Криптография, стоит ли тратить время?
От: student__  
Дата: 17.02.22 13:50
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Теоретически ты можешь до пункта 3 дойти и ломать (или проверять) чужие криптосхемы. Но насколько это востребовано — я вообще не представляю.


все, что до 3 пункта включительно востребовано в любой конторе, реализующей функции защиты данных и/или системы.
Надо только понимать, что там не только сами алгоритмы шифрования, но и протоколы обмена ключами, архитектура менеджмента ключей и проч.
В пункте 3 без серьезного вклада ресурсов в изучение не разобраться. Т.е. это не просто пара учебников для бакалавров и пара-тройка стандартов, а принципиально более сложное предприятие.

Но в общем и целом, таки да, навык ценен для программиста. Как минимум надо иметь базовое представление о симметричной/асимметричной криптографии на примере типовых алгоритмов, понимать, как их реализовать, чтобы их сразу не взломали. Понимать на базовом уровне, с т.з. математики, почему их не просто взломать. Уметь рассчитать время брутфорса для конкретного алгоритма и конкретного железа. Иметь навык работы с конкретными библиотеками типа openssl.
Re: Криптография, стоит ли тратить время?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 17.02.22 14:03
Оценка: 6 (1) +1
Здравствуйте, Максим, Вы писали:

М>По работе приходилось заниматься теорией кодирования для СХД (коды Рида-Соломона, поля Галуа и вот это вот все), тема очень интересная, но в целом, достаточно узкоспециализированная. Вероятность, что эти знанния пригодятся где-то еще не очень высока. Поскольку криптография опирается на схожий математический аппарат, подумываю не взглянуть ли в эту сторону. Как вы считаете, имеет ли смысл тратить год на это направление или выхлоп в итоге будет примерно как от теории кодирования?


Если ты хочешь потратить время на PhD, то, по моему мнению, есть два реально классный направления в 2022 — криптография или теория распределенный систем. Если ты не хочешь так серьезно вкрадываться, то распределенные системы еще куда ни шло, но криптографию ну его нафиг. Очень объемный и сложный математический аппарат, без которого как специалист ты довольно бесполезен. Да, всякие бокчейны (без реального понимания базы) и т.д. принесут какие-то деньги, но в сравнении с реальными специалистами ты будешь как очередной "входитель в Дата Сайнс" на фоне Kaggle grandmaster. А оно надо?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.