HOME

TheInfoList



OR:

In
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
, BassOmatic is the symmetric-key cipher designed by
Phil Zimmermann Philip R. Zimmermann (born 1954) is an American computer scientist and Cryptography, 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 VoI ...
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, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the wo ...
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 ( he, אלי ביהם) is an Israeli cryptographer and cryptanalyst, currently a professor at the Technion - Israel Institute of Technology Computer Science department. Starting from October 2008 and till 2013, Biham was the dean of t ...
pointed out to him several serious weaknesses in the BassOmatic algorithm over lunch at the 1991
CRYPTO Crypto commonly refers to: * Cryptocurrency, a type of digital currency secured by cryptography and decentralization * Cryptography, the practice and study of hiding information Crypto or Krypto may also refer to: Cryptography * Cryptanalysis, ...
conference, Zimmermann replaced it with
IDEA In common usage and in philosophy, ideas are the results of thought. Also in philosophy, ideas can also be mental representational images of some object. Many philosophers have considered ideas to be a fundamental ontological category of being ...
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, producer, musician and writer. He was an original member of the "Not Ready for Prime Time Players" on ''Saturday Night Live'' (1975–1979). During his tenure on ''SNL'' ...
''
Saturday Night Live ''Saturday Night Live'' (often abbreviated to ''SNL'') is an American late-night live television sketch comedy and variety show created by Lorne Michaels and developed by Dick Ebersol that airs on NBC and Peacock. Michaels currently serves a ...
'' 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, key length, or key space refer 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 ...
can be anywhere from 8 to 2048 bits. The 6 least-significant bits of the
key Key or The Key may refer to: Common meanings * Key (cryptography), a piece of information that controls the operation of a cryptography algorithm * Key (lock), device used to control access to places or facilities restricted by a lock * Key (map ...
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 valu ...
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 numbers. The PRNG-generate ...
, 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 is, loosely speaking, an arrangement of its members into a sequence or linear order, or if the set is already ordered, a rearrangement of its elements. The word "permutation" also refers to the act or proc ...
of the numbers 0 to 255. Each round consists of 4 operations:
XOR Exclusive or or exclusive disjunction is a logical operation that is true if and only if its arguments differ (one is true, the other is false). It is symbolized by the prefix operator J and by the infix operators XOR ( or ), EOR, EXOR, , ...
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 Shan ...
. 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