Mixminion | |
---|---|
![]() | |
Тип | Анонимная сеть ремейлеров |
Разработчик | Nick Mathewson |
Написана на | Python |
Операционная система | Кроссплатформенное программное обеспечение |
Последняя версия | 0.0.7.1 |
Тестовая версия | 0.0.8alpha3 |
Репозиторий | github.com/nmathewson/mi… |
Лицензия | Лицензия BSD |
Сайт | mixminion.net |
Mixminion — стандарт реализации третьего типа протокола анонимной пересылки электронной почты. Mixminion может отсылать и принимать анонимные сообщения электронной почты. Mixminion основан на пересылаемых защищённых одноразовых блоках. Разработан Ником Мэтьюсоном при непосредственном консультировании Дэвида Чаума.[1]
Mixminion использует архитектуру «перемешанных сетей» для предоставления очень высокой степени анонимности, а также для предотвращения прослушивания и других видов атак при пересылке сообщений. Серверы, названные «миксерами», которые запускают волонтёры, принимают сообщения, расшифровывают их, разделяют на блоки, перемешивают и передают другим «миксерам». Каждое письмо электронной почты проходит через несколько серверов так, что не существует единственного сервера, связывающего отправителя сообщения и его получателя.[2]
Отсылая анонимные сообщения, Mixminion разбивает его на одинаковые по размеру участки, приводя пакеты в одинаковый вид и выбирая путь для отправления через смешанную сеть для каждого пакета. Программа шифрует каждый пакет публичным ключом для каждого сервера на его пути, один за другим. При отправлении пакета Mixminion посылает его в первый «микс-сервер» на пути. Первый сервер расшифровывает пакет, читая, какой следующий сервер должен принять пакет, и передаёт его. В итоге пакет прибывает к конечному «микс-серверу», который посылает его выбранному получателю. Так как ни один сервер не знает более чем одного смежного сервера, они не могут связать получателя с отправителем.[2]
Mixminion разрешает Алисе посылать сообщения Бобу одним из трёх способов:
Базовая структура перемешанных сетей. Перемешанная сеть состоит из серверов, называемых узлами. Каждый узел ассоциирован с публичным ключом. Когда узел получает зашифрованное сообщение, происходит расшифровка, разделение на пакеты одинаковой длины по 28 Кб, затем пакеты перемешиваются и отправляются дальше без информации об отправителе.[2]
Серверы, которые управляют списком публичных ключей в узлах, а также наблюдают за функционированием узлов и их загруженностью.[6]
Серверы, которые используются для отправки и получения писем без раскрытия личности.[7]
Mixminion поддерживает технологию «одноразовых блоков ответа» (англ. «Single-Use Reply Blocks», сокр. «SURB») для опознания анонимных адресатов. SURB кодирует половину пути к адресату, далее каждый «микс-сервер» в очереди «разворачивает» один слой в пути, а после этого зашифровывает сообщение для получателя-адресата. Когда сообщение достигает адресата, он может расшифровать сообщение и прочитать, какой SURB был использован для его отправки, но отправитель не знает, какой получатель принял анонимное сообщение.[8]
Тэговая атака характеризуется модифицированием сообщения путём изменения его части (к примеру, применение побитовой операции НЕ) таким образом, что сообщение может быть позже идентифицировано по этому отличительному признаку.[9]
Выходной узел имеет доступ к расшифрованному письму и может принадлежать злоумышленнику, который будет прослушивать узел втайне от пользователей сети.[10]
Злоумышленник может послать большое количество сообщений в определённом направлении, повреждая узлы и нарушая нормальную работу сети.[7]