Este hilo es un poco antiguo, pero para aclarar, la pregunta original puede estar refiriéndose al hecho de que firmar y cifrar está sujeto a "reenvío subrepticio" y, por lo tanto, es defectuoso.
Supongamos que Alice genera el mensaje "Te quiero", lo firma, lo cifra con la clave pública de Bob y lo envía a Bob. Luego Bob podría descifrarlo con su clave privada y (por cualquier razón) volver a cifrarlo con la clave de Charlie y enviarlo a Charlie. Charlie puede estar seguro de que Alice firmó el mensaje, pero no sabe quién lo cifró y, por lo tanto, Alice podría creerlo erróneamente.
Entonces, @mudasser preguntó, ¿se puede resolver esto usando claves simétricas?
Para que el mismo defecto sea aparente, Alice, Bob y Charlie tendrían que poseer la misma clave, pero Charlie tendría que ignorar que Bob la tiene.
Esto se reduce a qué tan bien se mantienen en secreto las claves, lo que depende de procesos seguros tanto para intercambiar como para mantener las claves.
Una mejor solución al problema es hacer que el destinatario sea explícito en (o con) el mensaje original antes de que Alice lo firme. En mi ejemplo, si el mensaje de Alice hubiera dicho "Para Bob, te amo", Charlie no habría sido engañado al pensar que él era el destinatario deseado, y por lo tanto, no importa si se usan claves simétricas o públicas.