Как проверить подлинность кошелька криптовалюты с помощью MD5, SHA256

Недавно один из наших пользователей спросил: «На странице Github есть несколько файлов Windows 64: файл .exe, файл .md5sum и файл .sha256sum. Какой из них лучше скачать?».

Мы посоветовали загрузить файл .exe или .zip, который весит больше всех. Те файлы, которые много весят, являются фактическими файлами кошелька, а остальные — просто контрольными суммами. Но что это за файлы MD5sum и SHA256sum, и почему разработчики помещают эти файлы рядом с файлами загрузки?

Если Вы сомневаетесь в подлинности кошелька, то лучше всего удалите его и скачаете с официального сайта!

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

Hash MD5 и SHA256

SHA256sum и MD5sum являются программами, которые реализуют алгоритмы SHA256 и MD5 соответственно. Эти файлы в основном используются для подтверждения целостности и подлинности файла.

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

Но это не типично. Из-за проблем безопасности в алгоритме MD5 большинство разработчиков не используют его. В настоящее время широко используются только hash SHA256.

На веб-сайте Monero Вы могли заметить hash-значения SHA256, перечисленные вместе с программным обеспечением.

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

В ядре Bitcoin Вы найдете то, что называется релиз-сигнатурами или другими словами релиз-хеши. Это файл ASC, который обычно содержит hash SHA256 и подпись PGP.

Просто скачайте файл и откройте его с помощью Блокнота или в Блокноте ++. Вы увидите случайную строку букв и цифр, похожих на эту.

——BEGIN PGP SIGNED MESSAGE—— Hash: SHA256 5659c436ca92eed8ef42d5b2d162ff6283feba220748f9a373a5a53968975e34 bitcoin-0.17.1-aarch64-linux-gnu.tar.gz aab3c1fb92e47734fadded1d3f9ccf0ac5a59e3cdc28c43a52fcab9f0cb395bc bitcoin-0.17.1-arm-linux-gnueabihf.tar.gz b1e1dcf8265521fef9021a9d49d8661833e3f844ca9a410a9dd12a617553dda1 bitcoin-0.17.1-i686-pc-linux-gnu.tar.gz 6aa567381b95a20ac96b0b949701b04729a0c5796c320481bfa1db22da25efdb bitcoin-0.17.1-osx64.tar.gz e3d785d800b71d277959d15b2c2b33d44dd72c1288e559928a40488dd935c949 bitcoin-0.17.1-osx.dmg 3e564fb5cf832f39e930e19c83ea53e09cfe6f93a663294ed83a32e194bda42a bitcoin-0.17.1.tar.gz e9245e682126ef9fa4998eabbbdd1c3959df811dc10df60be626a5e5ffba9b78 bitcoin-0.17.1-win32-setup.exe 6464aa2d338f3697950613bb88124e58d6ce78ead5e9ecacb5ba79d1e86a4e30 bitcoin-0.17.1-win32.zip fa1e80c5e4ecc705549a8061e5e7e0aa6b2d26967f99681b5989d9bd938d8467 bitcoin-0.17.1-win64-setup.exe 1abbe6aa170ce7d8263d262f8cb0ae2a5bb3993aacd2f0c7e5316ae595fe81d7 bitcoin-0.17.1-win64.zip 53ffca45809127c9ba33ce0080558634101ec49de5224b2998c489b6d0fc2b17 bitcoin-0.17.1-x86_64-linux-gnu.tar.gz ——BEGIN PGP SIGNATURE—— yYo/F2yO57Yacv597rKILlg29QxEVTqa5+slMdwuU7NP5AdAcQV4EtFqoCOqM7C7 JL/zZWYnTywK3l0hOuCBJiY86izutWME5xgm7Eh3ORj+K6ZYT4iXw2JIkTdumeuS X0WDE3ShH4rb35IaQX75FJLp5R7hLTXiNgng7b8Xhy/62bJ75Ob4HVVSLG1Lkhps vtml10br+78qXiofzk8zaAW6KaG7G9nbBa0hfDjUEsYzA6P5iWA+53ykupc82HNa ZT2gk+wWhNhZOd/ANheriM0eqm/ZlK7oydYRRtf9Tamk+XJgREU1x8cWlMZcCPEE uIUzb7/REvYSjwcwArYLCq/eFPfjQe7jcG2WexnpxxkKJBvu2v4zVw9LLUPll094 BAmfk34iJKhN2cGVhvjO0Q9GKk0B2HzvhD5xn1Hnlp+NbXVNbKonYvkB71D3GY4W t/eRyv7Erfi4dhHf+8oQ =UEoM ——END PGP SIGNATURE——

Это криптографический hash, и эта информация предоставляется пользователям для проверки целостности файла. Разработчики криптовалюты и веб-сайты советуют пользователям проверять подлинность загружаемого файла перед его использованием. Однако большинство пользователей не делают этого или не знают, что делать с этой информацией. Поэтому мы решили сделать статью по этому вопросу. Здесь, в этом руководстве для начинающих, мы покажем вам, как проверять контрольные суммы (только hash SHA256 и hash MD5, а не подписи PGP).

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

