From b1d4dbb3d66ca0fa590fab0484b28c0534b5fc75 Mon Sep 17 00:00:00 2001 From: zzz Date: Mon, 30 Aug 2010 18:38:11 +0000 Subject: [PATCH] elgamal edits --- www.i2p2/pages/how_cryptography.html | 32 ++++++++++++---- www.i2p2/pages/how_elgamalaes.html | 47 +++++++++++++++++++++--- www.i2p2/pages/how_garlicrouting.html | 5 ++- www.i2p2/pages/how_tunnelrouting.html | 2 +- www.i2p2/pages/i2np_spec.html | 10 ++++- www.i2p2/pages/tunnel-alt-creation.html | 7 +++- www.i2p2/static/images/garliccloves.png | Bin 0 -> 70058 bytes 7 files changed, 84 insertions(+), 19 deletions(-) create mode 100644 www.i2p2/static/images/garliccloves.png diff --git a/www.i2p2/pages/how_cryptography.html b/www.i2p2/pages/how_cryptography.html index 7af928f0..09a29da9 100644 --- a/www.i2p2/pages/how_cryptography.html +++ b/www.i2p2/pages/how_cryptography.html @@ -18,11 +18,15 @@ technique used in ElGamal/AES+SessionTag (but we're

ElGamal is used for asymmetric encryption. -ElGamal is used in two places in I2P: +ElGamal is used in several places in I2P:

@@ -84,9 +88,10 @@ The encrypted ElGamal contains: Each encrypted part is prepended with zeros to a size of exactly 257 bytes. Total length: 514 bytes. -In typical usage, higher layers pad the cleartext to 222 bytes, -resulting in 257-byte encrypted parts, -and there is no zero padding at this layer. +In typical usage, higher layers pad the cleartext data to 222 bytes, +resulting in an unencrypted block of 255 bytes. +This is encoded as two 256-byte encrypted parts, +and there is a single byte of zero padding before each part at this layer.

See the ElGamal code. @@ -146,8 +151,19 @@ It may be quite difficult to make any change backward-compatible.

AES

-AES is used for symmetric encryption. -

+AES is used for symmetric encryption, in several cases: +

+

We use 256 bit AES in CBC mode. The padding used is specified in IETF RFC-2313 (PKCS#5 1.5, section 8.1 (for block type 02)). In this case, padding exists of pseudorandomly generated octets to match 16 byte blocks. diff --git a/www.i2p2/pages/how_elgamalaes.html b/www.i2p2/pages/how_elgamalaes.html index 3fdaff70..b6ff47df 100644 --- a/www.i2p2/pages/how_elgamalaes.html +++ b/www.i2p2/pages/how_elgamalaes.html @@ -64,11 +64,11 @@ Each message received has one of two the two possible conditions:

    -
  1. It is part of an existing session and is AES encrypted
  2. +
  3. It is part of an existing session and contains a Session Tag and an AES encrypted block
  4. It is for a new session and contains both ElGamal and AES encrypted blocks
When a router receives a message, it will first assume it is from -an existing session and attempt to decrypt it using AES. +an existing session and attempt to look up the Session Tag and decrypt the following data using AES. If that fails, it will assume it is for a new session and attempt to decrypt it using ElGamal.

@@ -104,8 +104,8 @@ The encrypted message contains:

ElGamal Block

-The ElGamal Block is always 514 bytes long. -The AES Block is variable length but is always a multiple of 16 bytes. +The encrypted ElGamal Block is always 514 bytes long. +The encrypted AES Block length is variable but is always a multiple of 16 bytes.

The unencrypted ElGamal data is 222 bytes long, containing:

@@ -136,7 +136,9 @@ The unencrypted ElGamal data is 222 bytes long, containing:
    |                             |
    +----+----+----+----+----+----+
 
-The 32-byte Session Key is the identifier for the session. +The 32-byte +Session Key +is the identifier for the session. The 32-byte Pre-IV will be used to generate the IV for the AES block that follows; the IV is the first 16 bytes of the SHA-256 Hash of the Pre-IV.

@@ -203,7 +205,10 @@ New Session Key: A 32-byte Sess Payload: the data -Padding: Random data to a multiple of 16 bytes for the total length +Padding: Random data to a multiple of 16 bytes for the total length. + May contain more than the minimum required padding. + +Minimum length: 48 bytes @@ -211,6 +216,16 @@ Padding: Random data to a multiple of 16 bytes for the total length The data is then AES Encrypted, using the session key and IV (calculated from the pre-IV) from the ElGamal section.

+

Notes

+ + + +

Existing Session Message Specification

The session tags delivered successfully are remembered for a @@ -266,9 +281,14 @@ impact on overal performance.

diff --git a/www.i2p2/pages/how_garlicrouting.html b/www.i2p2/pages/how_garlicrouting.html index 2984b2b6..6fba2314 100644 --- a/www.i2p2/pages/how_garlicrouting.html +++ b/www.i2p2/pages/how_garlicrouting.html @@ -75,7 +75,7 @@ perhaps it is not, by itself, enough to justify a change in terminology.

Another difference -from the method described by Freedman with I2P's bundling +from the method described by Freedman is that the path is unidirectional - there is no "turning point" as seen in onion routing or mixmaster reply blocks, which greatly simplifies the algorithm and allows for more flexible and reliable delivery. @@ -147,6 +147,9 @@ Delivery Instructions may specify a Destination, Router, or Tunnel. Generally, a Garlic Message will contain only one clove. However, the router will periodically bundle two additional cloves in the Garlic Message: +

+Garlic Message Cloves +
  1. A diff --git a/www.i2p2/pages/how_tunnelrouting.html b/www.i2p2/pages/how_tunnelrouting.html index fd720203..46dedeaf 100644 --- a/www.i2p2/pages/how_tunnelrouting.html +++ b/www.i2p2/pages/how_tunnelrouting.html @@ -183,7 +183,7 @@ Most applications use 2 or 3 hops as their default. -

    Tunnel testing

    +

    Tunnel testing

    All tunnels are periodically tested by their creator by sending a DeliveryStatusMessage out an outbound tunnel and bound for another inbound tunnel (testing both tunnels at once). If either fails a number of consecutive tests, it is marked as no longer diff --git a/www.i2p2/pages/i2np_spec.html b/www.i2p2/pages/i2np_spec.html index 05ec6695..273849fa 100644 --- a/www.i2p2/pages/i2np_spec.html +++ b/www.i2p2/pages/i2np_spec.html @@ -200,7 +200,7 @@ encrypted: toPeer :: First 16 bytes of the SHA-256 Hash of the peer's router identity length -> 16 bytes -encrypted_data :: ElGamal-2048 encrypted data +encrypted_data :: ElGamal-2048 encrypted data (see notes) length -> 512 total length: 528 @@ -209,8 +209,14 @@ total length: 528

    Notes

    -

    +

    diff --git a/www.i2p2/pages/tunnel-alt-creation.html b/www.i2p2/pages/tunnel-alt-creation.html index 2e955f4b..b029d0ae 100644 --- a/www.i2p2/pages/tunnel-alt-creation.html +++ b/www.i2p2/pages/tunnel-alt-creation.html @@ -60,7 +60,7 @@ Also specified in the byte 184: flags bytes 185-188: request time (in hours since the epoch) bytes 189-192: next message ID - bytes 193-222: uninterpreted / random padding + bytes 193-221: uninterpreted / random padding

    The next tunnel ID and next router identity hash fields are used to specify the next hop in the tunnel, though for an outbound tunnel @@ -87,6 +87,11 @@ public encryption key and formatted into a 528 byte record:

       bytes   0-15: First 16 bytes of the SHA-256 of the current hop's router identity
       bytes 16-527: ElGamal-2048 encrypted request record
    +In the 512-byte encrypted record, +the ElGamal data contains bytes 1-256 and 258-513 of the +514-byte ElGamal encrypted block. +The two padding bytes from the block (the zero bytes at locations 0 and 257) are removed. +

    Since the cleartext uses the full field, there is no need for additional padding beyond SHA256(cleartext) + cleartext.

    diff --git a/www.i2p2/static/images/garliccloves.png b/www.i2p2/static/images/garliccloves.png new file mode 100644 index 0000000000000000000000000000000000000000..2a00a9d1eebd6d427f3e3f0222bd77f30056cd54 GIT binary patch literal 70058 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%0DFR=08qI}kv*5u$Zz4;k8kE*>ATMbteow< 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 bSx)G5r)YU`Q`?qO_+_MTy7h*x%U}NkNAuE+ literal 0 HcmV?d00001