Выбрать главу

В криптографии безопасность приходит путем следования за широкими массами. Доморощенные алгоритмы невозможно подвергать в течение сотен и тысяч часов криптоанализу, через который прошли DES и RSA. Компания или даже промышленное объединение не могут мобилизовать ресурсы, которые использовались, чтобы противостоять аутентификационному протоколу Kerberos или IPsec. Ни один патентованный почтовый протокол шифрования не в состоянии повторить конфиденциальность, предлагаемую PGP или S/MIME. Следуя в общей струе, вы обеспечиваете уровень криптоаналитической экспертизы всемирного сообщества, а это вам – не несколько недель работы ничем не выдающихся аналитиков.

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

И остерегайтесь врача, который говорит: «Я изобрел и запатентовал абсолютно новый способ лечения, который состоит в употреблении толченых сухарей. Этот метод еще не испробован, но я уверен, что он великолепен». Помните, что новую криптографию часто называют змеиным ядом.

Глава 8

Компьютерная безопасность

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

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

Большинство ранних исследований по компьютерной безопасности было посвящено проблеме персонального доступа в системах совместного пользования. Как сделать так, чтобы Алиса и Боб могли пользоваться одним и тем же компьютером и одинаковыми компьютерными программами, но чтобы Алиса не могла видеть, что делает Боб, а Боб не знал, что делает Алиса? Или в общем случае: если системой пользуется большая группа людей, у каждого из которых есть определенные права использовать определенные программы и видеть определенные данные, то как мы можем реализовать такие правила контроля доступа? Вообще говоря, это не та задача, которую можно решить с помощью криптографии, хотя в чем-то она могла бы помочь. Это новая задача.

Компьютерная безопасность требует преодоления и многих других новых проблем. Как компании обеспечить правильную работу с большой базой данных, к которой разные люди имеют различный доступ? Эта проблема может быстро стать чрезвычайно сложной. Только несколько человек имеют право видеть информацию о зарплате, еще меньше людей должны видеть всю совокупность данных: среднюю зарплату, статистические данные о здоровье и т. д.