fix permissions for .deb packages & update README

This commit is contained in:
Manuel Domke
2018-10-04 12:49:39 +02:00
parent 9af2987760
commit 2a5be01ffb
2 changed files with 70 additions and 52 deletions

View File

@@ -1,26 +1,10 @@
Compiling the Driver for Windows
--------------------------------
I compiled infnoise-win.exe using VisualStudio 2013 using Windows 7. I downloaded the
FTD2xx drivers from FTDI. Pipes seem almost entirely broken in Windows, so the Windows
version requires out output file to be specified on the command line. In a cmd window,
you can type
infnoise-win foo
and let it run for a while until you have as much random data in foo as you need.
The VisualStudio project for infnoise is in the infnoise/software/VisualStudio directory.
Using prebuilt packages for Linux
Releases
---------------------------------
Precompiled binaries can be downloaded from the releases section of the 13-37-org fork:
https://github.com/13-37-org/infnoise/releases
Signed packages of release versions are availabe on [Github](https://github.com/13-37-org/infnoise/releases) and [13-37.org](https://13-37.org/files/).
All packages are signed with the same PGP-Key (Key-ID: 0x4E730A3C) used for the repositories below.
Full Fingerprint: 71AE 099B 262D C0B4 93E6 EE71 975D C25C 4E73 0A3C. You can also check the
fingerprints at 13-37.org/pgp-keys and in the Crowd Supply campaign.
The packages are signed with the same PGP-Key (Key-ID: `0x4E730A3C`) used for the repositories below.
Full Fingerprint: `71AE 099B 262D C0B4 93E6 EE71 975D C25C 4E73 0A3C`. You can get the keys on [13-37.org/keys](https://13-37.org/keys) and in the [Crowd Supply campaign](https://crowdsupply.com/13-37/infinite-noise-trng).
Repositories for Ubuntu, Debian and Raspbian are also available. To add them follow this procedure:
@@ -35,17 +19,26 @@ Repositories for Ubuntu, Debian and Raspbian are also available. To add them fol
$ sudo apt-key add 13-37.org-code.asc
Available for Ubuntu and Debian (x86, x64 and armhf):
$ echo "deb http://repo.13-37.org/ stable main" | sudo tee /etc/apt/sources.list.d/infnoise.list
$ sudo apt-get update
$ sudo apt-get install infnoise
Connect the Infinite Noise TRNG (if not already) and the service will be started via a udev rule.
Check status of driver:
Connect the Infinite Noise TRNG (if not already) and the service will be started via a udev rule. Check status of driver:
$ systemctl status infnoise
Compiling the Driver for Linux
Compiling the Driver
------------------------------
It's highly recommended to build from the already released versions, as these have been [tested and verified](https://github.com/13-37-org/infnoise/tree/master/tests/results) extensively. Note that the releases are maintained in the 13-37-org fork of this project.
To switch to a specific tag:
git clone https://github.com/13-37-org/infnoise
git checkout tags/0.3.0
Linux
------------------------------
The infnoise application reads random data from the Infinite Noise USB key and writes
@@ -58,7 +51,7 @@ this command:
These include an open source drivers for the FT240X USB chip used on the Infinite Noise
TRNG. Once this is done, to compile the infnoise program, simply make it:
$ make
$ make -f Makefile.linux
To run the infnoise application, make sure the Infinite Noise USB stick is
plugged in, and from a shell, type:
@@ -73,24 +66,50 @@ Note that there is a newer alpha version of the next release of the libftdi libr
found it runs much slower than the current libftdi1 library in Ubuntu, so I am sticking
with the stable release for now.
MacOS
------------------------------
You'll need to install Xcode and Homebrew before.
brew install libftdi
git clone https://github.com/13-37-org/infnoise
cd infnoise/software
make -f Makefile.macos
The `--dev-random` mode is not implemented for MacOS (yet.)
Windows
-----
I compiled infnoise-win.exe using VisualStudio 2013 using Windows 7. I downloaded the FTD2xx drivers from FTDI. Pipes seem almost entirely broken in Windows, so the Windows version requires out output file to be specified on the command line. In a cmd window, you can type
infnoise-win foo
and let it run for a while until you have as much random data in foo as you need.
The VisualStudio project for infnoise is in the infnoise/software/VisualStudio directory.
There is also a new fork https://github.com/jj1bdx/infnoise-windows compiled with VS2017.
Usage
-----
Usage: infnoise [options]
Options are:
--debug - turn on some debug output
--dev-random - write entropy to /dev/random instead of stdout
--raw - do not whiten the output
--multiplier <value> - write 256 bits * value for each 512 bits written to the Keccak sponge
--no-output - do not write random output data
--daemon - run in the background. Output should be redirected to a file or
the options should be used with --dev-random. To reduce CPU-usage addition
af entropy is only forced after a minute rather than a second.
--pidfile <filename> - write the process ID to a file. If --daemon is used, it is the ID of the background process.
--serial <serial> - use Infinite Noise TRNG/FT240 with the given serial number (see --list-devices)
--list-devices - list available devices
-D, --debug - turn on some debug output
-R, --dev-random - write entropy to /dev/random instead of stdout
-r, --raw - do not whiten the output
-m, --multiplier <value> - write 256 bits * value for each 512 bits written to
the Keccak sponge. Default of 0 means write all the entropy.
-n, --no-output - do not write random output data
-p, --pidfile <file> - write process ID to file
-d, --daemon - run in the background
-s, --serial <serial> - use specified device
-l, --list-devices - list available devices
-v, --version - show version information
-h, --help - this help output
Note: The options --daemon and --pidfile are only implemented in the Linux version.
Note: The options --daemon, --dev-random and --pidfile are only implemented in the Linux version.
The windows version is also lacking --list-devices and --serial.
Examples
--------
@@ -226,3 +245,4 @@ $ cat 30-infnoise.rules
SUBSYSTEM=="usb", ATTRS{idProduct}=="6015", ATTRS{idVendor}=="0403", GROUP="dialout", MODE="0664"
Note that my username is in the dialout group.

View File

@@ -30,9 +30,7 @@ if [ ! -e build/usr/sbin/infnoise ] ; then
exit 1;
fi
# debuild -b -uc -us
dpkg -b build/ infnoise_${VERSION}_${ARCH}.deb
#debbuild -uc -us
dpkg --root-owner-group -b build/ infnoise_${VERSION}_${ARCH}.deb
### build infnoise-tools ###
rm -rf build
@@ -56,7 +54,7 @@ cp ../build-scripts/control.debian.tools build/DEBIAN/control
echo "Version: $VERSION" >> build/DEBIAN/control
echo "Architecture: $ARCH" >> build/DEBIAN/control
dpkg -b build/ infnoise-tools_${VERSION}_${ARCH}.deb
dpkg --root-owner-group -b build/ infnoise-tools_${VERSION}_${ARCH}.deb
rm -rf build
cd ..
@@ -77,6 +75,6 @@ cp build-scripts/control.debian.lib build/DEBIAN/control
echo "Version: $VERSION" >> build/DEBIAN/control
echo "Architecture: $ARCH" >> build/DEBIAN/control
dpkg -b build/ libinfnoise_${VERSION}_${ARCH}.deb
dpkg --root-owner-group -b build/ libinfnoise_${VERSION}_${ARCH}.deb
rm -rf build