hashcat 2.哈希的装载

1.第一步装载

具体的hash_init_stage1放在2.1节中讲述

  /**
   * load hashes, stage 1
   */

  const int rc_hashes_init_stage1 = hashes_init_stage1 (hashcat_ctx);

  if (rc_hashes_init_stage1 == -1) return -1;

  if ((user_options->keyspace == false) && (user_options->stdout_flag == false))
  {
    if (hashes->hashes_cnt == 0)
    {
      event_log_error (hashcat_ctx, "No hashes loaded.");

      return -1;
    }
  }

2.第二步装载

具体的hash_init_stage2放在2.2节中叙述

    /**
   * load hashes, stage 2, remove duplicates, build base structure
   */

  hashes->hashes_cnt_orig = hashes->hashes_cnt;

  const int rc_hashes_init_stage2 = hashes_init_stage2 (hashcat_ctx);

  if (rc_hashes_init_stage2 == -1) return -1;

3. 第三步装载至第四步优化

具体放在2.3节描述。中间某些环节在本例中没有运行或者只是简要运用,因此也放在一起描述。

  potfile_remove_parse (hashcat_ctx);  

  /**
   * load hashes, stage 3, update cracked results from potfile
   */

  const int rc_hashes_init_stage3 = hashes_init_stage3 (hashcat_ctx);

  if (rc_hashes_init_stage3 == -1) return -1;

 

你可能感兴趣的:(密码学)