- Узнать хеш сумму файла стандартными средствами командная строка
- Что такое хеш файла и как его узнать
- Что такое хеш файла
- Практическая ценность хеш-суммы файлов
- Как узнать хеш файла
- Порядок использования:
- Get-File Hash
- Syntax
- Description
- Examples
- Example 1: Compute the hash value for a file
- Example 2: Compute the hash value for an ISO file
- Example 3: Compute the hash value of a stream
- Example 4: Compute the hash of a string
- Parameters
- Inputs
- Outputs
- Как узнать хэш (контрольную сумму) файла в Windows PowerShell
- Получение контрольной суммы файла средствами Windows
- Получение хэша файла в командной строке с помощью CertUtil
Узнать хеш сумму файла стандартными средствами командная строка
Если у вас возникла задача узнать хеш-сумму файла, а устанавливать какие-либо дополнительные программы для этого не хочется, то это можно сделать стандартными средствами с помощью командной строки.
Нам поможет утилита CertUtil по умолчанию входящая в комплект Windows
Чтобы узнать хеш сумму файла необходимо зайти в командную строку: (клавиши Win+R и набираем cmd, либо «Пуск-Все программы-Стандартные-Командная строка«)
и выполнить команду
где, c:file — путь до файла
По умолчанию утилита считает хеш-сумму с помощью SHA1
Если хотите использовать другой, пожалуйста, доступны MD5 MD4 MD2 SHA512 SHA384 SHA256 SHA1
Также можно воспользоваться утилитой FCIV (File Checksum Integrity Verifier utility) эта утилита может не входить по умолчанию в систему. Скачать можно ее с оф.сайта http://support.microsoft.com/ru-ru/kb/841290
Распаковываем и кладем файл fciv.exe для удобства в папку C:windowssystem32
Теперь можно выполнив команду
узнать хеш-сумму файла, по умолчанию MD5, но также доступен SHA1
Из полезных функций хочется отметить возможность проверить автоматом хеш-суммы всех файлов в папке, а также загрузить их в XML-файл для последующей сверки
Считаем хеш-сумму всех файлов в папке
Создаем файл d:hashes.xml, который содержит хеши и пути до файлов всех файлов папки d:Folder
fciv -add d:Folder -r -xml d:hashes.xml
Сверяем хеш суммы файлов по ранее созданному xml файлу
Что такое хеш файла и как его узнать
Каждый файл имеет определенные идентифицирующие свойства: имя, расширение, размер и др. Но ни одно из этих свойств не является уникальным и не позволяет однозначно идентифицировать каждый файл. Например, может существовать несколько однотипных файлов одинакового размера и с одинаковыми именами, отличающихся при этом по содержанию.
Проблему уникальной идентификации решает так называемая хеш-сумма файла (в разговорной речи — просто хеш).
Что такое хеш файла
Хеш файла (хеш-сумма файла) — это уникальный идентификатор файла, который при помощи специального программного обеспечения высчитывается компьютером путем определенных математических преобразований информации, содержащейся в нем.
Файлы с одинаковыми хешами всегда являются точными копиями друг друга, даже если у них разные имена и (или) расширения.
Изменение содержания файла автоматически влечет за собой изменение его хеша.
Существует несколько общепринятых алгоритмов (стандартов) расчета хеша. Наиболее часто используются алгоритмы:
Хеши, рассчитанные по разным алгоритмам, будут отличаться. Например, так выглядят разные хеши одного и того же файла:
Практическая ценность хеш-суммы файлов
Хеш часто используется для проверки подлинности или целостности важных файлов.
• большинство разработчиков программного обеспечения рядом со ссылками на загрузку программ размещают на своих сайтах хеши этих файлов. После загрузки программы пользователь может сравнить хеш полученного файла с размещенным на сайте и таким образом проверить, не «потерялась» ли часть информации во время загрузки;
• хеши файлов, размещенные на официальном сайте их разработчиков, позволяют убедиться в подлинности таких файлов в случае их загрузки из альтернативных источников;
• хеш положен в основу работы большинства программ, предназначенных для поиска на компьютере файлов — дубликатов;
• проверка хешей важных системных файлов дает возможность системным администраторам выявлять и устранять изменения, внесенные в компьютер злоумышленниками или вредоносными программами.
Хеш файла имеет много вариантов применения. Выше указана лишь маленькая их часть.
Как узнать хеш файла
Для расчета хеша используют специальные программы. Одной из самых популярных среди них является бесплатная программа Hash Tab. Она добавляет соответствующие функции в меню свойств файлов.
Порядок использования:
• установить программу Hash Tab;
• щелкнуть правой кнопкой мышки по файлу и в появившемся контекстном меню выбрать пункт «Свойства»;
• в открывшемся окне перейти на вкладку «Хеш-суммы файлов» и подождать, пока компьютер рассчитает и отобразит хеши файла.
На этой же вкладке есть ссылка с названием «Настройки», нажав на которую можно выбрать алгоритмы, по которым программа Hash Tab будет рассчитывать хеши.
Операционная система Windows умеет автоматически определять тип каждого файла и открывать его при помощи подходящей программы. Пользователю достаточно лишь дважды щелкнуть по файлу левой кнопкой мышки.
Происходит это потому, что у каждого файла есть расширение, а в настойках операционной системы компьютера заложена некая схема взаимосвязей, в которой каждому расширению файла соответствует определенная программа, которую компьютер использует чтобы открывать такие файлы. Эта схема взаимосвязей типов расширений файлов и программ называется ассоциациями файлов.
Программа, при помощи которой компьютер автоматически открывает файлы определенного типа, называется программой по умолчанию.
Если пользователя не устаивает программа, используемая по умолчанию для какого-то типа файлов, ассоциации файлов можно изменить.
Пользователь компьютера постоянно имеет дело с файлами и папками. Из изложенной ниже статьи начинающие читатели узнают о том, что такое файл, что такое папка, в чем между ними состоит разница и как их на практике различать.
Изменить имя файла не сложно: два — три клика мышкой, нажатие нескольких клавиш на клавиатуре плюс две секунды потраченного времени — и готово. Но если нужно переименовать несколько десятков или сотен файлов, «ручное» решение этой задачи становиться серьезной проблемой.
Тем не менее, операционная система Windows позволяет осуществлять групповое переименование настолько же просто, как и в случае с одним файлом. Но почему-то об этой возможности знают далеко не все пользователи.
DjVu — это технология компактного хранения электронных копий документов, созданных с помощью сканера, когда распознавание текста нецелесообразно.
В виде файлов формата djvu хранится огромное количество отсканированных книг, журналов, документов, научных трудов и т.д. Файлы получаются компактными за счет незначительной потери качества изображений. Тем не менее, в них сохраняются фотографии, элементы художественного оформления и другие графические нюансы.
Не смотря на распространённость файлов djvu, у многих начинающих пользователей компьютера возникают трудности с их открытием.
Часто возникают ситуации, когда нужно большой файл разделить на несколько частей с возможностью их дальнейшего соединения.
Например, это может решить проблему с отправкой видео по электронной почте, если используемый почтовый сервис не позволяет пересылать файлы, превышающие определенный размер. Файл можно разрезать на части и переслать его в нескольких письмах.
Примеров, когда разделение файла решает проблему, можно придумать много. Но какой бы ни была ситуация, задачу с «разрезанием» можно решить при помощи обычного архиватора.
Рекомендации типа «сохранить файл с расширением .xxx» часто встречаются в инструкциях компьютерной тематики. Однако, многие пользователи не умеют этого делать.
Для них это краткое руководство.
ПОКАЗАТЬ ЕЩЕ
Get-File Hash
Computes the hash value for a file by using a specified hash algorithm.
Syntax
Description
The Get-FileHash cmdlet computes the hash value for a file by using a specified hash algorithm. A hash value is a unique value that corresponds to the content of the file. Rather than identifying the contents of a file by its file name, extension, or other designation, a hash assigns a unique value to the contents of a file. File names and extensions can be changed without altering the content of the file, and without changing the hash value. Similarly, the file’s content can be changed without changing the name or extension. However, changing even a single character in the contents of a file changes the hash value of the file.
The purpose of hash values is to provide a cryptographically-secure way to verify that the contents of a file have not been changed. While some hash algorithms, including MD5 and SHA1, are no longer considered secure against attack, the goal of a secure hash algorithm is to render it impossible to change the contents of a file — either by accident, or by malicious or unauthorized attempt — and maintain the same hash value. You can also use hash values to determine if two different files have exactly the same content. If the hash values of two files are identical, the contents of the files are also identical.
By default, the Get-FileHash cmdlet uses the SHA256 algorithm, although any hash algorithm that is supported by the target operating system can be used.
Examples
Example 1: Compute the hash value for a file
This example uses the Get-FileHash cmdlet to compute the hash value for the /etc/apt/sources.list file. The hash algorithm used is the default, SHA256. The output is piped to the Format-List cmdlet to format the output as a list.
Example 2: Compute the hash value for an ISO file
This example uses the Get-FileHash cmdlet and the SHA384 algorithm to compute the hash value for an ISO file that an administrator has downloaded from the internet. The output is piped to the Format-List cmdlet to format the output as a list.
Example 3: Compute the hash value of a stream
For this example, we get are using System.Net.WebClient to download a package from the Powershell release page. The release page also documents the SHA256 hash of each package file. We can compare the published hash value with the one we calculate with Get-FileHash .
Example 4: Compute the hash of a string
PowerShell does not provide a cmdlet to compute the hash of a string. However, you can write a string to a stream and use the InputStream parameter of Get-FileHash to get the hash value.
Parameters
Specifies the cryptographic hash function to use for computing the hash value of the contents of the specified file or stream. A cryptographic hash function has the property that it is infeasible to find two different files with the same hash value. Hash functions are commonly used with digital signatures and for data integrity. The acceptable values for this parameter are:
If no value is specified, or if the parameter is omitted, the default value is SHA256.
For security reasons, MD5 and SHA1, which are no longer considered secure, should only be used for simple change validation, and should not be used to generate hash values for files that require protection from attack or tampering.
Type: | String |
Accepted values: | SHA1, SHA256, SHA384, SHA512, MD5 |
Position: | 1 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the input stream.
Type: | Stream |
Position: | 0 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the path to a file. Unlike the Path parameter, the value of the LiteralPath parameter is used exactly as it is typed. No characters are interpreted as wildcard characters. If the path includes escape characters, enclose the path in single quotation marks. Single quotation marks instruct PowerShell not to interpret characters as escape sequences.
Type: | String [ ] |
Aliases: | PSPath, LP |
Position: | 0 |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Specifies the path to one or more files as an array. Wildcard characters are permitted.
Type: | String [ ] |
Position: | 0 |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | True |
Inputs
You can pipe a string to the Get-FileHash cmdlet that contains a path to one or more files.
Outputs
Microsoft.Powershell.Utility.FileHash
Get-FileHash returns an object that represents the path to the specified file, the value of the computed hash, and the algorithm used to compute the hash.
Как узнать хэш (контрольную сумму) файла в Windows PowerShell
Хэш или контрольная сумма файла — короткое уникальное значение, вычисляемое из содержимого файла и обычно использующееся для проверки целостности и соответствия (совпадения) файлов при загрузке, особенно если речь идет о больших файлах (образы системы и подобные), которые могут быть скачены с ошибками или есть подозрения о том, что файл был подменен вредоносным ПО.
На сайтах загрузок часто бывает представлена контрольная сумма, вычисленная по алгоритмам MD5, SHA256 и другим, позволяющая сверить загруженный файл с файлом, выложенным разработчиком. Для вычисления контрольных сумм файлов можно использовать сторонние программы, но есть способ сделать это и стандартными средствами Windows 10, 8 и Windows 7 (требуется версия PowerShell 4.0 и выше) — с помощью PowerShell или командной строки, что и будет продемонстрировано в инструкции.
Получение контрольной суммы файла средствами Windows
Для начала потребуется запустить Windows PowerShell: проще всего использовать поиск в панели задач Windows 10 или меню Пуск Windows 7 для этого.
Команда, позволяющая вычислить хэш для файла в PowerShell — Get-FileHash, а чтобы использовать ее для вычисления контрольной суммы достаточно ввести ее со следующими параметрами (в примере вычисляется хэш для образа ISO Windows 10 из папки VM на диске C):
При использовании команды в таком виде, хэш вычисляется по алгоритму SHA256, но поддерживаются и другие варианты, задать которые можно с помощью параметра -Algorithm, например, для вычисления контрольной суммы MD5 команда будет выглядеть как в примере ниже
При этом поддерживаются следующие значение для алгоритмов вычисления контрольной суммы в Windows PowerShell
- SHA256 (по умолчанию)
- MD5
- SHA1
- SHA384
- SHA512
- MACTripleDES
- RIPEMD160
Подробное описание синтаксиса команды Get-FileHash доступно также на официальном сайте https://technet.microsoft.com/en-us/library/dn520872(v=wps.650).aspx
Получение хэша файла в командной строке с помощью CertUtil
В Windows присутствует встроенная утилита CertUtil для работы с сертификатами, которая, помимо прочего, умеет высчитывать контрольную сумму файлов по алгоритмам:
- MD2, MD4, MD5
- SHA1, SHA256, SHA384, SHA512
Для использования утилиты достаточно запустить командную строку Windows 10, 8 или Windows 7 и ввести команду в формате:
Пример получения хэша MD5 для файла показан на скриншоте ниже.
Дополнительно: на случай, если вам требуются сторонние программы для вычисления хэшей файлов в Windows, можно обратить внимание на SlavaSoft HashCalc.
Если же требуется вычислить контрольную сумму в Windows XP или в Windows 7 без PowerShell 4 (и возможности его установить), вы можете использовать утилиту командной строки Microsoft File Checksum Integrity Verifier, доступную для загрузки на официальном сайте https://www.microsoft.com/en-us/download/details.aspx?id=11533 (формат команды для использования утилиты: fciv.exe путь_к_файлу — результат будет MD5. Также можно вычислить хэш SHA1: fciv.exe -sha1 путь_к_файлу)
А вдруг и это будет интересно:
Почему бы не подписаться?
Рассылка новых, иногда интересных и полезных, материалов сайта remontka.pro. Никакой рекламы и бесплатная компьютерная помощь подписчикам от автора. Другие способы подписки (ВК, Одноклассники, Телеграм, Facebook, Twitter, Youtube, Яндекс.Дзен)
08.09.2016 в 19:21
Здравствуйте. На Windows 10 в контекстном меню проводника CRC SHA можно вычислить SHA-1, SHA-256.
09.09.2016 в 09:41
Здравствуйте. Подозреваю, это что-то установленное вами добавило такой пункт, по умолчанию нет (в настройках тоже подобного не нашел)
09.09.2016 в 18:37
Да Вы правы. Проверил, оказывается пункт CRS SHA принадлежит архиватору 7-Zip.
09.09.2016 в 08:19
Спасибо очень полезная статья.
09.09.2016 в 16:51
еще проще узнать хэш сумму сторонней программой, совершенно бесплатной HashTab.