Н 2Н
Н, ZH > Н, М, Р : 0,05——— : раствор (хищник должен найти и убить жертву, и будет пища);
Н ■ Р
Н, Р > 2Н : 0,05——— : смесь (хищники находят принесённую пищу и размножаются).
На рис. 1 показаны результаты реализации этой модели программой «Популяция». Моделирование обходится без получения системы нелинейных дифференциальных уравнений динамики средних.
Рис. 1. Хищники и жертвы в ограниченной экологической нише. Н — количество хищников; ZH — количество жертв; М — количество экологических мест; Р — количество добытой пищи
Следует заметить, что в предлагаемой программе моделирования вовсе не обязательно подробно описывать вероятности переходов, заданные здесь формулами. Достаточно задать только численные характеристики — коэффициенты модели (здесь
0.01.и 0,05) и типы нелинейных переходов. Остальные части вероятностей переходов (шт{^Н, М} и Н ■ ZH/Ы) стандартны и вычисляются программой согласно типу перехода.
ЛИТЕРАТУРА
1. Воробьев В. А., Кочнев А. И. Популяционное моделирование коллективного поведения автоматов // Вестник Томского госуниверситета. Приложение. 2007. №23. С. 270-275.
2. Ачасова С. М., Бандман О. Л. Корректность параллельных вычислительных процессов. Новосибирск: Наука, 1990. 314 с.
УДК 512.5
О СКЕЛЕТНЫХ АВТОМАТАХ
В. Н. Салий
Под автоматом понимается тройка А = (Б, X, 8), где Б и X — конечные непустые множества (состояний и входных сигналов соответственно); 8 : Б х X ^ Б — отображение, называемое функцией переходов. Функция переходов продолжается на множество Б х X*, где X* — совокупность всех конечных слов над алфавитом X: по опре-
делению, 8(в,е) = в для любого в € Б и пустого слова е и 8(в,рх) = 8(8(в,р),х) для любых в € Б, х € X, р € X*.
Автомату А сопоставляется диаграмма переходов — мультиграф С(А), вершинами которого являются элементы множества Б и дуги помечены элементами из X: из вершины в в вершину в1 ведет дуга с меткой х, если 8(в, х) = в;.
Говорят, что состояние в1 достижимо в автомате А из состояния в, если существует входное слово р € X*, такое, что 8(в,р) = в1. В этом случае пишут (в,в;) € т, и так определенное отношение т С Б х Б называют отношением достижимости в автомате А. Его симметричная часть а = т П т-1 называется отношением взаимной достижимости в автомате А. Классы эквивалентности а называют слоями автомата А. В [1] введено понятие каркаса автомата. Каркас автомата А — это упорядоченное множество (^(А), ^), элементами которого являются слои автомата А, а порядком на множестве слоев ^(А) = А/а — отношение, обратное отношению достижимости т. Очевидно, что для любого автомата А выполняются неравенства 1 ^ |^(А)| ^ |Б|. Если |^(А)| = 1, т. е. отношение а универсально, автомат А называется сильносвязным. Если же |^(А)| = |Б|, т. е. отношение а тождественно, а = А, автомат А назовем скелетным. В скелетном автомате отношение достижимости т является порядком на множестве состояний Б.
Поскольку в скелетном автомате А все слои одноэлементны, можно считать, что в этом случае каркасом является множество Б, упорядоченное обратной достижимостью т 1, так что в ^ в означает, что состояние в достижимо из состояния в.
Нумерацией состояний автомата называется биективное отображение множества его состояний Б на начальный отрезок [1,т] натурального ряда. Нумерация, по определению, является правильной, если состояния, достижимые из данного состояния, имеют меньшие, чем у него, номера.
Теорема 1. В автомате А существует правильная нумерация состояний тогда и только тогда, когда А — скелетный автомат.
Подмножество Б1 С Б называется устойчивым в автомате А, если 8(в,х) € Б1 для любых в € Б1 и х € X. Если Б1 устойчиво в А, то, ограничивая функцию переходов 8 на Б1 х X, получают подавтомат А; = (Б;, X, 8). Совокупность БиЬА всех подавтоматов автомата А, упорядоченная отношением А1 ^ А2 Б1 С Б2, где А^ = (Бi,X, 8),
г = 1, 2, является дистрибутивной решеткой. Это решетка подавтоматов автомата А.
Известно [2], что для каждого автомата А существует автомат В с двумя входными сигналами, такой, что БиЬА = БиЬВ, и что не всегда найдется автономный (т. е. с ^| = 1) автомат В с такой же, как у А, решеткой подавтоматов. Минимизацию по числу состояний дает следующее предложение.
Теорема 2. Пусть А = (Б, X, 8) и В = (Т, У, 7) —автоматы, такие, что
БиЬА = БиЬВ. Тогда |Т | ^ |^ (А)|. При этом существует скелетный автомат В, такой, что БиЬА = БиЬВ и |Т| = |^(А)|.
Пусть К — некоторый класс автоматов и А € К. Как можно путем в том или ином смысле минимальных изменений в структуре автомата А получить из него автомат А; из класса К? В числе допустимых приемов реконструкции автомата можно рассматривать, например, отождествление некоторых вершин (факторизация), введение дополнительных состояний и/или входных сигналов (расширения), перенаправление дуг диаграммы переходов, удаление дуг (замена их петлями) и т. п.
Показано, как путем удаления минимального числа дуг в диаграмме переходов С (А) можно получить из данного автомата А скелетный автомат.
Подробное изложение представленных результатов можно найти в [3].
ЛИТЕРАТУРА
1. Салий В. Н. Каркас автомата // Прикладная дискретная математика. 2010. №1(7). С. 63-67.
2. Богомолов А. М., Салий В. Н. Алгебраические основы теории дискретных систем. М.: Наука, 1997. 368 с.
3. Салий В. Н. Скелетные автоматы // Прикладная дискретная математика. 2011. №2(12).
С. 73-76.
УДК 004.056.55
АТАКА АППАРАТНОГО СБОЯ НА РЕАЛИЗАЦИЮ ШИФРА ЗАКРЕВСКОГО НА ОСНОВЕ ПЕРЕСТРАИВАЕМОГО АВТОМАТА1
В. Н. Тренькаев
В последние годы растет количество криптографических атак, использующих особенности реализации, так называемые атаки по побочным каналам (side channel attacks) [1], которые часто дают более мощный результат, чем классический криптоанализ. Рассматривается вариант такой атаки — атака на основе сбоев (fault attack), когда криптоаналитик имеет возможность оказать на шифратор внешнее физическое воздействие и вызвать ошибки (сбои) в процессе его работы. Предложена атака аппаратного сбоя на реализацию шифра Закревского на базе перестраиваемого автомата [2]. Предполагается, что нештатные условия получаются созданием кратковременной ошибки в процессе работы шифратора в виде фиксирования требуемого значения одного бита. Криптоанализ шифра Закревского как автоматного шифра сводится к построению простого условного эксперимента по восстановлению (идентификации) автомата из заданного класса.
Конечный автомат задаётся пятеркой (X, S, Y, ф, <^), где S — конечное непустое множество состояний; X и Y — конечные входной и выходной алфавиты соответственно, причем |X| = |Y|; ф : X х S ^ S и ^ : X х S ^ Y — функции переходов и выходов соответственно.
Под перестраиваемым понимается автомат с возможностью выбора функции переходов из заданного множества. Структура перестраиваемого автомата, на базе которого реализуется шифр Закревского, представлена на рис. 1, где компоненты ф0 и ф\ реализуют функции ф0 : X х S ^ S и ф\ : X х S ^ S соответственно. Компонента Key реализует функцию C : X х S х K ^ {0,1}, где K — конечное множество настроек. На схеме представлен также мультиплексор Mux, который в зависимости от значения функции Ck(х, s) = C(x, s, k) осуществляет выбор одного из двух возможных состояний ф0(х,s) и ф^х^), «пропуская» его далее в регистр памяти Reg, где в каждый момент автоматного времени хранится текущее состояние. Компонента Out реализует функцию выходов <^(х, s), такую, что при любом s £ S функция <^s(x) = <^(х, s) является биекцией из X в Y и все биекции <^s(x), s £ S, различные. Каждой настройке k £ K перестраиваемого автомата соответствует автомат Закревского Z= (X, S, Y, ф(к), <^), у которого ф(к)(х, s) = фс(х, s) для всех (х, s) £ X х S и c = Ck(х, s). Функции ф0 и ф\ устроены так [2], что автомат Z(k) сильносвязный. Автомат Z(k) = (Y, S, X, ф(к), <^'),
1 Работа выполнена в рамках реализации ФЦП «Научные и научно-педагогические кадры инновационной России» на 2009-2013 гг. (гос. контракт №П1010).