Version 0.04 release/0.04
authorNIIBE Yutaka <gniibe@fsij.org>
Tue, 30 Oct 2012 00:37:17 +0000 (09:37 +0900)
committerNIIBE Yutaka <gniibe@fsij.org>
Tue, 30 Oct 2012 00:37:17 +0000 (09:37 +0900)
ChangeLog
NEWS
README
THANKS
src/adc_stm32f103.c
src/main.c
src/random.c

index 3ab2ed1..55eb68c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-10-30  Niibe Yutaka  <gniibe@fsij.org>
+
+       * Version 0.04.
+
+       * src/main.c (vcom_string3): Updated.
+
 2012-10-26  Niibe Yutaka  <gniibe@fsij.org>
 
        * NEUG_USB_DEVICE_ID (Product_STRING): Rename to NeuG True RNG.
 2012-10-26  Niibe Yutaka  <gniibe@fsij.org>
 
        * NEUG_USB_DEVICE_ID (Product_STRING): Rename to NeuG True RNG.
diff --git a/NEWS b/NEWS
index 264e154..148c3b2 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,18 +1,20 @@
+NeuG NEWS - User visible changes
+
 * Major changes in NeuG 0.04
 
 * Major changes in NeuG 0.04
 
-  Released 2012-10-XX, by NIIBE Yutaka
+  Released 2012-10-30, by NIIBE Yutaka
 
 ** Update of ChibiOS/RT
 ChibiOS/RT is updated to newer 2.4.3.
 
 ** Improved performance
 
 ** 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
+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).
 
 2.0 Hub.
 
 ** Health tests run for NEUG_MODE_RAW
 Health tests run when NEUG_MODE_RAW (CRC32 filter output).
 
-** More runtime checks: tool/neug_check.py 
+** 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.
 
 Now, we can observe max counts of repeat count test, adaptive
 propotion test 64, and adaptive propotion test 4096.
 
diff --git a/README b/README
index 597f4c2..7daeb4d 100644 (file)
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
-NeuG - a random number generator implementation (for STM32F103)
+NeuG - a true random number generator implementation (for STM32F103)
 
                                                           Version 0.04
 
                                                           Version 0.04
-                                                            2012-10-2X
+                                                            2012-10-30
                                                           Niibe Yutaka
                                      Free Software Initiative of Japan
 
                                                           Niibe Yutaka
                                      Free Software Initiative of Japan
 
@@ -49,13 +49,7 @@ A0-double-dash: STM32F2xx and STM32F4xx have built-in TRNG, it would
 
 Q1: How fast is NeuG device?
 A1: It's more than 50 Ki-byte/sec for conditioned output (by SHA-256),
 
 Q1: How fast is NeuG device?
 A1: It's more than 50 Ki-byte/sec for conditioned output (by SHA-256),
-    and more than 200 Ki-byte/sec for CRC-32 filtered output.  Please
-    note that the NeuG device is USB "full-speed" device.  If you
-    connect it to full-speed hub or root hub which runs at full-speed,
-    you get lower speed than the real capability of the device.
-    That's because host submits a frame to device once per 1ms frame
-    with full-speed hub.  When you connect it to high-speed hub, you
-    get higher performance for CRC-32 filtered output.
+    and more than 140 Ki-byte/sec for CRC-32 filtered output.
 
 Q2: Should we check condition of noise sources?
 A2: Yes, we should.  Three continuous tests are implemented, following
 
 Q2: Should we check condition of noise sources?
 A2: Yes, we should.  Three continuous tests are implemented, following
@@ -71,8 +65,8 @@ A3: It is because NIST SP 800-90B mandates something like that for
     RNG-tools to feed entropy to your kernel, or use for computer
     simulations, I think that CRC32 filter would be good enough.  You
     can configure NeuG device by "stty -F /dev/ttyACM0 parenb parodd"
     RNG-tools to feed entropy to your kernel, or use for computer
     simulations, I think that CRC32 filter would be good enough.  You
     can configure NeuG device by "stty -F /dev/ttyACM0 parenb parodd"
-    to get raw data before SHA-256 conditioning component.  Then,
-    you'll get more than 350 Ki-byte/second (with high speed hub).
+    to get raw data before SHA-256 conditioning component.  With
+    high speed hub, you'll get more than 240 Ki-byte/second .
 
 
 Targets
 
 
 Targets
@@ -98,7 +92,7 @@ It is distributed under GNU General Public Licence version 3 or later
 External source code
 ====================
 
 External source code
 ====================
 
-To build NeuG device, we need external source code.
+To build NeuG device, you need external source code.
 
 * chibios/  -- ChibiOS/RT 2.4.x
 
 
 * chibios/  -- ChibiOS/RT 2.4.x
 
@@ -152,7 +146,7 @@ How to compile
 
 You need GNU toolchain and newlib for 'arm-none-eabi' target.
 
 
 You need GNU toolchain and newlib for 'arm-none-eabi' target.
 
-See http://github.com/uwehermann/summon-arm-toolchain/ for preparation
+See https://launchpad.net/gcc-arm-embedded for preparation
 of GNU Toolchain for 'arm-none-eabi' target.
 
 Change directory to `src':
 of GNU Toolchain for 'arm-none-eabi' target.
 
 Change directory to `src':
