Как можно создать безопасную и самоуничтожающуюся электронную почту?

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

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

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

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

Другое решение, которое я видел, было Vanish, которое шифрует сообщение, разбивает ключ на части и " хранит» части в DHT (а именно Vuze DHT). К этим значениям можно легко и надежно получить доступ, просто просматривая хэши (хэши отправляются вместе с сообщением). Через 8 часов эти значения теряются, и даже предполагаемый получатель не сможет прочитать сообщение. С миллионами узлов нет единой точки отказа. Но это также было нарушено путем организации атаки Сибиллы на DHT (дополнительную информацию см. на веб-странице Vanish).

Итак, у кого-нибудь есть идеи о том, как это сделать?

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

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


person quantumSoup    schedule 30.06.2010    source источник
comment
Что если, пока они могут прочитать его, они просто скопируют и вставят сообщение? Или сделать скриншот? Или использовать цифровую камеру, чтобы сделать снимок их экрана?   -  person Christopher Tarquini    schedule 30.06.2010
comment
@chris-T Я не слишком беспокоюсь о том, что получатель намеренно скопирует сообщение, а скорее о том, что он / она усердно удалил его.   -  person quantumSoup    schedule 30.06.2010
comment
Это немного похоже на неофициальный обмен сообщениями. Сообщения зашифрованы, и во время разговора получатель может подтвердить личность отправителя, но позже не может. Важно отметить, что получатель может хранить постоянные копии сообщений и идентификатор отправителя. Они просто не могут доказать позже, кто был отправителем.   -  person Matthew Flaschen    schedule 30.06.2010
comment
Как насчет действительно, действительно доверенной четвертой стороны? ;) Ваша проблема в том, что доверенные стороны могут быть скомпрометированы. Это не похоже на технологическую проблему с технологическим решением.   -  person Paul Richter    schedule 30.06.2010
comment
@Paul Richter: Vanish удалось добиться (частично) именно этого, разделив ключ на части и сохранив их в анонимных узлах, разбросанных по всему миру. Эти узлы также не знают, что они хранят части ключей; поскольку он построен на существующей инфраструктуре (bittorrent DHT).   -  person quantumSoup    schedule 30.06.2010
comment
Если бы сообщения были зашифрованы, а ключи утеряны навсегда, им бы не пошло на пользу иметь зашифрованные сообщения и отсутствие ключей. Это похоже на кражу доказательств. Именно по этой причине предприятиям часто требуется сохранять документы. Суды вряд ли благосклонно отнесутся к этому. Мы ничего не могли с собой поделать. Наш алгоритм шифрования автоматически уничтожает ключ.   -  person Matthew Flaschen    schedule 30.06.2010
comment
@Matthew Я думаю, что это квалифицируется как кража только в том случае, если эти документы имеют отношение к текущему судебному разбирательству. Я считаю, что общение по электронной почте должно быть конфиденциальным, а современные технологии, очевидно, практически не обеспечивают конфиденциальности.   -  person quantumSoup    schedule 30.06.2010
comment
Я до сих пор не могу представить, чтобы суд благосклонно отнесся к извините, ваша честь, все наши электронные письма автоматически уничтожаются после того, как они прочитаны, своего рода защита.   -  person Dean Harding    schedule 30.06.2010
comment
Я не эксперт в области права, поэтому не могу точно сказать, к каким последствиям это приведет. Но я только что упомянул это в качестве примера; это может иметь другое применение.   -  person quantumSoup    schedule 30.06.2010
comment
@Aircule, от компаний часто требуется сохранять документы, чтобы подготовиться к возможности судебного разбирательства. См., в частности, skocpa.com/document_retention_recommendation.htm. Ограничений на срок хранения документов в случае мошенничества нет. произошла активность. Если Enron не совершала мошеннических действий, я не знаю, кто это сделал.   -  person Matthew Flaschen    schedule 30.06.2010
comment
@Dean 'codeka' Хардинг: Не понимаю, почему. Любой хозяйствующий субъект имеет право на охрану сведений, составляющих коммерческую тайну. Есть определенные виды документов, которые должны храниться по закону, например, бухгалтерия, но все остальное зависит от хозяйствующего субъекта. Точно так же, как бизнес-субъект может установить правило уничтожать все бумажные документы, если они не нужны, он может использовать «самоуничтожающуюся почту».   -  person sharptooth    schedule 30.06.2010
comment
@sharp, есть огромная разница между сохранением коммерческой тайны от конкурентов и уничтожением электронной почты из-за возможных будущих повесток в суд.   -  person Matthew Flaschen    schedule 30.06.2010
comment
@Matthew Flaschen: Нужно будет доказать, что электронная почта была уничтожена специально для защиты от возможных повесток в суд, не так ли?   -  person sharptooth    schedule 30.06.2010
comment
@Matthew: я знаю, что есть документы, которые предприятия должны хранить, но я не думаю, что большая часть переписки по электронной почте относится к этой категории. На самом деле электронные письма Enron широко доступны и часто используются в качестве реального набора данных электронной почты. Я не думаю, что есть много документов, которые они по закону обязаны хранить в них.   -  person quantumSoup    schedule 30.06.2010
comment
@Matthew Flaschen: Кроме того, фраза «Нет ограничений на хранение документов в случае мошеннических действий». определенно относится к случаю, когда есть официальное расследование - стороне не разрешается уничтожать какие-либо документы независимо от их возраста, пока идет расследование, но это не действует до тех пор, пока деятельность не будет подозревается или обнаруживается.   -  person sharptooth    schedule 30.06.2010
comment
@Aircule: в Австралии (и я предполагаю, что во многих юрисдикциях) электронные документы (например, электронная почта) рассматриваются так же, как бумажные / бумажные документы. Вы могли бы сказать, что личные электронные письма не попадают в эту категорию, но тогда: а) вы не должны использовать рабочий адрес электронной почты для отправки личных электронных писем и б) это не помогло бы людям Enron, где многие из этих электронных писем < i>были связаны с бизнесом и были обсуждены мошеннические действия. Конечно, если вы делаете то же, что и Enron, то уничтожение улик — это, пожалуй, наименьшая из ваших забот!   -  person Dean Harding    schedule 30.06.2010


