Допустим, есть файл с именем myfile.txt
со следующим содержанием:Файл hash: Изменяется ли он для одного и того же контента, но в другом порядке?
один два три
Другой файл, который называется yourfile.txt
с следующим содержанием:
два три один
Будет SHA-1
будет одинаковым для обоих этих файлов, потому что контент тот же, но в другом порядке?
Предупреждение: SHA-1 не считается защищенным. С некоторыми усилиями можно сгенерировать произвольный файл, который имеет тот же хеш, что и целевой файл. Скорее всего, это просто для загрузки изображений, которые не очень важны, но вы должны знать о возможностях. –
@John: Спасибо за отзыв, но мое использование здесь о предотвращении дублирования файла. Поэтому, если кто-то пытается воспроизвести хэш, просто они не могут загрузить файл. Я был бы обеспокоен, если бы это было так, как тот же файл может быть загружен с другим хэшем. В любом случае, что бы вы предложили для обеспечения хэширования? Может быть полезно для будущего использования. – Nirmal
@John: то, что вы описываете (поиск файла, который хеширует для заданной цели), называется «атакой профайла». Если вы знаете, как это сделать для SHA-1, то, во что бы то ни стало, опубликуйте его и станьте знаменитым. Поскольку сейчас самое лучшее, что криптографы достигают на SHA-1, это теоретическая атака столкновения (в которой нет предопределенной «цели»), которая, будучи «проще», чем общая атака, по-прежнему существенно дороже (потребуется тысячи ПК в течение нескольких месяцев). –