
USB armory: an open-source hardware design, flash-drive sized computer - DyslexicAtheist
https://inversepath.com/usbarmory.html
======
tastroder
Better resources:

\- Landing page
[https://inversepath.com/usbarmory.html](https://inversepath.com/usbarmory.html)

\- Wiki [https://github.com/f-secure-
foundry/usbarmory/wiki](https://github.com/f-secure-foundry/usbarmory/wiki)

\- MkII introduction on there [https://github.com/f-secure-
foundry/usbarmory/wiki/Mk-II-Int...](https://github.com/f-secure-
foundry/usbarmory/wiki/Mk-II-Introduction)

~~~
thrownaway954
i will NEVER understand why so called "news articles" don't put a link to the
product that they are reviewing. Thank you for the links!

~~~
nabla9
i PERFECTLY understand why so called "news articles" don't put a link to the
product that they are reviewing.

They don't want users to click links and go away.

~~~
thrownaway954
target="_blank"

------
83
Cost is around $150 for those who don't want to click around to find it.

Hardware specs:

SoC: NXP i.MX6ULZ ARM® Cortex™-A7 900 MHz

RAM: 512 MB DDR3

Storage: internal 16 GB eMMC + external microSD

Bluetooth module: u-blox ANNA-B112 BLE

USB-C ports: DRP (Dual Role Power) receptacle + UFP (Upstream Facing Port)
plug, USB 2.0 only (no video support)

LEDs: two

Slide switch: for boot mode selection between eMMC and microSD

External security elements: Microchip ATECC608A + NXP A71CH

Physical size: 66 mm x 19 mm x 8 mm (without enclosure, including USB-C
connector)

~~~
KMnO4
Interesting. That's a $2 SoC, part of NXP's "Ultra Low Cost" line. The whole
BOM cost is probably around $10-15, so hopefully F-Secure can sell enough of
these to bring consumer cost down.

I can see a lot of use for these guys, but it's hard to justify when as Pi
Zero outspecs it for 5% of the cost. I'd pick it up just to hack around if it
was closer to the $50 range.

~~~
RL_Quine
I wonder if it's one of the chips that has a bootloader vulnerability. All of
the trustzone stuff was completely broken on their original, and nobody ever
implemented working code for it anyway.

The BOM cost is probably pretty high because of the BGA package, the original
was like a 8 layer board or something absurd.

Those processors, as you pointed out, are comically slow even compared with
the raspberry pi.

~~~
lcarsip
We took part of in the original HAB disclosure process for the NXP i.MX series
and we carry on testing these parts.

Please see [https://github.com/f-secure-
foundry/advisories](https://github.com/f-secure-foundry/advisories)

Of course all P/Ns used for the Mk II have a patched boot ROM, please see
[https://github.com/f-secure-foundry/usbarmory/wiki/Secure-
bo...](https://github.com/f-secure-foundry/usbarmory/wiki/Secure-boot-\(Mk-
II\)#security-information).

The original Mk I was 6 layers in the end, the Mk II is also 6 layers.

And yes the BOM cost is considerable due to its specifications.

The i.MX SoC core we use is comparable to a 1st gen Raspberry PI in speed, but
of course slower than newer multi-core ones.

However security and form factor, rather than pure speed, is our goal. For the
intent and purposes of the board performance is more than adequate.

Some benchmarks here: [https://github.com/f-secure-
foundry/usbarmory/wiki/Benchmark...](https://github.com/f-secure-
foundry/usbarmory/wiki/Benchmarks-\(Mk-II\))

~~~
RL_Quine
I have deep respect for you disclosing issues in a processor you're using in
your own product.

------
apodysophilia
The Bash Bunny from Hak5 seems similar for $50 less [1]. It is USB A instead
of Type C with only 8 GB of storage but does feature a quad core A7 [2].

[1] [https://shop.hak5.org/products/bash-
bunny](https://shop.hak5.org/products/bash-bunny)

[2] [https://forums.hak5.org/topic/40208-bash-bunny-
specs/](https://forums.hak5.org/topic/40208-bash-bunny-specs/)

------
Confiks
The 36c3 talk about this device and TamaGo:

\-
[https://fahrplan.events.ccc.de/congress/2019/Fahrplan/events...](https://fahrplan.events.ccc.de/congress/2019/Fahrplan/events/10597.html)

\- [https://media.ccc.de/v/36c3-10597-tamago_-
_bare_metal_go_fra...](https://media.ccc.de/v/36c3-10597-tamago_-
_bare_metal_go_framework_for_arm_socs)

------
5-
Related devices, where _related_ mostly means "a computer that plugs into a
USB port", roughly in recency order:

\- Serpente, $15 Cortex-M0+
[https://www.tindie.com/products/arturo182/serpente-a-tiny-
ci...](https://www.tindie.com/products/arturo182/serpente-a-tiny-
circuitpython-prototyping-board/)

\- Somu, $35 Cortex-M4
[https://www.crowdsupply.com/solokeys/somu](https://www.crowdsupply.com/solokeys/somu)

\- Fomu, $50 ICE40UP5K [https://www.crowdsupply.com/sutajio-
kosagi/fomu](https://www.crowdsupply.com/sutajio-kosagi/fomu)

\- GL.iNet GL-USB150, $30 MIPS 24K [https://www.gl-inet.com/products/gl-
usb150/](https://www.gl-inet.com/products/gl-usb150/)

\- Bash Bunny, $100 Cortex-A7 [https://shop.hak5.org/products/bash-
bunny](https://shop.hak5.org/products/bash-bunny)

\- Espruino Pico, $25 Cortex-M4
[https://www.espruino.com/Pico](https://www.espruino.com/Pico)

\- IceStick, $25 ICE40HX1K
[https://www.latticesemi.com/icestick](https://www.latticesemi.com/icestick)

------
jaclaz
The idea is nice, it will have to be seen how the actual product will result
in practical use, at first sight, it seems like (mechanically) very "flimsy",
the device is intended to be supported by its USB-C connector (and that bar
the possibility of accidentally breaking it[1] should be fine) but the moment
you use the female connector (which is at the other end of the male one) any
weight, be it the connected device or the cable to connect it will create a
relatively powerful lever on the male USB-C connector.

The only "safe" way to use it seems to me having it on a stable surface and
connect also the USB-C male through a cable.

[1] disclaimer, I am not saying that it will happen to you, but I had several
USB sticks and/or USB receptacles (the much sturdier type A) broken and/or
bent and or however ruined by clumsy colleagues or cleaning ladies and even
pets.

~~~
lcarsip
We found no mechanical issue with the board.

While developing TamaGo I have plugged/unplugged it about 200 times a day for
months ;).

~~~
jaclaz
My note/doubt wasn't about inserting/plugging/unplugging it (I am pretty sure
that is fine or at least as fine as any other USB-C device), it is about
leaving it plugged (and sticking out without support) to a PC or some other
device (thus exposed to accidental hits).

And if at the end of it there is another little device plugged (or a cable) in
the female connector, little by little the weight might losen the receptacle
of the PC or however put too much traction on the connector soldering or even
(I have seen it happening with some devices) slightly bend the board.

------
perlgeek
Super secure, but secure against which kinds of attacks?

Is it secure against key extraction from somebody with physical access to the
hardware?

~~~
lcarsip
The Secure Boot feature ([https://github.com/f-secure-
foundry/usbarmory/wiki/Secure-bo...](https://github.com/f-secure-
foundry/usbarmory/wiki/Secure-boot-\(Mk-II\))) in concert with full disk
encryption prevent anyone from extracting keys.

When used in combination with user supplied passphrases this leaves little
chance for physical attacks.

The two external security elements have active protection against glitching
and side channel.

------
newnewpdro
I have a bricked mk1, it was a convenient place to keep private keys while it
worked but unfortunately it didn't last very long before it quit booting.

------
hlieberman
ARM SecureZone is an odd choice on a platform that's aiming to be highly
trusted. It's got a very weak security model compared to isolated TPMs (like
the two that they have on-board as well). The boot-chaining on this looks like
it's entirely reliant on the TrustZone separation, not on either of the two
on-board TPMs, nu?

------
daedalus2027
Firt thing that comes to my mind will it be dpa resilient?

~~~
KMnO4
NXP holds patents for SPA and DPA countermeasures[0], and this board's
security IC, the NXP A71CH[1] does in fact have this.

[0]:[https://www.businesswire.com/news/home/20081104005569/en/Cry...](https://www.businesswire.com/news/home/20081104005569/en/Cryptography-
Research-Licenses-Differential-Power-Analysis-Countermeasures)

[1]:[https://www.nxp.com/docs/en/data-sheet/A71CH-
SDS.pdf](https://www.nxp.com/docs/en/data-sheet/A71CH-SDS.pdf)

