Browse Prior Art Database

Method and computer programs used to assess the integrity of a communication channel when messages sent may legitimately be truncated before reception

IP.com Disclosure Number: IPCOM000129861D
Original Publication Date: 2005-Oct-07
Included in the Prior Art Database: 2005-Oct-07
Document File: 2 page(s) / 59K

Publishing Venue

IBM

Abstract

If you have a communication channel, it is important to know that it will transmit your messages unaltered. In order to test this, it is necessary to construct a message containing sufficient information to verify itself. It is relatively difficult to construct a message which can be verified when the entirety of the message is not available. In this article, we describe a technique for constructing a message which can be verified when as little as one byte is available.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 2

Method and computer programs used to assess the integrity of a communication channel when messages sent may legitimately be truncated before reception

If you have a communication channel, it is important to know that it will transmit your messages unaltered. In order to test this, it is necessary to construct a message containing sufficient information to verify itself.

Known solutions to this problem, and their drawbacks:

    Attach a digital signature to the message. In order to verify the message was transmitted successfully the entire message must be retrieved.

Add a CRC block to the message. The entire message must be available for verification to succeed.

Know the content of the message in advance. The message must be made available to both ends, which requires a known good communication channel to be in place beforehand.

    The solution disclosed is to construct two independently derived data streams from the input message. The processes used to derive these streams must be carefully selected as described below. These two streams are then interleaved and transmitted. At the receiver, the two streams are deinterleaved, and the derivation process is reversed. The resulting two streams are then compared - if they are identical, it is possible to conclude that the channel integrity is OK.

    In this text, | is used for byte markers. The smallest unit that is dealt with herein is the half-byte. If your channel allows truncation at the bit-level rather than the byte-level you can use this technique to verify truncations to even numbers of bits - simply use a single bit as your half-byte quantity.

First, a successful run:

Consider a 4-byte original message O:

O1O2|O3O4|O5O6|O7O8

    We use 2 stream transformations to create the derived messages A and B: A1A2|A3A4|A5A6|A7A8
B1B2|B3B4|B5B6|B7B8

    These two streams are then interleaved to produce the transferred message: A1B1|A2B2|A3B3|A4B4|A5B5|A6B6|A7B7|A8B8

This message is sent across the communication channel.

    The receiver gets a truncated message:
A1B1|A2B2|A3B3|A4B4|A5B5

This...