![]() | Only 14 pages are availabe for public view |
Abstract GSM Cellular network has been under attack for long period. Now two types of attacks are devised to attack it: active attack utilizing the fact that it uses one-way authentication, so a rogue GSM network can deceive a mobile device, convincing the device to connect to the fake network; and passive attack utilizing the fact that a weak encryption algorithm called A5/1 is used to encrypt calls, allowing an eavesdropper with an air tapping device to do cryptanalysis cipher data reaching to the plain data. Standards were developed to close these data breaches. Universal SIM (USIM) integrate Authentication and Key Agreement module (AKA) providing two-way authentication. Also stronger encryption algorithm (A5/3) and even stronger encryption (A5/4) were standardized. Another way for securely communicating is to tunnel a secure connection inside a GSM CSD (Data) connection or an Internet connection. This is referred to as a mobile crypto phone, and could be implemented through hardware or software. A core challenge in implementing it is the limitations in mobile platforms. For a software implementation, limited processor speed and limited RAM Size, while requiring a minimum processing delay are core limitations. Ciphering is a core part of data confidentiality, it is an important step to prevent data breaching in different modern mobile platforms. In this work, AES was implemented efficiently in an Android application written in Java. The Android application was tested for performance and compared to other work. AES was also implemented in a Windows Phone application written in C#, and a Windows console application written in C++. In this work, AES implementation using 32-bit round lookup table vii was much faster than that using 8-bit separate transformation. AES Encryption can be done efficiently on various platforms. Results were compared to another software study implementing AES on Android phones. In this Thesis, Three Block Cipher modes of operation were implemented in the C++ Console application. The first is Electronic Code Book mode (ECB), this is the simplest mode and is only recommended to encrypts small packets of data. The two other modes implemented in this work , Cipher Block Chaining mode (CBC) and Counter mode (CTR) mode. The main difference between the two is that the later allows precomputation; this pre-computed value could be stored for later use , thus diminishing the operations required in the real-time of encryption to only an Exclusive-Or operation, allowing for a faster operation. Key words: Encryption, Android, Security, GSM, Advanced Encryption Standard, A5/1, Software implementation, Windows Phone, Software Defined Radio, Cryptographic Algorithms, AES, Encryption modes, Android Security, Windows Phone Security, Rijndael, Java, C++, C#. |