# Encryption of Streaming Binary Data using Variable Length Binary Substitution

Original Publication Date: 2001-Sep-16

Included in the Prior Art Database: 2003-Jun-20

## Publishing Venue

IBM

## Abstract

Traditional encryption of streaming data, such as audio and video, uses block or substitution ciphers which are easy to attack using frequency analysis. This proposal circumvents these methods of attack by encrypting varying lengths of binary data rather than the traditional 8-bit byte substitution encryption. The Morse Code system, for encoding text messages for transmission by telegraph, was invented in the last century. If the dots and dashes of the Morse Code are represented by "1's" and "0's" respectively it can be viewed as a technique for encrypting Text Characters as variable length sequences of bits, a Binary Morse Code (see columns 1 and 2 in the table below). Thus the Text Character "E" is encoded as one dot "." or a binary "1". whereas the Text Character "B" is encoded as dash dot dot dot . . ." or a binary "0111". If the Text Character is represented by it's 8-bit (byte) ASCII code (see column 3 in the table below) then the Binary Text Character "01000100" (Text Character "E") is encoded as the Binary Morse Code "1" whereas the Binary Text Character "01000010" (Text Character "B") is encoded as the Binary Morse Code "0111".

**This text was extracted from a PDF file.**

**This is the abbreviated version, containing approximately 52% of the total text.**

__Page 1 of 3__**Encryption of Streaming Binary Data using Variable Length Binary Substitution**

** Traditional encryption of streaming data, such as audio and video, uses block or substitution ciphers which are easy to attack using frequency analysis. This proposal circumvents these methods of attack by encrypting varying lengths of binary data rather than the traditional 8-bit byte substitution encryption. **

** The Morse Code system, for encoding text messages for transmission by telegraph, was invented in the last century. If the dots and dashes of the Morse Code are represented by "1's" and "0's" respectively it can be viewed as a technique for encrypting Text Characters as variable length sequences of bits, a Binary Morse Code (see columns 1 and 2 in the table below). **

** Thus the Text Character "E" is encoded as one dot "." or a binary "1". whereas the Text Character "B" is encoded as dash dot dot dot "- . . ." or a binary "0111". **

** If the Text Character is represented by it's 8-bit (byte) ASCII code (see column 3 in the table below) then the Binary Text Character "01000100" (Text Character "E") is encoded as the Binary Morse Code "1" whereas the Binary Text Character "01000010" (Text Character "B") is encoded as the Binary Morse Code "0111". **

Text Character Morse Code Binary Morse Code Binary Text Character (8-bit ASCII) T - 0 01010100

E . 1 01000101

M - -. 00 01001101

N - . 01 01001110

A . - 10 01000001

I . . 11 01001001

O - - - 000 01001111

G - - . 001 01000111

K - . - 010 01001011

D - . . 011 01000100

W . - - 100 01010111

R . - . 101 01010010

U . . - 110 01010101

S . . . 111 01010011

not used - - - - 0000

not used - - - . 0001

Q - - . - 0010 01010001

Z - - . . 0011 01011010

Y - . - - 0100 01011001

C - . - . 0101 01000011

X - . . - 0110 01011000

B - . . . 0111 01000010

J . - - - 1000 01001010

P . - - . 1001 01010000

not used . - . - 1010

L . - . . 1011 01001100

not used . . - - 1100

F . . - . 1101 01000110

V . . . - 1110 01010110

H . . . . 1111 01001000

1

__Page 2 of 3__ ** There are only 30 possible Binary Sequences of Length 1, 2, 3 and 4 bits and to use an 8-bit Binary Code is "overkill". As there are 32 possible 5-bit Binary Codes it would be more efficient to represent the Text Characters using 5-bits instead of 8-bits. **

** The crux of this invention is to reverse the "Morse Code" process and to encode Binary Sequences within a Binary Stream which have lengths from 1 to n-bits (where n is any integer greater than 1) using an m-bit Binary Code (where m is an integer equal to or greater than n and large enough to encode all possible Binary Sequences which have lengths from 1 to n-bits). m can be greater than necessary, in which case there are more Total Possible Tables. In this case there could be more than one...**