Контрольная сумма файла это что: Что такое контрольная сумма файла и с чем ее едят

Содержание

Что такое контрольная сумма файла и с чем ее едят

Я думаю многие из пользователей интернета, скачивая различные файлы из сети, сталкивались с тем, что время от времени рядом со ссылкой на файл можно увидеть надпись MD5 или SHA1 и длинную абракадабру из символов, идущих следом. Эта статья для тех, кто хочет узнать что это и зачем нужно.

Что это?

Контрольная сумма (или хеш-сумма) — это результат работы специальных алгоритмов. Подробнее о них вы можете почитать хоть в Википедии, если интересно (алгоритм MD5, кстати, уже упоминался мной в статье про пароли). Мы же обсудим лишь практический аспект их применения. Результат этот выглядит как строка символов, которую и можно увидеть рядом со ссылкой на тот или иной файл. Ну а приписки MD5 и SHA1 как раз и означают алгоритм, с помощью которого контрольная сумма была получена.

Вот, например, контрольная сумма дистрибутива Windows 8, который нашелся у меня на жестком диске, которую выдает алгоритм SHA1:

B0DF41EA9B2F47A205F0C088BD6105B0F3C67D6B

И зачем оно нужно?

Контрольная сумма позволит вам проконтролировать подлинность и целостность скачиваемых (да и любых других) файлов. Контрольные суммы имеют одну приятную особенность — если вы скачали файл не полностью, если он был изменен или если это вообще другой файл, контрольная сумма изменится. То есть, если мы скачиваем откуда-либо файл, и около него написана контрольная сумма, то скачав его, мы можем проверить, скачан ли он полностью и вообще тот ли это файл? Для этого надо получить контрольную сумму скачанного файла и сравнить с той, что была указана на сайте. Если контрольные суммы совпадают — все в порядке. Если отличаются — вы скачали файл не полностью или это вообще не тот файл…

Как узнать контрольную сумму?

Средствами проводника Windows, к сожалению, узнать контрольную сумму MD5 или SHA1 невозможно. Однако существует целый ряд утилит различной сложности, которые позволяют это сделать. Мне больше всего нравится HashTab (ссылка на сайт программы) . Программка совсем небольшая, и ставится как дополнение к проводнику. После установки HashTab, для того, чтобы узнать контрольные суммы файла, просто щелкните по нему правой кнопкой мыши, и выберите «Свойства». Обратите внимание, что в привычном нам окне проводника появилась новая вкладка — «Хеш-суммы файлов». Для больших файлов может потребоваться некоторое время на подсчет сумм.

Обратите внимание, что здесь же есть окошко для сравнения суммы. На скриншоте ниже программа рапортует, что суммы совпадают.

Поиск файлов по контрольным суммам

Есть еще одна небольшая хитрость, связанная с контрольными суммами. Зная контрольную сумму можно не только удостоверится в подлинности и целостности файла, но и найти его. Да-да, если у вас нет самого файла, но вы знаете его контрольную сумму — просто вбейте ее в поисковик, и вы очень быстро найдете именно тот файл, который нужно.

На сриншоте ниже я ввел в Google контрольную сумму OEM-дистрибутива Windows 8.1, как видите, результат на лицо.

Поделиться ссылкой:

Контрольная сумма: что это и почему это важно

Сегодня в вашем лексиконе появится важная новая фраза: контрольная сумма. Это инструмент опытных разработчиков, админов и хакеров, и сегодня он станет вашим.

Представьте ситуацию: вы приходите в магазин за наушниками. Находите нужные на витрине, пробуете их, вам всё нравится. Вы просите продавца принести такие же со склада, в упаковке.

Продавец приносит коробку, и вы понимаете, что вас хотят обмануть. Упаковку явно до этого вскрывали, в комплекте не все провода и накладки, плёночки сняты. Этими наушниками явно пользовались до вас.

Сотрудник говорит, что это ошибка в списке комплектности, а товар на самом деле новый, просто такой пришёл с завода. Вы ему не верите, отказываетесь от покупки и идёте в другой магазин. Там вы находите такие же наушники, проверяете и радуетесь, что купили нужную вещь.

В мире информации происходит почти то же самое: товар на складе — это какие-то данные, а список комплектности товара — это контрольная сумма, которая показывает, изменялись эти данные или нет. Если понимать, что это такое и как этим пользоваться, можно проверить подлинность файла и обезопасить себя от подделок, вирусов и шпионов.

Как это работает

На самом деле именно контрольной суммы уже нет — это название нам досталось с тех времён, когда для проверки точности передачи данных использовали 7 бит вместо 8. Восьмой бит был контрольным, и в нём находилась сумма первых семи бит без учёта старших разрядов. Когда получателю приходила очередная порция данных, он складывал 7 бит и сравнивал сумму с восьмым. Если они совпадали, значит, данные, скорее всего, передались верно. Тогда линии связи были не такими надёжными, как сейчас, и если что-то передавалось неправильно, такие данные нужно было отправить заново. С тех пор и пошло понятие контрольной суммы.

Сейчас сумму уже никто не использует, а вместо этого работают специальные программы:

  1. Берут данные, для которых нужно составить контрольную сумму.
  2. По специальному алгоритму эти данные превращаются в одну строку из символов.
  3. Эту строку текста прикладывают к исходному файлу и говорят — ребята, вот контрольная сумма (то есть строка). Если вы не уверены, что всё скачали правильно, проверьте.
  4. Те, кто скачал исходный файл, запускают программу проверки контрольных сумм и говорят ей — вот файл, а вот его контрольная сумма, проверь, пожалуйста, всё ли тут правильно.
  5. Программа сама составляет контрольную сумму по тому же алгоритму и сравнивает с вашей.
  6. Если контрольные суммы совпадают — всё отлично, данные в порядке, можно пользоваться. Если нет — программа выведет сообщение, что суммы отличаются. Это значит, что во время скачивания возникла ошибка или кто-то специально подменил исходные данные, чтобы навредить вам.

Смысл технологии в том, что для любого файла и алгоритма есть только одна контрольная сумма. Если в файле изменить предложение, слово или несколько символов, контрольная сумма будет уже другой. Это как цифровой отпечаток пальца, только для данных.

Самый простой вариант организовать контрольную сумму — использовать хеши, например, MD5. Мы уже говорили про хеши в статье про Фейсбук и утерянные пароли, но MD5 — многогранная вещь, и в своё время его все использовали для создания контрольных сумм.

Но примерно с 2006 года все стали переходить на другие алгоритмы (CRC32, SHA-1, SHA-2 или MD5crypt). Дело в том, что уже есть методы, которые за приемлемое время могут взломать MD5-хеш и сделать другой файл с тем же размером и почти таким же содержимым, что и ваш. Это значит, что злоумышленник может подделать данные таким образом, что проверка контрольной суммы пройдёт успешно и вы будете думать, что всё в порядке.

Почему это важно

Если вы знаете контрольную сумму и алгоритм её нахождения, вы всегда можете проверить файл на целостность — скачался ли файл целиком и вообще тот ли это файл, что нужно.

Например, вы качаете новую прошивку на свой телефон. Если файл скачается неправильно, не до конца или с ошибками, во время перепрошивки телефон может сломаться, и восстановить его будет уже нельзя. Чтобы такого не было, производители прошивок прикладывают к файлам контрольную сумму, чтобы каждый мог проверить перед перепрошивкой, в порядке ли сам файл.

Чаще всего контрольную сумму используют разработчики ПО, которые выкладывают на своих страницах официальный софт и драйвера. Они говорят: ребята, вот файл, а вот его контрольная сумма. Если качаете у нас — проверьте, без ошибок ли вы скачали. А если качаете не у нас — сравните их контрольную сумму с нашей, вдруг они вам под видом драйвера хотят подсунуть какой-то вирус.

Контрольная сумма файла

А вы, слышали о контрольной сумме файла? Этот термин очень часто встречается на просторах сети и все постоянно зачем-то ее рассчитывают. В этой статье мы разберемся что же это такое и определим, какую пользу можно извлечь, работая с контрольными суммами.

Что такое контрольная сумма файла?

Контрольная сумма (часто называют «хеш») — предназначена для контроля целостности передаваемых данных и представляет собой некое значение, которое было рассчитано при помощи специальных алгоритмов. Среди алгоритмов, которые чаще всего применяются, есть CRC32, MD5 и SHA-1.

CRC32 — переводится как циклический избыточный код, он применим для архиваторов.

MD5 — очень распространенный алгоритм, у которого есть множество применений. Его можно использовать даже для идентификации файлов. Это удобно при поиске идентичных документов и файлов, достаточно только сравнивать одинаковые контрольные суммы.

SHA-1 — с помощью него проверяют целостность данных во время загрузки через торренты.

  • Контрольная сумма — это сумма, выводимая в результате работы одного из известных алгоритмов (избыточный код). Любые данные, которые передаются цифровым способом, отправляются фрагментами и нередки случаи, когда эти фрагменты теряются по дороге. Хеш предназначен для проверки целостности данных и выявления поврежденных фрагментов.
  • Специальный алгоритм рассчитывает сумму полученного файла, если она совпадает с контрольной суммой оригинала, значит передача прошла успешно. Если файл (или его фрагмент) имеет отличающийся, от оригинального, хеш, то появляется ошибка контрольной суммы. Она гласит о нарушении целостности файла. Сейчас мы немного заглянем в теорию возникновения ошибок подобного рода.
  • Самое интересное, что такая ошибка может возникнуть задолго до передачи данных. Например, при записи со сменного носителя (флешки, диска), файл уже может некорректно записаться и его хеш будет отличаться от оригинала. Причины этому могут быть разными.
  • При попытке открыть такой файл, начать установку, или воспроизвести его может и ничего не произойти, а могут начаться и серьезные глюки. Мало кому понравится, если в середине игры окажется серьезная ошибка, которая не позволит пройти ее до конца.
  • А еще, несоответствие контрольной суммы может говорить о том, что файл не оригинальный, или в нем выполнялись определенные действия. К примеру, могли прицепить компьютерный вирус. Что тоже не сильно приятно.

Почему возникает ошибка контрольной суммы?

Давайте немножко углубимся в тему. Многим известно, из курса школьной физики, что вокруг любого проводника, через который течет электрический ток, образуется магнитное поле. Если такой проводник намотать на катушку, получится достаточно сильный магнит. Но при обычных условиях, это поле незаметно, по крайней мере для человека. Любой проводник, по соседству, сразу же воспринимает это поле и в нем образуются побочные токи. Это называется помехами. Производители разными способами пытаются снизить их влияние, но они практически всегда присутствуют.

А теперь возьмем любой компьютер, в котором и так места нет, так еще и куча проводов плотно набито. Если даже хозяин пк их красиво уложил, то это никак не улучшает ситуацию. По ним текут разные токи, с разными потенциалами и разным направлением. Одни предназначены для питания, другие передают информацию. В этой коробочке, под названием компьютер, просто хаос невидимых магнитных полей. И все они мешают друг другу, постоянно создают помехи.

