请输入您要查询的百科知识:

 

词条 FROG
释义

  1. Design philosophy

  2. Description

  3. Security

  4. Notes

  5. References

  6. External links

{{about|the block cipher algorithm|the ultrafast laser pulse measurement technique|Frequency-resolved optical gating|the amphibian|Frog|other uses|Frog (disambiguation)}}{{Infobox block cipher
| name = FROG
| image =
| caption =
| designers = Dianelos Georgoudis, Damian Leroux, and Billy Simón Chaves
| publish date = 1998
| derived from =
| derived to =
| key size = 128, 192, or 256 bits
| block size = 128 bits
| structure =
| rounds = 8
| cryptanalysis = Differential and linear

attacks against some weak keys


}}

In cryptography, FROG is a block cipher authored by

Georgoudis, Leroux and Chaves. The algorithm can work with any block size between 8 and 128 bytes, and supports key sizes between 5 and 125 bytes. The algorithm consists of 8 rounds and has a very complicated key schedule.

It was submitted in 1998 by TecApro, a Costa Rican software company, to the AES competition as a candidate to become the Advanced Encryption Standard. Wagner et al. (1999) found a number of weak key classes for FROG. Other problems included very slow key setup and relatively slow encryption. FROG was not selected as a finalist.

Design philosophy

Normally a block cipher applies a fixed sequence of primitive mathematical or logical operators (such as additions, XORs, etc.) on the plaintext and secret key in order to produce the ciphertext. An attacker uses this knowledge to search for weaknesses in the cipher which may allow the recovery of the plaintext.

FROG's design philosophy is to hide the exact sequence of primitive operations even though the cipher itself is known. While other ciphers use the secret key only as data (which are combined with the plain text to produce the cipher text), FROG uses the key both as data and as instructions on how to combine these data. In effect an expanded version of the key is used by FROG as a program. FROG itself operates as an interpreter that applies this key-dependent program on the plain text to produce the cipher text. Decryption works by applying the same program in reverse on the cipher text.

Description

The FROG key schedule (or internal key) is 2304 bytes long. It is produced recursively by iteratively applying FROG to an empty plain text. The resulting block is processed to produce a well formatted internal key with 8 records. FROG has 8 rounds, the operations of each round codified by one record in the internal key. All operations are byte-wide and consist of XORs and substitutions.[1]

FROG is very easy to implement (the reference C version has only about 150 lines of code). Much of the code needed to implement FROG is used to generate the secret internal key; the internal cipher itself is a very short piece of code. It is possible to write an assembly routine of just 22 machine instructions that does full FROG encryption and decryption. The implementation will run well on 8 bit processors because it uses only byte-level instructions. No bit-specific operations are used. Once the internal key has been computed, the algorithm is fairly fast: a version implemented using 8086 assembler achieves processing speeds of over 2.2 megabytes per second when run on a 200 MHz Pentium PC.

Security

FROG's design philosophy is meant to defend against unforeseen/unknown types of attacks. Nevertheless, the very fact that the key is used as the encryption program means that some keys may correspond to weak encryption programs. David Wagner et al. found that 2−33 of the keys are weak and that in these cases the key can be broken with 258 chosen plaintexts.

Another flaw of FROG is that the decryption function has a much slower diffusion than the encryption function. Here 2−29 of keys are weak and can be broken using 236 chosen ciphertexts.

Notes

1. ^A detailed description of the cipher can be found [https://web.archive.org/web/20170708064547/http://www.grupolotusbrasil.com.br/grupoconceptprime.com.br/ftp.suporte/util/LIVROS%20E%20TREINAMENTOS/SEGURANCA/criptografia_diciplina/CIE/cd-rom/softwares/Sources/sources.pascal/frog/frog.htm here].

References

  • David Wagner, Niels Ferguson and Bruce Schneier, Cryptanalysis of FROG, in proceedings of the 2nd AES candidate conference, pp175–181, NIST, 1999  .
  • Dianelos Georgoudis, Damian Leroux and Billy Simón Chaves, The FROG Encryption Algorithm, June 15, 1998 [https://web.archive.org/web/20170708064547/http://www.grupolotusbrasil.com.br/grupoconceptprime.com.br/ftp.suporte/util/LIVROS%20E%20TREINAMENTOS/SEGURANCA/criptografia_diciplina/CIE/cd-rom/softwares/Sources/sources.pascal/frog/frog.htm].

External links

  • [https://web.archive.org/web/20170708064547/http://www.grupolotusbrasil.com.br/grupoconceptprime.com.br/ftp.suporte/util/LIVROS%20E%20TREINAMENTOS/SEGURANCA/criptografia_diciplina/CIE/cd-rom/softwares/Sources/sources.pascal/frog/frog.htm Specification of the FROG encryption algorithm]
{{Cryptography navbox | block}}

1 : Block ciphers

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/17 23:27:59