Многоуважаемые коллеги ! А не повторить ли нам подвиг RU.CRYPT 2001-го года выпуска и не написать ли FAQ по криптографии ? Всё-таки немало времени прошло, многие вещи изменились. Вопрос ставлю пока в общем ключе : Поддерживаете ли идею ? Какие основные направления наиболее интересны (теория / практика / готовое ПО / законы) ?
OLS Все интересно - теория, стандарты (ГОСТы и иностранные), протоколы, реализации алгоритмов и протоколов... а также - генерация ключей (особенно в асимметричной криптографии). Также нужно уточнить охватываемые области - симметричная крипто, асимметричная, хеши, криптоаналитика (методы атаки) и т.д....
OLS Чем больше инфы без воды, тем лучше. Для начинающих было бы хорошо разжевать теорию, при чем так, чтоб поняли даже те, кто не знают, что такое поле, кольцо или полином и тп. Вот это было бы отличным FAQ.
OLS, вы, как ТС, предлагайте план или, лучше сказать, оглавление будущего FAQ, а дальше - посмотрим, обсудим, согласуем...
1. Введение Что такое криптография ? Что такое стеганография ? Что такое кодирование ? Что может и что не может криптография ? Почему криптопреобразование должно быть необратимо по ключу ? Что такое криптоатака ? Что такое полный перебор ключа ? Как при полном переборе ключа определить, что ключ подошел, если исходный текст заранее неизвестен ? Каков размер стойкого ключа на сегодняшний день ? Что такое "пароль"/"парольная фраза" ? Почему зашифрованный текст не сжимается (архиваторами) ? Как определить по данным, каким алгоритмом зашифрованы данные ? 2. Теория и алгоритмы 2.1. Симметричная криптография 2.1.1. Бит-ориентированные поточные шифры 2.1.1.1. 2.1.1.2. Атаки на бит-ориентированные поточные шифры 2.1.2. Байт-ориентированные поточные шифры 2.1.3. Перестановочные шифры 2.1.4. Блочные подстановочные шифры 2.1.4.1. Основные принципы. Какую роль играет ключ ? Реализация необратимости по ключу. Линейные преобразования. Нелинейные преобразования. 2.1.4.2. Табличные подстановки. 2.1.4.3. DES 2.1.4.4. ГОСТ 28147-89 2.1.4.5. AES 2.1.4.6. Менее распространенные блочные шифры 2.1.4.7. Атаки на блочные шифры 2.1.4.8. Режимы сцепления 2.2. Хеш-функции 2.3. Асимметричное шифрование 2.4. ЭЦП 2.5. История криптографии 2.6. Современные направления развития классической криптографии 2.7. Квантовая криптография 3. Практическое применение Как по программному коду определить используемый криптоалгоритм ? 3.2. Форматы хранения 3.2.1. - ключей 3.2.2. - сертификатов 3.2.3. - зашифрованных данных 3.2.4. - подписанных данных 3.3. Использование криптографии в стандартизованных протоколах 3.4. Использование криптографии в известных программных продуктах 3.5. Программирование криптосредств 3.5.1. Интерфейс MS CryptoAPI 3.5.2. Библиотека OpenSSL 4. Законодательство в области криптографии, сертификация 5. Ссылки 5.1. Книги 5.2. Конференции 5.3. Форумы, ресурсы 5.4. Вводные статьи Всё, что выделено жирным - это разделы. Они требуют раскрытия до определенной глубины и наполнения собственно вопросами. Принимаю все предложения по структуре здесь или в личной почте. По факту обсуждения буду редактировать текущий пост. Предлагаю сами ответы пока сюда не включать - также можете высылать их мне, я их буду аккумулировать, а потом обсудим все сразу. Архив WASM.CRYPTO за выходные прочитал. Постарался выбрать и включить наиболее часто встречавшиеся нетривиальные вопросы.
субъективно поддерживаю абстрактную теорию после нескольких конкретных примеров, но все же мне кажется, что стоит перенести "Основные принципы" (2.1.4.1) в начало раздела (2.1.1). так будет более академично что ли в разделе 3.1 стоит перефразировать: "Какие криптоалгоритмы используются в известных продуктах", "Как по программному коду определить используемый криптоалгоритм". законодательство, как дисциплину, косвенно относящуюся к крипторафии, стоит вопхнуть в конец главы
OLS В главе 3 неплохо было бы рассмотреть секьюрити-протоколы передачи данных(типа https) и аутентификации.
Имелись в виду основные принципы именно блочного шифрования, т.к. у поточного они совершенно другие. С остальным согласен.
Предложения и замечания. Есличо не так, зарание сорри. 1. Разве целесообразно рассматривать "2.5. История криптографии" со всякими Цезарями, Вижинерами, Тритемиусами и Кардано сильно после DES, AES и ГОСТ? Имхо, надо наоборот: воткнуть общую историю криптографии и направления ее развития куда-то в начало раздела, пунктом "2.1". Где-то там же или чуть позже дать понятия "симметричный-асимметричный", "блоковый-поточный", "перестановки", "подстановки", "гаммирование" и т.п., а потом уже заниматься конкретикой. 2. Все таки добавить пункты "Поточные шифры", "самосинхронизация", "LFSR", "RC4", "А5", атаки на них и т.п.? 3. Скремблирование?
интереcный прож имхо. токо начат не c того боку. сперва надо взять двиг (напр mwlib, поскоку cмогет cлепить pdf бук по результатам) и кропать статейки потихоньку. а оглавление двиг cам слепит в лучшем видe
Всё так. Чем больше мнений, тем лучше, тем более что Ваше - совершенно адекватное. Про определения и понятия - согласен. А вот с историей - я вообще не уверен, что она нужна здесь. О ней очень много хороших статей есть с картинками и т.п., да и непосвященного человека она уводит сильно в сторону о реальности. С другой стороны очень хочется описать основы одноалфавитной и многоалфавитной замены и их вырожденные случаи по XOR и ADD, поскольку как раз они то реально встречаются до сих пор на практике. Как Ваше мнение - нужен ли подробный исторический экскурс ? Поточные уже есть. LFSR, RC4, A5 - обязательно будут. Тоже.
Исторические экскурсы совсем не нужны . Есть масса доступной литературы. ИМХО. А в главе 3 - Практическое применение неплохо было бы привести примеры программ. То есть вот такая конкретная программа использовала вот такой алгоритм . Ещё можно "зацепить" и аппаратные методы защиты (донглы , смарт-карты , магнитные карты и прочее)
Идея очень неплохая. Готов посильно помочь с наполнением. По существу: 2.3. Асимметричное шифрование лучше заменить на Асимметричная криптография. ECC, например, не особо используется для шифрования. И вообще, имеет смысл раскрыть раздел этот на подразделы: RSA, ECC, HFE. Т.е. сделать так, как сделано для блочных шифров чуть выше в оглавлении. Мне тоже эта идея нравится. По предыдущим пунктам можно книги найти легко. Про методы защиты на донглах, например, не особо есть литература. Только в сети инфа.
Исторические экскурсы обязательно нужны. Но в каком-то очень компактном, упорядоченном, формализованном виде. Имхо.