Re: Data integrity check in CIPE - Please explain me the necessityor benefit of a larger checksum.

"Hans Steegers" <[email protected]>
Newsgroups gmane.comp.encryption.cipe
Message-ID <000f01c3868a$a9021280$d620a8c0@pcw_hans.hnsasd.priv>
Mark,

>(PLEASE, everyone, when replying send only to list, not to person and
list -
>I get two copies)
So what: come on, you have got a delete button. The list is sometimes very
slow: it can take hours.

>> * Existing packets: possible within the lifetime of the dynamic key (15
>> minutes IIRC, so 7 min. on average) It will be seen as duplicated packets
>> within the tunnel traffic.
>
>If this were part of a complete sequence, replaying it a few seconds later
>could be catastrophic.  Even if it were TCP, a new connection faked
>correctly could cause, for example, a database transaction to be repeated,
>or worse.  Replay is an issue - not just duplicate packets sent at the same
>time.  Coupled with the checksum issue, as one of those packets may even
>have been modified, and you're looking at a vulnerability that can be used
>by someone capable of sniffing and introducing their own packets into the
>stream.

If your database transaction application doesn't have any safeguard against
this, you shouldn't probably use CIPE: it wasn't designed for that purpose.
Somebody can do the same on your LAN.

Making the key-life shorter will make this more difficult. I already
sugessted to make it configurable for that purpose.

Replay protection (using sequence/ack numbers) has some problems when UDP
datagrams are used for transport: as outlined somewhere else (by P.G.), you
have to restart your tunnel each time a UDP datagram is lost or
duplicated...

>> * Impossible IMHO, since it is computed from the encrypted packet.
>
>Could the payload be altered to include such a CRC, and compare both the
new
>and existing checksums to determine if the packet has been altered?

In theory, yes. We could make an additional CRC-32 over the payload and
append it to the buffer before compression and subsequent encryption. And
after decryption and expansion make the check in the receiver.

I am not sure, without more research, if it's a fool-proof solution. It
could be a good solution at first sight:

* It is not a time/cpu-power consuming operation and an extra 32 bit CRC
only adds max. 4 more bytes to the payload.

* It is not computable without having the de-cryption key.

* When compression is used, its location is not predictable.

* The other (unencrypted) CRC is used for detection of datacorruption caused
by transmission errors. Only the ip/udp header can be altered unnoticed, not
the payload.

*** Please let people spend some ammunition on this idea.


Hans Steegers


--
Message sent by the [email protected] mailing list.
Unsubscribe: mail [email protected], "unsubscribe cipe-l" in body
Other commands available with "help" in body to the same address.
CIPE info and list archive: <URL:http://sites.inka.de/~bigred/devel/cipe.html>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.