Skip to main content

Утилита для проверки хэш-сумм файлов с поддержкой множества алгоритмов

Project description

hashcheck-cli 🔐

Python Version License

Утилита для проверки хэш-сумм файлов, в будущем планируется сделать графический интерфейс :)

✨ Возможности

  • Поддержка 7 алгоритмов хэширования:
    • md5, sha1, sha256, sha512
    • sha3-256, sha3-512, blake2b
  • Проверка отдельных файлов
  • Проверка по файлам контрольных сумм (как в sha256sum)
  • Интерактивный режим
  • Автоматическое определение алгоритма по длине хэша
  • Красивый вывод с эмодзи ✅/❌

🚀 Быстрая установка

python

pip install hashcheck

github

git clone https://github.com/purposefulman/hashcheck.git
cd hashcheck
sudo make install

cmd

curl -sSL https://raw.githubusercontent.com/purposefulman/hashcheck/main/scripts/install.sh | bash

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

Базовые команды

Вычислить SHA256 файла

hashcheck yourfile.iso sha256

Проверить с ожидаемой суммой

hashcheck yourfile.iso sha256 -e "hash"

Проверить MD5

hashcheck file.bin md5

Проверить SHA512

hashcheck file.bin sha512

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

# Создайте файл checksums.txt:
# e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855  archlinux.iso

# Проверить все файлы
hashcheck -c checksums.txt

# Указать алгоритм явно
hashcheck -c checksums.txt sha256

Интерактивный режим

hashcheck -i

🛠 Разработка

Запуск из исходников

git clone https://github.com/purposefulman/hashcheck.git
cd hashcheck
python3 -m hashcheck.main --help

Запуск тестов

make test

📝 Примеры

Пример 1: Проверка ISO образа Arch Linux

# Скачиваем ISO
wget https://archlinux.org/iso/latest/archlinux-x86_64.iso

# Скачиваем контрольную сумму
wget https://archlinux.org/iso/latest/sha256sums.txt

# Проверяем
hashcheck -c sha256sums.txt

Пример 2: Проверка нескольких файлов

# Создаём файл с суммами
sha256sum file1.bin file2.bin > checksums.txt

# Проверяем
hashcheck -c checksums.txt

Пример 3: В скриптах

#!/bin/bash
if hashcheck myfile.iso sha256 -e "expected_hash"; then
    echo "Файл валидный"
else
    echo "Файл повреждён"
fi

🤝 Вклад в проект

Приветствуются pull requests! Для крупных изменений, пожалуйста, сначала откройте issue.

Форкните репозиторий

Создайте ветку для фичи (git checkout -b feature/amazing-feature)

Закоммитьте изменения (git commit -m 'Add amazing feature')

Запушьте ветку (git push origin feature/amazing-feature)

Откройте Pull Request

📄 Лицензия

Распространяется под лицензией MIT. Смотрите файл LICENSE для подробностей.

📞 Контакты

GitHub Issues: https://github.com/purposefulman/hashcheck/issues

Email: viktor_freelance@proton.me

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hashcheck_tool-1.0.0.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hashcheck_tool-1.0.0-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file hashcheck_tool-1.0.0.tar.gz.

File metadata

  • Download URL: hashcheck_tool-1.0.0.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for hashcheck_tool-1.0.0.tar.gz
Algorithm Hash digest
SHA256 67803d3e8b86c945cd0a4d659977df44708f1225c35f8bbe7c2aac8327a4e575
MD5 e0bbc58da42f46970ee2cf443c81036b
BLAKE2b-256 cf6ae4f700b32700acd9bd65ad2899d3fa8aff2486e0d56b8686b7d3572539ab

See more details on using hashes here.

File details

Details for the file hashcheck_tool-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: hashcheck_tool-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for hashcheck_tool-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cad763f43236d967684203bc8788fc5ac14bbb15dfa8feccc003cb1e16d0121a
MD5 2b7bbbebb81795e9d85b3bf0f5b3ff30
BLAKE2b-256 7db5f0b25e5947bf5deb5836677ae5af998ff05bf3fc0487a56ff80b4a290b52

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page