Хеширането означава вземане на входен низ с произволна дължина и издаване на изход с фиксирана дължина. Използвайки криптографския алгоритъм за хеширане - например MD5, SHA-256, SHA-384, можете да проверите дали два файла са идентични или не. Контролната сума е хеш стойност, използвана за извършване на проверки на целостта на данните на файлове. Това е един вид подпис за файл.
Когато изтегляте големи файлове от интернет, като Windows 10 ISO изображения, има вероятност файлът да се повреди или да загуби няколко бита поради непоследователна връзка или други фактори. Проверката на хеш е най-добрият начин да сравните двата хеша – изходния файл на уебсайт или сървър спрямо изтегленото копие.
Много доставчици на софтуер поставят хеша за изтегляне на файлове на сайта си. Може да сте виждали в торент сайтове, че хеш стойност обикновено придружава връзката за изтегляне.
Освен това сравнението на хеш контролната сума е отличен начин за идентифициране на дублиращи се файлове в компютър или сравнете две папки.
В тази статия нека да видим как да получите криптографския хеш с помощта на алгоритми MD5, SHA-256, SHA-384, използвайки различни методи, и как да интегрирате функционалността в контекстното меню.
Как да получите контролна сума на хеш файла в Windows
- Използване на PowerShell (вграден в Windows)
- Използване на Certutil.exe (вграден в Windows)
- Използване на HashMyFiles
- Използване на 7-Zip
- Използване на HashTools
Вземете контролната сума на хеш файла чрез менюто с десния бутон на мишката в Windows
Използване на PowerShell
Използване на Windows PowerShell (powershell.exe
), можете бързо да получите хеша на файла с един команден ред. Ето примера за командния ред:
get-filehash -path "C:\Users\ramesh\Desktop\reinstall-preinstalledApps.zip" | формат-списък
Това извежда хеша на файла (по подразбиране използва алгоритъма SHA256), както е показано по-долу:
Алгоритъм: SHA256. Хеш: 3A0F056494EB1C0257FCDB59F9F93811962D4F796AD2596EC6FF1CDF8D365470. Път: C:\Users\ramesh\Desktop\reinstall-preinstalledApps.zip
За да използвате всеки друг алгоритъм - например SHA384, можете да добавите -Алгоритъм SHA384
параметър към горния команден ред.
пример:
get-filehash -path "C:\Users\ramesh\Desktop\reinstall-preinstalledApps.zip" -алгоритъм SHA384 | формат-списък
Приемливите стойности за -алгоритъм
параметър са:
- SHA1
- SHA256
- SHA384
- SHA512
- MD5
Копирайте в клипборда
За да копирате изхода в клипборда, поставете изхода към клип команда, както е по-долу:
get-filehash -path "C:\Users\ramesh\Desktop\reinstall-preinstalledApps.zip" | формат-списък | клип
Интегрирайте командата в менюто с десен бутон
За да добавите командата PowerShell към менюто с десния бутон на мишката за файлове, ето .reg файл:
Редактор на системния регистър на Windows версия 5.00 [HKEY_CURRENT_USER\Software\Classes\*\shell\gethash] @="Вземете файлов хеш" [HKEY_CURRENT_USER\Software\Classes\*\shell\gethash\command] @="powershell -WindowStyle Минимизиран -команда get-filehash -literalpath '%1' -алгоритъм SHA256 | fl | клип"
- Копирайте горните редове в Notepad и направете .reg файл. За повече информация вижте статията Как да създавате и използвате .reg файлове.
- Щракнете двукратно върху .reg файла, за да приложите съдържанието към системния регистър.
- Сега щракнете с десния бутон върху файл и щракнете Вземете файлов хеш команда в контекстното меню.
Командата стартира PowerShell, който от своя страна генерира хеша на файла и го копира автоматично в клипборда.
Да се Премахване опцията от контекстното меню, която сте добавили, използвайте този файл за отмяна .reg
Редактор на системния регистър на Windows версия 5.00 [-HKEY_CURRENT_USER\Software\Classes\*\shell\gethash]
Използване на Certutil.exe с VBScript
Certutil.exe е вградена програма от командния ред, която се инсталира като част от Сертификационни услуги. Можете да използвате Certutil.exe, за да изчислите контролната сума на файла, като използвате различни алгоритми за хеширане. Следният синтаксис на командния ред трябва да се използва за изчисляване на контролната сума на SHA256 на файл с помощта на Certutil.exe от прозорец на командния ред.
certutil.exe -hashfile име на файл SHA256
Ако искате да внедрите Certutil.exe в менюто с десния бутон, ето VBScript, който точно го прави.
- Копирайте следния VBScript код в Notepad.
- Запазете файла с разширение .vbs – напр.
get-hash-certutil.vbs
в постоянен папка.„Вземете хеш на файла чрез менюто с десен бутон. „SHA256 хешът за файла се копира автоматично в клипборда. „Създадено: 4 юни 2019 г. от Рамеш Шринивасан – Изрична опция за winhelponline.com. Dim WshShell, sOut, sFileName, sCmd, oExec, strInput. Задайте WshShell = WScript. CreateObject("WScript. Shell") Ако WScript. Аргументи. Count = 0 Тогава strInput = InputBox("Въведете ADD, за да добавите елемента от контекстното меню Get File Hash, или REMOVE за да премахнете елемента", "ADD") Ако ucase (strInput) = "ADD" Тогава sCmd = "wscript.exe " & chr (34) & WScript. ScriptFullName & Chr (34) & " " & & "%1" & WshShell. RegWrite "HKCU\Software\Classes\*\shell\gethash\", "Get File Hash", "REG_SZ" WshShell. RegWrite "HKCU\Software\Classes\*\shell\gethash\command\", sCmd, "REG_SZ" WScript. Quit ElseIf ucase (strInput) = "REMOVE" Тогава sCmd = "reg.exe изтрийте HKCU\Software\Classes\*\shell\gethash" & " /f" WshShell. Изпълнете sCmd, 0 WScript. Излезте Край Ако. Иначе sFileName = & WScript. Аргументи (0) & sCmd = "cmd.exe /c certutil.exe -hashfile " & sFileName & " SHA256" & _ " | findstr /v " & chr (34) & "завършен успешно" & Chr (34) & " | клип" WshShell. Изпълнете sCmd, 0. Край, ако
- Щракнете двукратно върху файла, за да го стартирате.
- В полето за въвеждане, което се показва, въведете
ДОБАВЯНЕ
и щракнете върху OK.
То добавя Вземете файлов хеш команда в контекстното меню.
Щракването върху елемента от менюто изчислява SHA256
хеш и го копира автоматично в клипборда.
Отворете Notepad и поставете хеша на файла, съхранен в клипборда.
Забележка: За да премахнете записа от контекстното меню, щракнете двукратно върху файла, за да го стартирате. След това напишете ПРЕМАХВАНЕ
и щракнете върху OK.
Горният скрипт използва вградения certutil.exe за генериране на хеш на файла, като изпълни командата и пренасочи нейния извеждане в клипборда използвайки Clip.exe
:
certutil -hashfile име на файл SHA256
Ето как ще изглежда изходът, когато го стартирате от командния ред.
Certutil.exe поддържа MD2
MD4
MD5
SHA1
SHA256
SHA384
SHA512
алгоритми за хеширане.
Друг начин да получите хеша на файла чрез контекстното меню е като използвате помощна програма на трета страна, като HashMyFiles.
Помощна програма HashMyFiles от NirSoft
HashMyFiles е малка помощна програма от Nirsoft, която ви позволява да изчислите MD5 и SHA1 хешовете на един или повече файлове във вашата система. Можете лесно да копирате списъка с хешове MD5/SHA1 в клипборда или да ги запишете в текстов/HTML/XML файл. HashMyFiles може също да се стартира от контекстното меню на Windows Explorer и да показва хешовете MD5, SHA256, SHA384, SHA512 на избрания файл или папка.
От менюто Опции щракнете Активиране на контекстното меню на Explorer опция за активиране. Той добавя опцията HashMyFiles към контекстното меню за файлове и папки.
Изтегли HashMyFiles от Nirsoft.net
Използване на 7-Zip
Популярната програма за компресиране 7-цип има функция, която може да изчисли контролните суми на CRC или SHA чрез менюто с десен бутон. 7-Zip е широко използван софтуер и е най-вероятно да сте го инсталирали на вашия компютър.
В настройката на 7-Zip вече не е активирана опцията, можете да я включите, като щракнете върху менюто Инструменти, щракнете върху Опции и активирате CRC SHA >
опция под Елементи от контекстното меню: списък. Щракнете върху OK, за да запазите вашата настройка.
След това всичко, което трябва да направите, е да щракнете с десния бутон върху файл, да щракнете върху CRC SHA и след това да изберете алгоритъм за хеширане като CRC-32, CRC-64, SHA-1, SHA-256 от подменюто. За да изберете всички горепосочени алгоритми за хеширане (и БЛЕЙК2
алгоритъм в допълнение), щракнете върху звездичката (*) опция.
Информацията за контролната сума се представя в отделен диалогов прозорец.
Можете да изберете елементите и да натиснете Ctrl + ° С на клавиатурата си, за да го копирате в клипборда.
Използване на HashTools от Binary Fortress
HashTools от Binary Fortress Software изчислява и проверява хешове само с едно щракване! Поддържа CRC32, MD5, SHA1, SHA256, SHA384, SHA512 и SFV, както и интегриране в контекстното меню на Windows Explorer за достъп с едно щракване.
Инсталирайте HashTools или стартирайте преносимото издание или инструмента. Щракнете върху бутона Опции, показан с иконата на зъбно колело, и щракнете Добавяне към контекстните менюта на Windows.
Щракнете с десния бутон върху файл или набор от файлове и щракнете Хеш с HashTools в контекстното меню.
Това стартира програмата HashTools и добавя избраните файлове към списъка. След това щракнете върху алгоритъм за хеширане (например CRC, MD5, SHA1, SHA256 и т.н.), за да генерирате хеш контролната сума за файловете.
Знаете ли друг инструмент или метод за изчисляване на хеш на файла? Нека знаем в секцията за коментари по-долу.
Една малка молба: Ако тази публикация ви е харесала, моля, споделете я?
Едно "малко" споделяне от вас сериозно би помогнало много за развитието на този блог. Някои страхотни предложения:- Закачете го!
- Споделете го с любимия си блог + Facebook, Reddit
- Twitter го!