14.5. Сообщения и действия
273
В свое время этой особенностью воспользовалась многочисленная армия мо-
шенников для осуществления махинаций против ничего не подозревающих
пользователей системы электронных платежей PayPal.
Довольно часто необходимый уровень доверия не указывают в докумен-
тации, потому что он “очевиден”. Это может быть справедливо для разра-
ботчика протокола, но, как и всякий модуль системы, криптографический
протокол должен иметь четко определенный интерфейс по легко объясни-
мым причинам.
В терминах бизнеса все внесенные в документацию требования к доверию
эквивалентны рискам. Каждая потребность в определенном уровне доверия
влечет за собой потенциальный риск, наличие которого следует учитывать.
14.5
Сообщения и действия
Типичное описание криптографического протокола содержит перечень
сообщений, которыми обмениваются участники протокола, а также описание
вычислений, которые должен выполнить каждый участник.
Следует отметить высокий уровень описания практически всех протоко-
лов. Большинство деталей опускается. Это позволяет сконцентрироваться на
основной
функциональности протокола, но в то же время представляет боль-
шую угрозу для безопасности системы. Не имея четкого и досконального
описания всех действий, которые должен предпринимать каждый участник,
создать безопасную реализацию протокола крайне сложно.
Иногда создатели протокола снабжают его обширным описанием всех вто-
ростепенных деталей и проверок. Подобные спецификации зачастую настоль-
ко сложны, что никто не в состоянии разобраться в них до конца. Наличие
подробной спецификации, безусловно, поможет разработчику, но ничто слиш-
ком сложное не может быть безопасным.
На помощь, как всегда, приходит модуляризация. Как и при работе с ком-
муникационными протоколами,
функциональность криптографических про-
токолов может быть разбита на несколько уровней. Каждый уровень функ-
ционирует поверх предыдущего. Все уровни играют важную роль, но боль-
шинство из них одинаковы для всех протоколов. Лишь верхний уровень про-
токола весьма переменчив, и именно он всегда подлежит документированию.
14.5.1
Транспортный уровень
Пусть сетевые специалисты простят нас за то, что мы позаимствовали
у них этот термин. Для криптографов транспортный уровень — это лежа-
щая в основе протокола коммуникационная система, которая позволяет его
участникам взаимодействовать друг с другом, в частности отправлять строки