Різниця між Sha1sum, Sha256sum та Md5sum


Відповіді:


8

Якщо ви подивитеся на сторінку чоловіка для кожного з них, ви побачите, що вони говорять:

md5sum - compute and check MD5 message digest

sha1sum - compute and check SHA1 message digest

sha256sum - compute and check SHA256 message digest

Це говорить вам про те, що всі вони створюють дайджест повідомлень , що є односторонньою функцією, яка бере за свій аргумент дані довільного розміру та повертає хеш фіксованого розміру. Хеш вважається неможливим (в межах практичності) повернути назад і знайти два різних повідомлення з однаковим хешем (називається зіткненням).

Різниця між трьома полягає в алгоритмі, який використовується для створення цього хешу.

MD5 був винайдений на початку 1990-х і до цього часу вважається недосконалим і застарілим.

SHA1 також був розроблений на початку 1990-х. Він вважається сильнішим за MD5, але недостатньо сильним. Наразі його використання вилучається з цифрового підпису на цифрових сертифікатах X.509.

SHA256 - це рекомендована в даний час хеш-функція.

Якщо у вас немає причин використовувати слабкіші алгоритми, тоді SHA256 - це шлях.

Щоб створити текстовий файл, просто перенаправіть вихід на файл. Наприклад, якщо у вас є образ Ubuntu ISO, який ви хочете зробити хеш:

 md5sum Ubuntu.iso > md5sum.txt

Звичайно, це працює і з іншими варіантами.

Потім ви можете (наприклад) поширити цей файл через Інтернет, і одержувач може ще раз перевірити хеш за допомогою:

md5sum Ubuntu.iso

Це надрукує хеш MD5, який одержувач може порівняти із вмістом md5sum.txtфайла, який ви опублікували. Якщо вони однакові, файл не був підроблений.

Звичайно, було б краще використовувати sha256sumніж md5sum. Ви часто знайдете широкий вибір цих хеш опублікованих ( md5sum.txt, sha1sum.txtі / або sha256sum.txt) з ISO , щоб врахувати той факт , що деякі системи можуть не мати всі ці утиліти.


1

MD5, SHA-1 і SHA-256 - різні хеш-функції (дайджести). Вони різні як за алгоритмом, так і за розміром виводу.

Якщо ви перевіряєте великі файли, тоді ви можете прискорити процес, уникаючи необхідності прочитати файл кілька разів. Загальний підхід є

mkfifo md5 sha1 sha256
md5sum md5 >md5.txt &
sha1sum sha1 >sha1.txt &
sha256sum sha256 >sha256.txt &
zsh -c 'setopt MULTIOS; cat input >md5 >sha1 >sha256'

У цьому випадку це простіше, тому що існує програма, яка обчислює кілька дайджестів одночасно:

gpg --print-mds input

блискуче використання gpg, але як я можу використовувати його для порівняння різних файлів?
Herman Toothrot

1
@ User4050 Ви можете використовувати gpg --print-mds <file1 >digest.1; gpg --print-mds <file2 >digest.2НФ потім порівняти digest.1зdigest.2
Hauke Laging
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.