Самый безопасный способ встроить в мои сотовые телефоны правительственный черный ход?

Я начальник службы безопасности крупного (вымышленного) производителя сотовых телефонов, и после двух месяцев невозможности разблокировать сотовые телефоны стрелков из Сан-Бернардино шпионам надоело, и они требуют это для моего следующего поколения сотовых телефонов. моделей телефонов, я включаю некий механизм, с помощью которого они могут получить доступ к зашифрованной информации, хранящейся в найденном террористом мобильном телефоне. Они говорят, что если я не справлюсь, меня уволят и заменят тем, кто будет... но классическое решение (установить программный черный ход, который активируется секретным паролем/методом, доступным только правительству). знает о) для меня не начало, потому что стало очевидно, что правительство не намного лучше хранит секретычем кто-либо другой, и это будет лишь вопросом времени, когда все злодеи в мире также узнают секретный пароль/технику, после чего мои клиенты будут очень недовольны мной.

Вместо этого я хотел бы реализовать механизм, который все еще будет безопасным, даже если все в мире будут знать все его детали, потому что только очень хорошо финансируемое крупное правительство будет иметь доступ к физическим ресурсам, необходимым для выполнения операции разблокировки. В качестве (не очень хорошо продуманного) примера телефон может разблокироваться, если обнаружит, что он находится в невесомости более часа, исходя из теории, что только крупное правительство может позволить себе вывести телефон на орбиту.

Есть ли какой-нибудь практический способ реализовать это (не связанный с запуском критически важных доказательств на орбиту)?

Похоже, это вопрос об одном сюжетном повороте — лазейке только для правительства — а не о построении мира в рамках, определенных в справочном центре .
Ну, я знаю, какой большой скандал я раскрою.
@nitsua60 Я не знаю, этот вопрос можно легко понять, как компания будет это делать, в конце концов, это компания, которая производит телефоны.
Как бы вы устроили так, чтобы только правильное правительство могло позволить себе осуществить разлочку?
если вам не нужно расшифровывать какие-либо зашифрованные файлы, но чтобы разблокировать этот телефон, поместите внутрь какой-то замаскированный rifd-чип, который разблокируется, если получит правильный 4096-битный закрытый ключ, передаваемый на частоте только для правительства, созданной устройство, которое вы продаете только три раза... это не идеально, но может как-то работать. Итак... тем не менее, такой вопрос, кажется, лучше для conspiracy.stackexchange, если он есть. Но, эй, вы можете получить ответ на вопрос «насколько глубоко вы должны быть в воде, чтобы выжить при взрыве ядерной бомбы над поверхностью», так что эти вопросы кажутся законными.
@sh1 Это было бы возможно только в том случае, если правильное правительство способно выполнить какое-то действие, на которое не способно ни одно другое правительство. Хотя на это можно было бы слишком надеяться.
Возможно, вы захотите изучить криптографию с открытым ключом. Это позволило бы коду/кодам для бэкдора оставаться в безопасности независимо от отсутствия секретности, если бы он был реализован правильно (телефон, на котором установлен бэкдор во время производства, а также как открытый ключ, так и его закрытый ключ). Я не криптограф и сам не могу полностью объяснить, поэтому это всего лишь комментарий.
@ConfusedMerlin И как вы планируете помешать другим правительствам не использовать частоту и украсть (или купить) ключ?
Предположим, что телефон можно изготовить — что помешает террористам использовать ДРУГОЕ устройство для хранения зашифрованных данных, оставив телефон только для связи?
@enkryptor на самом деле ничего, кроме неудобств, связанных с необходимостью искать, покупать, изучать и всегда использовать отдельное устройство. (и вы будете удивлены, как часто этого достаточно; люди действительно ленивы)
@JeremyFriesner, преступники хитры. Я переписал свой ответ.
Почему нельзя использовать pgp/gpg и вообще не полагаться на встроенную безопасность телефона?
Сделайте его доступным только из Windows 95! ;)
Я не согласен с критикой. Этот вопрос соответствует цели сайта.
Не думаю, что тебе стоит беспокоиться о том, что плохие парни раскроют секрет. Просто пусть правительство заставит инженеров, которые это сделали, исчезнуть! Они могли бы встроить его в процессор приложений телефона, чтобы позаботиться об этом. Проверьте аппаратные трояны в Google!
Я голосую за то, чтобы закрыть этот вопрос как не относящийся к теме, потому что он больше похож на (базовый и, возможно, слишком общий) вопрос о реальной информационной безопасности в реальном мире, но по какой-то причине я не могу проголосовать за то, чтобы он принадлежал на обмен стеком безопасности.

