Ви повинні бути обережними, використовуючи теоретичний результат, щоб стверджувати, що щось неможливо зробити на практиці. Є кілька небезпек, в які можна потрапити:
теоретичний результат має припущення, які не застосовуються,
проблема на практиці не моделюється добре теоретичною моделлю,
на практиці рішення не повинно бути ідеальним, щоб бути корисним.
Ви не дали офіційного визначення того, що таке вірус, так що розширення вашої заяви про тривіальну вправу може бути корисним для розуміння того, що ви насправді маєте на увазі.
Значна частина антивірусного програмного забезпечення - це виявлення відомих вірусів (та їх варіантів), і це робиться шляхом порівняння рядків (у файлах, пам'яті тощо) з кінцевим списком рядків (підписи вірусів). Тому нам потрібно регулярно оновлювати базу даних антивірусного програмного забезпечення.
Існують додаткові можливості виявлення потенційних вірусів на основі їх "поведінки", але ці методи не є ні повноцінними, ні звуковими (і для їх корисності їх не потрібно бути здоровими / повноцінними). Проектування антивірусного програмного забезпечення, здається, в даний час більше впадає в обчислювальну техніку, ніж інформатика (хоча інформатика та комп'ютерна інженерія тісно пов'язані).
Як правило, ці дослідження підпадають під більш застосовану частину комп'ютерної безпеки (і загалом системних областей: комп'ютерних мереж, операційних систем тощо) інформатики, але використання ідей з інших частин інформатики (машинне навчання тощо) є типовий.
Ви можете перевірити мистецтво дослідження та захисту комп'ютерних вірусів .