Supongamos que quiere crear un sitio de alojamiento de archivos para que las personas carguen sus archivos y envíen un enlace a sus amigos para recuperarlo más adelante y desea asegurarse de que los archivos estén duplicados donde los almacenamos, es un archivo sha1_file de PHP. suficiente para la tarea? ¿Hay alguna razón para no usar md5_file en su lugar?¿Es SHA suficiente para verificar la duplicación de archivos? (sha1_file en PHP)
Para la interfaz, se oscurecerá utilizando el almacén de nombre de archivo original en una base de datos, pero algunas preocupaciones adicionales serían si esto revela algo sobre el cartel original. ¿Un archivo hereda alguna metainformación como la última modificación o quién la publicó o está basada en el sistema de archivos?
Además, ¿está usando una sal frívola ya que la seguridad en cuanto a ataque de tabla arcoíris no significa nada para esto y el hash podría usarse más tarde como una suma de comprobación?
Una última cosa, la escalabilidad? inicialmente, solo se usará para archivos pequeños un par de megas grandes pero finalmente ...
Edición 1: El objetivo del hash es principalmente evitar la duplicación de archivos, no crear oscuridad.
No - aunque el algoritmo sha1 es más complejo/tiene un orden superior, la implementación real en PHP crea hashes sha1 marginalmente más rápido que md5 (al menos la última vez que verifiqué en PHP 5.1 o algo así) – symcbean
@symcbean eres probablemente sea cierto, no sé detalles de PHP. – ykaganovich