Можете ли вы доверять своему компьютеру?
Ричард СтолменЧьим приказам должен подчиняться ваш компьютер? Большинство думает, что их компьютеры должны подчиняться им, а не кому-то другому. По плану, который они называют “доверенными вычислениями”, крупные записывающие компании (в том числе компании кино- и звукозаписи) вместе с такими компьютерными компаниями, как Intel и Microsoft, планируют заставить ваш компьютер подчиняться им вместо вас. (Версия этой схемы, предлагаемая компанией Microsoft, называется Palladium.) Раньше несвободные программы заключали в себе вредоносные особенности, но по этому плану они станут повсеместными.
Несвободная программа означает, в принципе, что вы не контролируете то, что она делает; вы не можете изучить исходный текст или изменить ее. Нет ничего неожиданного в том, что хитроумные предприниматели находят способы воспользоваться своим контролем, чтобы поставить вас в невыгодное положение. Компания Microsoft делала это несколько раз: одна из версий Windows была спроектирована так, чтобы посылать в Microsoft отчеты обо всех программах на вашем жестком диске; недавнее обновление Windows Media Player, связанное с “безопасностью”, требовало, чтобы пользователи согласились с новыми ограничениями. Но компания Microsoft не одинока: программа для обмена музыкой KaZaa составлена так, чтобы деловой партнер KaZaa мог сдавать ваш компьютер в аренду своим клиентам. Эти вредоносные особенности часто секретны, но даже когда вы узнаете о них, их трудно удалить, поскольку у вас нет исходного текста.
В прошлом это были отдельные случаи. “Доверенные вычисления” сделали бы эту практику всеобъемлющей. Для них больше подходит название “вероломные вычисления”, потому что план был составлен так, чтобы гарантировать, что ваш компьютер будет систематически выходить у вас из подчинения. Фактически он составлен для того, чтобы ваш компьютер перестал функционировать как компьютер общего назначения. Любая операция может потребовать явного разрешения.
Техническая идея, стоящая за вероломными вычислениями, состоит в том, что в компьютере есть устройство шифрования и проверки цифровых подписей, а ключи хранятся в секрете от вас. Несвободные программы будут пользоваться этим устройством, чтобы контролировать, какие из других программ вы можете выполнять, к каким документам или данным у вас может быть доступ и каким программам вы можете их передавать. Эти программы будут постоянно загружать по сети новые правила получения доступа и автоматически применять эти правила к вашей работе. Если вы не дадите своему компьютеру периодически получать новые правила из Интернета, некоторые возможности будут автоматически отключаться.
Конечно, Голливуд и записывающие компании планируют применять вероломные вычисления для цифрового управления ограничениями, с тем чтобы полученные фильмы и музыка могли воспроизводиться только на одном обозначенном компьютере. Обмен будет совершенно невозможен, по крайней мере, теми подписанными файлами, которые вы получали бы от этих компаний. У вас, широкой общественности, должна быть как свобода, так и возможность обмениваться этим. (Я предполагаю, что кто-нибудь найдет способ создания незашифрованных версий и обмена ими, так что цифровое управление ограничениями не добьется полного успеха, но это не оправдывает эту систему.)
Когда обмен делают невозможным, это уже достаточно плохо, но они идут дальше. Есть планы по применению той же техники для электронной почты и документов — что приведет к сообщениям, исчезающим через две недели, или документам, которые можно прочесть только на компьютерах одной компании.
Представьте себе, что вы получаете сообщение от своего шефа, в котором вам велят сделать что-нибудь, что вы считаете рискованным; через неделю, когда оно ушло в топку, вы не можете воспользоваться им, чтобы показать, что это было не ваше решение. “Получение в письменном виде” не защитит вас, когда приказ написан исчезающими чернилами.
Представьте себе, что вы получаете сообщение от своего шефа, в котором устанавливаются правила, нарушающие закон или возмутительные с точки зрения нравственности, например уничтожать отчетные документы вашей компании или бездействовать в обстоятельствах, которые могут представлять серьезную опасность для вашей страны. Сегодня вы можете переслать это журналисту, и об этой деятельности станет известно. При вероломных вычислениях журналист не сможет прочесть документ; его компьютер откажется ему подчиняться. Вероломные вычисления — рай для коррупции.
В таких текстовых процессорах, как Microsoft Word, вероломные вычисления могли бы применяться при сохранении ваших документов, чтобы гарантировать, что никакой конкурирующий текстовый процессор не сможет их прочесть. Сегодня мы должны разузнавать секреты формата Word путем кропотливых экспериментов, чтобы свободные текстовые процессоры могли читать документы Word. Если Word при сохранении документов будет зашифровывать их с помощью вероломных вычислений, у сообщества свободного программного обеспечения не останется никакой возможности разработать программы для чтения их — и даже если бы мы могли это, такие программы могли бы быть запрещены Законом об авторском праве цифрового тысячелетия.
Программы, применяющие вероломные вычисления, будут постоянно загружать из Интернета новые правила получения доступа и автоматически применять эти правила к вашей работе. Если Microsoft или правительство США не понравится то, что вы сказали в написанном вами документе, они смогли бы разослать новые указания, в которых всем компьютерам приказано не давать никому прочесть этот документ. Каждый компьютер стал бы подчиняться им, когда загрузит новые указания. Вашу запись можно было бы удалить задним числом в стиле “1984”. Вы сами не смогли бы прочесть ее.
Вы могли бы подумать, что вы можете разузнать, какие мерзости делает приложение, использующее вероломные вычисления, изучить, насколько они болезненны, и решить, идти ли на это. Даже если вы можете разузнать это, было бы глупо соглашаться на такую сделку, но вы не можете даже ожидать, что условия сделки будут оставаться неизменными. Как только вы становитесь зависимы от программы, вы сели на крючок, и они знают это; тогда они могут изменить условия сделки. Некоторые приложения станут автоматически загружать обновления, которые будут делать что-то другое — и они не дадут вам возможности решать, проводить ли обновление.
Сегодня вы можете избежать ограничения несвободными программами, если не будете пользоваться ими. Если у вас GNU/Linux или другая свободная операционная система и если вы не устанавливаете на ней несвободные приложения, то вы управляете тем, что делает ваш компьютер. Если в свободной программе есть вредоносная особенность, другие разработчики сообщества ее удалят и вы сможете пользоваться исправленной версией. Вы также можете работать со свободными прикладными программами и средствами разработки на несвободных операционных системах; это не предоставляет вам полной свободы, но многие пользователи практикуют это.
Вероломные вычисления создают угрозу существованию свободных операционных систем и свободных приложений, потому что вы, возможно, вообще не будете в состоянии выполнять их. В некоторых версиях вероломных вычислений от операционной системы потребовалось бы, чтобы она была одобрена конкретной компанией. Свободные операционные системы нельзя было бы установить. В некоторых версиях вероломных вычислений от каждой программы потребовалось бы, чтобы она была особым образом одобрена разработчиком операционной системы. В такой системе вы не смогли бы выполнять свободные приложения. Если бы вы нашли способ делать это и рассказали об этом кому-нибудь, это могло бы быть нарушением закона.
Уже есть проекты законов США, которые потребовали бы, чтобы все компьютеры поддерживали вероломные вычисления. CBDTPA (мы называем его законом “Потребляй, но не вздумай программировать”) — один из них. Но даже если они не заставят вас перейти на вероломные вычисления законодательным путем, давление с целью заставить принять их может быть неимоверным. Сегодня люди часто пользуются форматом Word для переговоров, хотя это приводит к разного рода проблемам (см. “Мы можем положить конец вложениям Word”). Если читать документы последней версии Word сможет только машина с вероломными вычислениями, многие перейдут на нее, если будут смотреть на ситуацию только как на личный выбор (принять или отказаться). Чтобы противостоять вероломным вычислениям, мы должны объединиться и рассматривать ситуацию как коллективное решение.
Подробнее о вероломных вычислениях см. на http://www.cl.cam.ac.uk/users/rja14/tcpa-faq.html.
Чтобы остановить вероломные вычисления, потребуется организация большого числа граждан. Нам нужна ваша помощь! Поддержите, пожалуйста, Дефект гарантирован, кампанию ФСПО против цифрового управления ограничениями.
Более поздние замечания
В отрасли компьютерной безопасности термин “доверенные вычисления” употребляют в другом смысле — не путайте два этих значения.
Проект GNU распространяет программу GNU Privacy Guard, в которой реализовано шифрование с открытым ключом и цифровые подписи и которую вы можете применять для безопасной и конфиденциальной электронной переписки. Полезно рассмотреть, чем GPG отличается от вероломных вычислений и понять, что делает первую полезной, а вторые такими опасными.
Когда кто-то пользуется GPG, чтобы послать вам зашифрованный документ, а вы пользуетесь GPG, чтобы расшифровать его, в результате получается незашифрованный документ, который вы можете читать, пересылать, копировать и даже перезашифровать, чтобы безопасно переслать его кому-то еще. Приложение с вероломными вычислениями позволило бы вам читать слова с экрана, но не позволило бы вам создать незашифрованный документ, с которым вы могли бы делать что-то другое. GPG, пакет свободных программ, делает функции безопасности доступными пользователям; они пользуются пакетом. Техника вероломных вычислений задумана, чтобы налагать ограничения на пользователей; она пользуется ими.
Сторонники вероломных вычислений сосредоточивают свои обзоры на их полезных применениях. То, что они говорят, часто верно, просто это не важно.
Как большинство аппаратуры, аппаратуру, реализующую вероломные вычисления, можно применять в безвредных целях. Но эти возможности можно реализовать по-другому, без аппаратной реализации вероломных вычислений. Принципиальная перемена, которую приносят пользователям вероломные вычисления, состоит в том, что ваш компьютер принуждают работать против вас.
То, что они говорят, верно; верно и то, что говорю я. Сложим это вместе, и что получится? Вероломные вычисления — это план, с помощью которого у нас отберут свободу, предложив взамен незначительные выгоды, чтобы отвлечь нас от того, что мы потеряем.
Microsoft представляет Palladium как меру безопасности и заявляет, что это защитит от вирусов, но ложность этого заявления очевидна. В докладе, который подготовили в Microsoft Research в октябре 2002 года, утверждалось, что одна из характеристик системы Palladium состоит в том, что существующие операционные системы и приложения будут выполняться по-прежнему; следовательно, вирусы по-прежнему смогут делать все, что они могут делать сегодня.
Когда сотрудники Microsoft говорят о “безопасности” в связи с системой Palladium, они не подразумевают того, что мы обычно подразумеваем под этим словом: защиту вашей машины от того, чего вы не желаете. Они подразумевают защиту ваших копий данных на вашей машине от того, чтобы они были доступны вам так, как они не желают. На одном слайде доклада было перечислено несколько типов секретов, для хранения которых можно было бы применять Palladium, в том числе “секреты третьих сторон” и “секреты пользователя” — но “секреты пользователя” были в кавычках. Этим они признают, что в контексте системы Palladium секреты пользователя — это нечто абсурдное.
В докладе часто употреблялись другие термины, которые у нас нередко ассоциируются с безопасностью, такие, как “атака”, “вредоносная программа”, “подлог”, а также “доверенный”. Ни один из них не означает того, что он обычно означает. “Атака” не значит, что кто-то пытается повредить вам — это значит, что вы пытаетесь скопировать музыку. “Вредоносной программой” называется программа, установленная вами, чтобы делать то, что кто-то другой хочет помешать делать на вашей машине. “Подлог” не значит, что вас кто-то обводит вокруг пальца, это значит, что вы обводите вокруг пальца Palladium. И так далее.
В предшествующем заявлении разработчиков Palladium содержалась принципиальная предпосылка, согласно которой у того, кто выработал или собрал информацию, должен быть полный контроль над тем, как вы пользуетесь ею. Это стало бы революционным переворотом, перечеркивающим этические и юридические идеи прошлого, и создало беспрецедентную системы контроля. Конкретные проблемы этой системы не случайны; они вытекают из основной цели. Именно эту цель мы должны отвергнуть.
На 2015 год главным методом распространения копий чего бы то ни было является Интернет и в особенности Всемирная паутина. Сегодня компании, которые хотят навязывать миру цифровое управление ограничениями, хотят осуществлять это программами, которые запрашивают копии с серверов. Это значит, что они намерены контролировать ваш браузер, а также вашу операционную систему. Делают они это путем “удаленного освидетельствования” — механизма, посредством которого ваш компьютер может “освидетельствоваться” перед сервером в том, какие в точности программы на нем работают, так что вам невозможно подделать это. Программы, которые он стал бы освидетельствовать, включали бы в себя браузер (чтобы доказать, что он реализует цифровое управление ограничениями и не дает вам извлечь незашифрованные данные), ядро (чтобы доказать, что оно не дает изменить работающий браузер), программу-загрузчик (чтобы доказать, что она не дает изменить ядро при запуске) и все прочее, что относится к безопасности владычества компаний цифрового управления ограничениями над вами.
В империи зла единственная трещина, с помощью которой вы можете снизить ее фактический контроль над вами — найти способ скрыть или замаскировать то, что вы делаете. Другими словами, вам нужен способ обманывать тайную полицию империи. “Удаленное освидетельствование” — схема, по которой ваш компьютер вынуждают говорить правду компании, когда ее сервер спрашивает компьютер, не освободили ли вы его.
На 2015 год вероломные вычисления были реализованы в персональных компьютерах в виде “модуля доверенной платформы”; однако по причинам практического характера модули оказались совершенно непригодными для предоставления платформы удаленного освидетельствования с целью проверки цифрового управления ограничениями. Таким образом, компании реализуют цифровое управление ограничениями с помощью других методов. В настоящее время “модули доверенной платформы” вообще не применяются для цифрового управления ограничениями, и есть основания полагать, что применять их для этого будет невозможно. Как ни парадоксально, это значит, что современные применения “модулей доверенной платформы” ограничены невинными второстепенными приложениями — такими как проверка, что никто не изменил украдкой систему на компьютере.
Следовательно, мы приходим к заключению, что “модули доверенной платформы”, доступные для персональных компьютеров на 2015 год, не опасны, и нет оснований немедленно отказываться от включения такого модуля в состав компьютера или от поддержки его в системных программах.
Это не значит, что все превосходно. Другие аппаратные системы для отказа пользователю компьютера в изменении программ на нем применяются как в некоторых персональных компьютерах на базе ARM, так и в процессорах сотовых телефонов, автомобилей, телевизоров и других устройств, и эти системы полностью подтверждают наши худшие ожидания.
Это также не означает, что удаленное освидетельствование не представляет угрозы. Если его когда-нибудь удастся реализовать в устройстве, это будет серьезнейшей угрозой свободе пользователей. Современные “модули доверенной платформы” безвредны только потому, что им не удалось сделать такое освидетельствование возможным. Мы не должны предполагать, что неудачу потепят и все будущие попытки.
На 2022 год TPM2, новый “модуль доверенной платформы“, действительно поддерживает удаленное освидетельствование и может поддерживать цифровое управление ограничениями. Угроза, о которой я предупреждал в 2002 году, стала ужасающе реальной.
Удаленное освидетельствование в действительности применяется в Google SafetyNet (в настоящее время входит в Play Integrity API), который проверяет, что операционная система Android, работающая на телефоне-шпионе, является официальной версией Google.
Эта вредоносная функциональность уже делает невозможной работу некоторых банковских приложений на GrapheneOS, представляющей измененную версию Android, из которой устранены некоторые (хотя и не все) несвободные программы, которые обычно содержит Android.
Свободная версия Android, такая как Replicant, безусловно, встретилась бы с тем же препятствием. Если вы достаточно цените свою свободу, чтобы установить Replicant, вы могли бы отказаться терпеть любые несвободные приложения (не только банковские) на своих компьютерах. Тем не менее со стороны Google несправедливо подглядывать за тем, изменили ли пользователи свою операционную систему, и диктовать в зависимости от этого, что пользователи могут, а чего не могут делать.
Этот очерк публикуется в сборнике Свободные программы, свободное общество: избранные очерки Ричарда М. Столмена.