hashid

package module
v0.0.0-...-1a0fc28 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 12, 2023 License: LGPL-3.0 Imports: 1 Imported by: 0

README

hash-identifier

GoDoc

Go package to identify different hashes

Port of hashId

Example usage:

	ids, _ := hashid.Identify([]byte("C061"), hashid.GetDefaultPrototypes())
	for _, hi := range ids {
		fmt.Println(hi.Name())
	}
	// Output:
	// CRC-16
	// CRC-16-CCITT
	// FCS-16
	// Cisco Type 7

Documentation

Index

Examples

Constants

This section is empty.

Variables

View Source
var HashNames = map[HashID]string{}/* 281 elements not displayed */

Functions

This section is empty.

Types

type HashID

type HashID = int

HashID is a type of hash

const (
	CRC_16 HashID = 1 + iota
	CRC_16_CCITT
	FCS_16
	Adler_32
	CRC_32B
	FCS_32
	GHash_32_3
	GHash_32_5
	FNV_132
	Fletcher_32
	Joaat
	ELF_32
	XOR_32
	CRC_24
	CRC_32
	Eggdrop_IRC_Bot
	DES_Unix
	Traditional_DES
	DEScrypt
	MySQL323
	DES_Oracle
	Half_MD5
	Oracle_7_10g
	FNV_164
	CRC_64
	Cisco_PIX_MD5
	Lotus_Notes_Domino_6
	BSDi_Crypt
	CRC_96_ZIP
	Crypt16
	MD2
	MD5
	MD4
	Double_MD5
	LM
	RIPEMD_128
	Haval_128
	Tiger_128
	Skein_256_128
	Skein_512_128
	Lotus_Notes_Domino_5
	Skype
	ZipMonster
	PrestaShop
	Md5_md5_md5_pass
	Md5_strtoupper_md5_pass
	Md5_sha1_pass
	Md5_pass_salt
	Md5_salt_pass
	Md5_unicode_pass_salt
	Md5_salt_unicode_pass
	HMAC_MD5_key_pass
	HMAC_MD5_key_salt
	Md5_md5_salt_pass
	Md5_salt_md5_pass
	Md5_pass_md5_salt
	Md5_salt_pass_salt
	Md5_md5_pass_md5_salt
	Md5_salt_md5_salt_pass
	Md5_salt_md5_pass_salt
	Md5_username_0_pass
	Snefru_128
	NTLM
	Domain_Cached_Credentials
	Domain_Cached_Credentials_2
	SHA_1_Base64
	Netscape_LDAP_SHA
	MD5_Crypt
	Cisco_IOS_MD5
	FreeBSD_MD5
	Lineage_II_C4
	PhpBB_v3_x
	Wordpress_v2_6_0_2_6_1
	PHPass_Portable_Hash
	Wordpress_v2_6_2
	Joomla_v2_5_18
	OsCommerce
	Xt_Commerce
	MD5_APR
	Apache_MD5
	Md5apr1
	AIX_smd5
	WebEdition_CMS
	IP_Board_v2
	MyBB_v1_2
	CryptoCurrency_Adress
	SHA_1
	Double_SHA_1
	RIPEMD_160
	Haval_160
	Tiger_160
	HAS_160
	LinkedIn
	Skein_256_160
	Skein_512_160
	MangosWeb_Enhanced_CMS
	Sha1_sha1_sha1_pass
	Sha1_md5_pass
	Sha1_pass_salt
	Sha1_salt_pass
	Sha1_unicode_pass_salt
	Sha1_salt_unicode_pass
	HMAC_SHA1_key_pass
	HMAC_SHA1_key_salt
	Sha1_salt_pass_salt
	MySQL5_x
	MySQL4_1
	Cisco_IOS_SHA_256
	SSHA_1_Base64
	Netscape_LDAP_SSHA
	Nsldaps
	Fortigate_FortiOS
	Haval_192
	Tiger_192
	SHA_1_Oracle
	OSX_v10_4
	OSX_v10_5
	OSX_v10_6
	Palshop_CMS
	CryptoCurrency_PrivateKey
	AIX_ssha1
	MSSQL_2005
	MSSQL_2008
	Sun_MD5_Crypt
	SHA_224
	Haval_224
	SHA3_224
	Skein_256_224
	Skein_512_224
	Blowfish_OpenBSD
	Woltlab_Burning_Board_4_x
	Bcrypt
	Android_PIN
	Oracle_11g_12c
	Bcrypt_SHA_256
	VBulletin_v3_8_5
	Snefru_256
	SHA_256
	RIPEMD_256
	Haval_256
	GOST_R_34_11_94
	GOST_CryptoPro_S_Box
	SHA3_256
	Skein_256
	Skein_512_256
	Ventrilo
	Sha256_pass_salt
	Sha256_salt_pass
	Sha256_unicode_pass_salt
	Sha256_salt_unicode_pass
	HMAC_SHA256_key_pass
	HMAC_SHA256_key_salt
	SAM_LM_Hash_NT_Hash
	MD5_Chap
	ISCSI_CHAP_Authentication
	EPiServer_6_x_v4
	AIX_ssha256
	RIPEMD_320
	MSSQL_2000
	SHA_384
	SHA3_384
	Skein_512_384
	Skein_1024_384
	SSHA_512_Base64
	LDAP_SSHA_512
	AIX_ssha512
	SHA_512
	Whirlpool
	Salsa10
	Salsa20
	SHA3_512
	Skein_512
	Skein_1024_512
	Sha512_pass_salt
	Sha512_salt_pass
	Sha512_unicode_pass_salt
	Sha512_salt_unicode_pass
	HMAC_SHA512_key_pass
	HMAC_SHA512_key_salt
	OSX_v10_7
	MSSQL_2012
	MSSQL_2014
	OSX_v10_8
	OSX_v10_9
	Skein_1024
	GRUB_2
	Django_SHA_1
	Citrix_Netscaler
	Drupal_v7_x
	SHA_256_Crypt
	Sybase_ASE
	SHA_512_Crypt
	Minecraft_AuthMe_Reloaded
	Django_SHA_256
	Django_SHA_384
	Clavister_Secure_Gateway
	Cisco_VPN_Client_PCF_File
	Microsoft_MSTSC_RDP_File
	NetNTLMv1_VANILLA_NetNTLMv1_ESS
	NetNTLMv2
	Kerberos_5_AS_REQ_Pre_Auth
	SCRAM_Hash
	Redmine_Project_Management_Web_App
	SAP_CODVN_B_BCODE
	SAP_CODVN_F_G_PASSCODE
	Juniper_Netscreen_SSG_ScreenOS
	EPi
	SMF_v1_1
	Woltlab_Burning_Board_3_x
	IPMI2_RAKP_HMAC_SHA1
	Lastpass
	Cisco_ASA_MD5
	VNC
	DNSSEC_NSEC3
	RACF
	NTHash_FreeBSD_Variant
	SHA_1_Crypt
	HMailServer
	MediaWiki
	Minecraft_xAuth
	PBKDF2_SHA1_Generic
	PBKDF2_SHA256_Generic
	PBKDF2_SHA512_Generic
	PBKDF2_Cryptacular
	PBKDF2_Dwayne_Litzenberger
	Fairly_Secure_Hashed_Password
	PHPS
	OnePassword_Agile_Keychain
	OnePassword_Cloud_Keychain
	IKE_PSK_MD5
	IKE_PSK_SHA1
	PeopleSoft
	Django_DES_Crypt_Wrapper
	Django_PBKDF2_HMAC_SHA256
	Django_PBKDF2_HMAC_SHA1
	Django_bcrypt
	Django_MD5
	PBKDF2_Atlassian
	PostgreSQL_MD5
	Lotus_Notes_Domino_8
	Scrypt
	Cisco_Type_8
	Cisco_Type_9
	Microsoft_Office_2007
	Microsoft_Office_2010
	Microsoft_Office_2013
	Android_FDE_4_3
	Microsoft_Office_2003_MD5_RC4
	Microsoft_Office_2003_MD5_RC4_collider_mode_1
	Microsoft_Office_2003_MD5_RC4_collider_mode_2
	Microsoft_Office_2003_SHA1_RC4
	Microsoft_Office_2003_SHA1_RC4_collider_mode_1
	Microsoft_Office_2003_SHA1_RC4_collider_mode_2
	RAdmin_v2_x
	SAP_CODVN_H_PWDSALTEDHASH_iSSHA_1
	CRAM_MD5
	SipHash
	Cisco_Type_7
	BigCrypt
	Cisco_Type_4
	Django_bcrypt_SHA256
	PostgreSQL_Challenge_Response_Authentication_MD5
	Siemens_S7
	Microsoft_Outlook_PST
	PBKDF2_HMAC_SHA256_PHP
	// Dahua
	MySQL_Challenge_Response_Authentication_SHA1
	PDF_1_4_1_6_Acrobat_5_8
	GitHub_Personal_Access_Token
	GitHub_OAuth_Access_Token
	GitHub_App_User_To_Server_Token
	GitHub_App_Server_To_Server_Token
	GitHub_App_Refresh_Token
	Slack_Bot_Token
	Slack_User_Token
	Slack_Refresh_Token
	Slack_Config_Access_Token
	Stripe_Test_Mode_Secret_Key
	Stripe_Live_Mode_Secret_Key
	Stripe_Test_Mode_Publishable_Key
	Stripe_Live_Mode_Publishable_Key
	Stripe_Test_Mode_Restricted_Key
	Stripe_Live_Mode_Restricted_Key
)

type HashInfo

type HashInfo struct {
	ID       HashID
	Hashcat  string
	John     string
	Extended bool
}

func Identify

func Identify(hash []byte, pr []Prototype) ([]HashInfo, error)
Example
package main

import (
	"fmt"

	hashid "github.com/Beykir/hash-identifier"
)

func main() {
	ids, _ := hashid.Identify([]byte("C061"), hashid.GetDefaultPrototypes())
	for _, hi := range ids {
		fmt.Println(hi.Name())
	}
}
Output:

CRC-16
CRC-16-CCITT
FCS-16
Cisco Type 7

func (HashInfo) Name

func (hi HashInfo) Name() string

type Prototype

type Prototype struct {
	Re    *regexp.Regexp
	Modes []HashInfo
}

func GetDefaultPrototypes

func GetDefaultPrototypes() []Prototype

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL