Bassomatic (band)
   HOME

TheInfoList



OR:

In
cryptography Cryptography, or cryptology (from "hidden, secret"; and ''graphein'', "to write", or ''-logy, -logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of Adversary (cryptography), ...
, BassOmatic is the
symmetric-key cipher Symmetric-key algorithms are algorithms for cryptography that use the same cryptographic keys for both the encryption of plaintext and the decryption of ciphertext. The keys may be identical, or there may be a simple transformation to go between t ...
designed by
Phil Zimmermann Philip R. Zimmermann (born 1954) is an American computer scientist and cryptographer. He is the creator of Pretty Good Privacy (PGP), the most widely used email encryption software in the world. He is also known for his work in VoIP encryption ...
as part of his email encryption software
PGP PGP or Pgp may refer to: Science and technology * P-glycoprotein, a type of protein * Pelvic girdle pain, a pregnancy discomfort * Personal Genome Project, to sequence genomes and medical records * Pretty Good Privacy, a computer program for the ...
(in the first release, version 1.0). Comments in the
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
indicate that he had been designing the cipher since as early as 1988, but it was not publicly released until 1991. After
Eli Biham Eli Biham () is an Israeli cryptographer and cryptanalyst who is a professor at the Technion - Israel Institute of Technology Computer Science department. From 2008 to 2013, Biham was the dean of the Technion Computer Science department, afte ...
pointed out to him several serious weaknesses in the BassOmatic algorithm over lunch at the 1991
CRYPTO Crypto commonly refers to: * Cryptography, the practice and study of hiding information * Cryptocurrency, a type of digital currency based on cryptography Crypto or krypto may also refer to: Cryptography * Cryptanalysis, the study of methods f ...
conference, Zimmermann replaced it with
IDEA In philosophy and in common usage, an idea (from the Greek word: ἰδέα (idea), meaning 'a form, or a pattern') is the results of thought. Also in philosophy, ideas can also be mental representational images of some object. Many philosophe ...
in subsequent versions of PGP. The name is explained in this comment from the source code: "BassOmatic gets its name from an old
Dan Aykroyd Daniel Edward Aykroyd ( ; born July 1, 1952) is a Canadian actor, comedian, screenwriter, and producer. Aykroyd was a writer and an original member of the "Not Ready for Prime Time Players" cast on the NBC sketch comedy series ''Saturday Nigh ...
''
Saturday Night Live ''Saturday Night Live'' (''SNL'') is an American Late night television in the United States, late-night live television, live sketch comedy variety show created by Lorne Michaels and developed by Michaels and Dick Ebersol that airs on NBC. The ...
'' skit involving a blender and a whole fish. The BassOmatic algorithm does to data what the original BassOmatic did to the fish."


Algorithm

The algorithm operates on blocks of 256 bytes (or 2048 bits). The actual
key size In cryptography, key size or key length refers to the number of bits in a key used by a cryptographic algorithm (such as a cipher). Key length defines the upper-bound on an algorithm's security (i.e. a logarithmic measure of the fastest known a ...
can be anywhere from 8 to 2048 bits. The 6 least-significant bits of the key are ''control bits'', used to choose between several possible variations. The number of rounds is 1 to 8, depending on the 3 lowest control bits. Bit 4 selects between two possible
key schedule In cryptography, the so-called product ciphers are a certain kind of cipher, where the (de-)ciphering of data is typically done as an iteration of '' rounds''. The setup for each round is generally the same, except for round-specific fixed va ...
s: one using the key to seed a
pseudorandom number generator A pseudorandom number generator (PRNG), also known as a deterministic random bit generator (DRBG), is an algorithm for generating a sequence of numbers whose properties approximate the properties of sequences of random number generation, random n ...
, the other using BassOmatic itself. Making such variations key-dependent means that some keys must be weaker than others; the key space is not ''flat''. The chosen key schedule produces a total of 8 ''permutation tables'', each a
permutation In mathematics, a permutation of a set can mean one of two different things: * an arrangement of its members in a sequence or linear order, or * the act or process of changing the linear order of an ordered set. An example of the first mean ...
of the numbers 0 to 255. Each round consists of 4 operations:
XOR Exclusive or, exclusive disjunction, exclusive alternation, logical non-equivalence, or logical inequality is a logical operator whose negation is the logical biconditional. With two inputs, XOR is true if and only if the inputs differ (one ...
ing the block with one of the permutation tables, ''shredding'' or permuting individual bits throughout the block, an unkeyed
diffusion Diffusion is the net movement of anything (for example, atoms, ions, molecules, energy) generally from a region of higher concentration to a region of lower concentration. Diffusion is driven by a gradient in Gibbs free energy or chemical p ...
called ''raking'', and a substitution step using the permutation tables as
S-boxes In cryptography, an S-box (substitution-box) is a basic component of symmetric key algorithms which performs substitution. In block ciphers, they are typically used to obscure the relationship between the key and the ciphertext, thus ensuring Sha ...
. The shredding step can either permute all 8
bit-plane A bit plane of a digital discrete signal (such as image or sound) is a set of bits corresponding to a given bit position in each of the binary numbers representing the signal. For example, for 16-bit data representation there are 16 bit planes: ...
s independently, or in groups of 4, depending on control bit 3. The permutation tables stay the same through all rounds of encryption on a given block, but if control bit 5 is set, then the tables are regenerated after each block.


References


External links


PGPkeys.org
– downloads of older PGP software, including version 1.0 source
The Super Bass-O-Matic '76
– Saturday Night Live episode originally aired on April 17, 1976. {{Cryptography navbox , block Broken block ciphers