Ответы (12)

Пусть это зависит от множества ключей, а не от одного

Я считаю, что вы могли бы создать такой механизм разблокировки, адаптированный для конкретного правительства. Он должен опираться не на один ключ, а на комбинацию нескольких разовых ключей, выдаваемых членам какого-либо законодательного или исполнительного органа. (парламент/верховный суд/и т.д.)

Телефон будет разблокирован только при наличии ключей, представляющих большую часть этого тела. Естественно, личность представителей, голосующих таким образом за разблокировку, будет регистрироваться, что делает их ответственными.

Таким образом, «правительство», которому вы доверяете, — это не какая-то секретная трехбуквенная организация, а реальное, подотчетное, официальное правительство.

Конечно, это не совсем безопасно. Человеческая ошибка играет роль и т. д. (но это может быть частью вашего сюжета)

Однако для злоупотребления этим бэкдором вам потребуются либо скоординированные усилия нескольких избранных представителей, либо каким-то образом получить незаконный доступ к большому количеству персональных отмычек (а не к одному).

Дело в том, что это система, использующая систему сдержек и противовесов, используемую в (демократическом) правительстве.

Этот ответ, вероятно, означает «ключ подписи», а не «одноразовый ключ». Суть в том, что у группы государственных органов могут быть криптографические подписи, которые будут проверяться официальными системами; затем, если будет издан приказ, требующий нескольких подписей, каждый из них просто должен подписать этот приказ (который включает в себя отметку времени и GUID для предотвращения атак воспроизведения), чтобы подтвердить, что они разрешают его. Затем система проверки проверит действительность необходимого количества подписей, прежде чем принять заказ.
Проблема с этим подходом заключается в том, что злоумышленник, имеющий физический доступ к устройству, может настроить механизм авторизации, чтобы просто сообщить, что любое действие разрешено, полностью скомпрометировав любую систему, которую злоумышленник может изменить. Например, если сотовый телефон настроен на дешифрование в ответ на подписанный приказ от проверенных правительственных чиновников, любой, кто украдет этот телефон, может обманом заставить его думать, что он получил такой приказ, изменив схему, чтобы сообщить, что проверка прошла успешно, без любая необходимость фактической проверки.
Этот подход может быть допустимым, если физическая безопасность системы не является проблемой. Например, такой подход может работать для проверки приказов государственных чиновников по обеспечению безопасности серверов на военной базе, при условии, что никто не сможет их взломать.
Да, в конце концов, все дело в том, «кому ты доверяешь?». Если нельзя доверять производителю устройства или поставщику используемых услуг аутентификации (злой умысел или халатность), устройство не является безопасным.

Нет возможности... почти

Я бы сказал, что первоначальная цель — разработать смартфон с универсальным встроенным механизмом дешифрования — недостижима. Стойкость шифрования зависит от алгоритма и данных, а не от носителя. Так что дело в софте, а не в железе. Вы не можете сделать телефон, или флешку, или DVD-привод, которые позволяют вам это делать, так как это не зависит от носителя. Однако есть несколько вариантов:

Вариант 1 - непрерывная регистрация

Предполагая, что сам телефон использовался для расшифровки хотя бы один раз, когда у вас есть телефон и зашифрованные данные внутри, но нет ключа, единственное, что может вам помочь, — это система регистрации.

Если телефон записывает все свои действия, это может помочь восстановить данные. Однако это означает, что постоянно передается или записывается много отладочной информации (дампы, логи) — маловероятно, что террористы ничего не заметят.

Вариант 2 — использование только одобренного государством программного обеспечения

Существуют алгоритмы, позволяющие расшифровывать данные с помощью некоего «мастер-ключа» (или, скажем, «восстановления»). Эти алгоритмы используются в корпоративных решениях. Ключ «восстановления» необходимо использовать заранее, чтобы сгенерировать пару ключей.

Все, что вам нужно сделать, это заставить конечных пользователей использовать единственное программное обеспечение для шифрования. Так что да - технически это возможно, хотя и не очень осуществимо.

Но все это не сработает

Предположим, что существует конструкция смартфона, которая действительно позволяет правительству расшифровывать все данные внутри телефона. Будем считать, что правительство заставило всех своих граждан сменить телефоны на новые. Помечтаем, чтобы все остальные телефоны (в том числе и зарубежные) были уничтожены или перестали работать.

Будет ли террорист использовать этот телефон для хранения конфиденциальной информации? Телефон из вашего примера использовался только потому, что он был безопасным. В противном случае злоумышленник может использовать любое другое устройство (например, ноутбук) для шифрования и хранения своей информации, оставив телефон только для связи.

Ни в коем случае, и не по техническим причинам

Но для человеческих. Правительство — это всего лишь набор людей. Больше ничего, не особо. Так что у некоторых людей есть черный ход. Через какое-то время те же люди уже не правительство. Но у них есть знания. Если есть устройство для выдачи одноразовых кодов, с ними можно получить сотни ключей. Они могут получить планы и семя ГСЧ. Они могут запросить доступ у своих преемников. Пока они еще в правительстве, они могут продавать доступ. Это может быть заманчиво. Или они могут нанять вас для устранения сбоя в системе, и тогда вы получите доступ. И так далее.

Ничто в правительстве не предотвратит утечку доступа. И если вы можете спроектировать и изготовить один раз, вы сможете повторить это снова.

АНБ должно иметь гораздо большую вычислительную мощность, чем кто-либо другой (вероятно, сегодня это так), шифры с короткой длиной ключа могут быть защищены от кого угодно, но не от АНБ (считается, что именно поэтому длина ключа DES была снижена с 64 бит до 56 бит, в 256 раз меньше безопасности). Поскольку аппаратная вычислительная мощность удваивается каждые 18 месяцев, АНБ должно быть далеко впереди, чтобы не отставать. Один из способов, которым они действительно могут быть далеко впереди, — это квантовые вычисления.

Альтернативный подход — сделать бэкдор, зависящий от чипов, которые не выдают ключи внутрь, они встроены в аппаратное обеспечение с механизмом самоуничтожения для предотвращения доступа к ключам дешифрования.

Оригинальный шифр IBM Lucifer (на котором основан DES) использовал 112-битный ключ, расширенный до 128 бит (112 ключей плюс 16 битов четности). DES использует 56-битный ключ, разделенный на 64 бита (56 ключей плюс 8 битов четности). Интересно, что с изменениями АНБ оказалось, что DES устойчив к дифференциальному криптоанализу (который не был известен в публичной литературе того времени) и действительно предлагает примерно свою длину ключа реальной безопасности, о чем свидетельствует тот факт, что даже по состоянию на последнее время для самой известной публичной атаки без грубой силы требуется 64 ТБ известного открытого текста и до 2 ^ 43 времени (шифрование).
Я не думаю, что ключи DES стали короче из-за вмешательства правительства.

Краткий ответ
Вы не можете.

Длинный ответ
Поскольку то, что вы ищете, представляет собой механизм условного депонирования ключей, проблема заключается в том, что нет способа создать черный ход, который позволил бы хорошим парням получить доступ, а плохим парням остаться заблокированным. Каждое техническое решение, которое вы реализуете, имеет самое слабое место в людях. Даже сценарий, подобный предложенному @ConfusedMerlin в комментариях, имеет проблему, заключающуюся в том, что ключ можно украсть/продать. В конце концов, как можно быть уверенным в том, что ключ используется правильным парнем?

В любом случае, у XKCD уже есть решение

Я думаю, что ваше возражение относится только к ключам, состоящим исключительно из информации. В качестве контрпримера представьте, что «ключом» была детонация ядерного оружия, т. е. если защищенный от несанкционированного доступа детектор внутри телефона обнаруживает достаточно сильный импульс ЭМИ, он разблокируется. Это будет надежно защищено от негосударственных хакеров, пока возможность взорвать ядерное оружие доступна только правительствам. (....а если негосударственные люди будут взрывать ядерное оружие, то у вас есть более серьезные проблемы, о которых нужно беспокоиться)
О, ну, не совсем. ЭМИ можно генерировать и без ядерного оружия, погуглите "генератор ЭМИ". И я полагаю, что и негосударственный хакер может построить один из них достаточно мощный. Кроме того, взрыв ядерной бомбы также уничтожит устройство, к которому вы пытаетесь получить доступ, это не очень хорошая идея.
Вы не можете сделать детектор с защитой от несанкционированного доступа. Кто-то хочет украсть информацию со случайных телефонов? Они просто полностью удаляют детектор, начинают посылать комбинации сигналов по любым проводам, которые были подключены к детектору, поджаривают несколько телефонов, выясняя, для чего предназначен каждый провод, а затем, получив код, они могут разблокировать каждый телефон, когда-либо созданный компанией. этого производителя за 3 секунды.

