An open source USB stick computer for security applications.
The USB Armory is full-blown computer (800MHz ARM® processor, 512MB RAM) in a tiny form factor (65mm x 19mm x 6mm USB stick) designed from the ground up with information security applications in mind. Not only does the USB Armory have native support for many Linux distributions, it also has a completely open hardware design and a breakout prototyping header, making it a great platform on which to build other hardware.
Features and Specifications
Hardware
- Freescale i.MX53 ARM® Cortex™-A8 800MHz
- 512MB DDR3 RAM
- USB host powered (<500mA)
- Dimensions: 65mm x 19mm x 6mm
- user-controllable LED
- 7-pin breakout header [pinout of GPIOs, UART, and power]
- microSD card slot [compatibility chart]
- 100% open source hardware [source files and wiki]
Software
The USB Armory hardware is supported by standard software environments and requires very little customization effort. In fact, vanilla Linux kernels and standard distributions run seamlessly on the tiny USB Armory board:
- boots off of microSD card [or via USB serial downloader]
- native support for Android, Debian, Ubuntu, FreeBSD [it’s easy to create boot images]
- USB device emulation [CDC Ethernet, mass storage, HID, etc.]
Connectivity
- High Speed USB 2.0 On-The-Go (OTG) with full device emulation
- full TCP/IP connection to/from USB Armory via USB CDC Ethernet emulation
- flash drive functionality via USB mass storage device emulation
- serial communication over USB or physical UART
Security
The ability to emulate arbitrary USB devices in combination with the i.MX53 SoC speed and fully customizable operating environment makes the USB Armory an ideal platform for all kinds of personal security applications. Not only is the USB Armory an excellent tool for testing the security of other devices, but it also has great security features itself:
- ARM® TrustZone®
- secure boot + storage + RAM
- user-fused keys for running only trusted firmware
- optional secure mode detection LED indicator
- minimal design limits scope of supply chain attacks
- great auditability due to open hardware and software
The support for ARM® TrustZone®, in contrast to conventional trusted platform modules (TPMs), allows developers to engineer custom TPMs by enforcing domain separation between the “secure” and “normal” worlds that propagates throughout all SoC components, as opposed to limited only to the CPU core.
Read more: USB Armory: Open Source USB Stick Computer