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 (18 chapters)
Android Application Security Essentials
Credits
Foreword
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Summary


In this chapter, we discussed the tools that application developers can use to protect the privacy of their application and user data. We discussed about random number generation for seeding, and for use as initialization vectors for crypto algorithms. Hashing techniques, such as SHA-1 and MD5, were discussed, which developers can use to store passwords. They are also ideal to compress large data into a finite and defined length. Public key cryptography for the exchange of secret keys and symmetric key algorithms, such as AES to encrypt large amounts of data, were also discussed. We also discussed stream and block ciphers and block cipher modes. Most of the algorithms have test vectors published and available online. Developers can test their implementation against these test vectors. In the following chapters we will use these tools and techniques to protect data. Now let's move on to the next chapter to learn how to decide the best storage option for different types of data.