BeagleBone for Secret Agents Table of Contents BeagleBone for Secret Agents Credits Foreword About the Author About the Reviewers www.PacktPub.com Support files, eBooks, discount offers, and more Why subscribe? Free access for Packt account holders Preface What this book covers What you need for this book Who this book is for Conventions Reader feedback Customer support Downloading the example code Errata Piracy Questions 1. Creating Your BeagleBone Black Development Environment Introducing the BBB Appreciating BBB’s commitment to open source hardware Unboxing the BBB and providing power Creating an embedded development environment with Emacs Understanding the complications of embedded development Installing Emacs 24 Installing the prelude Learning how to learn about Emacs Streamlining the SSH connections Discovering the IP address of your networked BBB Editing the SSH configuration file Configuring password-less login Running an SSH agent to control access to your SSH keys Connecting to BBB with TRAMP Running commands from Emacs Using Emacs dired to copy files to and from BBB Finding additional background information Finding additional cryptography resources Finding additional electronics resources Finding additional Debian resources Summary 2. Circumventing Censorship with a Tor Bridge Learning about Tor Appreciating the various users of Tor Understanding Tor relays Understanding Tor bridges Using obfuscated proxies and pluggable transports Realizing the limitations of Tor The impact and benefits of running a Tor bridge Installing Tor on BBB Installing Tor from the development repository Configuring Tor for BBB Adding contact details to the torrc file Tuning the bandwidth usage of your bridge Understanding Tor exit policies Setting bridge-specific settings Starting your new Tor bridge Enabling port forwarding Adding physical interfaces to the bridge Gathering the front panel components Using an LCD to display status information Controlling the bandwidth with a potentiometer Designing the BeagleBridge circuit Wiring the hardware with a proto cape Developing the software using Python libraries Controlling the hardware with pyBBIO Determining your bandwidth with speedtest-cli Controlling the bridge with the Stem library Connecting to your obfuscated bridge Continuing with Tor-related projects Summary 3. Adding Hardware Security with the CryptoCape Exploring the differences between hardware and software cryptography Understanding the advantages of hardware-based cryptography Offloading computation to a separate processor Protecting keys through physical isolation Understanding the disadvantages of hardware crypto devices Lacking cryptographic flexibility Exposing hardware-specific attack vectors Obfuscating implementation details Summarizing the hardware versus software debate Touring the CryptoCape Discovering the I2C protocol Understanding the benefit of cape EEPROMs Creating a cape EEPROM Creating the cape DTS file Creating an eLinux wiki site Keeping time with a real-time clock Trusting computing devices with a Trusted Platform Module Providing hardware authentication with ATSHA204 and ATECC108 Encrypting EEPROM data with the ATAES132 Combining the BBB with an ATmega328p Building a two-factor biometric system The fingerprint sensor overview Appreciating the limitations of fingerprint biometrics Preparing the CryptoCape Preparing the connections Connecting the Scanner to the CryptoCape Preparing the fingerprint sensor Uploading the biometric detection sketch Security analysis of the biometric system Summary 4. Protecting GPG Keys with a Trusted Platform Module History of PGP Reflecting on the Crypto Wars Developing a threat model Outlining the key protection system Identifying the assets we need to protect Threat identification Identifying the risks Mitigating the identified risks Summarizing our threat model Generating GPG keys Generating entropy Creating a good gpg.conf file Generating the key Postgeneration maintenance Using GPG Protecting your GPG key with a TPM Introducing trusted computing Encrypting data to a PCR state Adding the keypad Taking ownership of the TPM Extending a PCR Unlocking your key at startup Iterating on the threat model Summary 5. Chatting Off-the-Record Communicating Off-the-Record – a background Introducing Off-the-Record communication On the usability of OTR Using the BeagleBone to protect your online chats Installing BitlBee on the BeagleBone Creating a BitlBee account Adding a Google Talk account to BitlBee Adding a Jabber account to BitlBee Adding OTR to your BitlBee server Managing contacts in BitlBee Chatting with BitlBee Chatting with OTR in BitlBee Understanding the Socialist Millionaire Problem Marshalling your IRC connections with a Bouncer The modern uses of IRC Downloading and installing the IRC bouncer ZNC Configure ZNC to manage your IRC connections Adding OTR to your ZNC server Adding your networks to ZNC Connecting to ZNC from your IRC client Establishing OTR connections through ZNC Extending the project Summary A. Selected Bibliography Chapter 1 Chapter 2 Chapter 3 Chapter 4 Chapter 5 Index
Description: