Доверенные системы. Базовые понятия 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Доверенные системы. Базовые понятия



 

Ниже даны определения основных понятий, связанных с доверенностью вычислительных систем, и намечены основные направления рассуждений о построении таких систем.

Доверие к системе в общечеловеческом понимании формируется либо доказательством корректности ее работы в заданных условиях, либо продолжительным положительным опытом ее эксплуатации. Наличие сертификата способствует формированию доверия, но не равносильно ему – и свидетельство тому постоянно появляющиеся сообщения о найденных критически опасных уязвимостях в сертифицированных средствах защиты.

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

Доверенность – относительно новое понятие, но которое, видимо, носит характер категории. Именно поэтому его часто трактуют слишком расширительно, размывая до спекулятивного уровня. Именно поэтому следует выработать конструктивные определения, минимально отличающиеся от определений, принятых в материальном производстве. Такой подход принесёт гораздо больше пользы, чем попытки смешать в одном котле технику, ментальность, ошибки программного обеспечения и криптографию.

Отметим, что:

Доверенная и проверенная – разное.

Доверенная и защищённая – разное.

Доверенная и надёжная – разное.

Доверенная и устойчивая – разное.

Разное, но не противоположное. И во многом близкое.

Понятие «доверенная вычислительная среда» (ДВС) было введено в [1] в развитие понятия «изолированная программная среда» (ИПС) [2]. Было показано, что ДВС – это система, все узлы которой аутентифицированы и целостность их установлена. Там же было показано, что обеспечение целостности и аутентификация должны выполняться специальным средством, который получил название «резидентный компонент безопасности» (РКБ), для которого были перечислены свойства, и доказана лемма о размещении РКБ в ДВС.

Рассмотрим определения, касающиеся отношений в сфере материального производства.

 

1. Производство — процесс создания какого-либо продукта.

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

3. Технологическая операция — это законченная часть технологического процесса, выполняемая на одном рабочем месте.

Если производство не кустарное, то совершенно необходимы вспомогательные операции.

4. Вспомогательные операции — действия по транспортировке, измерению, маркировке продукции и т. п.

5. Производственная среда [1] совокупность материально-пространственных условий деятельности людей в производственной сфере, складывающаяся из имеющихся в наличии промышленных зданий и сооружений, оборудования, транспорта и др. компонентов.

 

Перейдем теперь к информационным технологиям. На мой взгляд, они не сильно отличаются от технологий в материальном производстве. Можно, конечно, информационной технологией называть совокупность методов, способов и средств обработки информации, как это часто делают, но я смысла в этом не вижу. Есть точные понятия в сфере материального производства, ну и почему бы не пользоваться ими в сфере информационного производства?

Мы возьмём за основу традиционные определения, проверенные временем и опытом, точно описывающие объекты и процессы информационного производства.

6. Информационное производство – производство электронных документов (ЭлД), в смысле [3], имея ввиду, что информационные системы могут производить документы, влияющие на отношения в своём секторе действенности, а могут производить спам. Вряд ли стоит говорить о доверенных системах, производящих спам[2].

Особым классом систем являются системы управления производственными процессами. Конечно, доверенные системы должны использоваться и здесь. В этой зоне наши рассуждения тем более необходимы – так как речь идет о технологии, предназначенной для управления технологией. Управляющие сигналы, конечно, не являются ЭлД в полном смысле, но имеют с ними много общего – в частности то, что управляющие сигналы оказывают влияние на технологические подсистемы аналогичное тому, которое ЭлД оказывает на свой сектор действенности. Поэтому данное выше определение представляется довольно точным.

7. Информационная технология – последовательность информационных операций преобразования данных в документы.

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

Отметим, что такая зафиксированная последовательность очень похожа на то, что мы обычно называем «алгоритм». Но только похожа. Все мы знаем, что алгоритм можно реализовать по-разному. То есть алгоритм не фиксирует последовательность операций. А для нас фиксация важна – нам нужно установить «последовательность», как сказано в определении.

8. Защищённая информационная технология – информационная технология, обладающая свойством сохранять последовательность операций.

9. Среда функционирования ИТ – совокупность аппаратных и программных (технических) средств (узлов обработки, автоматизированных рабочих мест (АРМ), абонентских пунктов (АП) и др.) исполнения информационных операций.

10.  Доверенная среда функционирования [3] – взаимодействующая совокупность доверенных узлов обработки данных.

11.   Доверенная вычислительная система – система, в которой в доверенной среде функционируют защищенные информационные технологии.

 

В доверенной системе все должно быть доверенным – показано в [1]. Эту позицию по прошествии ряда лет нужно уточнить. Сейчас понятно, что тогда защищенная система воспринималась как локальная или корпоративная. И для корпоративной системы практически всегда это утверждение верно. Но появление открытых систем существенно изменило ситуацию, и нам приходится задуматься о транспортных каналах, влиять на которые мы далеко не всегда можем. Но и здесь есть ассоциации со сферой материального производства.

Каналы связи в полном соответствии с определением 4 будем считать вспомогательным элементом, предназначенным для «транспортировки» данных между узлами обработки. Вспомогательные элементы редко бывают доверенными, и – поскольку обычно они принадлежат другим собственникам с другими целями – совсем не обязаны быть доверенными.