Эта ситуация может показаться фантастической, но такова реальность любой электроники. И самое интересное, что эти помехи считываются системой как реальные сигналы, распознаются и записываются к передаваемому файлу. Чтобы снизить вероятность постоянных наводок, лучше всего размещать все провода как можно дальше друг от друга.

Можно пойти еще более сложным способом и заменить все провода на экранированные. Они имеют плотную медную оплетку, которая как экран принимает любые помехи на себя и выводит их на корпус компьютера. Правда это сработает только при заземлении этого корпуса, когда питание компьютера подключено через трехпроводную сеть. Профи или те, кто хоть немного разбирается в электронике, для борьбы с помехами, могут воспользоваться ферритовыми сердечниками и кольцами. Хотя подобна мера будет уже посложнее.

На современных операционных системах возникновение подобных ошибок очень маловероятно и может быть связанно с подменой файла или нестабильным интернет соединением. Ошибки, возникающие из-за внутренних помех компьютера, довольно легко исправляются программным путем и не представляют проблемы для пользователя.

Но этого нельзя сказать о старых операционных системах. Если вам приходится использовать старенький DOS, ошибка может доставить немножко проблем. Как правило, причина связанна с тем, что система выполняет сброс скорости обмена данных с производительного режима DMA, на очень непроизводительный PIO. Это режим не отличается большой скоростью и не поддерживает работу с контрольными суммами. Исходя из этого, целостность данных не контролируется.

Можно проверить, какой ражим используется для передачи данных с оптических дисков. Откройте меню «Пуск» и выберите «Панель управления». В следующем окне, откройте раздел «Система» и перейдите в «Диспетчер устройств», выберите «Первичный канал IDE», нажмите на «Свойства» и в окне свойств, откройте вкладку «Дополнительные параметры».

Все параметры должны выглядеть следующим образом:

Режим передачи обязательно должен иметь параметр «DMA, если доступно». Если этот режим никак не выставляется, то следует задуматься о покупке нового привода.

К примеру, вы скачали из сети игру или приложение и хотите проверить целостность файла, насколько корректно он был скачан и не было ли каких-либо ошибок при передаче. Вот здесь и приходят на помощь контрольные суммы. Берете хеш своего файла и сравниваете его с тем, что предоставляет раздающий или автор программы. Если они совпали, то все хорошо, если нет, то приложение может иметь серьезные ошибки и его лучше скачать заново. Такие действия позволят предугадать и избежать появление возможных глюков и зависаний в программе (или игре).

Чтобы узнать и проверить контрольную сумму нужного файла, используют специальные утилиты. Сейчас мы рассмотрим самые проверенные из них.

HashTab — программа для проверки контрольная сумма файла

Эта простенькая программа встраивается в систему и позволяет воспользоваться проверкой контрольных сумм в любой удобный момент.

Скачать данную утилиту можно на сайте разработчиков: hashtab.ru На этом ресурсе, нажимаем на ссылку «Скачать для Winodws» и сохраняем файл установки на свой компьютер.

Запускаем скачанный файл и производим установку программы.

После этого, в контекстном меню любого файла, можно выбрать свойства и найти раздел с хеш-суммами. По умолчанию, там будут три основных типа сумм, которые мы упоминали выше.

Например, так выглядят контрольные суммы для файла Microsoft Office Word, с расширением docx.

Чтобы проверять эти суммы на соответствие, ниже находятся специальное поле. В него необходимо вставить оригинальный хеш и нажать на кнопку «Сравнить файл».

Если файл соответствует введенной контрольной сумме, то рядом с полем должна появиться зеленая галочка. Если файл не совпадает по контрольным суммам, то появится красный крестик.

В случае несовпадения хеша, нужно заново скачать данный файл и повторить эту проверку. На этой же вкладке можно настроить вычисление контрольной суммы. Нажмите на ссылку «Настройки».

Откроется окошко, в котором можно выбрать, из списка, какие типы хеша будут отображаться в основном окне свойств и использоваться для проверки соответствия файлов. Здесь же можно включить отображение хеш-сумм строчными символами.

Программа очень простая в управлении и сможет выручить в любой момент, достаточно только зайти в свойства файла.

Проверяем хэш файла с помощью утилиты MD5 FileChecker

Есть еще одна полезная программа, которая может помочь проверить контрольные суммы MD5. Отличительной чертой данной утилиты, является возможность работы без установки. Загрузить ее можно здесь:

После загрузки можете сразу же запустить.

Нажмите на кнопку «Обзор…» и выберите файл для проверки. Далее нажимаете на «Рассчитать» и через некоторое время (пока программа вычисляет сумму) появится полученное значение MD5 для данного файла.

Теперь, чуть ниже, в соответствующее поле, вставляем контрольную сумму алгоритма MD5 и делаем клик по кнопке «Проверить». Если все Ок, то появится сообщение о совпадении сумм и о том, что файл не поврежден.

Если это не так, то появится сообщение следующего вида.

Так что смело устанавливаем игру или программу на свой компьютер только в том случае, если фактическая сумма совпадает с контрольной

Итог

Теперь вы разобрались что такое контрольная сумма и узнали для чего она предназначена. И вы можете извлечь пользу вычисления подобных сумм, определяя целостность скачанных данных. В этом помогут упомянутые, в данной статье, программы HashTab и MD5 FileChecker. Плюс первой, ее способность работать разными типами алгоритмов, для вычисления хеша. Но зато вторая, хоть и работает только с MD5, но зато способна запускаться без установки на компьютер. Это плюс, если вы не хотите слишком засорять свою систему множеством программ.

Если возникли вопросы, то можете смело их задавать в комментариях.

Что такое контрольная сумма файла

Контрольная сумма — это последовательность цифр и букв, используемая для проверки данных на наличие ошибок. Если Вам известна контрольная сумма исходного файла, Вы можете использовать специальную утилиту чтобы убедиться, что Ваша копия идентична.

Объяснение контрольных сумм

Чтобы получить контрольную сумму, Вы запускаете программу, которая обрабатывает этот файл алгоритмом. Типичные алгоритмы, используемые для этого, включают MD5, SHA-1, SHA-256 и SHA-512.

Алгоритм использует криптографическую хеш-функцию, которая принимает входные данные и создает строку (последовательность цифр и букв) фиксированной длины. Входным файлом может быть небольшой файл размером 1 МБ или большой файл размером 4 ГБ, но в любом случае Вы получите контрольную сумму такой же длины. Контрольные суммы также могут называться «хешами».

Небольшие изменения в файле приводят к иному виду контрольных сумм. Например, два разных текстовых файла, которые почти одинаковы, но у одного есть восклицательный знак, а у другого — точка будут иметь разные контрольные суммы. Разница в один символ в файле дает другую контрольную сумму.

Когда контрольные суммы полезны

Вы можете использовать контрольные суммы для проверки файлов и других данных на наличие ошибок, возникающих во время передачи или хранения. Например, файл мог быть неправильно загружен из-за проблем с сетью или проблемы с жестким диском могли вызвать повреждение файла на диске.

Если Вы знаете контрольную сумму исходного файла, Вы можете запустить для нее утилиту хеширования. Если полученная контрольная сумма совпадает, Вы знаете, что файл у Вас идентичен.

Компьютеры используют методы контрольной суммы для проверки данных на наличие проблем в фоновом режиме, но Вы также можете сделать это самостоятельно. Например, дистрибутивы Linux часто предоставляют контрольные суммы, чтобы Вы могли проверить правильно загруженный ISO-образ Linux, прежде чем записывать его на диск или помещать на USB-накопитель. Вы также можете использовать контрольные суммы для проверки целостности любого другого типа файла, от приложений до документов и носителей. Вам просто нужно знать контрольную сумму исходного файла.

В чем разница между хешами MD5, SHA-1 и SHA-256

Контрольные суммы — это полезный способ убедиться, что в файле нет ошибок. Если ошибка возникает из-за проблем с загрузкой или проблем с жестким диском, результирующая контрольная сумма будет другой, даже если это небольшая ошибка.

Однако эти криптографические хеш-функции несовершенны. Исследователи безопасности обнаружили «коллизии» с функциями MD5 и SHA-1. Другими словами, они обнаружили два разных файла, которые производят один и тот же хэш MD5 или SHA-1.

Это вряд ли произойдет случайно, но злоумышленник может использовать эту технику, чтобы замаскировать вредоносный файл. Вот почему не следует полагаться на суммы MD5 или SHA-1 для проверки подлинности файла — только для проверки на наличие повреждений.

Сообщений о конфликте SHA-256 пока не поступало, поэтому приложения теперь создают суммы SHA-256 вместо сумм MD5 и SHA-1. SHA-256 — более сильный и безопасный алгоритм.

Различные алгоритмы контрольной суммы дают разные результаты. Файл будет иметь разные контрольные суммы MD5, SHA-1 и SHA–256. Если Вам известна только сумма MD5 исходного файла, Вы должны вычислить сумму MD5 своей копии, чтобы проверить, совпадает ли она.

Как рассчитать контрольную сумму

Если Вы знаете контрольную сумму исходного файла и хотите проверить ее на своем компьютере, Вы можете легко это сделать. Windows, macOS и Linux имеют встроенные утилиты для генерации контрольных сумм. Вам не нужны сторонние утилиты.

В Windows команда PowerShell Get-FileHash вычисляет контрольную сумму файла. Чтобы использовать ее, сначала откройте PowerShell. В Windows 10 щелкните правой кнопкой мыши кнопку «Пуск» и выберите «Windows PowerShell». Вы также можете запустить его, выполнив поиск в меню «Пуск» по запросу «PowerShell» и щелкнув ярлык «Windows PowerShell».

Get-FileHash входит в состав Windows 10. Но в Windows 7 Вам необходимо установить обновление PowerShell 4.0.

В командной строке введите Get-FileHash и нажмите клавишу пробела.

Введите путь к файлу, для которого Вы хотите вычислить контрольную сумму. Или, чтобы упростить задачу, перетащите файл из окна проводника в окно PowerShell, чтобы автоматически указать путь к нему.

Нажмите Enter, чтобы запустить команду, и Вы увидите хэш SHA-256 для файла. В зависимости от размера файла и скорости памяти Вашего компьютера процесс может занять несколько секунд.

Если Вам нужен другой тип контрольной суммы, добавьте соответствующую опцию -Algorithm в конец команды, например:

Get-FileHash C:\path\to\file. iso -Algorithm MD5
Get-FileHash C:\path\to\file.iso -Algorithm SHA1

Сравните рассчитанную контрольную сумму с исходной. Не нужно смотреть слишком внимательно, так как будет большая разница в контрольной сумме, даже если в базовом файле будет только крошечная разница.

