Use crc32_rv_*
[gnuk/neug.git] / NEWS
diff --git a/NEWS b/NEWS
index 1e68669..43c5413 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,189 @@
+NeuG NEWS - User visible changes
+
+* Major changes in NeuG 1.0.5
+
+  Released 2015-10-17, by NIIBE Yutaka
+
+** Upgrade of Chopstx
+We use Chopstx 1.2, which supports FST-01G.
+
+
+* Major changes in NeuG 1.0.4
+
+  Released 2015-09-18, by NIIBE Yutaka
+
+** Upgrade of Chopstx
+We use Chopstx 0.10, which supports Nitrokey-Start.
+
+** USB reset handling
+Now, USB reset lets NeuG device restart correctly.
+
+
+* Major changes in NeuG 1.0.3
+
+  Released 2015-08-03, by NIIBE Yutaka
+
+** Fraucheky can be manually invoked
+Even if Fraucheky is disabled at start by moving files to DROPHERE,
+a user can invoke Fraucheky to see documents, now.
+
+** Upgrade of Chopstx
+We use Chopstx 0.08, which supports ST-Dongle and STM32 Nucleo F103.
+
+** Upgrade of Fraucheky
+We use Fraucheky 0.3, which can work well with FreeBSD.
+
+
+* Major changes in NeuG 1.0.2
+
+  Released 2015-07-18, by NIIBE Yutaka
+
+** Upgrade of firmware enhancement
+The process is protected by password.
+
+** Upgrade of Chopstx
+We use Chopstx 0.07, which supports STM32 Primer2, CQ STARM.
+
+
+* Major changes in NeuG 1.0.1
+
+  Released 2015-01-29, by NIIBE Yutaka
+
+** Upgrade of Chopstx
+We use Chopstx 0.04.
+
+** Upgrade of Fraucheky
+We use Fraucheky 0.1.
+
+** Compile options
+We use -O3 (with no -Os) for neug.o and sha256.o.
+
+
+* Major changes in NeuG 1.0
+
+  Released 2013-11-11, by NIIBE Yutaka
+
+** Upgrade of Chopstx
+Now, we use Chopstx 0.03.
+
+** Stabilize the upgrade process
+For firmware upgrade, it has been unstable somehow and it has been
+recommended not to access its stream (/dev/ttyACM0) before running
+neug_upgrade.py.  This bug was fixed in 1.0, and it's more stable.
+
+** Add support of Fraucheky
+Fraucheky is a GPL container which makes sure to deliver GPL to users.
+
+
+* Major changes in NeuG 0.11
+
+  Released 2013-08-22, by NIIBE Yutaka
+
+** Replacement of kernel (thread library)
+Instead of ChibiOS/RT, we now use Chopstx.
+
+** Improved performance
+The output of random numbers got faster than the previous
+implementation by 30% or so.
+
+** Unsupported targets
+CQ_STARM, STBEE, STBEE Mini, and STM32_PRIMER2 are not
+supported in this release, but porting should be easy.
+
+
+* Major changes in NeuG 0.06
+
+  Released 2013-03-15, by NIIBE Yutaka
+
+** Support for relocatable reGNUal
+For firmware upgrade, we can use newer reGNUal (>= 1.0.4).
+
+
+* Major changes in NeuG 0.05
+
+  Released 2013-02-07, by NIIBE Yutaka
+
+** Improvement on SHA256 calculation
+The output of random numbers got faster than the previous
+implementation by 2% or so.
+
+
+* Major changes in NeuG 0.04
+
+  Released 2012-10-30, by NIIBE Yutaka
+
+** Update of ChibiOS/RT
+ChibiOS/RT is updated to newer 2.4.3.
+
+** Improved performance
+Improvement on generation speed, even when it's _not_ connected to USB
+2.0 Hub.
+
+** Health tests run for NEUG_MODE_RAW
+Health tests run when NEUG_MODE_RAW (CRC32 filter output).
+
+** More runtime info: tool/neug_check.py 
+Now, we can observe max counts of repeat count test, adaptive
+propotion test 64, and adaptive propotion test 4096.
+
+
+* Major changes in NeuG 0.03
+
+  Released 2012-10-09, by NIIBE Yutaka
+
+** Change RNG constuct.
+We replace all basic components again, to conform NIST SP 800-90B.
+Now, we use two analog inputs use in addition to Vref and Temperature
+Sensor.  We take advantage of another A/D convertor, ADC2.
+
+In former versions, we use LSBs of inputs.  From this version, we use
+all bits, and put them to CRC32 calculation unit.  That's because we
+can get more entropy when using full bits.
+
+The central component, the conditioning component, is the one with
+SHA-256, to conform NIST SP 80-90B.
+
+** New ADC (A/D convertor) driver
+Now, we use our own ADC driver, so that we can use ADC2 and we can
+control ADC for our particular usage (such that put it to CRC32
+calculation unit).
+
+** Selection of output
+Using "stty" command, we can now select one of three outputs: final
+output (conditioned), CRC32 filtered raw data before conditioning, and
+raw input data of ADC.
+
+** USB strings for revision detail, configure options, and system service.
+USB strings now have more information.  There are revision detail
+string, configure options string, system service version string, as
+well as vendor string and product string.  These strings could be
+examined to check NeuG device.
+
+** New mandatory option '--vidpid' for configure
+You must specify USB vendor ID and product ID for Gnuk.
+The file NEUG_USB_DEVICE_ID lists valid USB device IDs.
+
+** Health tests
+Health tests are implemented to conform NIST SP 800-90B.  There are
+three tests, repetition count test, adaptive proportion test 64,
+and adaptive proportion test 4096.
+
+** System service blocks at the beginning of flash ROM.
+Once flash ROM is protected, first 4-KiB cannot be modified.  Gnuk use
+this area for "system service".  NeuG has compatible system service
+block as Gnuk.  Note that this area will not be able to be modified by
+firmware upgrade (or by any method).
+
+** New tool: neug_upgrade.py
+The tool neug_upgrade.py is to send reGNUal to NeuG device.  Then, we
+put new NeuG binary (or any binary, say, Gnuk) into the device with
+reGNUal.
+
+** New tool: neug_check.py
+The tool neug_check.py is to check the device condition.  You can see
+error counters of NeuG device with this tool.
+
+
 * Major changes in NeuG 0.02
 
   Released 2012-08-30, by NIIBE Yutaka