¡Sí! Este es absolutamente un método válido para garantizar que los archivos no hayan sido manipulados.
Para algunos antecedentes, la criptografía como campo proporciona un puñado de servicios útiles cuando se aplica. Los detalles de bajo nivel de cuáles son estos cambios dependen de a quién le preguntes, pero todos se centran en 4 cosas clave:
- Confidencialidad (para que solo las partes correctas puedan ver los datos)
- Autenticación (para saber quiénes son las partes correctas)
- No repudio (por lo que las partes correctas no pueden decir que no lo hicieron)
- Integridad (para que las partes correctas obtengan los datos correctos)
Algunas veces, la disponibilidad (lo que hace que se pueda acceder a los datos cuando sea necesario) también se incluye allí. ( Aquí hay una referencia de Microsoft sobre servicios criptográficos para los curiosos).
Los diferentes tipos de criptografía proporcionan diferentes niveles de servicio. La criptografía de clave asimétrica los proporciona a todos: mediante la criptografía de clave asimétrica (segura), solo las partes correctas conocidas pueden obtener los datos correctos y no pueden decir que no crearon los datos. Si no tiene la clave, no puede obtener los datos y no puede obtener la clave a menos que sea la persona correcta.
Hashing es un caso interesante, donde es extremadamente valioso como concepto y práctica, pero está muy limitado en lo que puede hacer. De los 4 servicios criptográficos, el hash solo proporciona integridad. No proporciona nada por medio de la confidencialidad, la autenticación o el no repudio, pero el hash criptográficamente seguro es una manera fantástica de garantizar que todo lo relacionado con 2 piezas de contenido sea exactamente idéntico. De hecho, de alguna manera eso es lo que el hash solo puede hacer.