Если контрольная сумма совпадает, файлы идентичны. Если нет, значит проблема — возможно, файл поврежден или Вы просто сравниваете два разных файла. Если Вы скачали копию файла и ее контрольная сумма не соответствует ожидаемой, попробуйте загрузить файл еще раз.

Что такое контрольная сумма (и почему это должно вас волновать)?

Контрольная сумма — это последовательность цифр и букв, используемая для проверки данных на наличие ошибок. Если вам известна контрольная сумма исходного файла, вы можете использовать утилиту контрольной суммы, чтобы убедиться, что ваша копия идентична.

Объяснение контрольных сумм

Чтобы получить контрольную сумму, вы запускаете программу, которая пропускает этот файл через алгоритм . Типичные алгоритмы, используемые для этого, включают MD5, SHA-1, SHA-256 и SHA-512.

Алгоритм использует криптографическую хеш-функцию, которая принимает входные данные и создает строку (последовательность цифр и букв) фиксированной длины. Входной файл может быть небольшим файлом размером 1 МБ или большим файлом размером 4 ГБ, но в любом случае вы получите контрольную сумму такой же длины. Контрольные суммы также могут называться «хешами».

Небольшие изменения в файле приводят к очень иному виду контрольных сумм. Например, мы создали два разных текстовых файла, которые почти одинаковы, но в одном есть восклицательный знак, а в другом — точка. После запуска на них встроенной утилиты контрольной суммы Windows 10 мы увидели очень разные контрольные суммы. Разница в один символ в базовом файле дает совершенно другую контрольную сумму.

Когда контрольные суммы полезны

Вы можете использовать контрольные суммы для проверки файлов и других данных на наличие ошибок, возникающих во время передачи или хранения. Например, файл мог быть неправильно загружен из-за проблем с сетью или проблемы с жестким диском могли вызвать повреждение файла на диске.

Если вы знаете контрольную сумму исходного файла, вы можете запустить для нее контрольную сумму или хеш-утилиту. Если полученная контрольная сумма совпадает, вы знаете, что файл у вас идентичен.

Компьютеры используют методы контрольной суммы для проверки данных на наличие проблем в фоновом режиме, но вы также можете сделать это самостоятельно. Например, Дистрибутивы Linux часто предоставляют контрольные суммы чтобы вы могли проверить, правильно ли загружен ISO-образ Linux, прежде чем записывать его на диск или положить его на USB-накопитель . Вы также можете использовать контрольные суммы для проверки целостности любого другого типа файла, от приложений до документов и носителей. Вам просто нужно знать контрольную сумму исходного файла.

В чем разница между суммами MD5, SHA-1 и SHA-256?

Контрольные суммы — это полезный способ убедиться, что файл не содержит ошибок. Если случайная ошибка возникает из-за проблем с загрузкой или проблем с жестким диском, результирующая контрольная сумма будет другой, даже если это небольшая ошибка.

Однако эти криптографические хеш-функции несовершенны. Исследователи безопасности обнаружили « столкновения ”С Смоки а также SHA-1 функции. Другими словами, они обнаружили два разных файла, которые производят один и тот же хэш MD5 или SHA-1, но разные.

Это вряд ли произойдет случайно, но злоумышленник может использовать эту технику, чтобы замаскировать вредоносный файл под законный файл. Вот почему не следует полагаться на суммы MD5 или SHA-1 для проверки подлинности файла — только для проверки на наличие повреждений.

Сообщений о конфликте SHA-256 пока не поступало, поэтому приложения теперь создают суммы SHA-256 вместо сумм MD5 и SHA-1. SHA-256 — более сильный и безопасный алгоритм.

Различные алгоритмы контрольной суммы дают разные результаты. Файл будет иметь разные контрольные суммы MD5, SHA-1 и SHA – 256. Если вам известна только сумма MD5 исходного файла, необходимо вычислить сумму MD5 своей копии, чтобы проверить, совпадает ли она.

СВЯЗАННЫЕ С: Что такое SHAttered? Разъяснение коллизионных атак SHA-1

Как рассчитать контрольные суммы

Если вы знаете контрольную сумму исходного файла и хотите проверить ее на своем компьютере, вы можете это легко сделать. Windows, macOS и Linux имеют встроенные утилиты для генерации контрольных сумм . Вам не нужны сторонние утилиты.

СВЯЗАННЫЕ С: Что такое хэши MD5, SHA-1 и SHA-256 и как их проверить?

В Windows PowerShell Get-FileHash команда вычисляет контрольную сумму файла. Чтобы использовать его, сначала откройте PowerShell. В Windows 10 щелкните правой кнопкой мыши кнопку «Пуск» и выберите «Windows PowerShell». Вы также можете запустить его, выполнив поиск в меню «Пуск» по запросу «PowerShell» и щелкнув ярлык «Windows PowerShell».

Обновить: Get-FileHash входит в состав Windows 10. Но в Windows 7 вам придется установить обновление PowerShell 4.0 чтобы получить это.

В командной строке введите Get-FileHash а затем нажмите пробел.

Введите путь к файлу, для которого нужно вычислить контрольную сумму. Или, чтобы упростить задачу, перетащите файл из окна проводника в окно PowerShell, чтобы автоматически указать путь к нему.

Нажмите Enter, чтобы запустить команду, и вы увидите хэш SHA-256 для файла. В зависимости от размера файла и скорости хранения на вашем компьютере процесс может занять несколько секунд.

Если вам нужен другой тип контрольной суммы, добавьте соответствующий -Алгоритм параметр в конец команды, например:

Get-FileHash C: \ путь \ к \ file.iso -Algorithm MD5
Get-FileHash C: \ путь \ к \ file.iso -Алгоритм SHA1

Сравните рассчитанную контрольную сумму с исходной. Не нужно смотреть слишком внимательно, так как будет огромная разница в контрольной сумме, даже если разница в основном файле будет незначительной.

Если контрольная сумма совпадает, файлы идентичны. Если нет, значит проблема — возможно, файл поврежден или вы просто сравниваете два разных файла. Если вы скачали копию файла и ее контрольная сумма не соответствует ожидаемой, попробуйте загрузить файл еще раз.

Контрольная сумма — это… Что такое Контрольная сумма?

Контро́льная су́мма — некоторое значение, рассчитанное по набору данных путём применения определённого алгоритма и используемое для проверки целостности данных при их передаче или хранении. Также контрольные суммы могут использоваться для быстрого сравнения двух наборов данных на неэквивалентность: с большой вероятностью различные наборы данных будут иметь неравные контрольные суммы. Это может быть использовано, например, для детектирования компьютерных вирусов. Несмотря на своё название, контрольная сумма не обязательно вычисляется путем суммирования.

С точки зрения математики контрольная сумма является хеш-функцией, используемой для вычисления контрольного кода — небольшого количества бит внутри большого блока данных, например, сетевого пакета или блока компьютерного файла, применяемого для обнаружения ошибок при передаче или хранении информации. Значение контрольной суммы добавляется в конец блока данных непосредственно перед началом передачи или записи данных на какой-либо носитель информации. Впоследствии оно проверяется для подтверждения целостности данных.

Популярность использования контрольных сумм для проверки целостности данных обусловлена тем, что подобная проверка просто реализуема в двоичном цифровом оборудовании, легко анализируется и хорошо подходит для обнаружения общих ошибок, вызванных наличием шума в каналах передачи данных.

Примеры

  • Циклический избыточный код (в частности, CRC8, CRC16, CRC32) применяется для проверки целостности передачи данных. Программы-архиваторы включают CRC исходных данных в созданный архив для того, чтобы получающий мог удостовериться в корректности полученных данных. Такая контрольная сумма проста в реализации и обеспечивает низкую вероятность возникновения коллизий.
  • MD5 и другие криптографические хеш-функции используются, например, для подтверждения целостности и подлинности передаваемых данных.
  • Под названием «контрольное число» входит в состав номеров товаров и различных документов.

См. также

Ссылки

Контрольная сумма. Что это и как проверить?

Здравствуйте Друзья! Как показывает практика многих пользователей, при более детальном знакомстве с компьютером, интересует вопрос: что есть контрольная сумма? И как ее вычислить? В этой статье мы расскажем что это и зачем. Так же приведем несколько способов проверки контрольной суммы или хеша файлов.

Определение контрольной суммы

Контрольная сумма (хеш) — определенное значение рассчитанное для данных с помощью известных алгоритмов. Предназначается для проверки целостности данных при передаче. Наиболее распространенными алгоритмами являются: CRC32, MD5 и SHA-1.

CRC32 — (Cyclic redundancy code) Циклический избыточный код. используется в работе программ архиваторов.

MD5 — используется не только для проверки целостности данных, но и позволяет получить довольно надежный идентификатор файла. Последний часто используется при поиске одинаковый файлов на компьютере, что бы не сравнивать все содержимое, а сравнить только хеш.

SHA-1 — используется для проверки целостности загружаемых данных программой BitTorrent.

Пример. Вы хотите установить Windows или игру. Скачиваете образ и хотите убедиться в целостности файла. Все ли правильно скачалось и ничего ли не потерялось при передаче. Самым простым способом это сделать — сравнить контрольные суммы скачанного файла с теми которые дает автор или раздающий. Если суммы совпадают, то ошибок в образе нет. В противном случае необходимо скачать заново. Эта простая процедура является профилактикой от всяких зависаний, некорректной работы и вообще возможностью корректной установки операционной системы или игры.

Ниже приведем пару простеньких программ отлично справляющихся с вычислением и проверкой контрольных сумм.

HashТab — проверка контрольной суммы

Программа HashTab представляет собой плагин или утилиту, которая интегрируется в операционную систему Windows и при необходимости используется.

Для того что бы скачать перейдем по адресу http://hashtab.ru/.

Нажмем на кнопку показанную на рисунке на официальном сайте и сохраним установочный файл.

Произведем установку программы HashTab.

В результате в свойствах любого файла появится дополнительная вкладка Хеш-суммы файлов. По умолчанию вычисляются CRC32, MD5 и SHA-1.

На рисунке показана вкладка Хеш-суммы файла только что созданного пустого документа Microsoft Office Word.docx.

Для проверки необходимо вставить в поле Сравнение хеша сумму указанную автором.

Если видите подобную картинку, то ваш скачанный файл (образ) прошел проверку на подлинность и целостность. В противном случае увидите такой рисунок.

В этом случае лучше заново закачать файл.

На вкладке Хеш-суммы файлов можно изменить Настройки нажав на соответствующую надпись. Откроется окно представленное на рисунке ниже.

В окне можно поставить отображение необходимых контрольных сумм для вычисления и проверки. Для наглядности отображения рекомендуется поставить «птичку» в «чекбоксе» Показывать хеш-суммы строчными символами.

С программой HashTab разобрались. Проще только не сравнивать контрольные суммы)

Вывод

В этой статье мы разобрались, что такое контрольная сумма, для чего ее используют. В нашем случае это простой вариант проверки файлов на целостность и идентичность оригиналу.

Познакомились с программами HashTab и MD5 File Checker.

