Book Image

Android Application Security Essentials

By : Pragati Rai
Book Image

Android Application Security Essentials

By: Pragati Rai

Overview of this book

In today's techno-savvy world, more and more parts of our lives are going digital, and all this information is accessible anytime and anywhere using mobile devices. It is of the utmost importance that you understand and implement security in your apps that will reduce the likelihood of hazards that will wreck your users' experience. "Android Application Security Essentials" takes a deep look into Android security from kernel to the application level, with practical hands-on examples, illustrations, and everyday use cases. This book will show you how to overcome the challenge of getting the security of your applications right. "Android Application Security Essentials" will show you how to secure your Android applications and data. It will equip you with tricks and tips that will come in handy as you develop your applications.We will start by learning the overall security architecture of the Android stack. Securing components with permissions, defining security in a manifest file, cryptographic algorithms and protocols on the Android stack, secure storage, security focused testing, and protecting enterprise data on your device is then also discussed in detail. You will also learn how to be security-aware when integrating newer technologies like NFC and mobile payments into your Android applications. At the end of this book, you will understand Android security at the system level all the way to the nitty-gritty details of application security for securing your Android applications.
Table of Contents (12 chapters)
11
Index

Random number generation


Generating a random number is one of the most important tasks in cryptography. A random number acts as a seed for other crypto functions, such as encryption and generating message authentication codes. It is hard to simulate the generation of true random numbers as it comes from unpredictable acts of nature. Computer systems generate pseudo random numbers which means that they are not truly random but appear random.

There are two approaches to compute generated random numbers: Pseudo Random Number Generators (PRNG) and True Random Number Generators (TRNG). PRNGs are generated by an algorithm based on some mathematical formula. TRNGs are based on system characteristics, such as CPU (Central Processing Unit) cycles, clock, noise, and keystrokes. Dr. Mads Haahr, professor at Trinity College runs www.random.org and this is a very interesting stop for anyone who is interested in randomness. Check it out!

Use cases of random numbers include gaming applications such as those...