]> git.sesse.net Git - freerainbowtables/blobdiff - Client Applications/rcracki_mt/rcrackiThread.h
rcracki_mt updated to rti2
[freerainbowtables] / Client Applications / rcracki_mt / rcrackiThread.h
diff --git a/Client Applications/rcracki_mt/rcrackiThread.h b/Client Applications/rcracki_mt/rcrackiThread.h
new file mode 100644 (file)
index 0000000..74b96dc
--- /dev/null
@@ -0,0 +1,60 @@
+#pragma once
+#include "ChainWalkContext.h"
+#include "Public.h"
+#include "HashSet.h"
+//#include <process.h>
+#include <pthread.h>
+
+class rcrackiThread
+{
+private:
+       unsigned char* t_TargetHash;
+       int t_nPos;
+       int t_nRainbowChainLen;
+       CChainWalkContext t_cwc;
+       vector<uint64> t_vStartPosIndexE;
+       int t_ID;
+       int t_count;
+       uint64* t_pStartPosIndexE;
+       int t_nChainWalkStep;
+       bool falseAlarmChecker;
+       bool falseAlarmCheckerO;
+       vector<RainbowChain *> t_pChainsFound;
+       vector<RainbowChainO *> t_pChainsFoundO;
+       vector<int> t_nGuessedPoss;
+       unsigned char* t_pHash;
+       bool foundHash;
+       int t_nChainWalkStepDueToFalseAlarm;
+       int t_nFalseAlarm;
+       string t_Hash;
+       string t_Plain;
+       string t_Binary;
+
+public:
+       rcrackiThread(unsigned char* TargetHash, int thread_id, int nRainbowChainLen, int thread_count, uint64* pStartPosIndexE);
+       rcrackiThread(unsigned char* pHash);
+       rcrackiThread(unsigned char* pHash, bool oldFormat);
+       rcrackiThread(void);
+       ~rcrackiThread(void);
+
+       //void SetWork(unsigned char* TargetHash, int nPos, int nRainbowChainLen);
+       //static unsigned __stdcall rcrackiThread::rcrackiThreadStaticEntryPoint(void * pThis);
+       static void * rcrackiThreadStaticEntryPointPthread(void * pThis);
+       int GetIndexCount();
+       int GetChainWalkStep();
+       uint64 GetIndex(int nPos);
+       bool FoundHash();
+       void AddAlarmCheck(RainbowChain* pChain, int nGuessedPos);
+       void AddAlarmCheckO(RainbowChainO* pChain, int nGuessedPos);
+       int GetChainWalkStepDueToFalseAlarm();
+       int GetnFalseAlarm();
+       string GetHash();
+       string GetPlain();
+       string GetBinary();
+
+private:
+       void rcrackiThreadEntryPoint();
+       void PreCalculate();
+       void CheckAlarm();
+       void CheckAlarmO();
+};