2 RainbowCrack - a general propose implementation of Philippe Oechslin's faster time-memory trade-off technique.
4 Copyright (C) Zhu Shuanglei <shuanglei@hotmail.com>
18 #define CHARSET_TXT "/home/frt/projects/distrrtgen/download/charset.txt"
20 #define uint64 unsigned __int64
22 #define uint64 unsigned long long
34 unsigned short nCheckPoint;
40 unsigned int nChainCount;
42 struct FoundRainbowChain
52 unsigned int prefixstart, numchains;
62 #define MAX_PLAIN_LEN 256
63 #define MIN_HASH_LEN 8
64 #define MAX_HASH_LEN 256
65 #define MAX_SALT_LEN 256
67 unsigned int GetFileLen(FILE* file);
68 string TrimString(string s);
69 bool ReadLinesFromFile(string sPathName, vector<string>& vLine);
70 bool SeperateString(string s, string sSeperator, vector<string>& vPart);
71 string uint64tostr(uint64 n);
72 string uint64tohexstr(uint64 n);
73 string HexToStr(const unsigned char* pData, int nLen);
74 unsigned int GetAvailPhysMemorySize();
75 void ParseHash(string sHash, unsigned char* pHash, int& nHashLen);
76 bool GetHybridCharsets(string sCharset, vector<tCharset>& vCharset);