On Sat, Jan 29, 2011 at 04:36:57PM +1300, Peter Gutmann wrote:
> Daniel Silverstone <[email protected]> writes:
> 
> >Note that, as the webpage explains, the device is a USB CDC device providing
> >an asychronous serial port.
> 
> Right, but you still need a driver on the host to provide the virtual serial
> port, e.g. FTDI's virtual COM port (VCP) or Prolific's USB-to-serial drivers
> (but obviously specific to the device that you're using).  Or at least I've
> never found a USB-serial device that didn't need drivers on the host.

It doesn't need kernel drivers on the host.  It appears as a serial port
out of the box on Linux and Mac OS X and some BSDs.  On Windows, it
needs a small INF file binding the USB vendor and product IDs to its
built-in USB serial driver.

There difference here is that FTDI's and Prolific's products aren't
standard USB serial devices; they're just very very close.  The Entropy
Key is (although many systems identify it as a modem, this is not a
problem.)

> >The custom protocol which is implemented on top of the serial stream is
> >entirely there to ensure various security measures.
> 
> Well, I guess this is your decision to make, but I think targetting the "I'm
> so paranoid I don't even trust my CPU unless I've built it myself from
> molecules" market seems to be rather limiting compared to "I just want a
> source of random noise that I can plug in and use".

The idea is that if somebody has physical access to the device, they
still can't work out what entropy was delivered.  (ie, by attaching a
logic analyser around the connector, etc.)  Some other products that
expose a noisy circuit on a serial or parellel port directly are easily
attackable in this way.  The way the Entropy Key does it makes it
significantly more difficult to do it while remaining undetected if one
has physical access.  (ie, they have to open the whole computer itself
at attach significantly more bulky and expensive equipment.)

Also, the device provides loads of out-of-band information about its own
internal tests and statistics, so a protocol is needed anyway.  People
have written their own implementations of the protocol; MirBSD even has
an implemention written in shell script for use during install.

I don't think it targets the überparanoid, given that you can't trust it
entirely because it's epoxied and runs closed firmware (although even if
the firmware wasn't, you still wouldn't know that what you were given
ran the firmware you thought it did.)  I don't think it is possible to
target such people.  Well, target them with products, anyway.

(Disclaimer:  I wasn't directly involved in the engineering of this
product, but I do work with Daniel.)

B.
_______________________________________________
cryptography mailing list
[email protected]
http://lists.randombit.net/mailman/listinfo/cryptography

Reply via email to