Per un messaggio specifico, puoi usare openssl asn1parse
per sbirciare dentro.
Mi sono inviato un messaggio utilizzando iOS Mail, firmato e crittografato a me e utilizzando la riga di comando
$ openssl smime -pk7out -in message.eml | openssl asn1parse
e il contenuto dei risultati ha mostrato che il messaggio sembra essere crittografato con 3DES EDE in modalità CBC:
913:d=5 hl=2 l= 8 prim: OBJECT :des-ede3-cbc
Trovare l'algoritmo della firma è un'altra sfida. Io penso che sia SHA-1, ma il messaggio decrittografato include molte firme di certificati e non sono sicuro di quale sia il messaggio.
$ 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
Mentre la domanda è in realtà la domanda sull'algoritmo simmetrico e hash utilizzato per crittografare i dati del messaggio, i parametri per il certificato stesso (che contiene la chiave pubblica utilizzata per crittografare la chiave simmetrica che è, a sua volta, utilizzata per gestire il dati) sono selezionati al momento della generazione della chiave. L'ho visto in azione mentre generava una nuova coppia di chiavi personali a StartSSL ; l'interfaccia web richiede la dimensione della chiave RSA e l'algoritmo della firma che desidero usare, insieme all'avvertimento che scegliendo SHA-1 ti lascerà un certificato incompatibile con alcuni sistemi.
Per quello che vale, il mio certificato personale utilizza RSA a 2048 bit e l'algoritmo di firma SHA-1, che ho trovato funziona bene su diversi sistemi diversi, tra cui OS X Mail.app, iOS Mail e Outlook 2007 .