Программа HashTab может сравнивать различные контрольные суммы в отличии от  MD5 File Checker. Зато последняя не требует установки, что особенно актуально если нет административных прав.

Если у вас появились какие либо вопросы обязательно напишите комментарий.

Видео — Контрольная сумма

Благодарю, что поделились статьей в социальных сетях. Всего Вам Доброго!

C уважением, Антон Дьяченко

Что такое контрольная сумма? (Примеры, варианты использования и калькуляторы)

Контрольная сумма — это результат выполнения алгоритма, называемого криптографической хеш-функцией, над частью данных, обычно в одном файле. Сравнение контрольной суммы, которую вы генерируете из своей версии файла, с контрольной суммой, предоставленной источником файла, помогает убедиться, что ваша копия файла является подлинной и не содержит ошибок.

Контрольную сумму также иногда называют хэш-суммой , реже — хэш-значением , хеш-кодом или просто хеш-кодом .

Кшиштоф Змий / E + / Getty Images

Простой пример контрольной суммы

Идея контрольной суммы или криптографической хеш-функции может показаться сложной и, возможно, не стоит затраченных усилий, но мы хотели бы убедить вас в обратном! Контрольные суммы на самом деле не так уж и сложно понять или создать.

Давайте начнем с простого примера, который, надеюсь, продемонстрирует силу контрольных сумм для доказательства того, что что-то изменилось. Контрольная сумма MD5 для следующей фразы — это длинная строка символов, представляющая это предложение.

Это проверка. 
120EA8A25E5D487BF68B5F7096440019

Для наших целей они практически равны друг другу. Однако даже небольшое изменение, например удаление только за период , приведет к совершенно другой контрольной сумме.

Это тест 
CE114E4501D2F4E2DCEA3E17B546F339

Как видите, даже незначительное изменение в файле приведет к совершенно другой контрольной сумме, что очень ясно показывает, что одно не похоже на другое.

Пример использования контрольной суммы

Допустим, вы загрузили большое обновление программного обеспечения, например пакет обновления. Вероятно, это действительно большой файл, загрузка которого занимает несколько минут или больше.

После загрузки, как узнать, что файл загружен правильно? Что, если бы несколько битов были потеряны во время загрузки, и файл, который у вас сейчас есть на вашем компьютере, не соответствует , в точности , как предполагалось? Применение обновления к программе, не совсем той, которую создал разработчик, может вызвать у вас большие проблемы.

Вот где сравнение контрольных сумм может облегчить вам жизнь. Предполагая, что веб-сайт, с которого вы загрузили файл, предоставляет данные контрольной суммы вместе с файлом, который необходимо загрузить, вы можете затем использовать калькулятор контрольной суммы (см. Калькуляторы контрольной суммы ниже) для вычисления контрольной суммы из загруженного файла.

Например, предположим, что веб-сайт предоставляет контрольную сумму MD5: 5a828ca5302b19ae8c7a66149f3e1e98 для загруженного файла. Затем вы используете свой собственный калькулятор контрольной суммы для получения контрольной суммы с использованием той же криптографической хеш-функции, MD5 в этом примере, для файла на вашем компьютере.Контрольные суммы совпадают? Большой! Вы можете быть уверены, что эти два файла идентичны.

Контрольные суммы не совпадают? Это может означать что угодно: от того, что кто-то заменил загрузку чем-то вредоносным без вашего ведома, до менее зловещей причины, такой как то, что вы открыли и изменили файл, или сетевое соединение было прервано, и загрузка файла не завершилась. Попробуйте загрузить файл еще раз, затем создайте новую контрольную сумму для нового файла и снова сравните.

Контрольные суммы также полезны для проверки того, что файл, который вы загрузили откуда-то с , отличного от от исходного источника, на самом деле является допустимым файлом и не был изменен злонамеренно или иным образом из оригинала. Просто сравните созданный вами хеш с хешем, доступным из источника файла.

Калькулятор контрольной суммы

Калькуляторы контрольной суммы — это инструменты, используемые для вычисления контрольных сумм. Существует множество калькуляторов контрольной суммы, каждый из которых поддерживает свой набор криптографических хеш-функций.

Отличным бесплатным калькулятором контрольной суммы является средство проверки целостности контрольной суммы файлов Microsoft File Checksum Integrity Verifier, сокращенно FCIV . FCIV поддерживает только криптографические хеш-функции MD5 и SHA-1, но сейчас они наиболее популярны.

Ознакомьтесь с нашей статьей о том, как проверить целостность файлов в Windows с помощью FCIV, чтобы получить полное руководство. Microsoft File Checksum Integrity Verifier — это программа командной строки, но она очень проста в использовании.

Другой отличный бесплатный калькулятор контрольной суммы для Windows — это IgorWare Hasher, он полностью переносимый, поэтому вам не нужно ничего устанавливать.Если вам неудобно работать с инструментами командной строки, эта программа, вероятно, будет лучшим выбором. Он поддерживает MD5 и SHA-1, а также CRC32. Вы можете использовать IgorWare Hasher, чтобы найти контрольную сумму текста и файлов.

JDigest — это калькулятор контрольной суммы с открытым исходным кодом, который работает в Windows, а также в macOS и Linux.

Поскольку не все калькуляторы контрольной суммы поддерживают все возможные криптографические хеш-функции, убедитесь, что любой калькулятор контрольной суммы, который вы решите использовать, поддерживает хеш-функцию, которая выдает контрольную сумму, которая сопровождает загружаемый файл.

FAQ

  • Все ли контрольные суммы уникальны?

    Да. Только идентичные файлы будут иметь одинаковую контрольную сумму. Изменение чего-либо, кроме имени файла, приведет к другой контрольной сумме.

  • Как калькуляторы контрольной суммы вычисляют контрольную сумму?

    Калькуляторы контрольной суммы

    используют ряд алгоритмов, включая продольную проверку четности, контрольную сумму Флетчера, Adler-32 и циклические проверки избыточности (CRC).

  • Как проверить сразу несколько контрольных сумм?

    Вы можете получить контрольную сумму сразу нескольких файлов с помощью команды MD5 .Откройте терминал и введите md5 , а затем имя каждого файла (разделенные пробелами), затем нажмите Введите .

Спасибо, что сообщили нам!

Расскажите, почему!

Другой Недостаточно подробностей Трудно понять

Что такое контрольная сумма и как ее вычислить

Вам интересно, что такое контрольная сумма? Возможно, вы заметили, что когда вы загружаете файлы с определенных веб-сайтов, они содержат очень длинную строку цифр и букв, называемую контрольной суммой, контрольной суммой MD5, SHA-1 и т. Д.Эти действительно длинные строки в основном действуют как отпечатки пальцев для конкретного файла, будь то EXE, ISO, ZIP и т. Д.

Контрольные суммы используются для обеспечения целостности файла после его передачи с одного запоминающего устройства на другое. Это может быть через Интернет или просто между двумя компьютерами в одной сети. В любом случае, если вы хотите убедиться, что переданный файл в точности совпадает с исходным файлом, вы можете использовать контрольную сумму.

Контрольная сумма вычисляется с использованием хеш-функции и обычно публикуется вместе с загрузкой.Чтобы проверить целостность файла, пользователь вычисляет контрольную сумму с помощью программы калькулятора контрольной суммы, а затем сравнивает их, чтобы убедиться, что они совпадают.

Контрольные суммы

используются не только для обеспечения бесперебойной передачи, но и для гарантии того, что файл не был подделан. При использовании хорошего алгоритма контрольной суммы даже небольшое изменение файла приведет к совершенно иному значению контрольной суммы.

Наиболее распространенными контрольными суммами являются MD5 и SHA-1, но в обеих были обнаружены уязвимости.Это означает, что злонамеренное вмешательство может привести к тому, что два разных файла будут иметь одинаковый вычисленный хэш. Из-за этих проблем безопасности новый SHA-2 считается лучшей криптографической хеш-функцией, поскольку на данный момент на него не было продемонстрировано никаких атак.

Как вы можете видеть на скриншоте выше, в ISO-файле, который я пытаюсь загрузить с сайта Microsoft, указана контрольная сумма SHA1. После загрузки файла я использую калькулятор контрольной суммы для проверки целостности файла.

Около 99.В 9% случаев вам действительно не нужно беспокоиться о контрольных суммах при загрузке файлов из Интернета. Однако, если вы загружаете что-то конфиденциальное, например антивирус или программное обеспечение для обеспечения конфиденциальности, такое как Tor, вероятно, неплохо проверить контрольную сумму, потому что хакеры могут создавать зараженные вредоносным ПО версии критически важного программного обеспечения, чтобы получить полный доступ к системе.

Существует множество различных утилит для вычисления контрольных сумм, и я упомяну здесь только одну или две, поскольку хорошие из них могут создавать для вас несколько хэшей, а также могут проверять хэши.

Утилита контрольной суммы MD5 и SHA

Утилита контрольной суммы MD5 и SHA — моя любимая утилита для работы с контрольными суммами, потому что она имеет все функции, которые мне нужны в бесплатной версии. После загрузки просто запустите EXE-файл, чтобы открыть программу.

Интерфейс очень простой и удобный. Просто нажмите кнопку Обзор , чтобы выбрать файл, и хэши будут автоматически рассчитаны для MD5, SHA-1, SHA-256 и SHA-512.

Как видите, хеш MD5 самый короткий, а хеш SHA-512 очень длинный. Чем длиннее хеш, тем он безопаснее.

Чтобы проверить хэш, просто скопируйте его и вставьте в поле Hash в самом низу. Нажмите «Подтвердить», и он сравнит его с четырьмя сгенерированными хешами, чтобы увидеть, есть ли совпадения.

Онлайн-калькулятор контрольной суммы

Для тех, кто предпочитает не загружать какое-либо программное обеспечение в свои системы, лучшим выбором будет онлайн-калькулятор контрольной суммы.Онлайн-калькуляторы имеют больше ограничений, в основном это максимальный размер загружаемого файла, но для файлов меньшего размера они работают нормально.

На сайте Defuse есть бесплатный калькулятор контрольной суммы файлов для загрузок размером до 5 МБ. Он довольно крошечный, поэтому вам нужно будет использовать либо настольное приложение, либо следующий онлайн-инструмент, упомянутый ниже, для чего-то большего, чем это.

Если 5 МБ слишком мало, попробуйте OnlineMD5, еще один бесплатный сайт, который позволяет генерировать контрольные суммы для файлов размером до 4 ГБ.По-видимому, он делает это без загрузки самого файла на свои серверы. Я не знаю, как это работает, но похоже, что алгоритм просто запускается локально в вашей системе, а затем просто отображает его в браузере. Довольно разумный способ сделать это, потому что вам не нужно загружать дополнительное программное обеспечение и не нужно бесконечно ждать загрузки большого файла.

