Increase benchmark accuracy by using a result based on the last meassured speed after...
[hashcat.git] / include / types.h
index 6d65913..3487106 100644 (file)
@@ -64,6 +64,10 @@ typedef struct
   uint eapol[64];
   int  eapol_size;
   int  keyver;
+  u8   orig_mac1[6];
+  u8   orig_mac2[6];
+  u8   orig_nonce1[32];
+  u8   orig_nonce2[32];
 
 } wpa_t;
 
@@ -136,6 +140,29 @@ typedef struct
 
 } krb5tgs_t;
 
+typedef struct
+{
+  u32 version;
+  u32 algorithm;
+
+  /* key-file handling */
+  u32 keyfile_len;
+  u32 keyfile[8];
+
+  u32 final_random_seed[8];
+  u32 transf_random_seed[8];
+  u32 enc_iv[4];
+  u32 contents_hash[8];
+
+  /* specific to version 1 */
+  u32 contents_len;
+  u32 contents[75000];
+
+  /* specific to version 2 */
+  u32 expected_bytes[8];
+
+} keepass_t;
+
 typedef struct
 {
   uint salt_buf[16];
@@ -587,6 +614,21 @@ typedef struct
 
 } seven_zip_t;
 
+typedef struct
+{
+  u32 KEK[5];
+
+  u32 lsb[4];
+  u32 cipher[4];
+
+} axcrypt_tmp_t;
+
+typedef struct
+{
+  u32 tmp_digest[8];
+
+} keepass_tmp_t;
+
 typedef struct
 {
   u32  random[2];
@@ -732,7 +774,7 @@ typedef struct
 typedef struct
 {
   u32  version_bin;
-  char cwd[1024];
+  char cwd[256];
   u32  pid;
 
   u32  dictpos;
@@ -913,9 +955,18 @@ struct __hc_device_param
   uint    exec_pos;
   double  exec_ms[EXEC_CACHE];
 
+  // this is "average" speed, we'll use this for benchmark and final status screen
+
+  u64     speed_cnt_total;
+  double  speed_ms_total;
+
+  // this is "current" speed
+
   uint    speed_pos;
   u64     speed_cnt[SPEED_CACHE];
-  float   speed_ms[SPEED_CACHE];
+  double  speed_ms[SPEED_CACHE];
+
+  // speed_rec is what additionally limits the "current" speed in time, not array elements
 
   hc_timer_t speed_rec[SPEED_CACHE];
 
@@ -941,7 +992,6 @@ struct __hc_device_param
   cl_kernel  kernel_mp_l;
   cl_kernel  kernel_mp_r;
   cl_kernel  kernel_amp;
-  cl_kernel  kernel_tb;
   cl_kernel  kernel_tm;
   cl_kernel  kernel_weak;
 
@@ -991,7 +1041,6 @@ struct __hc_device_param
   void   *kernel_params_mp_r[PARAMCNT];
   void   *kernel_params_mp_l[PARAMCNT];
   void   *kernel_params_amp[PARAMCNT];
-  void   *kernel_params_tb[PARAMCNT];
   void   *kernel_params_tm[PARAMCNT];
 
   u32     kernel_params_buf32[PARAMCNT];
@@ -1251,7 +1300,7 @@ typedef struct
   hc_timer_t timer_running;         // timer on current dict
   hc_timer_t timer_paused;          // timer on current dict
 
-  float   ms_paused;                // timer on current dict
+  double  ms_paused;                // timer on current dict
 
   /**
     * hash_info and username