Как сделать доверенной транспортную среду? Или как её использовать в доверенной системе без снижения уровня доверия? Как минимум, нужно знать ответ на вопросы «откуда» и «куда» двигаются данные, а это значит, что точки подключения к транспорту должны быть аутентифицированы.

Соответственно:

12.   Каналы связи в ДВС должны быть аутентифицированы и могут быть защищены.

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

13.  Доверенный узел обработки – выделенная совокупность аутентифицированных и целостных технических средств с проверенным программным обеспечением.

 

Как сделать доверенными технические средства?

Обеспечить целостность. Обеспечить аутентификацию.

Это делает резидентный компонент безопасности (РКБ).

Таким образом, каждый элемент ДВС должен включать РКБ.

14.   Резидентный компонент безопасности – это встроенный в технические средства вычислительной системы объект, способный контролировать целостность[4] технических средств[5].

Ключевые характеристики РКБ:

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

- примитивное (иначе обеспечение его собственной защищенности эквивалентно задаче защиты компьютера, который он защищает),

- встроенное в контролируемую систему и стартующее до старта основной ОС (иначе его функционирование будет бессмысленным),

- независимое от контролируемой системы (функционирующее автономно),

- перестраиваемое (то есть предполагающее функционирование в режиме настроек, и в пользовательском режиме – режиме контроля).

 

Таким образом, доверенное средство должно содержать РКБ. РКБ – активен, он выполняет контрольные процедуры, взаимодействуя с другими узлами системы. Активность становится важнейшим необходимым (но, конечно, не достаточным) признаком.

Доверенное средство всегда активно.

Компьютер – дополним аппаратным модулем доверенной загрузки, или выберем компьютер, в котором целостность обеспечивается архитектурно [4].

Периферия – подменить мышь, клавиатуру или принтер – ничего не стоит. А они – подмененные – вполне могут выполнять функции, не входящие в состав защищенных информационных технологий. Сделать их доверенными, если это актуально, можно, вставив в них небольшой специализированный блок РКБ. Это сделает их активными на этапе аутентификации, и защитит систему от подмены.

Отчуждаемые носители – как правило, они пассивны. Значит, невозможно понять, можно с ними работать или нет. Специализированные отчуждаемые носители со встроенным РКБ выпускаются [5], и могут использоваться в составе доверенных систем.

 

Ошибка великого Тьюринга

 

Целое – это единство формы и содержания. Во всяком случае, если мы говорим о реальности.

Разрыв формы и содержания – самый характерный признак мирового развития computer science, который заметен уже начиная с аналитической машины Чарльза Беббиджа, универсального вычислителя Тьюринга, принципов и архитектуры фон-Неймана и других, и заканчивая решениями нынешнего времени.

Все известные универсальные вычислители сегодня являются именно вычислителями. Они работают с формой – числами. Процесс выполнения операций над числами никак не связан с содержанием, с семантикой. Именно с отрывом формы от содержания, на мой взгляд (здесь и всюду далее наиболее жесткие аттестации – это мое оценочное мнение), связаны все основные проблемы в развитии информационных технологий, базовые принципы которых уже нельзя считать ничем иным, как фатальным заблуждением. Мысль не продвинулась дальше больших калькуляторов с хорошими экранами.

Действительно, любая ЭВМ легко вычислит 5+6, и даст на первый взгляд верный ответ – 11. Но чего – 11? Если 5 – это яиц, а 6 – помидоров, то результат – это одна яичница из 5-и яиц и 6-и помидоров, а никак не 11. Да и «одна яичница» – верный ответ лишь в том случае, если 5 яиц и 6 помидоров положили на горячую сковороду. А если в холодильник – то 5+6 на утро будет снова 5+6.

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

Ярким примером дихотомии «форма-содержание» является электронная подпись (ЭП). Все о ней слышали, некоторые отчаянные даже попробовали использовать. Что же дает нам электронная подпись? Является средством защиты? Нет. Не может она ничего защитить. Ничего не помешает злоумышленнику исказить подписанный текст. Другое дело, что с использованием ЭП при соблюдении ряда важных условий можно установить, что искажение где-то было. И все.

ЭП – элемент формы. Техническая функция – контроль неизменности подписанного материала – в смысле неизменности формы. Социальная функция – фиксация волеизъявления. То есть содержания, семантики.

Такой дуализм понятен – от связан с неразрывностью формы и содержания. С понятиями юридической значимости и юридической силы.

Но даже профессионалы, много лет проработавшие в отрасли, не всегда различают эти понятия.

Возьмем документ на неизвестном нам языке – например, на итальянском (как ни стыдно в этом признаться). Он выполнен на бланке. У него есть реквизиты, стоит печать, подпись, дата. Соблюдена форма. И не понимая содержания, с уверенностью можно утверждать, что документ обладает юридической значимостью. Юридическая значимость связана в первую очередь с формой. Юридическая сила, напротив, определяется содержанием. Мы выполняем законы, хотя нам доступен лишь их текст – опубликованный в газете или интернете. Редко и не всем удается увидеть закон, подписанный собственноручной подписью Президента. Но юридической силы от этого закон не лишается.

