Ответы пользователя по тегу Шифрование
  • Как шифровать почту по 143 порту?

    gbg
    @gbg
    Любые ответы на любые вопросы
    VPN/SSH - выбирайте.
    Ответ написан
  • Как защитить апдейтер программы от компроментации сервера?

    gbg
    @gbg Куратор тега Компьютерные сети
    Любые ответы на любые вопросы
    Восстановление одного из ключей пары по другому - задача, требующая для серьезных ключей (4096 бит и далее) колоссальных временных затрат.

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

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

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

    gbg
    @gbg
    Любые ответы на любые вопросы
    Алиса - имя начинается на A, Боб - имя начинается на B, Чарли - имя начинается на C.
    A, B, С - первые буквы английского алфавита.
    Так что это просто удобные обозначения для сторон обмена информацией.
    Ответ написан
    3 комментария
  • Как решаются вопросы дополнения при использовании алгоритмов шифрования?

    gbg
    @gbg
    Любые ответы на любые вопросы
    1. Для современного шифра с доказанной стойкостью нет разницы, какие данные превращать в фарш, поэтому недостающую длину обычно добивают нулями или другим постоянным значением. Нет, на криптостойкость это не влияет.
    2. Это называется буквально "Растягивание ключа" и осуществляется в том числе путем хэширования пароля, возможно - многократного.
    Ответ написан
    Комментировать
  • Можно ли не передавать пароль на сервер, а шифровать им соединение (например, через сокеты)?

    gbg
    @gbg
    Любые ответы на любые вопросы
    TLS примерно так и работает.
    Проблема правда в том, что ключ надо как-то передать на сервер в первый раз, а для этого нужно асимметричное шифрование.
    • клиент подключается к серверу, поддерживающему TLS, и запрашивает защищённое соединение;
    • клиент предоставляет список поддерживаемых алгоритмов шифрования и хеш-функций;
    • сервер выбирает из списка, предоставленного клиентом, наиболее надёжные алгоритмы среди тех, которые поддерживаются сервером, и сообщает о своём выборе клиенту;
    • сервер отправляет клиенту цифровой сертификат для собственной аутентификации. Обычно цифровой сертификат содержит имя сервера, имя удостоверяющего центра сертификации и открытый ключ сервера;
    • клиент может связаться с сервером доверенного центра сертификации и подтвердить аутентичность переданного сертификата до начала передачи данных;
    • для генерации сеансового ключа для защищённого соединения клиент шифрует случайно сгенерированную цифровую последовательность открытым ключом сервера и посылает результат на сервер. Учитывая специфику алгоритма асимметричного шифрования, используемого для установления соединения, только сервер может расшифровать полученную последовательность, используя свой закрытый ключ.
    Ответ написан