Теория и практика защиты программ


         

решаемая данным алгоритмом, формируется следующим


Задача, решаемая данным алгоритмом, формируется следующим образом.

Дано:

·        вырожденное покрытие функциональной диаграммы инструментальных средств (или их относительно автономного участка), исследуемых на отсутствие блоков формирования программных закладок диверсионного типа;

·        вектор Р(0) состояния функциональной диаграммы, соответствующий тестовому набору ХТ.

Требуется: найти для исследуемых средств значения реакций, соответствующие вектору Р(0).

Решение данной задачи осуществляется следующим образом.

Алгоритм В

1. Начальная установка номера шага алгоритма j:=1.

2. В векторе Рj-1 определяется функциональная связь Sg

с минимальным номером, значение которой не определено, а хотя бы одно входное условие этой ФС имеет значение 0 или 1. Так как в соответствии с принятым правилом нумерации номер ФС всегда больше номера любого ее входного условия, то g³V+j, где V

- число входных условий ФС. Поэтому при выполнении этой операции следует анализировать значения ФС с номерами V+j,V+j+1,...,V+N-1, где N

- число ФС.

3. Из вырожденного покрытия ФС Sg

выбирается куб Khg, значения компонентов которого не противоречат значениям соответствующих компонентов вектора состояния Рj-1. Противоречие отсутствует, если для всех компонентов куба Khg выполняются следующие условия:

3.1. Если в кубе компонент а имеет значение х, то в векторе Р(j-1) значение компонента а может быть 0, 1 или х;

3.2. Если в кубе Khg компонент а имеет значение d, d=0,1, то и в векторе Рj-1

этот компонент должен иметь значение d.

4. Если не выбрано ни одного куба, то Рj=Рj-1 и осуществляется переход к п.6,  в противном случае – к п.5.

5. Формируется вектор Рj состояния ФД, разряды которого образуются с помощью операций П поразрядного пересечения (см. п.5 алгоритма Б) компонентов выбранного куба Kgh с соответствующими компонентами вектора Рj-1

и заменой значений и этих компонентов результатами операции перечисления.

6. Если g<N+V, то осуществляется переход к п.7. В противном случае алгоритм завершается.

7. j:=j+1, переход к п.2.

Таким образом, рассмотренный метод построения тестов проверки технологической безопасности исследуемых инструментальных средств и алгоритмы его реализации позволяют сформировать и проанализировать таблицы решений для полного тестового набора. В то же время, создание самих тестов представляет собой самостоятельную задачу, связанную с необходимостью разработки некоторого программного обеспечения, которое само по себе должно соответствовать логическим схемам проведения проверок.


Содержание  Назад  Вперед