 
				| # | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ | 
|---|---|---|---|---|---|
| 1 |  Перестановочный шифр | 1 тест | |||
| Метод шифрования перестановочным шифром. На этом уроке мы обсудим, чем отличается шифрование от кодирования и познакомимся с перестановочным шифром. | |||||
| 2 | Перестановочный шифр - Форма | 2 теста | |||
| На этом уроке мы создадим пользовательскую форму для запроса данных и отображения результатов шифрования. | |||||
| 3 | Перестановочный шифр - 1 этап шифровки | 1 тест | |||
| На этом уроке мы напишем функцию для заполнения первой сетки. | |||||
| 4 | Перестановочный шифр - Алфавитный ключ | 2 теста | |||
| На этом уроке мы напишем функцию getAbc(), которая будет сортировать буквы ключа по алфавиту. Причём перестановки делать вместе с целым массивом. | |||||
| 5 | Перестановочный шифр - 2 этап шифровки | 1 тест | |||
| На этом уроке мы допишем шифрование текста. Расставим стобцы в нужном порядке, скопируем столбцы из первой таблицы. выпишем все буквы в результат. И получим готовую шифровальную программу! Останется только научиться расшифровывать. Дополнительное задание Расшифровать сообщение: ДМПЯЕ СО СЕ Л ЧПЬВАИЕО.ТНЛ.БУЁТЯЕЯУ Ключ: ФОРМУЛИСТ | |||||
| 6 | Перестановочный шифр - 1 этап дешифровки | 1 тест | |||
| На этом уроке мы начнём дешифровку. Для этого нужно выполнить действие, обратное последнему при шифровании. | |||||
| 7 | Перестановочный шифр - 2 этап дешифровки | 2 теста | |||
| На этом уроке мы закончим дешифровку и создание нашей программы. | |||||
| 8 | Перестановочный шифр - Рефакторинг | 1 тест | |||
| На этом уроке мы порефакторим код нашей программы. Выделим в метод повторяющийся код формирования столбцов, упростим алгоритм сортировки, передлаем проверку на ошибки и т.д. Рекомендуется сначала просто посмотреть этот урок. А потом по памяти сделать те изменения, которые пожелаете. Напишите, что ещё можно было бы порефакторить. | |||||
| 9 | Полиалфавитный шифр Виженера | 2 теста | |||
| Мы начинаем создание ещё одной шифровальной программы: полиалфавитный шифр Виженера. Для начала зашифруйте фразу ФОРМУЛАПРОГРАММИСТА используя ключ «СИ». | |||||
| 10 | Полиалфавитный шифр - Форма | 1 тест | |||
| На этом уроке мы создадим форму и разместим на ней все необходимые визуальные компоненты. Дайте всем компонентам адекватные имена. Список всех имён можно увидеть в конце урока. | |||||
| 11 | Полиалфавитный шифр - Ключевая таблица | 2 теста | |||
| На этом уроке мы наконец-таки приступим к созданию алгоритма. Мы напишем функцию fillKeyTable (string key), которая создаст таблицу для де/шифрования для указанного ключа. | |||||
| 12 | Полиалфавитный шифр - Шифровка | 2 теста | |||
| На этом уроке мы завершим алгоритм шифрования. Мы напишем функцию fillGrid1(), которая заполняет первую сетку и попутно формирует зашифрованное сообщение. Расшифровать фразу "Ч-ДЬЁЫЪ-Б-ВЖШСГЫБВЛЩ" с ключом "ШАРП". | |||||
| 13 | Полиалфавитный шифр - Дешифровка | 2 теста | |||
| На этом уроке мы закончим создание этой программы. Напишем функцию fillGrid2() по аналогии с предыдущей. В конце урока я покажу, как можно расшифровать сообщения используя алгоритм шифровки, просто заменив ключ на "обратный". Задание: Найти ключ обратный "ШАРП". | |||||
| 14 | Поточный шифр Виженера | 1 тест | |||
| Приступаем к следующей шифровальной программе - поточный метод Виженера. Ваше задание - зашифровать слово "ВИДЕОШАРП" используя ключ "СИ". | |||||
| 15 | Поточный шифр - Шифровка | 1 тест | |||
| На этом уроке мы познакомимся с поточным шифром Виженера. Этот алгоритм очень похож на предыдущий, поэтому мы будем модифицировать предыдущую программу. | |||||
| 16 | Поточный шифр - Дешифровка | 2 теста | |||
| На этом уроке мы завершим переделку алгоритма для поточного метода шифра Виженера. | |||||
| 17 | RSA - Идея алгоритма | 3 теста | |||
| На этом уроке мы начнём создание алгоритма шифрования RSA. | |||||
| 18 | RSA - Экранная форма | 2 теста | |||
| На этом уроке мы создадим новый проект в Visual Studio, подготовим всё необходимое для реализации алгоритма. | |||||
| 19 | RSA - Простые случайные числа | 2 теста | |||
| На этом уроке мы приступаем к заполнению ранее созданной формы. Так же создадим отдельный класс для логики RSA шифрования. Реализуем генерацию простых чисел для дальнейшего использования при шифровании. | |||||
| 20 | RSA - Открытый и секретный ключ | 2 теста | |||
| На этом уроке мы реализуем генерацию открытого и секретного ключей. | |||||
| 21 | RSA - Буквы столбиком | 1 тест | |||
| На этом уроке мы подводим итоги прошлого урока. Сформируем пары открытого и закрытого ключей. | |||||
| 22 | RSA - Де/шифровка | 1 тест | |||
| На этом уроке мы приступаем к реализации шифрования/дешифрования нашего сообщения алгоритмом RSA. | |||||
| 23 | Ключевой обмен Диффи-Хеллмана | 1 тест | |||
| На этом уроке мы познакомимся с алгоритмом Диффи-Хеллмана по обмену секретными ключами. Мы продемонстрируем работу алгоритма сначала с цветами, а потом с небольшими целыми числами. | |||||
| 24 | Ключевой обмен Диффи-Хеллмана - Форма |  | |||
| На этом уроке мы скомпонуем форму для нашей программы и дадим имена всем текстовым полям и кнопкам. | |||||
| 25 | Ключевой обмен Диффи-Хеллмана - Случайное простое число | 2 теста | |||
| На этом уроке мы сделаем алгоритм поиска случайного простого числа и выбора основания. Также напишем функцию умножения по модулю и возведения в степень. | |||||
| 26 | Ключевой обмен Диффи-Хеллмана - Общий секретный ключ | 1 тест | |||
| На этом уроке мы допишем программу до конца. Сделаем генерацию случайных секретных чисел. И напишем алгоритм обмена секретным ключом. | |||||
| 27 | ФИНАЛЬНЫЙ УРОК | без видео 2 теста | |||
| Поздравляю, ты завершил основную часть курса по Шифрованию. Оставь, пожалуйста, отзыв об этом шифровальном курсе. Что тебе понравилось, что можно было бы добавить. Какой курс ты будешь проходить следующим? | |||||
| Итого: 27 видеоуроков | 6 час. 39 мин. 41 тест | 17 чел. | |||
| Финалисты: Tekashnik, Новопашин Владимир, Александр Р., chokayes, Александр, Слава, Иван Воронин, Yefim, vip, Александр, DimanDOS, Max, Кирилл, Katerina, Mr.Smitt, Anatoli, MaxB . | |||||