¿Impedir que alguien genere una clave pública a partir de una privada? [cerrado]

-4

Por lo que leí, los algoritmos de cifrado, como RSA, permiten generar la clave pública a partir de la privada.

En pocas palabras, para una tesis que estoy escribiendo, pensé en resolver un problema de seguridad con los usuarios que editan datos de manera malintencionada al regalar la clave privada en lugar del público y mantener al público almacenado de forma segura dentro de una base de datos. De esta manera, puedo dejar que mi programa lea un archivo, pero no permitiré que el usuario lo edite, incluso si pudiera leerlo. Como resultado, tendría un sistema de archivos de solo lectura relativamente confiable (ya que cambiar los permisos se puede hacer con bastante facilidad).

Pero, por supuesto, todo se rompe si el usuario puede obtener la parte pública de la parte privada.

Me gustaría saber si hay una manera de evitar esto (o un algoritmo similar que hace el trabajo).

EDITAR: ya que estoy recibiendo muchas críticas negativas, publicaré la historia completa: es una tesis que estoy escribiendo, y el objetivo principal es encontrar soluciones alternativas a los problemas existentes, más que la simple curiosidad. Por supuesto que sabía sobre la firma digital. Lo suficientemente divertido, hice esta pregunta en stackoverflow y, aparte de sugerirme que publique la pregunta aquí, me recomendaron que dejara esta parte.

    
pregunta Asduffo 08.06.2016 - 17:59
fuente

1 respuesta

3

La clave privada siempre debe ser, bueno, privada. Cuando concluyas en tu pregunta, regalarla anula todo el punto de usar el cifrado asimétrico.

Lo que está buscando es una firma digital . Usted firma un archivo con su clave privada (secreta). Entonces, cualquier persona con su clave pública (distribuida libremente) puede verificar que, de hecho, firmó el archivo en su forma actual y que, por lo tanto, no se ha modificado.

La firma consiste en cifrar un hash del archivo con su clave privada. La verificación consiste en descifrar el hash con la clave pública y verificar que sea correcta.

    
respondido por el Anders 08.06.2016 - 18:17
fuente

Lea otras preguntas en las etiquetas