Это, конечно, предельные случаи. Конечно же, в реальности мы хотим видеть единство формы и содержания.

 

Все время своего существования вычислительная техника развивалась по нескольким направлениям, а именно:

- ускорение вычислений,

- уменьшение размеров,

- повышение универсальности.

Человечество всего этого добилось. Мощность современного смартфона выше совокупной мощности всех ЭВМ в мире в 60-х годах прошлого столетия. А ведь тогда уже были мэйнфреймы IBM. Универсальность выросла настолько, что бухгалтер и дизайнер используют одинаковые компьютеры с одинаковыми офисными пакетами, а программистами в быту стали называть людей, способных освоить хотя бы одну сложную программу – например, фотошоп.

Любой компьютер – это реализация (более или менее близкая) идеи «машины Тьюринга». Понятия «машина Тьюринга» и «алгоритм», вычислимость – неразрывно связаны, определяются одно через другое. Само существование абстрактного «исполнителя», такого, как машина Тьюринга, – вселяет уверенность во всемогуществе человека. Действительно, любая (точнее, рекурсивная, что и есть практически любая) задача может быть решена, если достаточно ресурсов (памяти и времени). Возможно, завораживающая простота формулировок и спровоцировала разработку универсальных вычислительных машин (УМ в понимании универсального вычислителя; средств вычислительной техники, СВТ; персональных ЭВМ, ПЭВМ) которые частично (с конечной памятью) моделируют машину Тьюринга, давая нам псевдо «неограниченные» возможности и толкая на экстенсивный путь развития. Не хватает памяти – что за проблема, – добавим. Не хватает времени – увеличим тактовую частоту, количество ядер, виртуализируем ресурсы, наконец.

Эта позиция многие годы «паровозом» тащила за собой развитие информационных технологий. Емкость обычных локальных дисков, например, за два десятилетия выросла от десятков килобайт до сотен гигабайт и уже измеряется терабайтами, а памяти так и не хватает. Тактовые частоты от килогерц достигли гигагерц, а производительности не хватает. Зато индустрия ИТ стала едва ли не определяющей современный уровень экономического развития. Гигантские суммы инвестиций – плата за технический прогресс и универсальность решений.

Универсальность (в смысле «вычислимости», без учета семантики) опасна и снижением защищенности. Действительно, если УМ выполняет любые программы, то, очевидно, она выполнит и вредоносную программу. Несмотря (!) на любой набор антивирусных программ. Действуя в рамках пусть универсальной, но одной формальной модели, мы неизбежно натолкнемся на ее неполноту – в полном соответствии с теоремой Геделя о неполноте.

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

Говоря о вычислимости, классики «забыли» о семантике. Они думали именно о вычислимости, и здесь в их рассуждениях ошибок нет. Но если нас интересует не только «вычислимость», но и содержание процессов, данные о которых обрабатываются компьютерами, то оказывается, что расширенные трактовки становятся опасными. Не понимая сути, легко получить «два землекопа и две трети». Забыв о семантике, мы получили «сон разума».

Вот, например, принципы организации вычислительного процесса фон-Неймана [6]:

П1. Применение в ЭВМ двоичной системы счисления.

П2. Управление функционированием ЭВМ посредством последовательности команд (программ).

П3. Использование памяти компьютера для хранения и данных, и программ. При этом данные и программы хранятся в единой памяти в одинаковом виде, и над командами можно выполнять те же действия, что и над данными.

П4. Последовательная нумерация (адресация) всех ячеек памяти ЭВМ и возможность произвольного доступа к любой ячейке памяти по ее адресу.

П5. Обеспечение условного перехода к любому участку кода в процессе выполнения программы, несмотря на то, что команды выполняются последовательно.

Где же здесь семантика?

Интерпретация (то есть привязка содержания к форме) полученных компьютерами чисел сегодня осуществляется программами. Или, как в случае технической задачи, которую решал непосредственно Тьюринг – внешним экспертом. Задача «не потерять физический смысл» – сверхзадача для программиста, создающего приложение. Но всегда существует предел сложности, выше которого проконтролировать семантику преобразований не в силах человека. В результате – складываем лампочки и апельсины, получаем лампольсины. Целое распадается на несвязанные цифры, глядя на которые нельзя понять, где же форма, а где содержание.

Наука давно обратила внимание на эти проблемы. Конечно, в первую очередь это М. Минский [7], отец современных подходов к искусственному интеллекту, придумавший «фреймы для представления знаний» как нечто, объединяющее процедуры и данные для них, и Л. Заде [8], посвятивший свою жизнь созданию нечетких множеств, где количественная оценка (функция принадлежности) объединяется с семантикой (континуум) в единый синглетон. К сожалению, эти работы до сих пор не интегрированы в практику проектирования информационных систем, вычисления и их интерпретация остаются разорванными.

 



Поделиться:


Последнее изменение этой страницы: 2021-11-27; просмотров: 140; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.166.7 (0.029 с.)