Поняття висловлювання - студопедія
Методи захисту програм від ісследованія.Для захисту програм від дослідження необхідно застосовувати методи захисту від дослідження файлу з її виконуваним кодом, який зберігається на зовнішньому носії, а також методи захисту виконуваного коду, що завантажується в оперативну пам'ять для виконання цієї програми.
У першому випадку захист може бути заснована на шифруванні секретної частини програми, а в другому - на блокуванні доступу до виконуваного коду програми в оперативній пам'яті з боку отладчиков. Крім того, перед завершенням роботи захищається програми повинен обнулятиметься весь її код в оперативній пам'яті. Це запобіжить можливість несанкціонованого копіювання з оперативної пам'яті ДЕШИФРОВАНОГО виконуваного коду після виконання захищається програми.
Таким чином, захищається від дослідження програма повинна включати наступні компоненти:
- зашифровану секретну частину;
Ініціалізатор повинен забезпечувати виконання таких функцій:
- збереження параметрів операційного середовища функціонування (векторів переривань, вмісту регістрів процесора і т.д.);
- заборона всіх внутрішніх і зовнішніх переривань, обробка яких не може бути запротокольовано в захищається програмі;
- завантаження в оперативну пам'ять і дешифрування коду секретної частини програми;
- передача управління секретної частини програми.
Секретна частина програми призначена для виконання основних
цільових функцій програми і захищається шифруванням для попередження внесення в неї програмної закладки.
Деструкція після виконання секретної частини програми повинен виконати наступні дії:
- обнуління секретного коду програми в оперативній пам'яті;
- відновлення параметрів операційної системи (векторів переривань, вмісту регістрів процесора і т.д.), які були встановлені до заборони неконтрольованих переривань;
- виконання операцій, які неможливо було виконати при заборону неконтрольованих переривань;
- звільнення всіх незадіяних ресурсів комп'ютера і завершення роботи програми.
Для більшої надійності ініціалізатор може бути частково зашифрований і в міру виконання може дешифрувати сам себе. Дешифрувати в міру виконання може і секретна частина програми. Таке дешифрування називається динамічним дешифрованием виконуваного коду. В цьому випадку чергові ділянки програм перед безпосереднім виконанням розшифровуються, а після виконання відразу знищуються.
Для підвищення ефективності захисту програм від дослідження необхідно внесення в програму додаткових функцій безпеки, спрямованих на захист від трасування. До таких функцій можна віднести:
- періодичний підрахунок контрольної суми області оперативної
пам'яті, займаної захищається вихідним кодом; порівняння
поточної контрольної суми з попередньо сформованої
еталонної і прийняття необхідних заходів у разі розбіжності;
- перевірку кількості займаної захищається програмою оперативної пам'яті; порівняння з обсягом, до якого програма адаптована, і прийняття необхідних заходів у разі невідповідності;
- контроль часу виконання окремих частин програми;
- блокування клавіатури на час відпрацювання особливо секретних алгоритмів.
Основним (невизначені) поняттям математичної логіки є поняття простого висловлювання ..
Визначення. Під висловом зазвичай розуміють всяке оповідної пропозицію, яка затверджує що-небудь про щось або, і при цьому ми можемо сказати, істинно воно або помилково в даних умовах місця і часу. Логічними значеннями висловлювань є істина і .ложь.
Наведемо приклади висловлювань.
1) Новгород стоїть на Волхові.
2) Париж - столиця Англії.
3) Карась не риба.
4) Число 6 ділиться на 2 і на 3.
5) Якщо юнак закінчив середню школу, то він отримує атестат зрілості.
Висловлювання 1), 4), 5) істинні. а висловлювання 2) і 3) помилкові.
Очевидно, пропозиція Хай живуть наші спортсмени !, »не є висловлюванням.
Висловлювання, що представляє собою одне твердження, прийнято називати простим або елементарним. Прикладами елементарних висловлювань можуть служити висловлювання 1) і 2).
Висловлювання, які виходять з елементарних за допомогою граматичних зв'язок НЕ, І, АБО. ЯКЩО. ТО. ТОДІ І ТІЛЬКИ ТОДІ. прийнято називати складними або складовими. Так, висловлювання 3) виходить з простого висловлювання Карась - риба. за допомогою
заперечення НЕ, висловлювання 4) утворено з елементарних висловлювань Число 6 ділиться на 2. 4 Число 6 ділиться на 3, з'єднаних союзом І. Висловлювання 5) виходить з простих висловлювань Юнак закінчив середню школу. Юнак отримує атестат зрілості. за допомогою граматичної зв'язки .Якщо. ТО. Складні висловлювання можуть бути отримані з простих висловлювань за допомогою граматичних зв'язок .или. ТОДІ І ТІЛЬКИ ТОДІ ..
В алгебрі логіки всі висловлювання розглядаються тільки З точки зору їх логічного значення, а від їх життєвого змісту відволікаються. Вважається, що кожне висловлювання або істинно. або помилково і жодне висловлювання не може бути одночасно істинним і хибним.
Надалі будемо елементарні висловлювання позначати малими буквами латинського алфавіту: х. у, z. а, b. с. ; справжнє значення висловлювання цифрою 1, а помилкове значення цифрою 0.
Якщо висловлювання а істинно. то будемо писати а = 1. а якщо а помилково, то а = 0.