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

We hope to have packages for recent Red Hat Enterprise Linux versions available for download from this website in the near future. If any representatives of other operating systems are interested in producing official packages for their distribution, please contact us either on the development mailing list, or directly. Contact details are on the Contact Us page.

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.

Simtec Electronics, Avondale Drive, Tarleton, Lancashire, PR4 6AX
Switchboard: +44 (0)1772 978010 Fax: +44 (0)1772 816426 ekey@simtec.co.uk