Book Image

Learning Python for Forensics

By : Chapin Bryce
Book Image

Learning Python for Forensics

By: Chapin Bryce

Overview of this book

This book will illustrate how and why you should learn Python to strengthen your analysis skills and efficiency as you creatively solve real-world problems through instruction-based tutorials. The tutorials use an interactive design, giving you experience of the development process so you gain a better understanding of what it means to be a forensic developer. Each chapter walks you through a forensic artifact and one or more methods to analyze the evidence. It also provides reasons why one method may be advantageous over another. We cover common digital forensics and incident response scenarios, with scripts that can be used to tackle case work in the field. Using built-in and community-sourced libraries, you will improve your problem solving skills with the addition of the Python scripting language. In addition, we provide resources for further exploration of each script so you can understand what further purposes Python can serve. With this knowledge, you can rapidly develop and deploy solutions to identify critical information and fine-tune your skill set as an examiner.
Table of Contents (24 chapters)
Learning Python for Forensics
Credits
About the Authors
Acknowledgments
About the Reviewer
www.PacktPub.com
Preface
Index

Additional challenges


Using the first example, test the code against a mounted forensic image or two. What happens when the chunk_size is set to a large value? What happens to performance and accuracy as that number is modified? Explore the process and see what modifications could be made to help a new user select helpful values. How would you automate this suggestion process? Perform these same tests with selecting a prime for calculation. In addition, we invite you to explore the Python array data type. Though we have not introduced it in this book, it is a C-like structure that is efficient and can store data of a fixed type in memory.

Another efficiency improvement may be to leverage the Cython library and compile the script into a pyd file to allow it to run faster. Since the hashing process occurs in a compiled library, we may not see a great improvement in speed, though this library can be useful in future code. We could also explore the pypy interpreter for speed improvements.

We could...