Название | Кибергейт: Как выжить в мире умных вещей |
---|---|
Автор произведения | Брюс Шнайер |
Жанр | |
Серия | |
Издательство | |
Год выпуска | 2018 |
isbn | 9785206004496 |
Я играю в Pokémon GО, и приложение часто сбоит – вылетает. Работа его крайне нестабильна, но не то чтобы подобное было чем-то из ряда вон выходящим. Каждому из нас приходилось сталкиваться с аналогичной проблемой либо при работе на компьютере, либо в процессе пользования смартфоном. Чтобы защитить хранящиеся в устройствах данные, мы создаем резервные файлы или используем системы, которые делают это автоматически. И даже тогда мы рискуем потерять важную информацию. Мы привыкли снисходительно относиться к издержкам «общения» с техникой такого типа, а потому, не ожидая от нее идеальной работы и внутренне готовясь к сюрпризам разного рода, пусть даже таковые нас совсем не радуют, перезагружаем компьютеры, когда те зависают.
Большинство компьютеров снабжены плохим ПО, потому что за редким исключением рынок не поощряет высококачественные программы. «Хорошо, быстро, дешево – выберите любые две из трех составляющих». Выбросить на рынок недорогую и быстро сделанную программу куда проще, чем корпеть над созданием качественного продукта. Что примечательно, на протяжении какого-то времени большинство из нас считает плохо написанное ПО достаточно хорошим.
Такой подход прижился в области компьютерных технологий и проявился на всех ее уровнях. Для среднестатистической компании гораздо важнее получить продукцию с опережением графика и в рамках бюджета, нежели приобрести качественное ПО. Университеты c большей вероятностью ограничатся кодом, который едва работает, чем приобретут надежную программу. И мы как потребители ПО чаще всего не готовы платить дополнительные деньги за его улучшение.
Современные программы содержат мириады ошибок, некоторые из них – неотъемлемая часть сложного ПО{65} (подробнее об этом позже), однако большинство возникает на начальном этапе создания программы и не исправляется в процессе разработки. Соответственно, к потребителю ПО поступает с ошибками. Способность работать с некачественным кодом свидетельствует о нашем мастерстве.
В 2002 г. руководство компании Microsoft всерьез задумалось над тем, чтобы свести к минимуму количество уязвимостей в системе безопасности своих программ, и на улучшение процесса разработки ПО ушло целое десятилетие{66}. Продукты Microsoft все еще несовершенны – это за пределами существующих на сегодняшний день технологических возможностей, – но качество их намного выше среднего уровня. Компания Apple славится своим высококачественным ПО{67}. Как и Google. Некоторые небольшие, но критически важные сегменты ПО с самого начала отличались высоким уровнем исполнения. Например, программы для авионики написаны в соответствии с очень жесткими стандартами качества. Также и в НАСА: контроль за качеством ПО космических челноков обязателен{68}.
Столь разное отношение к вопросам безопасности ПО у ИТ-специалистов разных отраслей продиктовано мерой ответственности и степенью рисков. Стратегически важные сферы имеют и более высокую степень защиты. Именно поэтому в НАСА
65
Roger A. Grimes (8 Jul 2014), “5 reasons why software bugs still plague us,”
66
Abhishek Baxi (10 Mar 2014), “From a Bill Gates memo to an industry practice: The story of Security Development Lifecycle,”
67
Adrian Kingsley-Hughes (19 Dec 2017), “Apple seems to have forgotten about the whole ‘it just works’ thing,” Z
68
National Research Council (1996), “Case study: NASA space shuttle flight control software,” in