Uma cifra (ou cifra) é um algoritmo para realizar criptografia (codificação) ou decodificação (decodificação). É uma série de passos bem definidos que podem ser seguidos como um procedimento. A cifra ou codificação é a conversão de informações de texto simples em cifra ou código.
No uso não técnico, uma 'cifra' muitas vezes significa a mesma coisa que um 'código'; mas na criptografia, as cifras se distinguem dos códigos. Uma fonte do século XX dá esta explicação: uma cifra é "um método no qual a unidade básica de ocultação é a letra". Em comparação, um código é uma forma de encobrimento na qual a unidade básica é a palavra". No final do século, "códigos" neste sentido criptográfico se tornaram raros. A criptografia do século 21 codifica, em sua maioria, bitstreams.
Códigos operados pela substituição de acordo com um grande livro de código que ligava uma seqüência aleatória de caracteres ou números a uma palavra ou frase. Por exemplo, "UQJHSE" poderia ser o código para "Proceder para as seguintes coordenadas".
Uma cifra é usada para transformar as informações originais ("texto em quadrícula") na forma criptografada "ciphertext". A mensagem de texto cifrado contém todas as informações da mensagem de texto em quadrícula, mas não pode ser lida por humano ou computador sem o mecanismo adequado para descriptografá-la. Para decifrar ou decifrar, é necessária a "chave". Na criptografia, uma chave especifica a transformação particular do texto em texto criptografado, ou vice versa durante a decriptação.
Por tipo de chave utilizadas, as cifras são divididas em:
- algoritmos de chave simétrica (criptografia de chave privada): a mesma chave é usada para criptografia e decodificação, e
- algoritmos de chave assimétrica (criptografia de chave pública): duas chaves diferentes são usadas para criptografia e decodificação.
A palavra cipher em francês é cifre e em latim medieval cifra, do árabe sifr, que significa 'zero'. O primeiro uso inglês conhecido do zero foi em 1598.