kids encyclopedia robot

XXTEA facts for kids

Kids Encyclopedia Facts
Quick facts for kids
Corrected Block TEA (XXTEA)
Algorithm diagram for XXTEA cipher.svg
One round of XXTEA
General
Designers David Wheeler, Roger Needham
First published October 1998
Derived from Block TEA
Cipher detail
Key sizes 128 bits
Block sizes arbitrary, at least two words (64 bits)
Structure Unbalanced Feistel Network
Rounds depends on the block size; ~52+6*words (6-32 full cycles)
Best public cryptanalysis
XXTEA is vulnerable to a chosen-plaintext attack requiring 259 queries and negligible work.

Corrected Block TEA, often called XXTEA, is a special kind of secret code used in cryptography. It's a block cipher, which means it scrambles information in fixed-size chunks. XXTEA was created to fix problems found in an older code called Block TEA. Even though it's improved, experts have found ways to crack it using a lot of tries. You can learn more about this in the 'How it's cracked' section.

Who Made XXTEA?

XXTEA was created by two smart computer scientists, Roger Needham and David Wheeler. They worked at the Cambridge Computer Laboratory in the UK. They first shared their idea in a report in October 1998. This coding method is free to use because it's not protected by any patents.

How XXTEA Works

XXTEA is designed to work on different sizes of information, as long as it's a multiple of 32 bits (at least 64 bits). The number of steps it takes to scramble the data changes depending on how big the data is. It does at least six full cycles of scrambling.

The original Block TEA had a problem: it was too easy to figure out how the changes spread through the code. XXTEA fixes this by using a more complex way to mix up the information. It looks at the parts of the code right next to each other to make sure the changes spread out quickly and thoroughly.

XXTEA is often better than another code called XTEA when you have very long messages to encrypt.

Why Use Large Blocks?

The creators of XXTEA suggested using it for large blocks of information. Here's why they thought it was a good idea:

  • If you change just one tiny bit of information, about half of the entire block will change. This makes it very hard to see where the changes started.
  • You don't have to choose different ways to use the code; it's straightforward.
  • Even if you always change the data you send (like adding a message number), only identical messages will give the same result. This means very little secret information leaks out.
  • Always check the message number. This helps make sure that a random, fake message isn't accepted as real.
  • It's very hard to cut parts of a message and join them with other parts to trick the system.
  • If your messages are too long, you can break them into smaller pieces. Then you can chain them together, similar to how other codes like DES work.

Where XXTEA Is Useful

XXTEA is a very small and simple coding method. This makes it great for situations where computers have very limited power or memory. For example, it can be used in older computer systems or tiny computers like the Raspberry Pi, Banana Pi, or Arduino. These small devices don't have a lot of RAM (computer memory), so a small code like XXTEA is perfect.

How XXTEA Is Cracked

In 2010, a computer scientist named E. Yarrkov found a way to crack XXTEA. This method is called a chosen-plaintext attack. It means the attacker needs to choose specific messages to encrypt and then analyze the scrambled results.

This attack works on the full version of XXTEA with large blocks (212 bytes or more). It needs about 259 tries to find the secret key, but not much computer work. The attack uses a method called differential cryptanalysis, which looks for patterns in how small changes in the original message affect the scrambled message.

For very large blocks (212 bytes or more), the algorithm only performs 6 rounds of scrambling. By carefully choosing the input patterns, it's possible to detect and analyze how the changes spread, which helps in cracking the code.

See also

  • RC4: Another type of code that is also very simple to use.
  • XTEA: The code that came before Block TEA.
  • TEA: The very first version of this family of codes.
kids search engine
XXTEA Facts for Kids. Kiddle Encyclopedia.