Этот сайт также очень хорош, потому что вы можете проверить контрольную сумму в дополнение к ее вычислению. Надеюсь, теперь вы лучше понимаете, что такое контрольная сумма, как ее можно использовать и рассчитывать.Если вы отправляете или получаете защищенные файлы, контрольная сумма — лучший способ для обеих сторон проверить целостность этих файлов. Если у вас есть вопросы, оставьте комментарий. Наслаждаться!

Как проверить контрольную сумму файла установщика

Обновлено: 31.08.2020, Computer Hope

Один из способов узнать, безопасно ли устанавливать загруженный программный файл, — это сравнить контрольную сумму файла (также называемую хешем) перед запуском исполняемого файла.

Проверка контрольной суммы файла помогает убедиться, что файл не был поврежден во время загрузки или изменен сторонним злоумышленником перед его загрузкой.Если он был заражен вредоносным ПО или другим вредоносным ПО после первоначального расчета контрольной суммы, вы обнаружите изменение при вычислении новой контрольной суммы.

Контрольная сумма — это длинная строка чисел, которая выглядит следующим образом:

 6fa92dd2ca691c11dfbfc0a239e34369897a7fab 

Это шестнадцатеричное число уникально для EXE-файла установщика, созданного автором. Если кто-то изменил или подделал загруженный вами файл, контрольная сумма на вашем компьютере будет другой.

Примечание

Для максимальной безопасности системы всегда проверяйте контрольную сумму любого программного обеспечения, загружаемого из Интернета, перед его запуском.

Как проверить контрольную сумму файла в Windows

Многие утилиты могут проверять контрольную сумму файла в Windows. Ниже представлены наши любимые варианты: калькулятор контрольной суммы, простая в использовании утилита для сравнения контрольных сумм и утилита командной строки FCIV от Microsoft.

Калькулятор контрольной суммы

Калькулятор контрольной суммы — это бесплатная утилита для вычисления контрольной суммы файла, которая поддерживает наиболее часто используемые алгоритмы контрольной суммы файла, такие как md5, crc32 и sha1.Калькулятор контрольной суммы также может обрабатывать несколько файлов в пакетном режиме и является простой для понимания и использования программой Windows.

Загрузка и установка калькулятора контрольной суммы

  1. Загрузите калькулятор контрольной суммы.
  2. Запустить исполняемый файл, checkumcalculator_setup.exe .
  3. Следуйте инструкциям по установке программы.

Использование калькулятора

  1. Откройте калькулятор контрольной суммы, если он еще не открыт после установки.
  2. Щелкните значок Обзор рядом с полем файла и перейдите к файлу, который нужно проверить. В нашем примере мы проверяем контрольную сумму файла windirstat1_1_2_setup.exe.
  3. Выберите тип вычисляемой контрольной суммы . По умолчанию для контрольной суммы установлено значение MD5, в нашем примере ниже мы установили значение SHA1.
  4. Нажмите кнопку Рассчитать .
  5. После нажатия Вычислить результат отображается в поле Результат.Чтобы сравнить значения с тем, что показано на веб-странице или в документации, скопируйте и вставьте контрольную сумму в поле «Сравнить» и нажмите Проверить . Если оба значения совпадают, вы увидите окно сообщения, указывающее, что значения совпадают.

Использование утилиты Microsoft FCIV

К сожалению, ни одна версия Microsoft Windows не поставляется с предустановленной утилитой контрольной суммы, но Microsoft выпустила команду командной строки для вычисления контрольной суммы. В нашем примере мы будем загружать, устанавливать и использовать Microsoft FCIV ( File Checksum Integrity Verifier ) для проверки файла установщика WinDirStat.WinDirStat — отличная бесплатная утилита для проверки того, какие файлы и папки занимают место на вашем жестком диске.

Загрузка и установка Microsoft FCIV

  1. Загрузите FCIV с сайта Microsoft.
  2. Запустите исполняемый файл, Windows-KB841290-x86-ENU.exe .
  3. Нажмите Да , чтобы принять лицензионное соглашение.
  4. Программа установки спросит, куда вы хотите извлечь файлы. Его удобно разместить в том же месте, что и установщик WinDirStat, поэтому мы рекомендуем вам распаковать его в папку «Загрузки».Щелкните Обзор , выделите Загрузки и щелкните ОК .

  1. Щелкните OK , чтобы извлечь файлы.
  2. Нажмите OK , чтобы закрыть программу установки.
Кончик

Если вы скопируете файл fciv.exe в каталог C: \ Windows, команда будет работать из любого каталога или диска в командной строке.

Использование FCIV

  1. FCIV — это служебная программа командной строки, поэтому ее необходимо запускать из командной строки Windows.Откройте новое окно командной строки сейчас. В Windows 10 вы можете найти его в меню Пуск Система Windows Командная строка . Вы также можете открыть его из окна Выполнить, нажав Win + R (удерживая клавишу Windows на клавиатуре и нажмите R ), введите cmd и нажмите Введите .
  2. Перейдите в каталог загрузок или в каталог, содержащий fciv и файл, который вы хотите сравнить. В командной строке запустите:
 cd Загрузки 
  1. Контрольные суммы, представленные в WinDirStat, используют алгоритм SHA1, поэтому нам нужно использовать параметр -sha1 при запуске FCIV.Например, чтобы проверить windirstat1_1_2_setup.exe , используйте эту команду:
 fciv -sha1 windirstat1_1_2_setup.exe 

FCIV потратит некоторое время на вычисления, а затем выдаст следующий результат:

Контрольная сумма — это длинное шестнадцатеричное число в последней строке:

  6fa92dd2ca691c11dfbfc0a239e34369897a7fab  windirstat1_1_2_setup.exe 

Это шестнадцатеричное число является контрольной суммой SHA1 для вашего файла. Убедитесь, что она соответствует контрольной сумме на сайте WinDirStat:

  • См. Нашу страницу команд fciv для получения дополнительной информации об этой команде, ее синтаксисе и параметрах.

Как проверить контрольную сумму файла в Linux

В Linux контрольную сумму файла можно проверить с помощью одной из следующих команд командной строки в зависимости от контрольной суммы, которую автор использовал для сравнения.

Фиксированность и контрольные суммы — Справочник по сохранению цифровых данных

Иллюстрация Йоргена Стэмпа digitalbevaring.dk CC BY 2.5 Дания

Крепление

«Неподвижность в смысле сохранения означает уверенность в том, что цифровой файл остался неизменным, т.е.е. фиксированный.» (Бейли, 2014). Исправление применяется не только к файлам, но и к любому цифровому объекту, который имеет внутри себя ряд битов, где этот «битовый поток» должен оставаться нетронутым, зная, что он не изменился. Исправление можно применить к изображениям или видео внутри аудиовизуального объекта, к отдельным файлам в zip-архиве, к метаданным внутри структуры XML, к записям в базе данных или к объектам в хранилище объектов. Тем не менее, в настоящее время файлы являются наиболее распространенным способом хранения цифровых материалов, и фиксация файлов может устанавливаться и контролироваться с помощью контрольных сумм.

Контрольные суммы

Контрольная сумма файла — это «цифровой отпечаток пальца», при котором даже малейшее изменение файла приводит к полному изменению контрольной суммы. Контрольные суммы обычно создаются с использованием криптографических методов и могут быть сгенерированы с помощью ряда доступных инструментов с открытым исходным кодом. Важно отметить, что хотя контрольные суммы могут использоваться для определения того, изменилось ли содержимое файла, они не сообщают вам, где в файле произошло изменение.

Контрольные суммы

используются в трех основных целях:

    1. Чтобы знать, что файл был правильно получен от владельца контента или источника, а затем успешно передан в хранилище для хранения
    2. Знать, что при сохранении файла сохранялась неизменность.
    3. Предоставить пользователям файла в будущем, чтобы они знали, что файл был правильно извлечен из хранилища и доставлен им.

Это позволяет установить «цепочку поставок» между теми, кто производит или поставляет цифровые материалы, теми, кто отвечает за их постоянное хранение, и теми, кому необходимо использовать сохраненные цифровые материалы.В эталонной модели OAIS (ISO, 2012) это производители, сама OAIS является репозиторием и потребителями.

Применение в цифровой сохранности

Короткое видео, объясняющее основы проверки целостности (фиксации) в цифровом хранилище

Если у организации есть несколько копий своих файлов, например, как рекомендовано в разделе «Хранилище», то контрольные суммы могут использоваться для контроля исправности каждой копии файла, и если одна из копий изменилась, то одна из других копий может использоваться для создания заведомо исправной замены.Подход состоит в том, чтобы вычислять новую контрольную сумму для каждой копии файла на регулярной основе и сравнивать ее с контрольным значением, которое, как известно, является правильным. Если обнаружено отклонение, известно, что файл каким-то образом поврежден и его необходимо заменить новой хорошей копией. Этот процесс известен как «очистка данных».

Контрольные суммы

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

Файлы следует регулярно проверять на соответствие контрольным суммам. Частота выполнения проверок зависит от многих факторов, включая тип хранилища, качество его обслуживания и частоту использования. Как правило, проверка лент с данными может выполняться ежегодно, а проверка систем на основе жестких дисков — каждые шесть месяцев.Более частые проверки позволяют быстрее обнаруживать и устранять проблемы, но за счет увеличения нагрузки на систему хранения и увеличения ресурсов обработки.

Контрольные суммы

могут храниться различными способами, например, в записи PREMIS, в базе данных или в «манифесте», который сопровождает файлы в системе хранения.

Поддержка

Tool хороша для генерации и использования контрольных сумм. Поскольку это относительно простые функции, контрольные суммы интегрированы во многие другие инструменты цифрового хранения.Например, создание контрольных сумм как часть процесса загрузки и добавление этой фиксированной информации к сгенерированным архивным информационным пакетам или разрешение создания манифестов контрольных сумм для нескольких файлов, а также для объединения манифеста и файлов в пакеты для упрощения транспортировки или хранения. Кроме того, md5sum и md5deep предоставляют простые инструменты командной строки, которые работают на разных платформах и генерируют контрольные суммы для отдельных файлов или каталогов.

Существует несколько различных алгоритмов контрольной суммы, например.грамм. MD5 и SHA-256, которые можно использовать для генерации контрольных сумм возрастающей силы. Чем «сильнее» алгоритм, тем сложнее намеренно изменить файл таким образом, чтобы его нельзя было обнаружить. Это может быть важно для приложений, где необходимо продемонстрировать устойчивость к злонамеренному искажению или изменению цифровых материалов, например, когда важны доказательная сила и юридическая допустимость. Однако, если контрольные суммы используются для обнаружения случайной потери или повреждения файлов, например, из-за сбоя хранилища, тогда достаточно MD5, и его преимущество заключается в хорошей поддержке в инструментах и ​​быстром вычислении.

