You are on page 1of 5

Завдання 7.

Дослідити стаціонарність часових рядів методом Ст’юдента в


межах обраного прикладу з галузі інформаційних технологій засобами
програмування мови Python.
Для дослідження обрано програмну реалізацію алгоритму кодування
«BKR»(стара назва «Ceasar_B»). «BKR» - це алгоритм кодування інформації,
який був розроблений у 2022 році. Базою для розробки алгоритму став Шифр
Віженера.
Для початку введемо відому нам з дисципліни «Теорія прийняття рішень»
формулу, завдяки якій ми можемо оцінити ризики безпеки та побачити їх
чисельний результат.
R=P ∙ H ,

Де R – оцінки ризиків інформаційної безпеки,


P – вірогідність реалізації загрози,
H – наслідки реалізації загрози.
Для прикладу візьмемо результати роботи на тему «Оцінка ризиків
безпеки програмної реалізації алгоритму кодування «BKR» методом «Матриця
«Наслідки – вірогідність»» з дисципліни «Теорії прийняття рішень».

Інформаційні Загрози Вірогідність Наслідки Оцінка ризиків


активи Реалізації реалізації інформаційної
загрози Загроз безпеки

Слабкий Видання 1 8 8
логін/пароль себе за
когось
іншого

За інформаційний актив виступає слабка система захисту облікового


запису користувача, який розділяється на два типи: розробник та користувач.
Дана проблема являється основною загрозою, тому що у разі отримання
зловмисником пароля та логіну розробника, він може отримати
несанкціонований доступ до конфігураційних файлів та до бази даних, де
зберігаються дані про користувачів, алгоритм кодування та про закодовану
інформацію. Така атака може покласти кінець всій праці розробника, тому
цього всіма силами треба уникнути та запобігти.
Оцінювання наслідків реалізації загрози: 0-10
Оцінювання вірогідності реалізації загрози: 0-1
Дане рівняння можна інтерпретувати до лінійного рівняння регресії, але з новий
елементом, тобто b.
Y = A ∙ X + B,

Де A*X – оцінка ризику інформаційної безпеки


B – кількість бюджету та часу, який виділено на покращення програмної
реалізації.
Шкала для визначення кількості бюджету та часу:
Максимально 5
Достатньо 3-4
Мала кількість 1-2
Відсутні 0

1) 0 – виділено нуль ресурсів


2) 1-2 – виділено малу кількість ресурсів
3) 3-4 – виділено достатню кількість ресурсів
4) 5 – виділено максимально можливу кількість ресурсів

Перед тим, як вираховувати вірогідність та наслідки кількісно, треба


дізнатися, скільки ресурсів виділяється для усунення певної загрози.
Для подальшої роботи ми візьмемо чотири вибірки, які ми будемо
опрацьовувати за допомогою бібліотек мови Python. Вибірку будуть показувати,
скільки атак було здійснено за перші 6 місяців року та за інші 6.

Гіпотеза: Кожні півроку проводиться однакова кількість атак на систему


кодування інформації “BKR”.

Вибірка №1

xi 5 3 1 2 5 4

Вибірка №2

xi 8 4 5 7 8 1

Нижче буде представлена програмна реалізація обрахунку t-критерію


Ст’юдента та підтвердження/відхилення нульової гіпотези враховуючи
результати.

import numpy as np
from scipy import stats
from scipy.stats import ttest_ind

n1 = [5, 3, 1, 2, 5, 4]
n2 = [8, 2, 5, 7, 3, 1]

alpha = 0.05

# Нехай альфа(рівень значущості) буде 0.05


t_stat, p = ttest_ind(n1, n2, equal_var=False)
print("t = ", t_stat)
print("p = ", p)

# Якщо p-значення буде менше 0.05, то ми відхиляємо НУЛЬОВУ ГІПОТЕЗУ(H0 => µ1 = µ2


(population mean of n1 is equal to n2))
# Тобто два незалежні набори не з однієї генеральної сукупності.
#
# Отже, р < 0.5, тому дані набори з однієї генеральної сукупності.

Отже, можемо дійти висновку, що кількість атак на систему кодування


інформації не змінюється кожні півроку, а являється стабільною.
Список використаних джерел
1. https://numpy.org/doc/stable/reference/random/generated/
numpy.random.standard_t.html
2. http://fpo.bsmu.edu.ua/static/t-kryteriy-styudenta
3. https://analyticsindiamag.com/a-beginners-guide-to-students-t-test-in-
python-from-scratch%EF%BF%BC/
4. https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.ttest_ind.html

You might also like