
Результат же был вовсе плох. Читатели поверили, что криптография – род некоей магической пыли, которая покроет их программное обеспечение и сделает его неуязвимым. И они произносили магические заклинания вроде «128-битовый ключ» или «инфраструктура открытого ключа». Как-то однажды коллеги поведали мне, что мир наполнился плохими системами безопасности, сконструированными людьми, прочитавшими «Прикладную криптографию».
С момента написания той книги я занимался тем, что давал консультации по криптографии: по всем вопросам, связанным с разработкой и анализом систем безопасности. К своему несказанному удивлению, я обнаружил, что слабые места в системах безопасности отнюдь не определяются недостатками математических моделей. Они были связаны с аппаратурой, программами, сетями и людьми. Прекрасные математические ходы становились никчемными из-за небрежного программирования, гнусной операционной системы или просто выбора кем-то плохого пароля.
В поисках слабины я научился смотреть шире, рассматривая криптографию как часть системы. Я начал повторять пару сентенций, которые красной нитью проходят через всю эту книгу: «Безопасность – это цепь: где тонко, там и рвется» и «Безопасность – это процесс, а не продукт».
Любая реальная система – запутанная серия взаимодействий. Защита должна распространяться на все компоненты и соединения этой системы. И в этой книге я старался показать, что в современных системах настолько много компонентов и связей – некоторые из них неизвестны даже создателям, а тем более пользователям, – что угроза для безопасности всегда остается. Ни одна система не совершенна; ни одна технология не есть Ответ™.
Сказанное очевидно каждому, кто знаком с проблемами безопасности на практике. В реальном мире за словом «безопасность» скрывается ряд процессов. Это не только упреждающие мероприятия, но и обнаружение вторжения, его пресечение и целая судебная система, позволяющая выследить виновного и преследовать его по суду. Безопасность – не продукт, она сама является процессом. И если мы должны обеспечить безопасность нашей вычислительной системы, нам необходимо начать разработку этого процесса.
