hashcat源码分析1
typedef struct hash
{
void *digest;
salt_t *salt;
void *esalt;
void *hook_salt; // additional salt info only used by the hook (host)
int cracked;
hashinfo_t *hash_info;
char *pw_buf;
int pw_len;
} hash_t;
{
void *digest;
salt_t *salt;
void *esalt;
void *hook_salt; // additional salt info only used by the hook (host)
int cracked;
hashinfo_t *hash_info;
char *pw_buf;
int pw_len;
} hash_t;
一.
1. 信号 = 函数,判断是否执行成功
2. hashes.buf [ x ] .info = hash_info
hash_info = XXXXX
二.不太懂的地方
1.
文件:hashes.c
函数:hashes_init_stage1中
行数:454~478
描述:
依照我的理解,在ARG模式之下,应该就是输入就是hash的,
为什么
if (hashconfig->opts_type & OPTS_TYPE_BINARY_HASHFILE)
{
hashlist_mode = HL_MODE_ARG;
char *hashfile = hash_or_file;
hashes->hashfile = hashfile;
}
只有这样才有,hashes->hashfile = hashfile;
是不是,如果是ARG模式,那么一定OPTS_TYPE_BINARY_HASHFILE的。
三.