Ответы (8)


(Отказ от ответственности: я не читал подробностей об атаке Vanish или Sybil, которые могут быть похожи на то, что приведено ниже)

Прежде всего: сообщения электронной почты, как правило, довольно маленькие, особенно. по сравнению с 50-мегабайтным видео на YouTube, которое вы можете скачать 10 раз в день или более. На этом я основываю предположение, что хранение и пропускная способность здесь не имеют значения.

Шифрование, в обычном смысле этого слова, вводит в вашу систему части, которые трудно понять и, следовательно, трудно проверить. (подумайте о типичном волшебстве openssl, которое все просто выполняют, но 99% людей действительно понимают; если бы какой-то шаг X в HOWTO сказал бы «теперь перейдите на сайт X и загрузите *.cer *.pem и *.csr», чтобы проверить шаги от 1 до X-1, я думаю, 1 из 10 человек просто сделает это)

Объединив два наблюдения, я предлагаю безопасную (*) и понятную систему:

Скажем, у вас есть сообщение M размером 10 кб. Возьмите N раз по 10 КБ из /dev/(u)random, возможно, из аппаратных случайных источников, назовите это от K (0) до K (N-1). Используйте простую операцию xor для вычисления

K(N) = M^K(0)^K(1)^...^K(N-1)

сейчас по определению

M = K(0)^K(1)^...^K(N)

то есть, чтобы понять сообщение, вам нужны все K. Храните K с N разными (более или менее доверенными) сторонами, используя любой протокол, который вам нравится, под случайными 256-битными именами.

Чтобы отправить сообщение, отправьте N ссылок на K.

Чтобы уничтожить сообщение, убедитесь, что удален хотя бы один K.
(*) что касается безопасности, система будет так же безопасна, как самая безопасная сторона, принимающая K.

Не берите фиксированное N, не используйте фиксированное количество K на одном узле для каждого сообщения (т. е. помещайте 0-10 K одного сообщения на один и тот же узел), чтобы усложнить атаку грубой силы, даже для тех, кто иметь доступ ко всем узлам, хранящим ключи.

NB: это, конечно, потребует некоторого дополнительного программного обеспечения, как и любое решение, но сложность необходимых плагинов/инструментов минимальна.

person mvds    schedule 17.07.2010
comment
Это похоже на то, что делает Vanish; за исключением того, что вы можете настроить количество ключевых частей, необходимых для восстановления сообщения, и эти ключевые части распределены между миллионами узлов. - person quantumSoup; 17.07.2010

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

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

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

На мой взгляд, GnuPG (или альтернативно S/MIME) следует использовать все время, потому что это также поможет затруднить рассылку спама. Но это, наверное, только одна из моих глупых мечтаний ;)

person tux21b    schedule 19.07.2010

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

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

person Joel Kennedy    schedule 19.07.2010

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

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

Одним из способов может быть использование самоуничтожающегося оборудования, как в «Миссия невыполнима» — оборудование будет отображать сообщение, а затем уничтожать его, но, как вы видите, это тоже неудобно — получатель должен будет понять сообщение, просматривая его. только один раз, что не всегда возможно.

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

person sharptooth    schedule 30.06.2010
comment
Опять же, я не слишком беспокоюсь о том, что получатель намеренно скопирует сообщение, а скорее о том, что он / она усердно удалил его. - person quantumSoup; 30.06.2010
comment
Это не сработает — если у них есть что-то интересное, они сохранят это. Если они увидят, что информация очень ценна, они сделают все возможное, чтобы сделать резервную копию сообщения, чтобы его можно было прочитать позже. Это то же самое, что и с обычными резервными копиями — вы чувствуете, что что-то ценно, и делаете резервную копию, прежде чем она исчезнет. - person sharptooth; 30.06.2010
comment
Я полагаю, что вы ошибаетесь в намерениях спрашивающего и сути его вопроса. - person Justin L.; 30.06.2010
comment
Безопасность всегда имеет свою цену. Но это не должно усложнять жизнь получателю; специализированный клиент может нормально открывать и создавать сообщения. Единственная проблема будет установить это. В большинстве случаев электронные письма, которые возвращаются, чтобы преследовать вас, не обязательно намеренно сохраняются с самого начала. Это просто гарантирует, что эти сообщения станут нечитаемыми без каких-либо усилий со стороны получателя. - person quantumSoup; 30.06.2010

Если используется формат HTML, у вас могут быть активы ссылки на сообщение, которые вы можете удалить позже. Если сообщение открыто позже, пользователь должен увидеть неработающие ссылки.

person Don    schedule 13.07.2010
comment
Это неприемлемо, поскольку для хранения этих активов потребуется доверенная третья сторона. - person quantumSoup; 13.07.2010
comment
Любой путь является либо сторонним, либо вашим собственным, и 99,9% третьих лиц будут хранить активы в течение длительного периода времени. Используя идею HTML, вы можете: разбить электронное письмо на сегменты, сделать каждый сегмент изображением, зашифровать каждое изображение, поделиться ключом с получателем, хранить изображения на различных сторонних сайтах. Или вы можете развернуть виртуальную машину с замороженным изображением, когда вам нужно отправить эти типы сообщений, и вернуть ее в замороженное состояние после завершения работы без сохранения данных. - person Don; 14.07.2010

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

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

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

person sarnold    schedule 19.07.2010

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

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

Поэтому лучшим вариантом, вероятно, будет дождаться Vanish версии 2. С программным обеспечением для обеспечения безопасности развертывание собственного программного обеспечения почти никогда не является хорошей идеей, а получить что-то от авторитетной академической группы безопасности намного безопаснее.

person Norman Gray    schedule 19.07.2010

IMO, наиболее практичным решением в этой ситуации является использование клиента обмена мгновенными сообщениями Pidgin с Off-the-Record (без регистрации) и pidgin-encrypt (сквозное асимметричное шифрование). Сообщение будет уничтожено, как только окно чата будет закрыто, и в экстренной ситуации вы можете просто отключить компьютер, чтобы закрыть окно чата.

person Lie Ryan    schedule 11.04.2012