Пространство «Тестовая среда».

Данное пространство содержит класс-обёртку «Тестовая среда» (на схеме явно не показан), а также класс «Шифр», который представляет собой обёртку над блоковым шифром, который мы рассматриваем, и который представляет собой универсальный протокол взаимодействия моей программной системы и произвольного блокового шифра (Протокол 3). Протокол 3 предоставляет следующие функциональные возможности: инициализация указанного шифра с заданными параметрами (в конструкторе); шифрование входной последовательности указанным R-ым раундом (метод «Зашифровать»). Схема работы сводится к следующим шагам: Статический метод «Атака» создаёт объект «Генератор входной последовательности» и обращается к нему (возможно параллельно) по протоколу 1 (N, K). Объект «Генератор входной последовательности» создаёт подобъект «Входная последовательность» (при параллельном обращении создаёт множество таких подобъектов) и взаимодействуя с ним, получает и возвращает полученную последовательность объекту «Тестовая среда» по протоколу 1. Далее, объект «Тестовая среда» создаёт подобъект «Шифр», который взаимодействуя с внешним объектом «Шифр_N» по протоколу 3, инициализирует «Шифр_N». Далее, объект «Тестовая среда» действует циклически (возможно, параллельно): обращается к методу «Зашифровать» подобъекта «Шифр» (что снова влечёт взаимодействие подобъекта «Шифр» с объектом «Шифр_N» по протоколу 3); взаимодействует с объектом «Статистический тест» по протоколу 2 (N, K, X): вызывает метод «Тест» и получает меру случайности; далее происходит переход на начало цикла, где происходит проверка условия на превышение заданного квантиля.

Общая схема внутренней структуры ПС приведена на следующей диаграмме: