Безпека програм та даних
Спеціальність: Інженерія програмного забезпечення
Код дисципліни: 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–26 балів – («не атестований» з можливістю повторного складання семестрового контролю) виставляється за незнання значної частини навчального матеріалу компонента, істотні помилки у відповідях на запитання, невміння застосувати теоретичні положення під час розв’язання практичних задач; 25–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).