]> git.sesse.net Git - freerainbowtables/blob - Client Applications/rcracki_mt/HashAlgorithm.h
a6b77b53fe72b230666d042241ba0e6fe9dcc623
[freerainbowtables] / Client Applications / rcracki_mt / HashAlgorithm.h
1 /*\r
2  * rcracki_mt is a multithreaded implementation and fork of the original \r
3  * RainbowCrack\r
4  *\r
5  * Copyright (C) Zhu Shuanglei <shuanglei@hotmail.com>\r
6  * Copyright Martin Westergaard Jørgensen <martinwj2005@gmail.com>\r
7  * Copyright 2009, 2010 Daniël Niggebrugge <niggebrugge@fox-it.com>\r
8  * Copyright 2009, 2010 James Nobis <frt@quelrod.net>\r
9  *\r
10  * This file is part of rcracki_mt.\r
11  *\r
12  * rcracki_mt is free software: you can redistribute it and/or modify\r
13  * it under the terms of the GNU General Public License as published by\r
14  * the Free Software Foundation, either version 2 of the License, or\r
15  * (at your option) any later version.\r
16  *\r
17  * rcracki_mt is distributed in the hope that it will be useful,\r
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
20  * GNU General Public License for more details.\r
21  *\r
22  * You should have received a copy of the GNU General Public License\r
23  * along with rcracki_mt.  If not, see <http://www.gnu.org/licenses/>.\r
24  */\r
25 \r
26 #ifndef _HASHALGORITHM_H\r
27 #define _HASHALGORITHM_H\r
28 \r
29 void HashLM(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
30 void HashNTLM(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
31 //void HashMD2(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
32 void HashMD4(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
33 void HashMD5(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
34 void HashDoubleMD5(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
35 void HashSHA1(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
36 //void HashRIPEMD160(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
37 void HashMSCACHE(unsigned char *pPlain, int nPlainLen, unsigned char* pHash);\r
38 \r
39 //****************************************************************************\r
40 // MySQL Password Hashing\r
41 //****************************************************************************\r
42 \r
43 void HashMySQL323(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
44 void HashMySQLSHA1(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
45 \r
46 //****************************************************************************\r
47 // Cisco PIX Password Hashing\r
48 //****************************************************************************\r
49 \r
50 void HashPIX(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
51 \r
52 //****************************************************************************\r
53 // (HALF) LM CHALL hashing\r
54 void HashLMCHALL(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
55 void HashHALFLMCHALL(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
56 \r
57 // From mao\r
58 void HashNTLMCHALL(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
59 void HashORACLE(unsigned char* pPlain, int nPlainLen, unsigned char* pHash);\r
60 \r
61 #if !defined(_WIN32) || defined(__GNUC__)\r
62 char *strupr(char *s1);\r
63 #endif\r
64 #endif\r