A52HackTool 1.3.0
Turnkey & easy to use tool for cracking the GSM A5/2 cipher
matrices_generation.h
Go to the documentation of this file.
00001 /*============================================================================*
00002  *                                                                            *
00003  *                             matrices_generation.h                          *
00004  *                                                                            *
00005  *============================================================================*
00006  *                                                                            *
00007  * Part of A52HackTool                                                        *
00008  *                                                                            *
00009  * Copyright © 2011   -   Nicolas Paglieri   &   Olivier Benjamin             *
00010  * All rights reserved.                                                       *
00011  *                                                                            *
00012  * Contact Information:  nicolas.paglieri [at] ensimag.fr                     *
00013  *                       olivier.benjamin [at] ensimag.fr                     *
00014  *                                                                            *
00015  *============================================================================*
00016  *                                                                            *
00017  * This file may be used under the terms of the GNU General Public License    *
00018  * version 3 as published by the Free Software Foundation.                    *
00019  * See <http://www.gnu.org/licenses/> or GPL.txt included in the packaging of *
00020  * this file.                                                                 *
00021  *                                                                            *
00022  * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE    *
00023  * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  *
00024  *                                                                            *
00025  *============================================================================*/
00026 
00037 #ifndef _MATRICES_GENERATION_H_
00038 #define _MATRICES_GENERATION_H_
00039 
00040 #include "const_A52.h"
00041 #include "const_code.h"
00042 
00043 
00044 // Decryption related constants
00045 
00047 #define NEEDED_ENCRYPTED_MESSAGES 3
00048 
00050 #define EQN_SYSTEM_SIZE (NEEDED_ENCRYPTED_MESSAGES*CODEWORD_LENGTH)
00051 
00053 #define BUFFER_SIZE     (NEEDED_ENCRYPTED_MESSAGES*SYNDROME_LENGTH*REGS_TOTAL_VARS/8)
00054 
00055 
00056 
00057 
00065 void getR4fromIndex(const int index, byte R4[R4_BITS]);
00066 
00067 
00068 
00069 
00077 int exportAllMatrices(const char* filename);
00078 
00079 
00080 
00081 
00088 int matrices_generation_test();
00089 
00090 
00091 
00092 #endif