La respuesta y la elección que uno haga se basará en su tolerancia al riesgo y las consideraciones de tiempo y esfuerzo en la verificación.
Verificar los hashes MD5 / SHA1 es un buen primer paso y debe hacerlo cuando tenga tiempo. Sin embargo, debe tener en cuenta su capacidad de confiar en el hash proporcionado. Por ejemplo, si el sitio web del autor con el hash está pirateado, entonces el atacante puede cambiar el hash, por lo que no lo sabría. Si el hash que calcula no es el mismo que el hash proporcionado, sabe que algo está pasando. Sin embargo, solo porque la coincidencia de hashes no garantiza que el archivo sea bueno.
Una mejor alternativa para que un autor de software proporcione integridad y autenticidad es mediante la firma digital de los archivos que se distribuyen. Esto adjunta la información de autenticidad al archivo y no se basa en confiar en algún sitio web. Si un autor firma digitalmente el archivo, la única forma de falsificarlo es mediante una autoridad certificadora comprometida o si la clave de firma del desarrollador fue robada. Ambos casos son mucho menos probables que la piratería de un sitio web en Internet.
En última instancia, debe hacer su propia diligencia debida para determinar si desea confiar en algo y luego tomar contramedidas (ejecutar en una caja de arena, una máquina virtual, etc.) para mitigar los factores desconocidos o errores de cálculo que hizo al decidir si confiar o no .