SIGSALY used a
random noise mask to
encrypt voice conversations which had been encoded by a
vocoder. The latter was used to minimize the amount of redundancy (which is high in voice traffic), in order to reduce the amount of information to be encrypted. • ten channels covering the telephone passband (250 Hz – 2,950 Hz); are rectified and filtered to extract how much energy is in each of these channels. • another signal indicating whether the sound is
voiced or
unvoiced; • if voiced, a signal indicating the
pitch; this also varied at less than 25 Hz. Next, each signal was
sampled for its amplitude once every 20 milliseconds. For the band amplitude signals, the amplitude converted into one of six amplitude levels, with values from 0 through 5. The amplitude levels were on a nonlinear scale, with the steps between levels wide at high amplitudes and narrower at low amplitudes. This scheme, known as "
companding" or "compressing-expanding", exploits the fact that the fidelity of voice signals is more sensitive to low amplitudes than to high amplitudes. The pitch signal, which required greater sensitivity, was encoded by a pair of six-level values (one coarse, and one fine), giving thirty-six levels in all. A
cryptographic key, consisting of a series of random values from the same set of six levels, was subtracted from each sampled voice amplitude value to encrypt them before transmission. The subtraction was performed using
modular arithmetic: a "wraparound" fashion, meaning that if there was a negative result, it was added to six to give a positive result. For example, if the voice amplitude value was 3 and the random value was 5, then the subtraction would work as follows: :3 - 5 \equiv -2,\ -2 + 6 \equiv 4\pmod 6 \, — giving a value of 4. The sampled value was then transmitted, with each sample level transmitted on one of six corresponding frequencies in a frequency band, a scheme known as "
frequency-shift keying (FSK)". The receiving SIGSALY read the frequency values, converted them into samples, and added the key values back to them to decrypt them. The addition was also performed in a "modulo" fashion, with six subtracted from any value over five. To match the example above, if the receiving SIGSALY got a sample value of 4 with a matching random value of 5, then the addition would be as follows: :4 + 5 \equiv 9,\ 9 - 6 \equiv 3\pmod 6 \, — which gives the correct value of 3. To convert the samples back into a voice waveform, they were first turned back into the dozen low-frequency vocoded signals. An inversion of the vocoder process was employed, which included: • a
white noise source (used for unvoiced sounds); • a signal generator (used for voiced sounds) generating a set of
harmonics, with the base frequency controlled by the pitch signal; • a switch, controlled by the voiced/unvoiced signal, to select one of these two as a source; • a set of filters (one for each band), all taking as input the same source (the source selected by the switch), along with amplifiers whose
gain was controlled by the band amplitude signals. The noise values used for the encryption key were originally produced by large
mercury-vapor rectifying
vacuum tubes and stored on a
phonograph record. The record was then duplicated, with the records being distributed to SIGSALY systems on both ends of a conversation. The records served as the SIGSALY
one-time pad, and distribution was very strictly controlled (although if one had been seized, it would have been of little importance, since only one pair of each was ever produced). For testing and setup purposes, a pseudo-random number generating system made out of relays, known as the "threshing machine", was used. The records were played on
turntables, but since the timing – the
clock synchronization – between the two SIGSALY terminals had to be precise, the turntables were by no means just ordinary record-players. The rotation rate of the turntables was carefully controlled, and the records were started at highly specific times, based on precision time-of-day clock standards. Since each record only provided 12 minutes of
key, each SIGSALY had two turntables, with a second record "queued up" while the first was "playing". ==Usage==