Справочник соответствует уровням сохранности National Digital Stewardship Alliance (NDSA) (NDSA, 2013) и рекомендует четыре уровня, на которых цифровое сохранение может поддерживаться с помощью методов фиксации файлов и целостности данных. Многие из преимуществ проверки фиксации могут быть достигнуты только при наличии нескольких копий цифровых материалов, например, возможность восстановления, если целостность одной из копий была потеряна.

Уровень
Активность
Рассмотренные риски и достигнутые выгоды

1

  • Проверить исправность файла при загрузке, если он был предоставлен вместе с содержимым.
  • Создать информацию о исправлении, если она не была предоставлена ​​вместе с содержимым.
  • Поврежденные или некорректные цифровые материалы не хранятся сознательно.
  • Подлинность цифровых материалов может быть подтверждена.
  • Базовая фиксация установлена, поэтому нежелательные изменения данных могут быть обнаружены.

2

  • Проверить фиксацию на всех приемах
  • Использовать блокировщики записи при работе с исходными носителями
  • Выполните проверку на вирусы содержимого с высоким уровнем риска.
  • Ни один цифровой материал с неподтвержденной целостностью не может попасть в консервационное хранилище. Подтвержденный вес подтвержден для подлинности.
  • Всем поставщикам контента можно дать уверенность в том, что их контент был благополучно получен. Оригинальный носитель защищен.
  • Вредоносное содержимое не может попасть в консервационное хранилище.

3

  • Регулярно проверяйте фиксацию содержимого, хранящегося в системах хранения для консервации.
  • Вести журналы регистрации информации и аудита предложения по запросу.
  • Возможность обнаружения поврежденных данных.
  • Проверить все содержимое на вирусы.
  • Защита от широкого спектра случаев повреждения и потери данных. Проблемы с памятью обнаружены раньше.
  • Повреждение или потеря данных не остается незамеченной из-за «скрытых ошибок» или «необнаруженных сбоев». Цифровые материалы не находятся в состоянии «неизвестной» целостности.
  • Постоянно подтверждается, что цифровые материалы не повреждены и верны.

4

  • Проверить исправность всего содержимого в ответ на определенные события или действия
  • Возможность замены / восстановления поврежденных данных
  • Убедитесь, что никто не имеет права записи для всех копий.
  • Режимы отказа, которые угрожают цифровым материалам, активно предотвращаются.Все копии цифровых материалов активно поддерживаются.
  • Гарантия для пользователей целостности и подлинности цифровых материалов, к которым осуществляется доступ.
  • Эффективность подхода к сохранению можно измерить и продемонстрировать.
  • Соответствие стандартам, например ISO 16363 Аудит и сертификация надежных цифровых репозиториев.

Блокировка записи

Обратите внимание, что National Digital Stewardship Alliance (NDSA) рекомендует использовать блокировщики записи на уровне 2.Это сделано для предотвращения доступа для записи к носителям, на которых могут находиться цифровые материалы до того, как они будут скопированы в систему хранения для сохранения. Например, если цифровой материал доставляется в организацию на жестком диске или USB-ключе, то блокировщик записи предотвратит случайное удаление этого цифрового материала при считывании диска или ключа. Цифровые материалы могут отсутствовать на физических носителях, например он может быть на устаревшем сервере хранения или доставлен по сети, например загрузка по ftp. В этих случаях блокировщики записи не будут применяться, и будут использоваться другие меры, чтобы сделать цифровой материал «только для чтения» в источнике и, следовательно, неизменным до подтверждения того, что цифровой материал был успешно перенесен в хранилище для хранения.Блокираторы записи также существуют не для всех типов носителей. Если применяется блокировщик записи, тогда затраты / навыки, необходимые для их использования, должны быть сбалансированы с риском повреждения исходного цифрового материала или необходимостью иметь строгую аутентичность данных. Поэтому некоторые организации могут счесть использование блокировщиков записи ненужным или шагом уровня 3 или 4.

Ресурсы

Бейли, Дж., 2014 г., Защитите свои данные: фиксация файлов и целостность данных, The Signal, Библиотека Конгресса.

http://blogs.loc.gov/thesignal/2014/04/protect-your-data-file-fixity-and-data-integrity/

Проверка вашего цифрового контента: что такое фиксация и когда мне следует ее проверять?

http://digitalpreservation.gov/ndsa/working_groups/documents/NDSA-Fixity-Guidance-Report-final100214.pdf?loclr=blogsig

Многие в сообществе консервации знают, что им следует проверять исправность своего контента, но как, когда и как часто? Этот документ, опубликованный NDSA в 2014 году, призван помочь стюардам ответить на эти вопросы так, чтобы это было целесообразно для их организации с учетом их потребностей и ресурсов (7 страниц).

Инструмент для фиксации AVPreserve

Cunningham Dance Foundation

MD5

https://tools.ietf.org/html/rfc1321

SHA-1

http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf

SHA-256

https://csrc.nist.gov/csrc/media/projects/cryptographic-standards-and-guidelines/documents/examples/sha256.pdf

Md5deep и hashdeep

http://coptr.digipres.org/Md5deep_and_hashdeep

md5sum

http: // coptr.digipres.org/Md5sum_Unix_command

Контрольная сумма и цифровое сохранение устной истории

Хороший краткий обзор, не ограничивающийся устной историей, это видео дает краткое введение в роль контрольной суммы в цифровом сохранении. В нем участвует Дуг Бойд, директор Центра устной истории имени Луи Б. Нанна при Библиотеке Университета Кентукки. (3 мин 25 сек)

Список литературы

Бейли, Дж., 2014. Защитите свои данные: надежность файлов и целостность данных. Сигнал . [блог]. Доступно: http://blogs.loc.gov/thesignal/2014/04/protect-your-data-file-fixity-and-data-integrity/

ISO, 2012. ISO 14721: 2012 — Системы передачи космических данных и информации — Открытая архивная информационная система (OAIS) — Справочная модель, 2-е изд. . Женева: Международная организация по стандартизации. Доступно: https://www.iso.org/standard/57284.html

NDSA, 2013. Уровни цифровой сохранности NDSA: объяснение и использование, версия 1, 2013 г. .Национальный альянс за управление цифровыми технологиями. Доступно: http://www.digitalpreservation.gov/ndsa/working_groups/documents/NDSA_Levels_Archiving_2013.pdf

Введение в хеширование и контрольные суммы в Linux

Скорее всего, вы видели ссылки на хеши или контрольные суммы при загрузке программного обеспечения из Интернета. Часто программное обеспечение будет отображаться, и тогда рядом со ссылкой стоит контрольная сумма. Контрольная сумма может быть обозначена как MD5, SHA или другим подобным именем.Вот пример одной из моих любимых старых игр 1990-х годов под названием Nethack:

Если вы загрузили Nethack, вы можете проверить файл, сравнив результат хеширования md5sum с результатом, отображаемым на веб-сайте.

Многие люди не знают точно, что означает эта информация и как с ней работать. В этой статье я обсуждаю цель хеширования и то, как его использовать.

[Читателям также понравилось: Начало работы с GPG (GnuPG)]

Цели криптографии

В этом первом разделе я хочу, чтобы вы кое-что отучили.В частности, я хочу, чтобы вы разорвали у себя в голове ассоциацию между словом encryption и словом confidential . Многие из нас считают эти два слова синонимами, хотя на самом деле это не так. Криптография, которая включает шифрование, может обеспечить конфиденциальность, но она также может удовлетворить другие цели.

Криптография на самом деле преследует три цели:

  • Конфиденциальность — для предотвращения чтения содержимого файла неавторизованными пользователями
  • Подлинность — для подтверждения происхождения файла
  • Целостность — чтобы доказать, что файл не изменился неожиданно

Это третья концепция, целостность , которая нас здесь интересует.В этом контексте целостность означает доказательство того, что данные не изменились неожиданно. Доказательство честности полезно во многих сценариях:

  • Загрузки из Интернета, такие как дистрибутивы Linux, программное обеспечение или файлы данных
  • Передача файлов по сети через NFS, SSH или другие протоколы
  • Проверка установки программного обеспечения
  • Сравнение сохраненного значения, например пароля, со значением, введенным пользователем
  • Резервные копии, которые сравнивают два файла, чтобы узнать, изменились ли они

Что такое хеширование?

Криптография использует хеширование для подтверждения того, что файл не изменился.Простое объяснение состоит в том, что один и тот же метод хеширования используется для файла на каждом конце загрузки из Интернета. Файл хешируется на веб-сервере веб-администратором, и результат хеширования публикуется. Пользователь загружает файл и применяет тот же метод хеширования. Сравниваются результаты хеширования или контрольных сумм . Если контрольная сумма загруженного файла совпадает с контрольной суммой исходного файла, то два файла идентичны, и не было никаких неожиданных изменений из-за повреждения файла, атак типа «злоумышленник посередине» и т. Д.

Хеширование — это односторонний процесс. Результат хеширования нельзя отменить, чтобы открыть исходные данные. Контрольная сумма — это строка вывода заданного размера. Технически это означает, что хеширование не является шифрованием, потому что шифрование предназначено для обратного (дешифрования).

Какую хэш-криптографию вы можете использовать с Linux?

Дайджест сообщения и алгоритм безопасного хеширования

В Linux вы, вероятно, будете взаимодействовать с одним из двух методов хеширования:

Эти инструменты шифрования встроены в большинство дистрибутивов Linux, а также в macOS.Windows обычно не включает эти утилиты, поэтому вы должны загружать их отдельно от сторонних поставщиков, если вы хотите использовать этот метод безопасности. Я думаю, это здорово, что такие инструменты безопасности являются частью Linux и macOS.

Дайджест сообщения и алгоритм безопасного хеширования

В чем разница между алгоритмами дайджеста сообщения и безопасного хеширования? Разница заключается в используемой математике, но они достигают схожих целей. Системные администраторы могут предпочесть одно другому, но в большинстве случаев они работают одинаково.Однако они не взаимозаменяемы. Хэш, сгенерированный с помощью MD5 на одном конце соединения, бесполезен, если на другом конце используется SHA256. С обеих сторон должен использоваться один и тот же метод хеширования.

SHA256 генерирует более крупный хэш, и для его завершения может потребоваться больше времени и вычислительной мощности. Считается, что это более безопасный подход. MD5, вероятно, достаточно хорош для большинства основных проверок целостности, таких как загрузка файлов.

Где вы найдете хеширование в Linux?

Linux использует хеши во многих местах и ​​ситуациях.Контрольные суммы могут быть созданы пользователем вручную. Вы узнаете, как именно это сделать, позже в статье. Кроме того, возможности хеширования включены в / etc / shadow , rsync и другие утилиты.

Например, пароли, хранящиеся в файле / etc / shadow , на самом деле являются хэшами. Когда вы входите в систему Linux, процесс аутентификации сравнивает сохраненное хеш-значение с хешированной версией введенного вами пароля. Если две контрольные суммы идентичны, то исходный пароль и то, что вы ввели, идентичны.Другими словами, вы ввели правильный пароль. Однако это определяется без фактического дешифрования сохраненного пароля в вашей системе. Проверьте первые два символа второго поля своей учетной записи в / etc / shadow . Если два символа — $ 1 , ваш пароль зашифрован с помощью MD5. Если символы $ 5 , ваш пароль зашифрован с помощью SHA256. Если значение $ 6 , используется SHA512. SHA512 используется на моей виртуальной машине Fedora 33, как показано ниже:

Хеш пароля находится во втором поле файла / etc / shadow.Первые два символа поля указывают на используемый тип хэша. В данном случае 6 долларов или SHA512.

Как вручную сгенерировать контрольные суммы

Использовать хеш-утилиты очень просто. Я проведу вас через очень простой сценарий, который можно выполнить на лабораторном компьютере или любой другой системе Linux, которая у вас есть. Цель этого сценария — определить, изменился ли файл.

Сначала откройте свой любимый текстовый редактор и создайте файл с именем original.txt со строкой текста, которая гласит: Исходная информация.

  [Дэймон @ localhost ~] $ vim original.txt
[Дэймон @ localhost ~] $ cat original.txt
Исходная информация.
[damon @ localhost ~] $  

Затем прогоните файл с помощью алгоритма хеширования. Я пока буду использовать MD5. Команда: md5sum . Вот пример:

  [Дэймон @ localhost ~] $ md5sum original.txt
80bffb4ca7cc62662d951326714a71be original.txt
[Damon @ localhost ~] $  

Обратите внимание на результирующее значение контрольной суммы. Это значение достаточно велико, и с ним сложно работать.Давайте сохраним это значение для будущего использования, перенаправив его в файл:

  [Дэймон @ localhost ~] $ md5sum original.txt> hashes.txt
[Дэймон @ localhost ~] $ cat hashes.txt
80bffb4ca7cc62662d951326714a71be original.txt
[Damon @ localhost ~] $  

На этом этапе у вас есть исходный файл. Скопируйте этот файл в каталог / tmp с именем duplicate.txt . Скопируйте файл с помощью следующей команды (обязательно копируйте, а не перемещайте):

  [damon @ localhost ~] $ cp оригинал.txt /tmp/duplicate.txt
[Damon @ localhost ~] $  

Выполните следующую команду, чтобы создать контрольную сумму скопированного файла:

  [Дэймон @ localhost ~] $ md5sum /tmp/duplicate.txt
80bffb4ca7cc62662d951326714a71be /tmp/duplicate.txt
[Damon @ localhost ~] $  

Затем добавьте результат хеширования в наш файл hashes.txt и затем сравните их. Будьте очень осторожны при использовании здесь оператора перенаправления добавления >> , потому что > перезапишет хэш-значение оригинала .txt файл.

Выполните следующую команду:

  [Дэймон @ localhost ~] $ md5sum /tmp/duplicate.txt >> hashes.txt
[Дэймон @ localhost ~] $ cat hashes.txt
80bffb4ca7cc62662d951326714a71be original.txt
80bffb4ca7cc62662d951326714a71be /tmp/duplicate.txt
[Damon @ localhost ~] $  

Два результата хеширования идентичны, поэтому файл не изменился в процессе копирования.

Затем смоделируйте изменение. Введите следующую команду, чтобы изменить файл / tmp / duplicate.txt , а затем повторно запустите команду md5sum с оператором добавления >> :

  [Damon @ localhost ~] $ имя хоста >> /tmp/duplicate.txt
[Дэймон @ localhost ~] $ md5sum /tmp/duplicate.txt >> hashes.txt
[Damon @ localhost ~] $  

Вы знаете, что файл duplicate.txt больше не идентичен файлу original.txt , но давайте докажем это:

  [damon @ localhost ~] $ cat хеши.текст
80bffb4ca7cc62662d951326714a71be original.txt
80bffb4ca7cc62662d951326714a71be /tmp/duplicate.txt
1f59bbdc4e80240e0159f09ecfe3954d /tmp/duplicate.txt
[Damon @ localhost ~] $  

Два значения контрольной суммы не идентичны, и поэтому два файла, из которых были сгенерированы контрольные суммы, не идентичны.

В приведенном выше примере вы вручную сравнили хеш-значения, отображая их с cat . Вы можете использовать опцию --check , чтобы md5sum провел сравнение за нас.Я включил оба метода ниже:

  [Дэймон @ localhost ~] $ cat hashes.txt
80bffb4ca7cc62662d951326714a71be original.txt
80bffb4ca7cc62662d951326714a71be /tmp/duplicate.txt
1f59bbdc4e80240e0159f09ecfe3954d /tmp/duplicate.txt

[Damon @ localhost ~] $ md5sum --check hashes.txt
original.txt: ОК
/tmp/duplicate.txt: НЕ ИСПОЛЬЗУЕТСЯ
/tmp/duplicate.txt: ОК
md5sum: ПРЕДУПРЕЖДЕНИЕ: 1 вычисленная контрольная сумма НЕ совпадает
[Damon @ localhost ~] $  

Вы можете повторить описанные выше шаги, заменив sha256sum на команду md5sum , чтобы увидеть, как этот процесс работает с использованием алгоритма SHA.Команда sha256sum также включает параметр --check контрольная сумма , который сравнивает полученные хэши и отображает сообщение о том, различаются ли файлы.

Примечание : Если вы переносите файлы между Linux, macOS и Windows, вы все равно можете использовать хеширование для проверки целостности файлов. Чтобы сгенерировать хеш-значение в macOS, выполните команду md5 . Для этого в Windows необходимо загрузить стороннюю программу. Лично я использую md5checker .Обязательно разбирайтесь в лицензировании этих утилит. Вы можете использовать командлет PowerShell get-filehash , в зависимости от установленной вами версии PowerShell.

[Бесплатный курс: технический обзор Red Hat Satellite. ]

Заключение

Хеширование подтверждает, что данные не изменились неожиданно во время передачи файла, загрузки или другого события. Эта концепция известна как целостность файла. Хеширование не говорит вам, что изменилось, просто что-то изменилось.Как только хеширование сообщит вам, что два файла разные, вы можете использовать такие команды, как diff , чтобы узнать, какие различия существуют.

Доступность и описание утилиты File Checksum Integrity Verifier

Summary

Средство проверки целостности контрольной суммы файлов (FCIV) — это служебная программа командной строки, которая вычисляет и проверяет криптографические хеш-значения файлов. FCIV может вычислять криптографические хеш-значения MD5 или SHA-1. Эти значения могут отображаться на экране или сохраняться в базе данных XML-файлов для дальнейшего использования и проверки.

Средство проверки целостности контрольной суммы файла

ВВЕДЕНИЕ

В этой статье обсуждается служебная программа проверки целостности контрольной суммы файлов (FCIV).

Предупреждение Утилита Microsoft File Checksum Integrity Verifier (FCIV) — это неподдерживаемая утилита командной строки, которая вычисляет криптографические хэши MD5 или SHA1 для файлов.Корпорация Майкрософт не поддерживает эту утилиту. Используйте эту утилиту на свой страх и риск. Служба поддержки продуктов Microsoft (PSS) не может ответить на вопросы о программе проверки целостности контрольной суммы файлов.

Утилита проверки целостности контрольной суммы файлов (FCIV) может генерировать хеш-значения MD5 или SHA-1 для файлов, чтобы сравнивать их с заведомо правильным значением. FCIV может сравнивать хеш-значения, чтобы убедиться, что файлы не были изменены.

С помощью утилиты FCIV вы также можете вычислить хэши всех ваших критических файлов и сохранить значения в базе данных XML-файлов.Если вы подозреваете, что ваш компьютер мог быть взломан и важные файлы были изменены, вы можете запустить проверку файлов файловой системы по базе данных XML, чтобы определить, какие файлы были изменены.

Утилита FCIV работает в Microsoft Windows 2000, Windows XP и Windows Server 2003.

наверх

Характеристики

Утилита FCIV имеет следующие особенности:

  • Поддерживает хэш-алгоритмы MD5 или SHA1 (по умолчанию MD5.)

  • Может выводить хеш-значения на консоль или сохранять хеш-значение и имя файла в XML-файле

  • Может рекурсивно генерировать хеш-значения для всех файлов в каталоге и во всех подкаталогах (например, fciv.exe c: \ -r)

  • Предоставляет список исключений для указания файлов или каталогов для хеширования

  • Может хранить хеш-значения для файла с полным путем или без него

вернуться к вершине

Установка

Чтобы получить утилиту FCIV, выполните следующие действия:

  1. В проводнике Windows создайте новую папку с именем FCIV.

  2. Следующий файл доступен для загрузки из Центра загрузки Microsoft:

    Загрузите пакет служебной программы проверки целостности контрольной суммы файла.
    Дата выпуска: 17 мая 2004 г.

    Для получения дополнительной информации о том, как загрузить файлы поддержки Microsoft, щелкните следующий номер статьи в базе знаний Microsoft:

    119591 Как получить файлы поддержки Microsoft из онлайн-служб Microsoft проверила этот файл на наличие вирусов.Microsoft использовала самое последнее программное обеспечение для обнаружения вирусов, которое было доступно на дату публикации файла. Файл хранится на серверах с повышенной безопасностью, которые помогают предотвратить любые несанкционированные изменения файла.

  3. В диалоговом окне File Download нажмите Save , а затем сохраните файл в папке FCIV, созданной на шаге 1.

  4. Когда загрузка будет завершена, нажмите Закрыть .

  5. В папке FCIV дважды щелкните Windows-KB841290-x86-ENU.exe .

  6. Нажмите Да , чтобы принять лицензионное соглашение.

  7. Щелкните Обзор , щелкните папку FCIV , а затем щелкните OK .

  8. Нажмите OK , чтобы извлечь файлы.

  9. Когда извлечение файла будет завершено, нажмите ОК .

  10. Добавьте папку FCIV в системный путь.

  11. Чтобы запустить командную строку, нажмите Start , нажмите Run , введите cmd в поле Open , а затем нажмите OK .

  12. Введите fciv.exe /? И нажмите клавишу ВВОД.

Примечание. Если FCIV был установлен в каталог C: \ FCIV, введите set path =% path%; c: \ fciv, чтобы добавить его в системный путь в командной оболочке.

вернуться к началу

Использование
Синтаксис
fciv.exe [Команды] <Опции> 
Команды
  • -добавить файл | dir : вычислить хэш и отправить его на устройство вывода (экран по умолчанию). Параметр dir имеет следующие параметры:

    • -r: Рекурсивный.

    • -type: укажите тип файла. Например, -type * .exe.

    • -exc файл: не вычислять эти каталоги.

    • -wp: не сохранять полное имя пути. (По умолчанию FCIV хранит полное имя пути.)

    • -bp: удалить базовый путь из имени пути каждой записи.

  • -list: Список записей в базе данных.

  • -v : Проверить хэши. Параметр -v имеет следующий параметр:

  • -? , -h или -help : открыть расширенную справку.

