usb call back moved to usb_ctrl.c
[gnuk/gnuk.git] / NEWS
1 Gnuk NEWS - User visible changes
2
3 * Major changes in Gnuk 1.2.0
4
5   Released 2016-02-xx, by NIIBE Yutaka
6
7 ** Support authentication status reset by VERIFY command.
8 This feature is described in the OpenPGPcard specification V2.2 and
9 V3.1, which allow user to reset authentication status.
10
11 ** S2K algorithm change to defeat "copycat" service of MCU.
12 Even if the existence of some services copying MCU, your private key
13 will not be controled by others.
14
15 ** Bug fix for secp256k1 and NIST P-256.
16 Bugs in basic computation were fixed.
17
18 ** Bug fix for bignum routines.
19 Bignum routine update from upstream (failure doesn't occur for our RSA
20 computation, though).  Another fix for mpi_exp_mod.
21
22
23 * Major changes in Gnuk 1.1.9
24
25   Released 2015-09-18, by NIIBE Yutaka
26
27 ** Bug fix for Ed25519 and Curve25519
28 When registering key, wrong operations were not detected correctly.
29 This is fixed.
30
31
32 * Major changes in Gnuk 1.1.8
33
34   Released 2015-09-17, by NIIBE Yutaka
35
36 ** Upgrade of Chopstx
37 We use Chopstx 0.10, which supports Nitrokey-Start.
38
39 ** Card serial number
40 The way to determine a serial number of Gnuk Token for card has been
41 changed.  It uses the 96-bit unique bits of MCU, but the portion for
42 use is changed.
43
44 ** USB Reset handling
45 USB reset lets Gnuk Token restart.  It would not be perfect, when it's
46 during computation of some function, but most parts are protected by
47 Chopstx's feature of cancellation.
48
49
50 * Major changes in Gnuk 1.1.7
51
52   Released 2015-08-05, by NIIBE Yutaka
53
54 ** Upgrade of Chopstx
55 We use Chopstx 0.08, which supports STM32 Nucleo and ST Dongle.
56
57
58 * Major changes in Gnuk 1.1.6
59
60   Released 2015-07-21, by NIIBE Yutaka
61
62 ** USB SerialNumber String
63 The way to determine a serial number of Gnuk Token has been changed.
64 It uses the 96-bit unique bits of MCU, but the portion for use is
65 changed.
66
67 ** Upgrade of Chopstx
68 We use Chopstx 0.07, which supports STM32 Primer2 and CQ STARM, too.
69
70 ** Experimental Curve25519 support.
71
72 Gnuk can support Curve25519 (for decryption).  Note that this is
73 pretty much experimental, and subjects to change.  The low level code
74 is somehow stable, but there are no consensus in higer level.
75 Especially, OID in the key attribute would be changed in future.
76
77 ** No --enable-keygen option
78 It is now standard feature included always.  Note that it doesn't mean
79 this feature is stable now.  It is becoming stable, hopefully.
80
81
82 * Major changes in Gnuk 1.1.5
83
84   Released 2015-06-03, by NIIBE Yutaka
85
86 ** upgrade_by_passwd.py is not so noisy any more.
87 Since it's getting stable, no debug output any more.
88
89 ** Maple mini support.
90 Although its random number generation is not tested, Maple mini
91 support is added.
92
93 ** Windows interoperability fix.
94 1.1.x (0 to 4) didn't work with Windows because of INTERRUPT transfer.
95 It's fixed and it works now.
96
97 ** OpenPGPcard specification v3.0 compatibility.
98 OpenPGPcard specification v3.0 now include NIST curves (and other
99 curves) and ECDSA and ECDH operations are defined.  Gnuk follows
100 this specification.
101
102
103 * Major changes in Gnuk 1.1.4
104
105   Released 2014-12-15, by NIIBE Yutaka
106
107 ** Experimental RSA-4096 support.
108 Although it takes too long (more than 8.7 second), RSA-4096
109 is now implemented.
110
111 ** ECDH support.
112 ECDH is now supported.  You need development branch (master)
113 of GnuPG to use this feature.
114
115 ** ECDSA and EdDSA is not that experimental.
116 You don't need to edit DEFS variable in src/Makefile.
117
118 ** STM8S_DISCOVERY is not supported any more.
119 It's flash ROM size (64KiB) is a bit small to have all features of
120 Gnuk now.  If you manually edit code to limit the size of executable,
121 it still could run Gnuk, though.
122
123 ** configure's default target is now FST-01.
124 Receiving reports from those who complain default target, I
125 reconsidered.  Those who has Olimex STM32 H103 usually has JTAG
126 debugger, while FST-01 users don't.  So, to be safe, the default
127 target is now FST-01, instead of Olimex STM32 H103.
128
129
130 * Major changes in Gnuk 1.1.3
131
132   Released 2014-04-16, by NIIBE Yutaka
133
134 ** Experimental EdDSA support.
135 After configure, you can edit the DEFS variable in src/Makefile, so
136 that Gnuk can support EdDSA with Ed25519 (for authentication).  Note
137 that this is pretty much experimental, and subjects to change.
138
139
140 * Major changes in Gnuk 1.1.2
141
142   Released 2014-03-07, by NIIBE Yutaka
143
144 ** Experimental ECC support for secp256k1.
145 After configure, you can edit the DEFS variable in src/Makefile, so
146 that Gnuk can support ECDSA with NIST P256 (for authentication), and
147 ECDSA with secp256k1 (for signature).  Note that this is pretty much
148 experimental, and subjects to change.
149
150
151 * Major changes in Gnuk 1.1.1
152
153   Released 2013-12-25, by NIIBE Yutaka
154
155 ** Tools and test suite now work with PyUSB 1.0, too.
156 It only worked with PyUSB 0.4.3, but it works with PyUSB 1.0 too.
157
158 ** Improved RSA routine
159 Working memory for RSA computation is taken from stack instead of
160 malloc (mostly).
161
162
163 * Major changes in Gnuk 1.1.0
164
165   Released 2013-12-20, by NIIBE Yutaka
166
167 ** Overriding key import / generation (Incompatible Change)
168 Gnuk supports overriding key import or key generation even if keys are
169 already installed.  Note that it will result password reset of user.
170
171 ** RSA key generation improvement
172 Prime number generation is done by Fouque-Tibouchi method.
173
174 ** Security fix for RSA computation 
175 PolarSSL had a vulnerability against timing attack.  For detail,
176 please see:
177
178   http://www.gniibe.org/memo/development/gnuk/polarssl/polarssl-rsa-blinding
179
180 ** Improved RSA routine
181 RSA computation has been improved using MPI square routine.  Note that
182 you should not adopt this modification for general purpose computer,
183 as this change is weak against the Yarom/Falkner flush+reload cache
184 side-channel attack.
185
186 ** Upgrade of NeuG
187 The true random number generator was upgraded to the one of NeuG 1.0.
188
189 ** Replacement of kernel (thread library)
190 Instead of ChibiOS/RT, we now use Chopstx.
191
192 ** Removal of obsolete features
193 The feature named pin-dial, which is pin input with hardware
194 enhancement (with rotary encoder) is removed.
195
196
197 * Major changes in Gnuk 1.0.4
198
199   Released 2013-03-15, by NIIBE Yutaka
200
201 ** Relocatable reGNUal, really 
202 In 1.0.3, reGNUal was not fully relocatable.  It worked loaded on higher
203 address, but didn't work for lower address.  This was fixed.
204
205
206 * Major changes in Gnuk 1.0.3
207
208   Released 2013-03-14, by NIIBE Yutaka
209
210 ** Relocatable reGNUal
211 The upgrade helper, reGNUal, is now relocatable (other than the first
212 vector table).  It runs well when loaded at different address.  This
213 makes the upgrade procedure more stable.
214
215 ** Compilation by newer GNU Toolchain
216 Now, Gnuk can be compiled with newer GNU Toolchain, specifically GCC
217 4.7.x and GNU Binutils 2.22.  Old versions of Gnuk had problem for
218 ChibiOS_2.0.8/os/ports/GCC/ARMCMx/cmsis/core_cm3.c, which was fixed.
219
220 ** Data object 0x0073
221 Data object 0x0073 is now available.
222
223
224 * Major changes in Gnuk 1.0.2
225
226   Released 2013-02-15, by NIIBE Yutaka
227
228 ** Product string is now "Gnuk Token" (was: "FSIJ USB Token")
229 Since the USB ID Repository suggests not including vendor name
230 in product string, we changed the product string.
231
232 ** New tool (experimental): test/upgrade_by_passwd.py
233 This is the tool to install new firmware to Gnuk Token, provided
234 that it's just shipped from factory (and nothing changed).  It
235 authenticate as admin by factory setting, register a public key
236 for firmware upgrade, and then, does firmware upgrade.
237
238 ** tool/gnuk_upgrade.py supports '-k' option
239 It now supports RSA key on the host PC (not the one on the Token).
240
241 ** New tool: tool/get_raw_public_key.py
242 This is a script to dump raw data of RSA public key, which is useful
243 to register to Gnuk Token as a firmware upgrade key.
244
245 ** New tool: tool/gnuk_remove_keys_libusb.py
246 This tool is libusb version of gnuk_remove_keys.py.  Besides, a bug in
247 gnuk_remove_keys.py was fixed.
248
249 ** CCID protocol fix
250 When time extension is requested by Gnuk Token to host PC, argument
251 field was 0, which was wrong (but it works for most PC/SC
252 implementations and GnuPG internal driver).  Now it's 1, which means
253 1*BWT.
254
255 ** OpenPGP card protocol enhancement
256 Now, VERIFY command accepts empty data and returns remaining trial
257 counts, or 0x9000 (OK) when it's already authenticated.  This is
258 useful for application to synchronize card's authentication status.
259
260
261 * Major changes in Gnuk 1.0.1
262
263   Released 2012-08-03, by NIIBE Yutaka
264
265 ** USB SerialNumber String
266 In 1.0, it has a bug for USB SerialNumber String.  It has been fixed
267 in 1.0.1.
268
269
270 * Major changes in Gnuk 1.0
271
272   Released 2012-07-21, by NIIBE Yutaka
273
274 This is bug fixes only release.
275
276
277 * Major changes in Gnuk 0.21
278
279   Released 2012-07-06, by NIIBE Yutaka
280
281 ** Test suite
282 A functinality test suite is added under test/ directory.
283
284 ** New tool: stlinkv2.py
285 This tool is SWD flash ROM writer with ST-Link/V2.
286
287 ** New tool: usb_strings.py
288 This tool is to dump USB strings, which include revision detail and config
289 options.
290
291 ** Protection improvement (even when internal data is disclosed)
292 Even if PW1 and PW3 is same, content of encrypted DEK is different
293 now.
294
295
296 * Major changes in Gnuk 0.20
297
298   Released 2012-06-19, by NIIBE Yutaka
299
300 ** Key generation feature added
301 Finally, key generation is supported.  Note that it may be very slow.
302 It may take a few minutes (or more) to generate two or three keys,
303 when you are unlucky.
304
305 ** DnD pinentry support is deprecated
306 Once, DnD pinentry was considered a great feature, but it found that
307 it is difficult to remember moves of folders.
308
309 ** gnuk_upgrade.py assumes using another token for authentication
310 Use of another token for authentication is assumed now.  This is
311 incompatible change.  Note that when you upgrade a token of version
312 0.19 to 0.20 (or later), you need gnuk_upgrade.py of version 0.19.
313
314 ** KDF (Key Derivation Function) is now SHA-256
315 Keystring is now computed by SHA-256 (it was SHA1 before).
316
317 ** Protection improvements (even when internal data is disclosed)
318 Three improvements.  (1) Even if PW1 and Reset-code is same, content
319 of encrypted DEK is different now.  (2) DEK is now encrypted and
320 decrypted by keystring in ECB mode (it was just a kind of xor by
321 single block CFB mode).  (3) Key data plus checksum are encrypted in
322 CFB mode with initial vector (it will be able to switch OCB mode
323 easily).
324
325 ** LED display output change
326 LED display output by Gnuk is now more reactive.  It shows status code
327 when it gets GET_STATUS message of CCID.  When you communicate Gnuk by
328 internal CCID driver of GnuPG (instead of PC/SC), and enable
329 'debug-disable-ticker' option in .gnupg/scdaemon.conf, it is more
330 silent now.
331
332
333 * Major changes in Gnuk 0.19
334
335   Released 2012-06-06, by NIIBE Yutaka
336
337 ** Firmware upgrade feature
338 Firmware upgrade is now possible after the public key authentication
339 using EXTERNAL AUTHENTICATE command of ISO 7816.  Firmware upgrade is
340 done together with reGNUal, the firmware upgrade program.
341
342 ** System service blocks at the beginning of flash ROM.
343 Once flash ROM is protected, first 4-KiB cannot be modified.  Gnuk
344 use this area for "system service".  Note that this area will not
345 be able to be modified by firmware upgrade (or by any method).
346
347 ** New tool: gnuk_upgrade.py
348 The tool gnuk_upgrade.py is to do public key authentication using
349 gpg-agent and send reGNUal to Gnuk.  Then, we put new Gnuk binary
350 into the device with reGNUal.
351
352 ** USB strings for revision detail, configure options, and system service.
353 USB strings now have more information.  There are revision detail
354 string, configure options string, system service version string, as
355 well as vendor string and product string.  These strings could be
356 examined to check Gnuk Token.
357
358
359 * Major changes in Gnuk 0.18
360
361   Released 2012-05-15, by NIIBE Yutaka
362
363 ** New mandatory option '--vidpid' for configure
364 You must specify USB vendor ID and product ID for Gnuk.
365 The file GNUK_USB_DEVICE_ID lists valid USB device IDs.
366
367 ** New tool: gnuk_remove_keys.py
368 The tool gnuk_remove_keys.py is to remove all keys in Gnuk Token
369 and reset PW1 and RC (if any).
370
371 ** New USB stack
372 Gnuk used to use USB stack of USB-FS-Device_Lib by ST.  Now, it has
373 original implementation.  Hopefully, size and quality are improved.
374
375
376 * Major changes in Gnuk 0.17
377
378   Released 2012-02-02, by NIIBE Yutaka
379
380 ** USB CCID/ICCD protocol implementation change
381 Gnuk now only supports short APDU level exchange, not supporting
382 extended APDU level exchange.  Thus, Gnuk could be compatible to older
383 host side software implementation.
384
385 ** ISO 7816 SELECT command behavior is somewhat strict now
386 Old implementations do not check DF name for SELECT command.
387 This causes some trouble when Gnuk Token is identified as if it were
388 different card/token.  Now, DF name of OpenPGP card is checked.
389
390 ** USB CCID/ICCD low-level bug is fixed
391 When the size of command APDU data is just 49, the lower level packet
392 size is 64.  This is maximum size of BULK-OUT transfer packet, and
393 caused trouble in the past implementations.  Example is setting url
394 (0x5f50) as: http://www.gniibe.org/adpu-string-size-is-just-49
395 This is because the past implementations expect ZLP (zero length
396 packet).  Now, it has been fixed.  You can use any size of string.
397
398 ** CERT.3 Data Object (0x7f21) is now optional
399 As there's no valid use case for this data object and it does not
400 work as current version of GnuPG, this is now optional feature.
401 You can enable this data object by specifying --enable-certdo at
402 configure time.
403
404 ** With DnD pinentry, user can cancel pin input
405 Now, user can cancel pin input by unmounting device before finishing
406 DnD.
407
408 ** New tool: pinpadtest.py
409 The tool pinpadtest.py is PC/SC test tool for pinentry of pinpad with
410 OpenPGP card v2.
411
412
413 * Major changes in Gnuk 0.16
414
415   Released 2011-12-14, by NIIBE Yutaka
416
417 ** DnD pinentry support is added and it's default to pinentry support
418 DnD pinentry support doesn't require any hardware extension, but
419 emulates mass storage class device of USB.  User inputs pass phrase
420 by "drag and drop"-ing folders using file manager or something.
421
422 ** Bug fix for VERIFY for CHV2
423 With no keys, VERIFY command for CHV2 used to fail even if pass phrase
424 is correct.  It was intentional, because CHV2 verification would be
425 useless with no keys.  But there is a corner case for PRIVATE-DOs,
426 which may requires CHV2 verification.  Even though Gnuk doesn't
427 support any PRIVATE-DOs, it is good to be fixed.
428
429 ** Changed bcdUSB = 1.1
430 Gnuk device conforms to USB 2.0 full speed device, but when it was
431 2.0, some OS informs users, "you can connect the device to 2.0
432 compliant hub so that it can have better bandwidth", which is not
433 the case for full speed device.
434
435
436 * Major changes in Gnuk 0.15
437
438   Released 2011-11-24, by NIIBE Yutaka
439
440 ** New targets: FST_01 and FST_01_00
441 Flying Stone Technology's open hardware, Flying Stone Tiny 01 is
442 supported.
443
444 ** Flash writing tool for "DfuSe" is improved
445 Now, it supports holes and unaligned blocks in hex file.
446
447 ** Experimental PIN-pad support (by TV controller) change
448 Now, Gnuk has codetables for conversion from CIR code to ASCII code.
449 Note that only four controllers (of Dell, Sharp, Sony, and Toshiba)
450 are supported and tested.
451
452 ** It is possible for users to keep using OPENPGP_CARD_INITIAL_PW1
453 With a bug fix of verify_user_0, it's now possible.  Although it's not
454 recommended.
455
456 ** Important bug fix and a workaround
457 In version 0.14, __main_stack_size__ (for interrupt handler) was too
458 small for some cases.  This is fixed in 0.15.
459
460 In src/Makefile.in, added -mfix-cortex-m3-ldrd for correctly linking C
461 library for thumb2.  This is needed for newer summon-arm-toolchain.
462
463
464 * Major changes in Gnuk 0.14
465
466   Released 2011-10-07, by NIIBE Yutaka
467
468 ** Random number generator change
469 NeuG, Gniibe's True RNG implementation for STM32F103, has been
470 integrated to Gnuk.  It is not needed to put random number bytes
471 (generated by host) to Token any more.
472
473
474 * Major changes in Gnuk 0.13
475
476   Released 2011-06-15, by NIIBE Yutaka
477
478 ** Improved RSA routine.
479 About 20% speed improvement.
480
481 ** New tool: hub_ctrl.
482 It is a Python implementation ported from original C implementation.
483 It is useful for development of USB target if you have a good hub.
484 You can power off/on the port to reset Gnuk Token.
485
486
487 * Major changes in Gnuk 0.12
488
489   Released 2011-05-13, by NIIBE Yutaka
490
491 ** Admin-less mode is supported.
492 The OpenPGP card specification assumes existence of a security officer
493 (admin), who has privilege to manage the card.  On the other hand,
494 many use cases of Gnuk are admin == user.
495
496 Thus, Gnuk now supports "admin-less" mode.  In this mode, user can get
497 privilege with the password of PW1.
498
499 At the initialization of the card, Gnuk becomes compatible mode by
500 setting PW3.  Without setting PW3, it becomes "admin-less" mode
501 by setting PW1.
502
503 ** Important two bug fixes.
504 Gnuk (<= 0.11) has a bug which makes possible for attacker to change
505 user password to unknown state without knowing original password (when
506 no keys are loaded yet).  No, attacker could not steal your identity
507 (cannot sign or decrypt), but it would be possible to disturb you.
508
509 Gnuk (<= 0.11) has a bug which makes possible for attacker to guess
510 admin password easily.  When admin password is not set (the default
511 value of factory setting), failure of VERIFY doesn't increment error
512 counter in older versions.  Observing no increment of error counter,
513 attacker could know that admin password is the one of factory setting.
514
515 ** tool/gnuk_put_binary.py now uses pyscard.
516 Instead of PyUSB, it uses Python binding of PC/SC.  PyUSB version is
517 still available as tool/gnuk_put_binary_libusb.py.
518
519 ** Logo for Gnuk is updated.
520
521 ** Gnuk Sticker SVG is available.
522
523
524 * Major changes in Gnuk 0.11
525
526   Released 2011-04-15, by NIIBE Yutaka
527
528 This is bug fixes only release.
529
530
531 * Major changes in Gnuk 0.10
532
533   Released 2011-02-10, by NIIBE Yutaka
534
535 ** The executable can be installed to multiple devices.
536 So far, users of Gnuk should have not shared single executable among
537 multiple devices because the executable includes random bits (or
538 fixed serial number).  Now, random_bits and fixed serial number are
539 configured *after* compilation, we can install single executable image
540 to multiple devices.  Note that we need to configure random_bits for
541 each device.
542
543 ** Removed configure option: --with-fixed-serial
544 It is not compile time option any more.  After installation, we can
545 modify serial number in AID by tool/gnuk_put_binary.py.  Modification
546 is possible only once.  If you don't modify, Gnuk uses unique chip ID
547 of STM32 processor for AID.
548
549
550 * Major changes in Gnuk 0.9
551
552   Released 2011-02-01, by NIIBE Yutaka
553
554 ** Card Holder Certificate is supported (still this is experimental).
555 Gnuk can support card holder certificate now.  Note that GnuPG is not
556 ready yet.  The tool/gnuk_update_binary.py is for writing card holder
557 certificate to Gnuk Token.
558
559 ** Better interoperability to OpenSC.
560 Gnuk is not yet supported by OpenSC, but it could be.  With the
561 changes in Gnuk, it could be relatively easily possible to support
562 Gnuk Token by OpenSC with a few changes to libopensc/card-openpgp.c,
563 and libopensc/pkcs15-openpgp.c.
564
565 ** New board support "STBee"
566 STBee is a board by Strawberry Linux Co., Ltd., and it has
567 STM32F103VET6 on the board.  The chip is High Density CPU with 512KB
568 flash memory and many I/O.  If you want to connect sensor, display,
569 etc., this board would be a good candidate.
570
571 ** Experimental PIN-pad modification(unblock) support is added.
572 PIN-pad modification(unblock) is supported.
573
574
575 * Major changes in Gnuk 0.8
576
577   Released 2011-01-19, by NIIBE Yutaka
578
579 ** Experimental PIN-pad modification support is added.
580 PIN input using rotally encoder and push switch is tested with STBee
581 Mini.  By this hardware, PIN-pad modification is supported.
582
583
584 * Major changes in Gnuk 0.7
585
586   Released 2011-01-15, by NIIBE Yutaka
587
588 ** Bug fix only.
589 In version 0.6, a severe bug was introduced in usb-icc.c when adding a
590 work around for libccid 1.3.11.  The fix is one-liner, but it is worth
591 to release newer version.
592
593
594 * Major changes in Gnuk 0.6
595
596   Released 2011-01-14, by NIIBE Yutaka
597
598 ** Experimental PIN-pad support is added.
599 Local PIN-pad input is suppored for boards which have input hardware.
600 PIN input using consumer IR receive module is tested with STBee Mini
601 and STM8S Discovery.
602
603 ** USB device serial number is virtually unique now.
604 STM32F103 has 96-bit unique chip identifier.  We take advantage of
605 this, Gnuk Token has virtually unique USB serial number.
606
607 ** Card serial number is determined at run time by chip identifier.
608 Until version 0.5, card serial number was compile time option.  If we
609 used same binary for different devices, card serial number was same.
610 Now, we use STM32F103's 96-bit unique chip identifier for card serial
611 number (when you don't use --with-fixed-serial option).
612
613 ** More improved USB-CCID/ICCD implementation.
614 The changes in 0.5 was not that good for libccid 1.3.11, which has
615 small buffer (only 262-byte APDU).  Workaround for libccid 1.3.11 is
616 implemented.
617
618
619 * Major changes in Gnuk 0.5
620
621   Released 2010-12-13, by NIIBE Yutaka
622
623 ** LED blink
624 LED blink now shows status output of the card.  It shows the status of
625 CHV3, CHV2, and CHV1 when GPG is accessing the card.
626
627 ** New board support "STM8S Discovery"
628 ST-Link part (with STM32F103C8T6) of STM8S Discovery board is now supported.
629
630 ** Digital signing for SHA224/SHA256/SHA384/SHA512 digestInfo is now possible.
631
632 ** Fixes for password management
633 Now, you can allow the token to do digital signing multiple times with
634 single authentication.  You can use "forcesig" subcommand in card-edit
635 of GnuPG to enable the feature.
636
637 ** Key management changes
638 If you remove all keys, it is possible to import keys again.
639
640 ** More improved USB-CCID/ICCD implementation.
641 Gnuk works better with GPG's in-stock protocol stack.  You can do
642 digital signing (not decryption, key import, or get_public_key in
643 GPG2).  For decryption, key import and get_public_key, changes are
644 needed for GPG (scd/ccid-driver.c) to support the case of extended
645 APDU.  In short, you can sign with Gnuk by GPG.
646
647 ** Windows support.
648 Gnuk Token could run with GPG4WIN on MS Windows.  GPG4WIN runs with
649 "usbccid" driver and "winscard" driver.
650
651
652 * Major changes in Gnuk 0.4
653
654   Released 2010-11-09, by NIIBE Yutaka
655
656 ** New board support "STBee Mini".
657
658 ** Flash writing tool for "DfuSe" is included now.
659
660 ** Since Flash GC is now implemented, it can be used longer.
661
662
663 * Major changes in Gnuk 0.3
664
665   Released 2010-10-23, by NIIBE Yutaka
666
667 ** Now we have 'configure' script to select target.
668
669 ** Support system with DFU (Device Firmware Upgrade) downloader.
670
671 ** New board support "CQ STARM".
672
673 ** Improved USB-ICCD implementation.  Works fine with GPG's protocol stack.
674
675
676 * Major changes in Gnuk 0.2
677
678   Released 2010-09-13, by NIIBE Yutaka
679
680 ** With DEBUG=1, timeout is more than 3 seconds.
681
682 ** Flash ROM entries for random numbers are cleared after use. 
683
684 ** Board support "STM32 Primer 2" now works.
685  
686
687 * Major changes in Gnuk 0.1
688
689   Released 2010-09-10, by NIIBE Yutaka
690
691 ** Enabled force_chv1 (in the pw_status_bytes), so that the decipher works.
692
693 ** Support both of key for digital signing and key for decryption.
694
695 ** Decipher is supported.
696
697 ** New board support "STM32 Primer 2" is added by Kaz Kojima.
698
699 ** LED behavior is meaningful now.  "ON" during execution.
700
701 ** Fixed bcdCCID revision number.
702
703 ** Logo.
704
705
706 * Major changes in Gnuk 0.0
707
708   Released 2010-09-06, by NIIBE Yutaka
709
710 ** This is initial release.  Only it supports digital signing.
711
712 Local Variables:
713 mode: outline
714 End: