Software downloads
The Entropy Key's software driver consists of a daemon (ekeyd) that handles the communication with keys, and mixing entropy collected into the system's own random pool, and an optional user-land USB driver (ekeyd-uds) for systems without USB CDC support, or where that support is unreliable. There is also a daemon that acts as an EGD client (ekeyd-egd-linux) and will top up the system's pool with data retrieved from an EGD server, such as ekeyd running in EGD mode.
We provide both of these pieces of software under a liberal Open Source licence (the MIT licence) in source form, as well as deb packages for multiple versions of Debian and Ubuntu, and as RPM packages for Red Hat Enterprise, Fedora, and OpenSuSE.
You can find all the sources and binaries in the downloads area.
Distribution-provided packages
- Debian lenny, squeeze (testing) and sid (unstable)
- Ubuntu lucid x86/amd64
- openSUSE 11.2, 11.3 i586/amd64
- Gentoo
- MirBSD has an ekeyd package in ports.
Linux kernel issues
The Entropy Key appears to host computers as a USB standard Communications Device (CDC) asyncronous serial device. Most modern operating systems have a device driver which presents such devices as serial ports. Linux's driver for this USB class (the module cdc_acm) usually creates TTY devices named ttyACM0 or similar.
Currently, Linux's cdc_acm driver appears to have numerous issues. The specific problems which will be encountered by users change between kernel versions. The following table documents some of the known reported issues. Under these kernel versions, you may wish to use the userland driver that is provided (ekey-ulusbd, packaged in ekeyd-uds) as it will avoid these issues at the cost of slightly higher CPU consumption. This driver can also be used (or ported) to systems where there is no native CDC driver support.
| Kernel version | Issues identified |
|---|---|
| 2.6.18 | System crashes, which may require a physical system reset. This is especially problematic and common on RHEL 5/CentOS 5. Users should consult the WARNING file in the source code and packages. Some more recent editions of 2.6.18 shipped by Red Hat appear to have this fixed, but check on an unimportant machine first, or always use the userspace driver. |
| 2.6.24 | No reported issues. |
| 2.6.26 | Generally acceptable operation, except if a device is open (ie, in use by ekeyd when the device is unplugged. In this situation, no udev events are generated for the unplug operation. Re-inserting and removing the device often causes the correct udev events to be generated and ekeyd will again operate correctly. |
| 2.6.31 | Any access of the device results in an IO error being reported. This is a known regression with a kernel bugzilla entry. Additionally, the usermode driver has been observed to function incorrectly with some vendor kernels. Work arounds are being investigated. |