Графика | |||
Начерталка | |||
Лабы | |||
Обозначения используемых на схеме функциональных блоков: блок анализа запроса доступа к ресурсу — 1, блок формирования отказа в доступе к ресурсу — 2, блок анализа прав доступа процесса — 3, блок разрешения/запрета доступа процессу к ресурсу — 4, блок анализа прав доступа пользователя — 5, блок разрешения/запрета доступа пользователя к ресурсу — 6, блок формирования запроса доступа к ресурсу — 7.
Работает схема реализации диспетчера доступа следующим образом. В блок 1 поступает запрос пользователя на доступ к ресурсу, содержащий идентификатор ресурса и требуемое действие (чтение, запись, выполнение). Блок 1 формирует из запроса учетную информацию запрашиваемого доступа — идентификатор ресурса и требуемое действие над ним. Затем блок 1 выдает данную информацию в блоки 3 и 5.
В блок 5 поступает имя (идентификатор) пользователя, запросившего ресурс, в блок 3 — идентификатор (полный путь) процесса, запросившего ресурс. Сначала блок 3 определяет, какие права доступа к ресурсу разрешены процессу, запросившему ресурс, и какие права доступа к ресурсу им запрошены. Затем он сравнивает заданные и запрошенные права доступа. Кроме того, блок 3 анализирует, каким способом обрабатываются права доступа процесса к ресурсу: эксклюзивно, либо с правами пользователя.
При совпадении заданных и запрошенных прав блоком 3 вырабатывается код разрешающего сигнала, поступающий в блок 4. При несовпадении заданных и запрошенных для процесса прав блок 4 подаст сигнал в блок 2, и пользователю будет сообщено об отказе в доступе.
При эксклюзивном режиме обработки процесса блок 4 пропускает запрос сразу в блок 7. При этом права пользователя не учитываются.
В режиме обработки запроса процесса вместе с правами пользователя, запрос блоком 4 в блок 7 не выдается. В этом случае, при совпадении для процесса заданных и запрошенных прав, блок 4 передает информацию в блок 6.
Теперь рассмотрим как производится анализ прав пользователя. А производится он блоком 5, и результат передается в блок 6. Соответсвенно, в случае несовпадения для пользователя заданных и запрошенных прав, ему блоком 6 через блок 2 будет отказано в доступе. Если права пользователя оказались достаточными, то блок 6 будет ждать разрешающего сигнала от блока 4, который разрешает/запрещает доступ процессу.
Ввиду того, что в схеме управления доступом присутствуют два субъекта доступа «ПОЛЬЗОВАТЕЛЬ» и «ПРОЦЕСС», причем процесс может запускаться и не от лица текущего пользователя (например, системные процессы), с целью корректного решения задачи управления доступом к ресурсам следует осуществлять разграничения для обоих этих субъектов доступа.
Необходимо учитывать, что процесс может запускаться и не с правами текущего пользователя, то есть в системе существуют привилегированные (системные) процессы. В связи с этим для корректной реализации управления доступом должны предусматриваться следующие схемы разграничений для субъектов доступа:
Разграничение прав доступа к объектам процессов вне разграничений пользователей.
Разграничение прав доступа к объектам пользователей вне разграничений процессов.
Комбинированное разграничение прав доступа — разграничение прав доступа к объектам процессов в рамках разграничений пользователей (совместное разграничение доступа процессов и пользователей).
Шифры замены и перестановки
Шифры появились на свет задолго до изобретения компьютера. Получившие широкое распространение криптографические алгоритмы выполняли либо замену одних букв на другие, либо переставляли буквы друг с другом. Самые стойкие шифры делали одновременно и то, и другое, причем многократно.
Шифры замены
Шифром замены называется алгоритм шифрования, который производит замену каждой буквы открытого текста на какой-то символ шифрованного текста. Получатель сообщения расшифровывает его путем обратной замены.
В классической криптографии различают 4 разновидности шифров замены:
r Простая замена, или одноалфавитный шифр. Каждая буква открытого
текста заменяется на один и тот же символ шифртекста.
r Омофонноя замена. Аналогична простой замене с единственным
отличием: каждой букве открытого текста ставятся в соответствие несколько символов шифртекста. Например, буква “А” заменяется на цифру 5, 13, 25 или 57, а буква “Б” — на 7, 19, 31 или 43 и так далее.
r Блочная замена. Шифрование открытого текста производится блоками.
Например, блоку “АБА” может соответствовать “РТК”, а блоку “АББ” — “СЛЛ”.
r Многоалфавитная замена. Состоит из нескольких шифров простой
замены. Например, могут использоваться пять шифров простой замены, а какой из них конкретно применяется для шифрования данной буквы открытого текста, — зависит от ее положения в тексте.
Примером шифра простой замены может служить программа ROT13, которую обычно можно найти в операционной системе UNIX. С ее помощью буква “А” открытого текста на английском языке заменяется на букву “N”, “В” — на “О” и так далее. Таким образом, ROT13 циклически сдвигает каждую букву английского алфавита на 13 позиций вправо. Чтобы получить исходный открытый текст надо применить функцию шифрования ROT 13 дважды:
Р = ROT13 (ROT13 (P))
Все упомянутые шифры замены легко взламываются с использованием современных компьютеров, поскольку замена недостаточно хорошо маскирует стандартные частоты встречаемости букв в бткрытом тексте.
Разновидностью шифра замены можно считать код, который вместо букв осуществляет замену слов, фраз и даже целых предложений. Например, кодовый текст “ЛЕДЕНЕЦ” может соответствовать фразе открытого текста “ПОВЕРНУТЬ ВПРАВО НА 90°”. Однако коды применимы только при определенных условиях: если, например, в коде отсутствует соответствующее значение для слова “МУРАВЬЕД”, то вы не можете использовать это слово в открытом тексте своего сообщения, предназначенном для кодирования.
Общие принципы построения вычислительных сетей |
|