Опции
  • -md5 , -sha1 или -both : укажите тип хэша. (По умолчанию MCIV использует -md5.)

  • -xml db : укажите формат и имя базы данных.

    Примечание Когда вы используете параметр -v для проверки хэша, FCIV также отправляет код ошибки возврата, чтобы указать, проверен ли хэш.Ноль (0) указывает на успех, а 1 указывает на неудачу. С кодом ошибки возврата вы можете использовать FCIV в автоматических скриптах для проверки хэшей.

Пример использования
  • Чтобы отобразить хеш-код файла MD5, введите в командной строке следующую команду:

    fciv.exe имя файла Примечание filename — это имя файла.

  • Чтобы вычислить хэш файла, введите командную строку, аналогичную любой из следующих командных строк:

    fciv.exe c: \ mydir \ myfile.dll

    fciv.exe c: \ -r -exc exceptions.txt -sha1 -xml dbsha.xml

    fciv.exe c: \ mydir — введите * .exe

    fciv.exe c: \ mydir -wp -both -xml db.xml

  • Чтобы вывести список хэшей, хранящихся в базе данных, введите командную строку, аналогичную следующей командной строке:

    fciv.exe -лист -sha1 -xml db.xml

  • Чтобы проверить хэш в файле, введите командную строку, аналогичную любой из следующих командных строк:

    fciv.exe -v -sha1 -xml db.xml

    fciv.exe -v -bp c: \ mydir -sha1 -xml db.xml

вернуться к вершине

Формат хранения базы данных

Утилита проверки целостности контрольной суммы файла (FCIV) может сохранять записи в файле базы данных XML.Когда FCIV настроен для хранения хеш-значений в файле базы данных XML, шестнадцатеричные хеш-значения сохраняются в формате с кодировкой base64. Когда вы просматриваете базу данных XML напрямую, представление хеш-значения в кодировке base64 визуально не соответствует шестнадцатеричному значению, отображаемому на консоли. FCIV декодирует хэши в кодировке base64 при отображении содержимого базы данных на экране. Следовательно, он отображает правильное шестнадцатеричное значение.

В следующем примере показано, как FCIV вычисляет хеш-значение MD5 для Ntdll.dll и отображает его в командной строке:

C: \ WINDOWS \ system32> fciv -добавить ntdll.dll
//
// Средство проверки целостности контрольной суммы файла версии 2.05.
//
6cbfd919baa7c9e03c8471ae4d8f8bb0 ntdll.dll
 

Вот хеш-значение того же файла, который закодирован в формате base64 и хранится в XML-файле с помощью следующей команды:

C: \ WINDOWS \ system32> fciv -add ntdll.dll -xml c: \ temp \ ntdll.xml



  ntdll.dll   bL / ZGbqnyeA8hHGuTY + LsA ==   
 

Вот значение, которое появляется в XML-файле, который использует FCIV для перечисления содержимого.

Примечание. Соответствует значению, вычисленному в первом примере.

C: \ WINDOWS \ system32> fciv -list -XML c: \ temp \ ntdll.XML
//
// Средство проверки целостности контрольной суммы файла версии 2.05.
//
Листинг записей в базе данных:
----------------------------

                Имя файла MD5
-------------------------------------------------- -----------------------
6cbfd919baa7c9e03c8471ae4d8f8bb0 ntdll.dll

Количество найденных записей: 1
 

вернуться к вершине

Проверка
Как сгенерировать и проверить хеш-значения для загрузки Microsoft
  • Загрузите файл во временный каталог (например, C: \ Temp).

  • Для извлечения содержимого файла используйте переключатель / x . При появлении запроса укажите выходной каталог для извлеченных файлов (например, C: \ Temp \ Files).

    Вы также можете использовать переключатель / extract для извлечения файлов без запуска программы установки.

    Для получения дополнительных сведений о переключателе / ​​extract щелкните следующий номер статьи в базе знаний Microsoft:

    262841 Параметры командной строки для пакетов обновления программного обеспечения Windows
    Обновление безопасности может быть пакетом IExpress.Если это так, см. Следующую статью в базе знаний Microsoft о том, как извлечь пакет IExpress:

    197147 Параметры командной строки для пакетов обновления программного обеспечения IExpress

  • Чтобы создать базу данных для одного файла и сохранить его в каталоге C: \ Temp, введите следующую команду:

    fciv.exe -add c: \ temp \ files \ имя файла .dll -wp c: \ temp \ files -XML c: \ temp \ имя файла .XML

  • Чтобы проверить содержимое базы данных XML на соответствие установленному файлу, введите следующую команду:

    fciv.exe -v -bp c: \ каталог установки -XML c: \ temp \ filename.XML Обратите внимание, что установленный каталог — это расположение установленного файла.

    Примечание. Когда вы используете опцию -v для проверки хэша, FCIV также предоставляет код ошибки возврата, указывающий на успех (0) или сбой (1) при проверке хэша.Из-за кода ошибки возврата вы можете использовать FCIV в автоматических скриптах для проверки хэшей.

  • FCIV подтвердит на консоли, совпадают ли хэш-значения для файла со значениями, хранящимися в базе данных XML.

Как проверить хеш-значения для файлов в каталоге Windows и во всех подкаталогах

Вы также можете создать хэш-базу данных ваших конфиденциальных файлов и регулярно их проверять.

  • Чтобы создать базу данных и сохранить ее в каталоге C: \ Temp, введите следующую команду:

    fciv.exe -add% systemroot% -r -XML c: \ temp \ windows-hashes.XML

  • Чтобы отобразить содержимое базы данных на консоли, введите следующую команду:

    fciv.exe -list -XML c: \ temp \ windows-hashes.XML

  • Чтобы проверить содержимое базы данных XML на соответствие текущим файлам файловой системы, введите следующую команду:

    fciv -v -XML c: \ temp \ windows-hashes.XML

вернуться к вершине

Контрольная сумма

— проверка целостности файла в командной строке Linux

Контрольная сумма — это строка символов и чисел, сгенерированная запуском криптографической хеш-функции для файла.Вы можете использовать этот результат или контрольную сумму, чтобы убедиться, что файл подлинный, не содержит ошибок и не был изменен из исходного источника.

Контрольная сумма — это элемент данных небольшого размера, полученный из блока цифровых данных с целью обнаружения ошибок, которые могли быть внесены во время его передачи или хранения.

-Википедия

Базовый пример контрольной суммы

Самая популярная команда Linux для создания контрольной суммы из файла — это команда md5sum.Md5sum использует алгоритм дайджеста сообщения MD5 для получения 128-битного хеш-значения из содержимого файла.

Вот пример. Возьмем строку «putorius» и сгенерируем из нее контрольную сумму.

 $ echo -n putorius | md5sum
 6d011e0c5c6198b635e3e08973ff1339 - 

Длинная строка символов выше — это контрольная сумма. За ним следует тире, которое в данном случае означает стандартный ввод (STDIN). Если бы вы выполняли контрольную сумму для файла, имя было бы указано вместо тире.Теперь давайте немного изменим входную строку, сделав заглавную букву P.

.
 $ echo -n Putorius | md5sum
 676d4de5953fcfa91f31b1ffc762e410 - 

Как видите, md5sum сгенерировал совершенно другую контрольную сумму, даже с простым изменением.

Проверка контрольной суммы файла

Проверить контрольную сумму файла очень просто. Просто вызовите md5sum, за которым следует имя файла.

 $ md5sum harrison-bergeron.txt
 5ec9ea693fafdad2379b838f392b631e Harrison-Bergeron.txt 

Здесь мы сгенерировали контрольную сумму текстового файла, содержащего все 185 строк рассказа Курта Воннегута Харрисон Бержерон. Если мы отредактируем файл и изменим один символ, контрольная сумма изменится. Давайте заменим одну случайную букву G в файле на букву R и снова вычислим контрольную сумму.

 $ md5sum harrison-bergeron.txt
 7c5efdee1fbef2fcff87706f330f8597 harrison-bergeron.txt 

Несмотря на то, что мы внесли в файл лишь очень небольшое изменение, контрольная сумма сильно отличается.Это позволяет легко заметить, что файл изменился.

Выбор алгоритма хеширования

Углубленный анализ алгоритмов хеширования выходит за рамки данного руководства. Однако важно знать, что не все алгоритмы созданы одинаково. Например, у MD5 есть хорошо задокументированные недостатки (дополнительная информация в разделе ресурсов и ссылок ниже). Пакет GNU Core Utilities, который предоставляет утилиту md5sum, также предлагает утилиты, предлагающие различные алгоритмы и более высокие битовые хеш-значения.Следующие ниже утилиты работают одинаково (или очень похоже) и должны быть доступны в любой системе Linux.

  • b2sum — Использует дайджест сообщения BLAKE2b
  • cksum — Контрольные суммы и подсчет байтов в файле
  • md5sum — Использует дайджест сообщения MD5
  • sha1sum, sha224sum, sha256sum, sha384sum, sha512sum — Использует сообщение SHA-2 / дайджесты
  • сумма — Контрольные суммы и счетчики блоков в файле

SHA-256 (sha256sum) и SHA-512 (sha512sum) рекомендуются для большинства приложений и обычно считаются безопасными.Например, CentOS и Kali Linux требуют использования sha256sum для проверки целостности файлов ISO.

Пример использования sha256sum:

 $ sha256sum harrison-bergeron.txt
 5f110a42988f80e119de8aec4a0a1ec399e53c60b7027b63996c3e0458192f95 harrison-bergeron.txt 

Пример использования sha512sum:

 $ sha512sum harrison-bergeron.txt
5a3bfb9f283f940c9d383381eccb265a06f0e18a0ca4fe0b699d850054259cca0abdad5cfb8d94c70dbd2e95def0298bb4042f5bc764e8d9b223f61dgeron .1fctxt 

Примеры использования контрольной суммы

Обычно контрольная сумма используется для проверки загруженного файла. Например, допустим, вы хотите установить последнюю версию Kali Linux. Когда вы перейдете на страницу загрузок Kali, вы заметите, что они предоставляют контрольную сумму SHA-256 для каждого файла.

Снимок экрана загрузки Kali с контрольной суммой

После того, как вы загрузили файл, вы проверяете целостность файла, запустив sha256sum и сравнив результаты с хешем на веб-сайте.

 $ sha256sum kali-linux-2019.2-amd64.iso
 67574ee0039eaf4043a237e7c4b0eb432ca07ebf9c7b2dd0667e83bc3900b2cf kali-linux-2019.2-amd64.iso 

Если строки совпадают, ваш файл был успешно загружен и не изменялся с тех пор, как люди в Kali создали контрольную сумму.

Заключение

Проверка целостности файла — важный шаг в обеспечении безопасности системы. В частности, при загрузке файлов из Интернета. В этой статье мы обсудили, как сгенерировать контрольную сумму и как использовать ее для проверки целостности файла.

Leave a Reply

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *