プログラミング

hashIDでハッシュのアルゴリズムを特定する

ソフトウェアやウェブサイトの認証システム、あるいはブロックチェーンやそのプログラミングにおいて欠かせないものとなっているハッシュアルゴリズム(hash)において、あるhash文字列が何のhashアルゴリズムなのか、LinuxソフトウェアhashIDで特定します。
例えばウェブサイトやウェブアプリのリバースエンジニアリングなどで使えるかもしれません。

psypanda/hashID: Software to identify the different types of hashes –

pythonのインストールがまだの場合、chocolateyを使ってpythonのインストールを行います。

choco list --localonly
choco install python --version=3.6.7

chocolateyとは何かについての概要とインストール方法については以下で紹介しています。

Windows 11にchocolateyをインストールする

pipでhashidをインストールします。

~$ pip install hashid

以下では例として、実際のSkein-1024のhashを渡して、Skein-1024が特定できるかどうかをやってみます。

~$ hashid bc5b4c50925519c290cc634277ae3d6257212395cba733bbad37a4af0fa06af41fca7903d06564fea7a2d3730dbdb80c1f85562dfcc070334ea4d1d9e72cba7abc5b4c50925519c290cc634277ae3d6257212395cba733bbad37a4af0fa06af41fca7903d06564fea7a2d3730dbdb80c1f85562dfcc070334ea4d1d9e72cba7a
Analyzing 'bc5b4c50925519c290cc634277ae3d6257212395cba733bbad37a4af0fa06af41fca7903d06564fea7a2d3730dbdb80c1f85562dfcc070334ea4d1d9e72cba7abc5b4c50925519c290cc634277ae3d6257212395cba733bbad37a4af0fa06af41fca7903d06564fea7a2d3730dbdb80c1f85562dfcc070334ea4d1d9e72cba7a'
[+] Skein-1024

以下のハッシュはMD5ですが、候補がたくさんある場合はアルファベット順でそれらがリストされます。

~$ hashid c59548c3c576228486a1f0037eb16a1b
Analyzing 'c59548c3c576228486a1f0037eb16a1b'
[+] MD2
[+] MD5
[+] MD4
[+] Double MD5
[+] LM
[+] RIPEMD-128
[+] Haval-128
[+] Tiger-128
[+] Skein-256(128)
[+] Skein-512(128)
[+] Lotus Notes/Domino 5
[+] Skype
[+] Snefru-128
[+] NTLM
[+] Domain Cached Credentials
[+] Domain Cached Credentials 2
[+] DNSSEC(NSEC3)
[+] RAdmin v2.x

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です