6

Каждый из Алисы и Боба использует gpg просто для защиты своих личных файлов, а не для отправки зашифрованного текста другим. Алиса сгенерировала ключ (gpg --gen-key), который она использует для шифрования / дешифрования своих личных файлов (gpg --encrypt --recipient="Alice Personal" alice.secrets.txt и gpg --decrypt alice.secrets.txt.gpg). Она знает, что для чтения и записи в alice.secrets.txt.gpg на другом компьютере ей необходимо экспортировать свой ключ (открытый и закрытый) на свой второй компьютер, используя такие команды, как:

gpg --armor --export "Alice Personal" > alice.personal.public.key.txt
gpg --armor --export-secret-key "Alice Personal" > alice.personal.private.key.txt

а также

gpg --import alice.personal.public.key.txt
gpg --import alice.personal.private.key.txt

Поэтому она решает поместить свои зашифрованные личные файлы (alice.secrets.txt.gpg) и свой ключ (alice.personal.public.key.txt и alice.personal.private.key.txt) в службу облачной синхронизации для удобства. Поскольку alice.personal.private.key.txt находится в облаке, третья сторона, которая может получить доступ к ее файлам в облаке, имеет доступ к первому из следующих двух, но не ко второму.

  • что-то у нее есть: alice.personal.private.key.txt

  • что-то она знает: пароль для разблокировки секретного ключа

Она отказывается от защиты первой в обмен на удобство.

С другой стороны, Боб использует симметричное шифрование для защиты своих секретов (gpg --symmetric bob.secrets.txt и gpg --decrypt bob.secrets.txt.gpg). Он также помещает свои зашифрованные личные файлы в облачный сервис. Чтобы читать и писать в bob.secrets.txt.gpg на своем другом компьютере, ему просто нужно успешно вспомнить его пароль.

Возможно, Алиса и Боб должны просто использовать Truecrypt или Boxcryptor. В любом случае, вопрос в том, безопасны ли секреты Алисы, как секреты Боба, при условии, что их парольные фразы одинаково хороши?

2 ответа2

3

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

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

Согласно документации GPG:

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

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .