Разделяй и ограничивай власть
АрхивОни не объединились. Они слиплись.
Виктор Шендерович. "Куклы"
Виктор Шендерович. "Куклы"
Принцип разделения властей - лишь частный случай разделения полномочий. Разделение полномочий очень просто проиллюстрировать на материале коммерческой инженерии.
Любимый пример коммерческого инженера либералиссимуса Левенчука: касса. Собственник кинотеатра может стоять у входа и собирать со зрителей деньги сам. Однако, если его время слишком дорого для выполнения этой работы (или если он прикупил второй кинотеатр), ему придется нанять для ее выполнения кого-то другого, делегировав ему определенные полномочия.
Если собственник собирает деньги сам, никаких проблем нет - это его деньги. Однако у наемного работника появляется соблазн просто положить часть денег себе в карман. Соблазн реализуется, конечно, только если работник сущностно нечестен. Однако у собственника нет возможности определить честность кандидата априори, либо такое определение будет стоить очень дорого.
Этих издержек удается избежать, наняв не одного, а двух работников: кассира и билетера. Добросовестность кассира можно проверить, сопоставив количество корешков билетов с суммой в кассе, а добросовестность билетера - сопоставив те же корешки с числом зрителей.
Обратите внимание: возможность обмана собственника этим не исключается, но для обмана уже нужен сговор двух нечестных работников. Теория вероятностей говорит нам, что при любом коэффициенте честности кандидатов вероятность того, что два нанятых работника окажутся нечестными, ниже вероятности нечестности одного нанятого работника.
Схему, разумеется, можно улучшать, вводя дополнительные степени защищенности: дробя полномочия еще мельче. Но принцип остается прежним: условием обмана должен быть сговор по крайней мере n из m участников.
Инженерия же человеко-машинных систем дает еще более богатый материал для обсуждения и конструирования схем с разделением полномочий.
В гражданской криптографии (которая гражданская не только и уже не столько потому, что не военная, сколько потому, что воспроизводит отношения гражданского общества) [1], где лица-участники коммуникации представлены ключами, активно разрабатывается понятие и типология протоколов проверки (control protocols). Протоколы проверки, само собой, являются лишь частью протоколов с проверками.
Один из самых простых тому примеров - так называемая пороговая подпись (threshold signature protocol). Существуют ответственные действия по наложению подписи (например, наложение подписи от имени юридического лица, удостоверение подлинности открытого ключа коммерческим сертификатором ключей и т. п.), которые нежелательно доверять одному человеку: люди иногда оказываются нечестными, иногда подвержены давлению и действуют под принуждением, иногда даже сходят с ума. Поэтому особо ответственные ключи нужно генерировать распределенным образом и хранить тоже распределенно, у разных лиц. Протокол предусматривает наложение подписи, которая будет действительна, если в процедуре примут участие n из m этих лиц (часто разумным бывает для удобства выбрать n меньшим, чем m; величина n называется порогом). Грубо говоря, можно поделить ключ подписи юридического лица между исполнительным директором, главным юристом и главным бухгалтером с порогом 2, и тогда собственник (например, совет акционеров) может быть уверен, что "увести активы" директор не сможет, не сговорившись предварительно по крайней мере с одним из двух других лиц.
Итак, протокол с проверкой - это всегда протокол, предусматривающий разделение полномочий для выполнения какого-либо действия. Мы уже знаем, что разделение полномочий требует наличия сговора для нарушения протокола.
Как изящно выразился известный мизантроп Ник Сабо (Nick Szabo, знакомый нашему читателю по опубликованной в прошлом году статье "Умные контракты", "КТ" #38 [266]) в одной из ранних работ, "протоколы с проверкой позволяют представителям вздорного биологического вида, плохо приспособленного к организации более сложной, чем племя, работать совместно над такими большими проектами, как производство реактивных лайнеров или управление больницами". И - жить вместе большими скоплениями, иногда избегая войн в течение десятилетий, - добавим от себя.
Кстати, о войнах и воинах: в системах управления стратегическими вооружениями тоже используются подобные технологии. Например, стоит в Европе американская ракета, нацеленная на Советский Союз. "Нацеленная" - это значит, что в ее бортовой компьютер загружена карта Евразии, соответствующая крупномасштабная карта (допустим, Челябинской области) и координаты конкретной цели (допустим, центра миасского Машгородка). Но специфическая информация (крупномасштабная карта и координаты цели) в каждой ракете хранится зашифрованной. А ключ разделен пополам: половинка в "ядерном чемоданчике", половинка - в Объединенном комитете штабов. А еще есть кнопки у командующего родом войск и дежурного офицера.
...Коллега в погонах как-то по большому секрету шепнул мне, что боевые задания в российских ракетах хранятся незашифрованными, а "ядерный чемоданчик" советского образца - просто выключатель в последовательной логической "И"-цепи.
Я отношусь к этому, как к неподтвержденному слуху, но зная, что, например, данные, передаваемые сейсмографическим оборудованием, размещенным на территории стран-участниц Договора об ограничении мощности подземных ядерных испытаний, аутентифицировались 11-битным ключом (и не зная, исправлено ли это сегодня), не могу заставить себя решительно в него не поверить. Сразу вспоминается финал повести Евгения Козловского "Голос Америки ", одни герои которого замкнули один из таких выключателей, а другой - обезумевший генерал - нажал свою кнопку и устроил один большой конец всему.
Отсюда следует простой вывод: компоненты протокола не должны быть модифицируемы его участниками.
Для того чтобы применить принцип разделения полномочий к сфере властвования и реализовать разделение властей, не хватает одной маленькой штуки: исходной "собственности", честной убежденности в том, что полномочия власти делегированы ей, а не от века принадлежат.
1 (обратно к тексту) - То есть, если воспользоваться тонкостями книжного английского, не только и не столько civil, сколько civic.