* Some comments
authordocelic <docelic@ubuntu2.neaspec.com>
Fri, 15 Aug 2008 22:39:09 +0000 (17:39 -0500)
committerdocelic <docelic@ubuntu2.neaspec.com>
Fri, 15 Aug 2008 22:39:09 +0000 (17:39 -0500)
README
src/config.h
src/skipjack.c

diff --git a/README b/README
index 7056933..d04eac0 100644 (file)
--- a/README
+++ b/README
@@ -23,31 +23,38 @@ Compiling:
 
  cd src
  editor config.h   (enable/disable build options)
- editor Makefile   ($ARCH)
+ editor Makefile   (set $ARCH, $PROG and $PORT)
  editor eedata.S   (can change EEPROM data loaded on card, such as
                    serial number, rng seed, keys or file permissions)
 
- make              (result are sosse.{bin,hex} and eedata.{bin,hex})
+ make              (result files are are sosse.{bin,hex} and eedata.{bin,hex}.
+                   Bin files are raw files, .hex files are in Intel hex
+                   format. They're the same but hex is nicer to read. Hex
+                   file can be loaded onto the card just as well as .bin,
+                   provided that your programmer supports Intel hex input.)
 
 
 Loading onto smartcard:
 
- The writing is done using 'uisp' software, so make sure you have it
+ The writing is done using 'avrdude' software, so make sure you have it
  installed. Also make sure you've edited Makefile and set BOARD= to
- a proper value (see 'man uisp' for a list of valid -dprog options).
+ a proper value (see 'avrdude -c list' for a list of valid options).
 
  Files go to:
    sosse.hex or .bin  -> Flash
    eedata.hex or .bin -> internal EEPROM
 
- The Makefile already supports the following targets for loading
(which can also be called individually):
+ The Makefile already supports 2 targets for loading the files. (Targets
consist of 2 commands each which can be called individually as well):
 
   make write  (= write-eeprom write-flash)
   make verify (= verify-eeprom verify-flash)
 
 
 Installing smart card reader software:
+(Replace libtowitoko with your appropriate terminal-specific library,
+or install the excellent generic libccid):
+
  apt-get install libtowitoko2 libtowitoko-dev
  apt-get install pcscd
 
@@ -61,7 +68,7 @@ Installing smart card reader software:
 
   Jul 13 15:24:53 ubuntu2 pcscd:
     eventhandler.c:449:EHStatusHandlerThread()
-      Card ATR: (NULL)
+      Card ATR: ......
   
   Jul 13 15:24:48 ubuntu2 pcscd:
     eventhandler.c:365:EHStatusHandlerThread()
@@ -70,7 +77,7 @@ Installing smart card reader software:
 
 Alternative build modes
 
-ATMOS can be compiled for the AVR target (standard makefile),
+ATMOS can be compiled for the AVR target (standard Makefile),
 as a binary running on your workstation (Makefile.emu) and
 as a CT-API driver implementing a virtual card in a virtual terminal.
 
@@ -84,7 +91,7 @@ three cleans (for the standard build, emulator and CT-API). Therefore,
 just 'make clean' will do what you need.
 
 
-Compiling programs for emulation on PC
+Compiling programs for emulation on PC
 
  To ease debugging, you can compile the package for the usual
  desktop computer (no any smart card hardware necessary).
@@ -101,8 +108,7 @@ Compiling programs for emulation on PC
 
  Add -I/tmp/scez-ng to cflags
 
- Result are sosse-emu, fstest, authtest
- (make -f Makefile.emu clean)
+ Result are sosse-emu, fstest, authtest, enctest
 
  First install SCEZ:
    Info: http://www.freshmeat.net/projects/scez
index ed0536a..0bd852d 100644 (file)
   - 0: TEA
   - 1: Skipjack
   - 2: NEWDES-SK
+  - 3: AES
 */
-//#define CONF_WITH_CRYPT_ALGO    0 /* TEA */
-#define CONF_WITH_CRYPT_ALGO    1 /* Skipjack */
+#define CONF_WITH_CRYPT_ALGO    0 /* TEA */
+//#define CONF_WITH_CRYPT_ALGO    1 /* Skipjack */
 //#define CONF_WITH_CRYPT_ALGO    2 /* NEWDES-SK */
 //#define CONF_WITH_CRYPT_ALGO    3 /* AES */
 
index a8e04fd..ddb8934 100644 (file)
@@ -1,7 +1,5 @@
 /*! @file
-       \brief Skipjack declarations.
-
-       $Id: skipjack.c,v 1.1 2003/03/30 12:42:21 m Exp $
+  \brief Skipjack declarations.
 */
 
 #include <config.h>
 #define INLINE
 #endif
 
-#define W1_L   0
-#define W1_R   1
-#define W2_L   2
-#define W2_R   3
-#define W3_L   4
-#define W3_R   5
-#define W4_L   6
-#define W4_R   7
+#define W1_L 0
+#define W1_R 1
+#define W2_L 2
+#define W2_R 3
+#define W3_L 4
+#define W3_R 5
+#define W4_L 6
+#define W4_R 7
 
 static const CODE iu8 fTable[256] = { 
 0xa3,0xd7,0x09,0x83,0xf8,0x48,0xf6,0xf4,0xb3,0x21,0x15,0x78,0x99,0xb1,0xaf,0xf9,