A powerful, modern cross-platform application for generating and verifying file hashes with an intuitive GUI. Perfect for ensuring file integrity, detecting corruption, and security verification.
|
Hash Generation Interface Modern GUI with algorithm selection and progress tracking |
File Verification Interface Comprehensive verification with corruption detection |
- MD5 - Fast, widely compatible
- SHA1 - Legacy support
- SHA-3 - Modern secure standard
- SHA256 - Cryptographically secure
- SHA512 - Maximum security
- xxHash64 - Ultra-fast non-cryptographic
- Blake2b - Fast and secure
- Blake3 - Next-generation hashing
- CRC32 - Quick checksum validation
- Beautiful, intuitive GUI with modern design
- Real-time progress tracking with file-by-file updates
- Tabbed interface for hash generation and verification
- Responsive layout that works on different screen sizes
- Dark theme support for comfortable use
- Multi-threaded processing for optimal speed
- Configurable thread count (1-16 threads)
- Efficient memory usage for large files
- Chunked reading to handle files of any size
- Cancellable operations
- Comprehensive corruption detection
- Detailed error reporting with separate error files
- Auto-save functionality with timestamps
- Graceful handling of permission errors
- Recovery from interrupted operations
- JSON format for structured data storage
- Human-readable text reports
- Separate corrupted files list with hash comparisons
- Metadata including timestamps, file sizes, algorithms
- Portable path handling for cross-platform compatibility
- Go to the Releases page
- Download the appropriate file for your platform:
- Windows:
Hash-Creator-windows.zip - Linux:
Hash-Creator-linux.tar.gz - macOS:
Hash-Creator-macos.tar.gz
- Windows:
- Extract and run - no installation required!
# Clone the repository
git clone https://github.com/mian196/Hash-Creator.git
cd Hash-Creator
# Run platform-specific setup
# Windows:
setup.bat
# Linux:
chmod +x setup.sh && ./setup.sh
# macOS:
chmod +x setup.command && ./setup.command| Platform | Requirements |
|---|---|
| Windows | Windows 10 or later (64-bit) |
| Linux | Any modern 64-bit distribution |
| macOS | macOS 10.14 (Mojave) or later |
No Python installation required for pre-built executables!
- Select Location: Choose a file or folder to scan
- Choose Algorithm: Select from 9 supported hash algorithms
- Configure Settings: Adjust thread count for performance
- Generate: Click "Generate Hashes" and monitor progress
- Auto-Save: Results are automatically saved with timestamps
- Load Hash File: Select a previously generated hash file
- Set Base Path: Optionally specify new location if files moved
- Verify: Click "Verify Files" to check integrity
- Review Results: View detailed corruption report
- β MATCH: File is identical to original
- β MISMATCH: File has been modified or corrupted
- β FILE_NOT_FOUND: Original file no longer exists
β οΈ READ_ERROR: Unable to access file- π« VERIFICATION_ERROR: Technical error during verification
- Python 3.8 or higher
- pip package manager
# Create virtual environment
python -m venv venv
# Activate virtual environment
# Windows:
venv\Scripts\activate
# Linux/macOS:
source venv/bin/activate
# Install dependencies
pip install -r requirements.txtpython main.py# Using build script
python build.py
# Or manually with PyInstaller
pyinstaller --onefile --windowed --name Hash-Creator main.pygit tag v1.0.0
git push --tagsHash-Creator/
βββ main.py # Main application entry point
βββ requirements.txt # Python dependencies
βββ build.py # Build script with icon generation
βββ Hash-Creator.spec # PyInstaller configuration
βββ setup.bat # Windows setup script
βββ setup.sh # Linux setup script
βββ setup.command # macOS setup script
βββ .github/
β βββ workflows/
β βββ build-executables.yml # CI/CD pipeline
βββ dist/ # Built executables (generated)
βββ release/ # Release files (generated)
βββ venv/ # Virtual environment (generated)
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Make your changes
- Run tests (if applicable)
- Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- PyInstaller - For cross-platform executable creation
- tkinter - For the GUI framework
- xxHash - For ultra-fast hash algorithms
- Blake3 - For next-generation cryptographic hashing
- GitHub Actions - For automated CI/CD pipeline
Made with β€οΈ for file integrity and security