@@ -326,14 +320,16 @@ Test results
 See files under the directory test-results, for test result of
 "rngtest" in rng-tools, NIST STS 2.1.1, and Dieharder.
 
 See files under the directory test-results, for test result of
 "rngtest" in rng-tools, NIST STS 2.1.1, and Dieharder.
 
-For Dieharder, I correct 1500MB (it took four days or so), and use
-scripts to invoke dieharder.
+I collect 110 files of 125MB (= 13750MB), and use scripts to invoke
+dieharder and rngtest.  Collecting 110 files, it took three days.
+
+For NIST STS 2.1.1, I used only 10 files of size 125MB.
 
 
 Read-only Git Repository
 ========================
 
 
 
 Read-only Git Repository
 ========================
 
-You can browse at http://www.gniibe.org/gitweb?p=neug.git;a=summary
+You can browse at http://www.gniibe.org/gitweb?p=neug.git
 
 You can get it by:
 
 
 You can get it by:
 
@@ -354,7 +350,7 @@ I put ChibiOS/RT as a submodule of Git.  Please do this:
 Information on the Web
 ======================
 
 Information on the Web
 ======================
 
-Not yet.
+Please use FST-01 Q&A Forum at: http://no-passwd.net/askbot/questions/
 
 
 
 
 
 
diff --git a/THANKS b/THANKS
index 3846c4f..07eca5a 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -8,5 +8,6 @@ improvements, or fixing bugs.  Here is a list of those people.
 Hironobu SUZUKI                hironobu@h2np.net
 Jan Suhr               jan@suhr.info
 Kaz Kojima             kkojima@rr.iij4u.or.jp
 Hironobu SUZUKI                hironobu@h2np.net
 Jan Suhr               jan@suhr.info
 Kaz Kojima             kkojima@rr.iij4u.or.jp
-Shane Coughlan         scoughlan@openinventionnetwork.com
+Luis Felipe R. Murillo luisfelipe@ucla.edu
 Seth Schoen            seth@eff.org
 Seth Schoen            seth@eff.org
+Shane Coughlan         scoughlan@openinventionnetwork.com
index 3afbcf3..02de8f1 100644 (file)
@@ -4,7 +4,7 @@
  * Copyright (C) 2011, 2012 Free Software Initiative of Japan
  * Author: NIIBE Yutaka <gniibe@fsij.org>
  *
  * Copyright (C) 2011, 2012 Free Software Initiative of Japan
  * Author: NIIBE Yutaka <gniibe@fsij.org>
  *
- * This file is a part of NeuG, a Random Number Generator
+ * This file is a part of NeuG, a True Random Number Generator
  * implementation based on quantization error of ADC (for STM32F103).
  *
  * NeuG is free software: you can redistribute it and/or modify it
  * implementation based on quantization error of ADC (for STM32F103).
  *
  * NeuG is free software: you can redistribute it and/or modify it
index 15f42bf..b57425a 100644 (file)
@@ -5,7 +5,7 @@
  * Copyright (C) 2011, 2012 Free Software Initiative of Japan
  * Author: NIIBE Yutaka <gniibe@fsij.org>
  *
  * Copyright (C) 2011, 2012 Free Software Initiative of Japan
  * Author: NIIBE Yutaka <gniibe@fsij.org>
  *
- * This file is a part of NeuG, a Random Number Generator
+ * This file is a part of NeuG, a True Random Number Generator
  * implementation.
  *
  * NeuG is free software: you can redistribute it and/or modify it
  * implementation.
  *
  * NeuG is free software: you can redistribute it and/or modify it
@@ -171,7 +171,7 @@ static const uint8_t vcom_string0[4] = {
 static uint8_t vcom_string3[28] = {
   28,                    /* bLength.                         */
   USB_STRING_DESCRIPTOR_TYPE, /* bDescriptorType.                 */
 static uint8_t vcom_string3[28] = {
   28,                    /* bLength.                         */
   USB_STRING_DESCRIPTOR_TYPE, /* bDescriptorType.                 */
-  '0', 0,  '.', 0,  '0', 0, '3', 0,    /* Version number of NeuG.          */
+  '0', 0,  '.', 0,  '0', 0, '4', 0,    /* Version number of NeuG.          */
   '-', 0,
   0, 0, 0, 0,  /* Filled by Unique device ID.      */
   0, 0, 0, 0,
   '-', 0,
   0, 0, 0, 0,  /* Filled by Unique device ID.      */
   0, 0, 0, 0,
index 340241a..7eaadcc 100644 (file)
@@ -4,7 +4,7 @@
  * Copyright (C) 2011, 2012 Free Software Initiative of Japan
  * Author: NIIBE Yutaka <gniibe@fsij.org>
  *
  * Copyright (C) 2011, 2012 Free Software Initiative of Japan
  * Author: NIIBE Yutaka <gniibe@fsij.org>
  *
- * This file is a part of NeuG, a Random Number Generator
+ * This file is a part of NeuG, a True Random Number Generator
  * implementation based on quantization error of ADC (for STM32F103).
  *
  * NeuG is free software: you can redistribute it and/or modify it
  * implementation based on quantization error of ADC (for STM32F103).
  *
  * NeuG is free software: you can redistribute it and/or modify it