Что означает контрольная сумма и как она работает?

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

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

Но вот в чем дело: если какая-либо третья сторона попытается изменить программное обеспечение хотя бы на 1 бит, то значение выходной hash строки контрольной суммы будет полностью отличаться от значения, предоставленного разработчиком.

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

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

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

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

Что такое хеш-суммы и для чего они нужны

Хеш – это результат работы криптографических алгоритмов, разработанных для создания набора цифр и букв. Его еще называют «цифровым отпечатком». Обычно эти наборы имеют фиксированную длину и количество знаков, вне зависимости от размера входной информации. К примеру, у “WP” и “WP-SEVEN” будут хеш-суммы абсолютно одинакового размера. Длина суммы зависит только от того, какой алгоритм хеширования вы проверяете. К примеру, SHA1 выдаст сумму размером 40 знаков, а MD5 только 32.

Кроме того, обратите внимание, что, несмотря на минимальное различие между “WP-SEVEN” и “WP-SEVEM”, хеш-суммы полностью разные и не имеют ничего общего. Это значит, что, даже если кто-то изменит файл хоть на 1 бит (грубо говоря), конечный результат получит совершенно другую хеш-сумму. Это и делает хеш удобным способом проверки подлинности файла. Издатель указывает оригинальную сумму, а пользователь проверяет полученный результат и сравнивает его с оригиналом.

Хеширование осуществляется при помощи различных стандартов. Зачастую это MD5, SHA-1 и SHA-256. Все три алгоритма работают по-разному, но концепция у них одинакова. Мы не будем здесь внедряться в принцип работы каждого алгоритма, поскольку это весьма сложная информация, а только приведем общие сведения, необходимые для обычного пользователя.

Как проверить контрольную сумму (MD5 / SHA256) в Windows, Linux и Mac?

Чтобы объяснить все это лучше, мы покажем все последовательные шаги на конкретном примере – проверим контрольную сумму кошелька Monero GUI, чтобы убедиться, что мы скачали действительно подлинный файл. Вы можете использовать те же самые шаги, чтобы проверить контрольную сумму любых файлов загрузки кошелька криптовалюты.

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

Windows:

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

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

Теперь выделите файл, для которого Вы хотите проверить контрольную сумму, и нажмите CTRL + C, чтобы скопировать его. Затем введите следующую команду, чтобы проверить hash MD5 и SHA256:

MD5: CertUtil -hashfile filename MD5

SHA256: CertUtil -hashfile filename SHA256 (Example: CertUtil -hashfile monero-gui-win-x64-v0.14.0.0.zip SHA256)

Когда закончите, нажмите Enter. В командном окне теперь будет отображаться hash-значение файла в зависимости от выбранного вами алгоритма. Если Вы выбрали алгоритм SHA256, он будет отображать hash SHA256. Если Вы выбрали алгоритм MD5, то он будет отображать hash MD5.

Linux:

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

SHA256: sha256sum / | MD5: md5sum /

Mac: shasum -a 256 filename

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

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

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

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

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

Как подсчитать контрольную сумму файла из консоли Windows

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

Например, чтобы посчитать контрольную сумму SHA1 с помощью утилиты CertUtil нужно запустить командную строку Windows 10, 8 или Windows 7 и ввести следующую команду:

certutil -hashfile путь_к_файлу алгоритм

Вот пример ее работы через несколько минут:

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

Считаем контрольную сумму в PowerShell

PowerShell — это средство автоматизации от Microsoft, с интерфейсом командной строки и языка сценариев, работает и включена в состав Windows 8 и новее.

Чтобы вычислить контрольную сумму файла необходимо выполнить команду Get-FileHash указав через пробел имя файла и алгоритм вычисления контрольной суммы:

Get-FileHash «Disk:\Full Path to file\File Name.Extension» -Algorithm SHA1

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

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

По-умолчанию, если не указать тип контрольной суммы, то будет посчитана SHA-256.

Для алгоритмов вычисления контрольной суммы в Windows PowerShell поддерживаются следующие значения:

  • SHA1
  • SHA256 (по умолчанию)
  • SHA384
  • SHA512
  • MD5

Для оформления вывода в виде списка можно использовать параметр | Format-List. Например:

Get-FileHash «Disk:\Full Path to file\File Name.Extension» | Format-List

Тогда результат работы будет выглядеть так:

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

Подробнее об использовании команды Get-FileHash можно прочитать на официальном сайте Microsoft — https://docs.microsoft.com/ru-ru/powershell/module/microsoft.powershell.utility/get-filehash

Какой алгоритм вычисления контрольных сумм самый правильный

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

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

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

Цифровые подписи: подписи GPG / PGP

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

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

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

Рейтинг
( 1 оценка, среднее 4 из 5 )
Понравилась статья? Поделиться с друзьями: