Скачиваний:
180
Добавлен:
02.05.2014
Размер:
891.9 Кб
Скачать
      1. Обобщенные модели сбоев и противника

Рассматривается сеть взаимодействующих процессоров. Некоторые процессоры могут «сбоить». При сбоях, приводящих к останову(FS-сбоях),сбоящий процессорможет приостановить в некоторый момент времени отправку своих сообщений. В то же время предполагается, что сбоящие процессоры продолжают получение сообщений и могут выдавать «некую информацию» в свои выходные каналы. ПриВизантийских сбоях (By-сбоях) процессоры могут произвольным образом сотрудничать друг с другом с целью получения необходимой для них информации или с целью нарушения процесса вычислений. ПриBy-сбоях сбоящие процессоры могут объединять свои входы и изменять их. В то же время это должно происходить при условии невозможности изучения любой информации о входахнесбоящих процессоров.

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

Противникаможно представлять как некий универсальный процессор, действия которого заключаются в стремлении «сделать» процессоры сети сбоящими («подкупить» их).

По аналогии со сбоями противник может быть динамическим и статическим. Статическим противникомявляется противник, который «сотрудничает» с фиксированным количеством сбоящих процессоров («подкупленных» противником). При действияхдинамического противникаколичество сбоящих процессоров может меняться (в том числе непредсказуемым образом).

Кроме того, противник может быть активнымипассивным, а также саприорнымииапостериорнымипротокольными и раундовыми действиями. Пассивный противник не может изменять сообщения, циркулируемые в сети. Активный противник может знать все о внутренней конфигурации сети, может читать и изменять все сообщения сбоящих процессоров и может выбирать сообщения, которые будут посылать сбоящие процессоры при вычислениях. Активный динамический противник может в начале каждого раунда «подкупить» несколько новых процессоров. Таким образом, он может изучить информацию, получаемую ими в текущем раунде, и принять решение «подкупить» ли ему новый процессор, или нет. Такой противник может собирать и изменять все сообщения от сбоящих процессоров к несбоящим. Некоторые сценарии могут предполагать, что все сообщения (в том числе, между честными процессорами) будут доставлены адресатам в конце текущего раунда. Действия аналогичного характера активный противник может выполнить не только в течение раунда (в его начале и конце), но и до начала выполнения протокола и после его завершения.

Противник называется t-противником, если он сотрудничает сtпроцессорами.

      1. Получестные модели

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

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

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

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

Соседние файлы в папке Казарин О.В. Теория и практика защиты программ