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;
 
一.

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的。

 

三.

用到的
extern void *malloc(unsigned int num_bytes);
void *memset(void *s, int ch, size_t n);

 

posted @ 2018-07-19 18:04  Rayint  阅读(566)  评论(0编辑  收藏  举报