updates
[crypto.git] / doc / draft-riikonen-silc-spec-06.nroff
index d74f969f2e2ae4e8f76725eacf6dcb7e656752b4..19cb9365c8adc19d6578c5fdb0f7cb17e0f03749 100644 (file)
@@ -110,12 +110,12 @@ Table of Contents
       3.10.3 Hash Functions ..................................... 26
       3.10.4 MAC Algorithms ..................................... 27
       3.10.5 Compression Algorithms ............................. 27
-  3.11 SILC Public Key .......................................... 27
+  3.11 SILC Public Key .......................................... 28
   3.12 SILC Version Detection ................................... 30
-  3.13 Backup Routers ........................................... 30
+  3.13 Backup Routers ........................................... 31
       3.13.1 Switching to Backup Router ......................... 32
       3.13.2 Resuming Primary Router ............................ 33
-      3.13.3 Discussion on Backup Router Scheme ................. 35
+      3.13.3 Discussion on Backup Router Scheme ................. 36
 4 SILC Procedures ............................................... 36
   4.1 Creating Client Connection ................................ 36
   4.2 Creating Server Connection ................................ 38
@@ -127,7 +127,7 @@ Table of Contents
   4.7 Channel Message Sending and Reception ..................... 43
   4.8 Session Key Regeneration .................................. 43
   4.9 Command Sending and Reception ............................. 44
-  4.10 Closing Connection ....................................... 44
+  4.10 Closing Connection ....................................... 45
   4.11 Detaching and Resuming a Session ......................... 45
 5 Security Considerations ....................................... 47
 6 References .................................................... 48
@@ -1263,18 +1263,18 @@ case of CTR mode it refers to the counter block.  The format of the
 Figure 6:  Counter Block
 
 .in 6
-o Truncated HASH from SKE (4 bytes) - This value is the 32 most
-  significant bits from the HASH value that was computed as a
-  result of SKE protocol.  This acts as session identifier and
-  each rekey MUST produce a new HASH value.
-
-o Sending/Receiving IV from SKE (8 bytes) - This value is the 64
-  most significant bits from the Sending IV or Receiving IV
-  generated in the SKE protocol.  When this mode is used to
-  encrypt sending traffic the Sending IV is used, when used to
-  decrypt receiving traffic the Receiving IV is used.  This
-  assures that two parties of the protocol use different IV
-  for sending traffic.  Each rekey MUST produce a new value.
+o Truncated HASH from SKE (4 bytes) - This value is the first 4
+  bytes from the HASH value that was computed as a result of SKE
+  protocol.  This acts as session identifier and each rekey MUST
+  produce a new HASH value.
+
+o Sending/Receiving IV from SKE (8 bytes) - This value is the
+  first 8 bytes from the Sending IV or Receiving IV generated in
+  the SKE protocol.  When this mode is used to encrypt sending
+  traffic the Sending IV is used, when used to decrypt receiving
+  traffic the Receiving IV is used.  This assures that two parties
+  of the protocol use different IV for sending traffic.  Each rekey
+  MUST produce a new value.
 
 o Block Counter (4 bytes) - This is the counter value for the
   counter block and is MSB ordered number starting from one (1)
@@ -1304,14 +1304,18 @@ not stateful and receiver cannot precompute the key stream.
 3.10.1.3 Randomized CBC Mode
 
 The "rcbc" encryption mode is CBC mode with randomized IV.  This means
-that each IV for each packet MUST be chosen randomly (same IV is used
-to encrypt all blocks in the given packet).  In this mode the IV is
-appended at the end of the last ciphertext block and thus delivered to
-the recipient.  This mode increases the ciphertext size by one
-ciphertext block.  Note also that some data payloads in SILC are capable
-of delivering the IV to the recipient.  When explicitly encrypting these
-payloads with randomized CBC the IV MUST NOT be appended at the end
-of the ciphertext.
+that each IV for each packet MUST be chosen randomly.  When encrypting
+more than one block the normal inter-packet chaining is used, but for
+the first block new random IV is selected in each packet.  In this mode
+the IV is appended at the end of the last ciphertext block and thus
+delivered to the recipient.  This mode increases the ciphertext size by
+one ciphertext block.  Note also that some data payloads in SILC are
+capable of delivering the IV to the recipient.  When explicitly
+encrypting these payloads with randomized CBC the IV MUST NOT be appended
+at the end of the ciphertext.  When encrypting these payloads with
+"cbc" mode they implicitly become randomized CBC since the IV is
+usually selected random and included in the ciphertext.  In these
+cases using either CBC or randomized CBC is actually equivalent.
 
 
 .ti 0
@@ -1416,6 +1420,7 @@ zlib        GNU ZLIB (LZ77) compression  (OPTIONAL)
 Additional compression algorithms MAY be defined to be used in SILC.
 
 
+
 .ti 0
 3.11 SILC Public Key
 
@@ -1567,7 +1572,6 @@ Software version MAY provide major, minor and build (vendor) version.
 The software version MAY be freely set and accepted.  The version string 
 MUST consist of printable US-ASCII characters.
 
-
 Thus, the version strings could be, for example:
 
 .in 6
@@ -1819,6 +1823,8 @@ discarded.  The SILC_PACKET_RESUME_ROUTER packet and its payload
 is defined in [SILC2].
 
 
+
+
 .ti 0
 3.13.3 Discussion on Backup Router Scheme
 
@@ -2072,7 +2078,6 @@ channel in the command reply.  Note that the channel key is never
 generated if the SILC_CMODE_PRIVKEY mode is set.
 
 
-
 .ti 0
 4.4 Channel Key Generation
 
@@ -2265,6 +2270,7 @@ MUST NOT accept command reply packet originated from anyone else but
 from its own server.
 
 
+
 .ti 0
 4.10 Closing Connection