Подтвердить что ты не робот

Как кодовая фраза RSA работает под капотом?

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

Как внедряется уровень безопасности парольной фразы?

4b9b3361

Ответ 1

ssh-keygen использует OpenSSL для генерации ключей RSA и сохранения их в формате PEM. Шифрование, о котором вы говорите, специфично для PEM. Если вы посмотрите на файл ключа,

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,5B01E932988DC66B

EPESt4ZVIrxnQXxxWWVa7cCR+vgNZ/4vTu4mdq6pjaW7jMZoB8HV+mA745mQkQw7
i+YtdVs/JqOeyGiw/3McxYYKZTlhyh7MvfIr1n8ZdZmcjQz+oFqMxChFU3r8BGgA

В заголовке "DEK-Info" есть вся информация, необходимая для дешифрования ключа, если вы знаете парольную фразу. "DES-EDE3-CBC" означает Triple DES (в режиме EDE). CBC - это режим цепочки. Шестнадцатеричное число - это начальный вектор, необходимый для CBC.

PEM - очень старый формат, поэтому он поддерживает только DES/TripleDES. AES и Blowfish были добавлены позже, но не поддерживаются всеми реализациями. Мой ssh ​​(OpenSSH 5.2) поддерживает только DES и TripleDES.

Ответ 2

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

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

Ответ 3

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

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