Entonces, el escenario es: dado que soy Bob, quiero encriptar algún mensaje para Alice. La única clave pública que tengo es su ssh-rsa
id_rsa.pub así:
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAyb + qaZLwgC7KAQJzYikf3XtOWuhlMXVv2mbTKa5dp0sHPRd2RaYnH8ZRkt7V8bjqct1IHGCuxI8xyoEp4at3FHe6j9RfWiarc1ldLUCmTtryI0GGpRs6Zpvqdtpcq / 1NCIYtUQAvsImyEFCtqmB2suDo1ZSllZQ0x9TCKHdCANYIOeaniuFzR57POgE3vxk / r6PO24oy8BIWqxvi29r0n1LUigVBJ7CmMHuzb4 / + i1v6PxV1Lqnj6osPP9GpXpsh8kLUCby / KcmcryWNdSP0esyCdDxkA5hlIuk8qL1vzsyPluUQuc0BEHu6nuw8WQlCF1mFFxcpJL + MhWEr01WIIw == [email protected]
Entonces, ¿hay alguna manera de cifrar una cadena usando esta clave pública para que pueda usar su clave privada de id_rsa
(generada desde ssh-keygen
) para descifrar el mensaje?
(Sé que es posible de inmediato si está utilizando .pem
un archivo de par de claves. Si puede mostrarme cómo convertir esto al formato openssl
compatible, ¡también sería genial!)
¡Gracias!
fuente
ssh-rsa
clave pública, y no quiero agregar otra capa de complejidad (como pedirle al destinatario que instale gpg, etc.)Respuestas:
Es posible convertir su clave pública ssh a formato PEM (que 'openssl rsautl' puede leerla):
Ejemplo:
Suponiendo que 'myMessage.txt' es su mensaje, que debe estar cifrado con clave pública.
Luego, encripte su mensaje con openssl rsautl y su clave pública PEM convertida como lo haría normalmente:
El resultado es su mensaje cifrado en 'myEncryptedMessage.txt'
Para probar su trabajo para descifrar con la clave privada de Alice:
fuente
ssh-keygen
no tiene una-m
opción. (No puedo entender cómo pedirle a ssh-keygen su versión). Reemplazar-m
con-t
trabajos, pero luegoopenssl
me dice "no se puede cargar la clave pública". Ver stackoverflow.com/questions/18285294/… .Intente con ssh-vault , utiliza las claves públicas ssh-rsa para cifrar "crear una bóveda" y la clave privada ssh-rsa para descifrar "ver contenido de la bóveda"
fuente
¿Por qué no hacer esto de la manera súper obvia que no requiere rodar su propia criptografía?
Alice se envía a [email protected], que está configurada para permitir solo la autenticación de clave pública para la cuenta alice. Las propiedades de ssh aseguran que solo alice pueda autenticar. Incluso un hombre en el medio del ataque falla ya que (suponiendo que deshabilite ssh1 e insista en la configuración correcta) la comunicación inicial usando DH crea un valor conocido por Alice y Bob, pero no por ningún hombre en el medio y esto se puede usar para autenticar que ninguna respuesta o ataque MITM puede ver el contenido del comunicador.
Así que ten a Alice SFTP en tu caja y descarga el archivo.
fuente