Используйте слабое шифрование

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

Если ИТ-оборудование продолжает развиваться, установите обновление программного обеспечения, которое немного усилит шифрование, чтобы восстановить согласованную сложность.

Будет проблема в том, что правительство будет настаивать на более слабой криптовалюте, которую дешевле взломать. Вам нужно будет убедить их в экономическом ущербе для нации, который последует за тем, что преступники получат экономический стимул для взлома криптовалюты. В конечном счете, поскольку правительство принимает законы, оно держит в руках кнут. Если вы проиграете этот аргумент, ваш бизнес будет обречен, но если правительство просто запретит все, кроме тривиальной криптовалюты, он обречен быстрее.

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

Это не бэкдор. И вы оставляете свой криптоалгоритм открытым для того, чтобы каждый мог собрать достаточную вычислительную мощность, которой может быть не только ваше правительство, подумайте о ботнете. И если я просто проложу два раза алгоритм с двумя разными паролями, у вас будут большие проблемы.
@Gianluca согласился, что это очень далеко от совершенства. Но вопрос был в том, как спасти компанию. Любой бэкдор не сработает. Как только это становится известно плохим парням, безопасности не остается вообще. Замок, для взлома которого требуются ресурсы государственного масштаба, IMO, лучшая идея. По крайней мере, он не рухнет из героя в ноль в одночасье и не унесет с собой компанию!
ИМО, идея имеет слишком много недостатков, чтобы надежно работать в реальном мире. И все же я боюсь, что идея намного слабее, чем кажется.

Сделайте свой ключ из чего-то странного

Мы используем множество различных частей электромагнитной частоты для связи. Я предлагаю вам либо построить новую штуковину для связи в той части электромагнитного спектра, которую трудно воспроизвести/модулировать/принять, либо, возможно, использовать достаточно малую модуляцию, чтобы ее могло обнаружить только хорошо финансируемое правительство.

Ответом могут быть радиоактивные материалы. Некоторые существующие элементы не встречаются в природе на Земле, а были созданы только в результате антропогенных процессов (т.е. расщепления). Таким образом, ваши телефоны могут иметь детектор гамма-излучения, который расшифровывает хранилище данных при наличии закодированного сигнала от одного из этих материалов. Потенциальным хакерам потребуется украсть ваш закрытый ключ, какое-то строго контролируемое вещество, производимое только в ядерных реакторах, и способ модуляции сигнала.

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

Вторая идея заключалась в модуляции высокой точности. Актуальным примером этого являются гравитационные волны. Обнаружение таких волн требует невероятного оборудования (лазеры длиной 4 км). Аналог был бы первым человеком, когда-либо изобретшим линзу - он мог писать так мелко, что только он с увеличительной линзой мог прочитать написанное.

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

В принципе, имеет больше смысла иметь ключ, который действительно сложно сделать. Если действительно сложно прочитать ключ, а не сделать его, это немного усложняет транзакцию.

Ключевое усиление или ослабление

Ключ восстановления создается, но никому не передается (телефон хранит открытый ключ, а закрытый отбрасывает). АНБ может взломать его за разумное время, но это может сделать только специальное специальное оборудование.

Алгоритм и размер открытого/закрытого ключа выбраны таким образом, что его взлом доступен только для специального компьютера АНБ. По запрограммированному расписанию он добавляет биты к эффективному размеру ключа, чтобы не отставать от закона Мура.


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

Конечно, он может просто использовать ослабленный ключ для обычных целей и не нуждаться в отдельном государственном ключе. Но этот дополнительный ключ может быть спрятан, чтобы его не заметили другие, изучающие формат зашифрованных данных. Но если (когда) он будет обнаружен, только АНБ сможет взломать его в разумные сроки и только в своей специальной для этого системе.

Нулевая G не сработает.

Разработанный вами механизм 0g не будет безопасным. Все, что нужно сделать злоумышленнику, — это открыть телефон и заменить акселерометр, который может определять ускорение, на устройство, которое в электронном виде ведет себя как акселерометр в 0g.

В iPhone уже есть компоненты, которые спроектированы так, чтобы быть защищенными от несанкционированного доступа, т. е. которые делают очень трудным или невозможным их удаление или замену без блокировки телефона. Я считаю, что в принципе, по крайней мере, можно было бы включить защищенный акселерометр, который было бы очень трудно удалить или заменить без обнаружения (но что механизм 0g был бы непрактичным по другим причинам, в основном из-за того, что правительство не захочет запускать его единственная копия важной улики в космос на ракете, которая может взорваться при запуске)

Другой ответ

За исключением обнаружения того, что он находится на орбите , разблокируйте телефон, если его GPS обнаружит, что он находится в (а) определенном месте (ах), согласованном с правительством. Это место защищено в военном отношении. Может, внутри места, где собирают ядерные боеголовки? Должен быть максимально безопасным. Или на высоте 3000 футов над таким местом и двигаясь со скоростью 10 миль в час, что требует нахождения в вертолете в каком-то очень хорошо защищенном воздушном пространстве.

Вопрос только в том, насколько легко можно подделать спутниковые передачи GPS?

Выглядит очень просто: nudesecurity.sophos.com/2013/07/31/…

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

Каждый может знать, что есть ключ и даже какой криптографический алгоритм использовался, но они не могут понять, что это за ключ, без вычислительной мощности государственного уровня. (Или даже с вычислительной мощностью государственного уровня, если хотите)

Проблема в том, что кто-то может заполучить ключ и получить доступ ко всем телефонам. Правительство состоит из людей, поэтому потеря ключа не исключена.

Это кажется правдоподобным

Я вообще-то хотел ответить, что такое просто возможно, но для уверенности нужно либо найти, либо разработать протокол, а у меня нет на это ни времени, ни умения. Однако я набросаю, как это могло бы выглядеть.

Во-первых, криптография на эллиптических кривых — это разновидность криптографии, которая в настоящее время широко используется на практике. Таким образом, это проверенный метод. Идея состоит в том, что люди могут обмениваться паролями друг с другом, при этом перехватчик не узнает, что это за пароль.

Теперь существует множество различных эллиптических кривых, и для протокола эллиптических кривых необходимо выбрать только одну эллиптическую кривую. Этот выбор важен, потому что некоторые из кривых по существу ошибочны, и их использование было бы небезопасным.

Однако вполне вероятно, что можно построить эллиптическую кривую с изъянами таким образом, что только конструктор может использовать изъян. (Например, теперь конструктор может указать количество точек на кривой или даже простое разложение этого числа.) Используя это, конструктор может расшифровать все, что было зашифровано с помощью этой кривой.

В вашей ситуации правительство (или его департамент) должно составить такой протокол и выдать его телефонным компаниям. Пока они не сообщают точные детали эксплойта, они смогут подслушать кого угодно.

Примечание 1: Это означает, что правительство может быть полностью открыто в отношении того, что оно делает. Поскольку для фактического использования бэкдора вам нужен секретный ключ, который есть только у правительства.

Примечание 2: Особое внимание следует уделить хранению этого секретного ключа в секрете. Однако это не невозможно.

Примечание 3: Это, конечно, не идеально. Террорист может просто решить связаться, используя собственный секретный код. Но это примерно то же самое, что больше не пользоваться телефонами.

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

Похоже, что техника ошибочной эллиптической кривой была реализована, и ошибка была позже обнаружена, и программное обеспечение, включая этот бэкдор, теперь, вероятно, уязвимо для хакеров ... blog.cloudflare.com/…
Количество кривых в конечном поле конечно (не бесконечно).
@джереми. Недостаток может быть известен, но с вычислительной точки зрения его трудно решить с нашей вычислительной мощностью.
Число кривых на конкретном конечном поле действительно конечно. Однако существует бесконечное число конечных полей, над каждым из которых находятся эллиптические кривые. Это учитывая бесконечное количество кривых.
Это на самом деле похоже на вариант 2 enkryptor.