Безпека програм та даних

Спеціальність: Інженерія програмного забезпечення
Код дисципліни: 6.121.00.O.037
Кількість кредитів: 4.00
Кафедра: Програмне забезпечення
Лектор: Сенів Максим Михайлович
Семестр: 7 семестр
Форма навчання: денна
Мета вивчення дисципліни: Метою викладання дисципліни є вивчення студентами основних понять захисту інформації та безпеки даних, видів порушень інформаційної безпеки та основних механізмів безпеки, таких як алгоритми симетричного та асиметричного шифрування, хешування, аутентифікації інформації і цифрового підпису.
Завдання: Вивчення навчальної дисципліни передбачає формування у здобувачів освіти компетентностей: інтегральна компетентність: ІНТ Здатність розв’язувати складні спеціалізовані завдання або практичні проблеми інженерії програмного забезпечення, що характеризуються комплексністю та невизначеністю умов, із застосуванням теорій та методів інформаційних технологій. фахові компетентності: СК4 Здатність формулювати та забезпечувати вимоги щодо якості програмного забезпечення у відповідності з вимогами замовника, технічним завданням та стандартами. СК5 Здатність дотримуватися специфікацій, стандартів, правил і рекомендацій в професійній галузі при реалізації процесів життєвого циклу. СК6 Здатність аналізувати, вибирати і застосовувати методи і засоби для забезпечення інформаційної безпеки (в тому числі кібербезпеки). СК10 Здатність накопичувати, обробляти та систематизувати професійні знання щодо створення і супроводження програмного забезпечення та визнання важливості навчання протягом всього життя. СК14 Здатність до алгоритмічного та логічного мислення.
Результати навчання: ПР05. Знати і застосовувати відповідні математичні поняття, методи доменного, системного і об’єктно-орієнтованого аналізу та математичного моделювання для розробки програмного забезпечення. ПР21. Знати, аналізувати, вибирати, кваліфіковано застосовувати засоби забезпечення інформаційної безпеки (в тому числі кібербезпеки) і цілісності даних відповідно до розв’язуваних прикладних завдань та створюваних програмних систем.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: Попередні навчальні дисципліни 1. Алгоритми і структури даних 2. Програмування в Інтернет Супутні навчальні дисципліни 1.Якість ПЗ і тестування 2. Архітектура і проектування ПЗ 3. Менеджмент проектів з розробки ПЗ 4. Дипломне проектування
Короткий зміст навчальної програми: "Безпека програм та даних" – навчальний курс, який належить до професійно-орієнтованих дисциплін підготовки розробника програмного забезпечення. Мета цього курсу – ознайомити студентів з основними поняттями захисту інформації та безпеки даних, видами порушень інформаційної безпеки та вивчити основні механізми безпеки: алгоритми симетричного і асиметричного шифрування, хешування, аутентифікації інформації та цифрового підпису. Студенти ознайомляться з деякими проблемами програмної реалізації цих алгоритмів та навчаться використовувати інтерфейс прикладного програмування Microsoft CryptoAPI для розробки прикладного ПЗ захисту інформації в середовищі Windows. Окремо розглядаються питання безпеки програм та технології створення захищеного програмного коду.
Опис: Вступ. Основні поняття безпеки. Конфіденційність, цілісність та доступність даних. Класифікація загроз. Сервіси та механізми захисту. Традиційне шифрування. Класична техніка шифрування: підстановки і перестановки. Генерування випадкових чисел. Криптографія з відкритим ключем. Аутентифікація повідомлень і функції хешування. Алгоритми хешування. Алгоритм HMAC. Цифрові підписи та протоколи аутентифікації. Короткий огляд квантової криптографії Основні поняття захисту програм. Методи і засоби створення захищеного програмного забезпечення. Поняття про безпечний цикл розробки ПЗ (SDL).
Методи та критерії оцінювання: 1. Контрольні заходи. 2. Тести. 3. Захист лабораторних робіт. 4. Екзаменаційний контроль (письмова компонента, усна компонента). Поточний контроль - 40 балів (лабораторні роботи – 30 балів, контрольні заходи– 10 балів ). Поточний контроль включає захист 5 лабораторних робіт з усним опитуванням та письмовими звітами (5+7+8+5+5=30 %) та два письмових тести (5+5 =10%). Для захисту лабораторних з балами встановлюються крайні терміни. За межами крайніх термінів роботи оцінюються в 0 балів. Екзаменаційний контроль - 60 балів (письмова компонента - 50 балів, усна компонента - 10 балів)
Критерії оцінювання результатів навчання: 1. Бали поточного контролю підраховуються до початку сесії. 2. Студент, який виконав менше 50% робіт поточного контролю, вважається неатестованим. Для нього пропонується повторне вивчення дисципліни. 3. Студент, який виконав більше 50% робіт поточного контролю, але не всі 100%, вважається недопущенним до екзамену та має можливість довиконати роботи поточного контролі і скласти іспит на комісії.
Порядок та критерії виставляння балів та оцінок: 100-88 балів - атестований з оцінкою «відмінно» - Високий рівень: здобувач освіти демонструє поглиблене володіння поняттєвим та категорійним апаратом навчальної дисципліни, системні знання, вміння і навички їх практичного застосування. Освоєні знання, вміння і навички забезпечують можливість самостійного формулювання цілей та організації навчальної діяльності, пошуку та знаходження рішень у нестандартних, нетипових навчальних і професійних ситуаціях. Здобувач освіти демонструє здатність робити узагальнення на основі критичного аналізу фактичного матеріалу, ідей, теорій і концепцій, формулювати на їх основі висновки. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку, самостійної науково-дослідної діяльності, що реалізується за підтримки та під керівництвом викладача. 87-71 балів - атестований з оцінкою «добре» - Достатній рівень: передбачає володіння поняттєвим та категорійним апаратом навчальної дисципліни на підвищеному рівні, усвідомлене використання знань, умінь і навичок з метою розкриття суті питання. Володіння частково-структурованим комплексом знань забезпечує можливість їх застосування у знайомих ситуаціях освітнього та професійного характеру. Усвідомлюючи специфіку задач та навчальних ситуацій, здобувач освіти демонструє здатність здійснювати пошук та вибір їх розв’язання за поданим зразком, аргументувати застосування певного способу розв’язання задачі. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку. 70-50 балів - атестований з оцінкою «задовільно» - Задовільний рівень: окреслює володіння поняттєвим та категорійним апаратом навчальної дисципліни на середньому рівні, часткове усвідомлення навчальних і професійних задач, завдань і ситуацій, знання про способи розв’язання типових задач і завдань. Здобувач освіти демонструє середній рівень умінь і навичок застосування знань на практиці, а розв’язання задач потребує допомоги, опори на зразок. В основу навчальної діяльності покладено ситуативність та евристичність, домінування мотивів обов’язку, неусвідомлене застосування можливостей для саморозвитку. 49-00 балів - атестований з оцінкою «незадовільно» - Незадовільний рівень: свідчить про елементарне володіння поняттєвим та категорійним апаратом навчальної дисципліни, загальне уявлення про зміст навчального матеріалу, часткове використання знань, умінь і навичок. В основу навчальної діяльності покладено ситуативно-прагматичний інтерес.
Рекомендована література: 1. Безпека програм та даних : навч. посіб. / М.М. Сенів, В.С. Яковина. – Львів : Видавництво Львівської політехніки, 2015. – 256 с. 2. Cryptography and Network Security: Principles and Practice (Subscription) / William Stallings - Pearson, 2019 - ebook. EISBN: 0135764262 3. Інформаційна безпека / Навчальний посібник / Ю. Я. Бобало, І. В. Горбатий, та ін. Львів : Видавництво Львівської політехніки, 2019. – 580 с. 4. Petr Socha, Jan Brejnik, Josep Balasch, Martin Novotny, Nele Mentens. Side-channel countermeasures utilizing dynamic logic reconfiguration: Protecting AES/Rijndael and Serpent encryption in hardware // Microprocessors and Microsystems. 2020. V. 78. 103208. 5. Mahdi Shariatzadeh, Mohammad Javad Rostami, Mahdi Eftekhari. Proposing a novel Dynamic AES for image encryption using a chaotic map key management approach // Optik. 2021. V. 246. 167779. 6. Osama F. AbdelWahab, Aziza I. Hussein, Hesham F.A. Hamed, Hamdy M. Kelash, Ashraf A.M. Khalaf. Efficient Combination of RSA Cryptography, Lossy, and Lossless Compression Steganography Techniques to Hide Data // Procedia Computer Science. 2021. V. 182. P. 5 - 12. 7. Sharmistha Adhikari, Sangram Ray, Mohammad S. Obaidat, G.P. Biswas. Efficient and secure content dissemination architecture for content centric network using ECC-based public key infrastructure // Computer Communications. 2020. V. 157. P. 187 - 203. 8. Nabihah Ahmad, S.M. Rezaul Hasan. A new ASIC implementation of an advanced encryption standard (AES) crypto-hardware accelerator // Microelectronics Journal. 2021. V. 117. 105255.
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою: вул. Карпінського, 2/4, І-й н.к., кімн. 112 E-mail: nolimits@lpnu.ua Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).