Para un mensaje específico, puedes usar openssl asn1parse
para mirar dentro.
Me envié un mensaje usando iOS Mail, firmado y encriptado para mí, y usando la línea de comandos
$ openssl smime -pk7out -in message.eml | openssl asn1parse
y el contenido de los resultados mostraron que el mensaje parece estar encriptado con 3DES EDE en modo CBC:
913:d=5 hl=2 l= 8 prim: OBJECT :des-ede3-cbc
Encontrar el algoritmo de la firma es otro desafío. I Piensa en es SHA-1, pero el mensaje desencriptado incluye un montón de firmas de certificados, y no estoy seguro de cuál es el mensaje.
$ openssl smime -decrypt -in smime.eml -recip me.crt -inkey me.key | \
openssl smime -pk7out | openssl asn1parse
…
30:d=5 hl=2 l= 5 prim: OBJECT :sha1
Si bien la pregunta se refiere en realidad al algoritmo simétrico y hash utilizado para cifrar los datos del mensaje, los parámetros del propio certificado (que contiene la clave pública utilizada para cifrar la clave simétrica que, a su vez, se utiliza para tratar los datos) se seleccionan en el momento de la generación de la clave. He visto esto en acción mientras generaba un nuevo par de claves personales en StartSSL la interfaz web pide el tamaño de la clave RSA y el algoritmo de firma que deseo utilizar, junto con la advertencia de que elegir SHA-1 te dejará con un certificado incompatible con algunos sistemas.
Por si sirve de algo, mi propio certificado personal utiliza RSA de 2048 bits y el algoritmo de firma SHA-1, que he encontrado que funciona bien en varios sistemas diferentes, incluyendo OS X Mail.app, iOS Mail y Outlook 2007.