Symmetric-key algorithm

related topics
{math, number, function}
{system, computer, user}
{law, state, case}
{rate, high, increase}

Symmetric-key algorithms are a class of algorithms for cryptography that use trivially related, often identical, cryptographic keys for both decryption and encryption etc.

The encryption key is trivially related to the decryption key, in that they may be identical or there is a simple transformation to go between the two keys. The keys, in practice, represent a shared secret between two or more parties that can be used to maintain a private information link.



Types of symmetric-key algorithms

Symmetric-key algorithms can be divided into stream ciphers and block ciphers. Stream ciphers encrypt the bits of the message one at a time, and block ciphers take a number of bits and encrypt them as a single unit. Blocks of 64 bits have been commonly used. The Advanced Encryption Standard (AES) algorithm approved by NIST in December 2001 uses 128-bit blocks.

Some examples of popular and well-respected symmetric algorithms include Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, 3DES, and IDEA.

Cryptographic primitives based on symmetric ciphers

Symmetric ciphers are often used to achieve other cryptographic primitives than just encryption.


However, symmetric ciphers also can be used for non-repudiation purposes by ISO 13888-2 standard.


Construction of symmetric ciphers

Full article ▸

related documents
Block cipher
XOR swap algorithm
Transfer function
Abstract Syntax Notation One
Lazy evaluation
XSL Transformations
Object-relational database
Queue (data structure)
Information retrieval
Diffie-Hellman key exchange
Oracle machine
SECD machine
Unicity distance
Axiom of pairing
Legendre symbol
Splitting lemma
Haar measure
Extended real number line
Richard's paradox
Functional analysis
Elementary group theory
Mathematical model
Referential transparency (computer science)
Examples of groups
Meromorphic function
Assignment problem