• Stars
    star
    2,498
  • Rank 18,388 (Top 0.4 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created almost 5 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

πŸ“ File hashing and checking shell extension

OpenHashTab

License Weblate translation status Downloads GitHub Version Chocolatey Version Commits since release

About

OpenHashTab is a shell extension for conveniently calculating and checking file hashes from file properties.

Features

  • Support for 28 algorithms, see Algorithms
  • High performance hash calculation
  • Native Windows looks
  • High DPI screen support
  • Long path support*
  • Multilingual (Consider contributing to translation!)
  • Check hashes against VirusTotal with a button
  • Hash checking against a checksum file (Supported: hex hash next to file, *sum output (hex or base64), corz .hash, SFV)
  • Hash export to file or clipboard (Supported: *sum output, corz .hash, SFV)
  • Optional context menu option for faster access
  • File associations and standalone mode

* to the extent Windows and configuration supports it. Enable long paths on 1607+ for better support.

System requirements

  • Windows 7 or later (x86 / x64 / ARM64)
  • 1 GB RAM or more (for efficent hashing of more than 512 files at a time)

Usage

Most of the actions should be obvious. Some not-so-obvious features are listed here:

  • You can select multiple files or folders, all files will be hashed, directories traversed
  • Double click hash to copy it
  • Double click name or algorithm to copy the line in sumfile format
  • Right click for popup menu: copy hash, copy filename, copy line, copy everything
  • The counters next to the status text is in the format (match/mismatch/nothing to check against/error)
  • Columns sort lexographically, except the hash column which sorts by match type
  • Selecting the tab on a sumfile will interpret it as such and hash the files listed in it.
  • If a hashed file has a sumfile with same filename plus one of the recognized sumfile extensions and the option for it is enabled, the file hash is checked against it.

Advanced features

Override Windows language selection

Add a DWORD named LangIdOverride to HKEY_CURRENT_USER\SOFTWARE\OpenHashTab with your preferred LCID

Disable VirusTotal button for all users on a machine

Add a DWORD named ForceDisableVT to HKEY_LOCAL_MACHINE\SOFTWARE\OpenHashTab with a nonzero value

Algorithms

  • CRC32, CRC64 (xz)
  • xxHash (XXH32, XXH64)
  • xxHash3 (64 and 128 bit variants)
  • MD4, MD5
  • RipeMD160
  • Blake2sp
  • SHA-1
  • SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512)
  • SHA-3 (SHA3-224, SHA3-256, SHA3-384, SHA3-512)
  • BLAKE3 (256 bit, 512 bit)
  • KangarooTwelve (264 bit, 256 bit, 512 bit)
  • ParallelHash128 (264 bit) and ParallelHash256 (528 bit)
  • Streebog (GOST R 34.11-12) (256 bit, 512 bit)

Download

Latest release

Latest development build

Development builds

Screenshot

Screenshot Algorithms

Donations

This software is provided completely free of charge to you, however I spent time and effort developing it. If you like this software, please consider making a donation:

  • Bitcoin: 1N6UzYgzn3sLV33hB2iS3FvYLzD1G4CuS2
  • Monero: 83sJ6GoeKf1U47vD9Tk6y2MEKJKxPJkECG3Ms7yzVGeiBYg2uYhBAUAZKNDH8VnAPGhwhZeqBnofDPgw9PiVtTgk95k53Rd

Translation

Weblate translation status

Translate the project at Weblate

Translation contributors

In addition to contributors reported by git, some translations were also contributed by: xprism, @NieLnchn (Simplified Chinese), NiccolΓ² Zanichelli (Italian)

Building

Requirements

  • WSL Alpine with make and libxslt
  • Visual Studio 2022 (with ARM64 and clang-cl)
  • InnoSetup

Compiling

  1. Run build-xkcp.bat
  2. Build AlgorithmsDll.sln for all Release targets
  3. Build OpenHashTab.sln for all Release targets
  4. Use Inno Setup Compiler to compile installer.iss

More options and commands can be found in the GitHub Actions workflow

Relationship to HashTab

HashTab is a similar purpose proprietary software. While this software has been inspired by it, I was never an user of HashTab and this software contains no code or resources related to it.

License

All original code in this repo are licensed under the following license, unless explicitly stated otherwise in the file:

Copyright 2019-2022 namazso <[email protected]>
OpenHashTab - File hashing shell extension

OpenHashTab is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

OpenHashTab is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with OpenHashTab.  If not, see <https://www.gnu.org/licenses/>.

This software also contains or uses code from various other sources, for a complete list see license.installer.txt

More Repositories

1

SecureUxTheme

🎨 A secure boot compatible in-memory UxTheme patcher
C++
1,915
star
2

MagicSigner

Signtool for expired certificates
C++
372
star
3

physmem_drivers

A collection of various vulnerable (mostly physical memory exposing) drivers.
PowerShell
265
star
4

nSkinz

Skin changer for CS:GO
C++
226
star
5

linux_injector

A simple ptrace-less shared library injector for x64 Linux
C++
202
star
6

hdd_serial_spoofer

Windows driver for spoofing serial number of HDDs
C++
186
star
7

IDAShell

Shell extension for opening executables in IDA
C++
184
star
8

x86

Pretty x86 instruction reference site generator
PowerShell
56
star
9

ida_setup_password_cracker

A bruteforcer for IDA Pro setup passwords
C
26
star
10

WinDiskFlash

Disk image flasher for Windows
C++
25
star
11

VirusTotal-FPContacts

Contacts for VirusTotal scanners
21
star
12

PawnIO

Input-output driver
C++
20
star
13

PEDiffGen

Subtract one PE file from another!
C++
19
star
14

msvcrt.lib

.lib file for linking against the NT CRT
17
star
15

PawnPP

A Pawn p-code interpreter written in C++
C++
13
star
16

simplerw

a dumb rpm/wpm example driver
C++
12
star
17

SaferIO

A slightly safer io access library
C
10
star
18

simplerw_sym

a dumb rpm/wpm example driver 2
C++
9
star
19

siggrep

a grep-like utility for testing for binary patterns in a file
C++
9
star
20

7zip_source

A repo of 7-zip's source code with history
C++
8
star
21

namazso.eu

CSS
8
star
22

riseup-alias-generator

🐦 Generate email address aliases on riseup.net
PowerShell
8
star
23

ShittyUxTheme

A file patching UxTheme patcher using symbols
C++
7
star
24

dll-universal-patcher

A universal binary patching dll.
C++
7
star
25

MultiLatency

A simple program to check latency to multiple hosts.
C#
6
star
26

FNFBRServer

A server for FunkinBattleRoyale
C#
6
star
27

AzuKI

Azure Key Impersonator
C++
6
star
28

ProIntelliColor

Set taillight color on the Pro IntelliMouse, platform independently
C
5
star
29

QuickXorHash

A high performance QuickXorHash implementation
C
5
star
30

PawnIO_csharp_test

PawnIO C# test
C#
5
star
31

signserver

Authenticode signing server
Rust
4
star
32

PawnIOLib

Wrapper library and tooling for PawnIO
C++
4
star
33

tf2idb_itemserver

A php sqlite database generator for TF2's item schema txt
PHP
3
star
34

langcomp

Localization to resource file compiler
PowerShell
2
star
35

platypus_map_converter

A map converter for the 2002 game Platypus.
C++
2
star
36

PawnIO.Modules

Modules for use with PawnIO
Pawn
2
star
37

untchar

The opposite of tchar.h
PowerShell
2
star
38

services

Docker-composes for services on namazso.eu
Perl
1
star
39

atomix_clone

nAtomix, a simple C99 clone of the ATARI game Atomix
C++
1
star
40

blitzunlink

A Blitz blob to COFF converter.
C++
1
star
41

rcon_client

A C RCON client I wrote a long time ago
C
1
star