Blowfish
Mais informações
- Criado por
- Bruce Schneier
- Lançado
- 1993
- Tipo
- Cifra de bloco
- Tamanho do bloco
- 64 bits
- Licença
- Livre, não patenteada
A alternativa livre de Schneier ao DES, de 1993 — cujo key schedule lento acabou sendo sua propriedade mais útil.
Bruce Schneier projetou o Blowfish como uma alternativa deliberadamente não patenteada e de livre acesso, numa época em que o DES estava saindo de uso e a maioria das alternativas vinha com licenças. É uma cifra Feistel com 16 rodadas, blocos de 64 bits e chaves de 32 a 448 bits.
O key schedule é incomumente caro: cada nova chave exige 521 execuções da cifra para preencher as S-boxes. Isso foi pensado como um obstáculo à busca exaustiva, e em vez disso se tornou a base do hash de senhas bcrypt, ainda usado por todo lado. A cifra em si está obsoleta — blocos de 64 bits a tornam vulnerável ao Sweet32 — e hoje Schneier recomenda o Twofish e o AES.