Diferencia entre firmar y descifrar
Creo que su confusión se debe al hecho de que la firma es en teoría de hecho es algo similar al descifrado de algunos algoritmos (por ejemplo, RSA).
Wikipedia para frases de ejemplo como esta:
Supongamos que Alice desea enviar un mensaje firmado a Bob. Ella puede usarla
Posee clave privada para hacerlo. Ella produce un valor hash del mensaje,
lo eleva a la potencia de d (módulo n) (como lo hace ella al descifrar un
mensaje), y lo adjunta como una "firma" al mensaje.
Sin embargo, no es cómo se hace en la práctica , y es por eso que su enfoque no funciona.
Para obtener una explicación más detallada de la firma y el descifrado, consulte, por ejemplo, aquí :
En el mundo abstracto de los libros de texto, la firma RSA y el descifrado RSA hacen
Resultan ser lo mismo. En el mundo real de las implementaciones,
ellos no son. Así que nunca uses una implementación real de RSA
descifrado para calcular las firmas RSA. En el mejor de los casos, tu
La implementación se romperá de una manera que noten. En el peor de los casos,
introducirás una vulnerabilidad que un atacante podría explotar.
Además, no cometa el error de generalizar de RSA a
Concluir que cualquier esquema de encriptación puede ser adaptado como digital
algoritmo de firma. Ese tipo de adaptación funciona para RSA y El.
Gamal, pero no en general.
Respecto a PGP, no firma el mensaje en sí, sino que firma un resumen de hash del mensaje :
PGP utiliza una función hash criptográficamente fuerte en el texto plano
el usuario esta firmando Esto genera un elemento de datos de longitud fija conocido como
un resumen del mensaje. (De nuevo, cualquier cambio en la información resulta en una
Digestivo totalmente diferente.)
Luego PGP usa el compendio y la clave privada para crear el
"firma." PGP transmite la firma y el texto sin formato juntos.
Al recibir el mensaje, el destinatario utiliza PGP para volver a calcular el
Digerir, verificando así la firma. PGP puede cifrar el texto plano o
no; Firmar texto plano es útil si algunos de los destinatarios no están
interesado o capaz de verificar la firma.
Aquí hay una imagen que describe el proceso:
Porquénopuedessimplementedescifrarunmensajeparafirmarlo
Loanteriorestámuybien,ysabemosquenodebemosdescifrarlosmensajesparafirmarlosenlapráctica,pero¿porquénopodemoshacerlosolopordiversión?
PorquenoesasícomofuncionanPGPoGPG.Unaexplicacióncompletadelostrabajosinternosprobablementeseríademasiadoparaestapregunta,peroveaporejemplo ¿Cómo verifica GPG el descifrado exitoso? .
En resumen, PGP no solo realiza algunas operaciones de modificación en los datos de descifrado, el formato .pgp está bien definido y contiene información diversa. Tenga en cuenta también que PGP no utiliza en realidad el cifrado asimétrico como RSA en el mensaje en sí, sino en una clave que luego se utiliza para cifrar simétricamente el mensaje.
Conclusión
Para resumir, si usara RSA simple, podría usar el descifrado para firmar un mensaje (pero no debería), pero PGP y GPG no son RSA simple, por lo que no puede descifrar un mensaje para firmarlo.