2 RainbowCrack - a general propose implementation of Philippe Oechslin's faster time-memory trade-off technique.
4 Copyright (C) Zhu Shuanglei <shuanglei@hotmail.com>
12 #include "ChainWalkContext.h"
13 #include "MemoryPool.h"
14 #include "ChainWalkSet.h"
20 virtual ~CCrackEngine();
26 float m_fTotalDiskAccessTime;
27 float m_fTotalCryptanalysisTime;
28 int m_nTotalChainWalkStep;
29 int m_nTotalFalseAlarm;
30 int m_nTotalChainWalkStepDueToFalseAlarm;
33 void ResetStatistics();
34 RainbowChain *BinarySearch(RainbowChain *pChain, int nChainCountRead, uint64 nIndex, IndexChain *pIndex, int nIndexSize, int nIndexStart);
35 void SearchTableChunk(RainbowChain* pChain, int nRainbowChainLen, int nRainbowChainCount, CHashSet& hs, IndexChain *pIndex, int nIndexSize, int nChainStart);
38 void SearchRainbowTable(string sPathName, CHashSet& hs);
39 void Run(vector<string> vPathName, CHashSet& hs);
40 float GetStatTotalDiskAccessTime();
41 float GetStatTotalCryptanalysisTime();
42 int GetStatTotalChainWalkStep();
43 int GetStatTotalFalseAlarm();
44 int GetStatTotalChainWalkStepDueToFalseAlarm();