[Cryptography] USB 3.0 authentication

John Gilmore gnu at toad.com
Fri Apr 15 03:21:23 EDT 2016


> There have been recent press reports about a new spec release by the
> USB 3.0 standards group for a mechanism to certify USB 3.0 devices
> and cables have them cryptographically authenticate.

As the designers say, "USB has evolved from a data interface capable
of supplying limited power to a primary provider of power with a data
interface."

The USB 3.1 specs are available here:

  http://www.usb.org/developers/docs/usb_31_040816.zip

Within the zip file is a "USB Power Delivery" directory and a
"USB_PD_R2_0 V1.2 -20160325.pdf" power delivery spec.  This 500+-page
spec defines a vast infrastructure that allows USB devices and cables
to negotiate their power-related specs, allowing up to 5 amps of power
at 20 volts (100 watts) to be fed in either direction through the USB
cables and connectors, as negotiated.  If you remember how much heat
an incandescent 100-watt bulb produces, you'll be sure you don't want
that much power going down some of the flimsy USB cables that you've
seen in the past.  The spec uses "Power Marking" to differentiate
legacy connectors and cables from "Power Delivery" compliant
connectors and cables.  The PD compliant cables include a chip in the
connectors that can describe the cable's capabilities to the USB
ports.  Power sources send protocol messages that describe what
voltages and currents they can offer; power sinks pick among them.
The power sources are required to check the cable and not offer
options that would overload the cable.

I think that's the authentication that you're talking about.  I am up
to page 111 and haven't seen any crypto authentication yet; it looks
like a pretty standard 1-wire protocol with 4b5b coding for framing,
CRC for error checking, and such.  It operates in the clear as far
as I have seen -- but I encourage you to check the parts I haven't
yet read...

	John

PS: USB has gotten pretty flexible; their new small USB C-connector is
usable at both ends of a cable, and allows the power source/sink and
and the data master/slave relationships to be swapped, independently,
by the devices at both ends.  It does data at up to 10 Gbits/sec and
power at up to 100w.  The connector is also self-symmetric so you can
plug it in upside down or rightside up.  And there are ways to negotiate
into other "modes" so you can run other protocols down the same cable,
the first of which is DisplayPort.  They're getting smarter...


More information about the cryptography mailing list