Questions tagged [tea]

Tiny Encryption Algorithm (TEA) is a block cipher by David Wheeler and Roger Needham of the Cambridge Computer Laboratory; notable for its simplicity of description and implementation.

Tiny Encryption Algorithm (TEA) is a block cipher by David Wheeler and Roger Needham of the Cambridge Computer Laboratory; notable for its simplicity of description and implementation… typically a few lines of code.

TEA suffers from equivalent keys (Kelsey et al., 1996) and can be broken using a related-key attack requiring 223 chosen plaintexts and a time complexity of 232. The best structural cryptanalysis of TEA in the standard single secret key setting is the zero-correlation cryptanalysis breaking 21 rounds in 2121.5 time with less than the full code book.

The first published version of TEA was supplemented by a second version that incorporated extensions to make it more secure. Block TEA (sometimes referred to as XTEA) operates on arbitrary-size blocks in place of the 64-bit blocks of the original. A third version (XXTEA), published in 1998, described further improvements for enhancing the security of the Block TEA algorithm.

14 questions
19
votes
1 answer

Is TEA considered secure?

Wikipedia claims that the best attack on the surprisingly simple TEA block cipher, that isn't a related-key attack, has a time complexity of $2^{121.5}$. So despite how unsophisticated the cipher looks, if I use a KDF properly and don't use related…
ithisa
  • 1,111
  • 1
  • 10
  • 23
6
votes
1 answer

Low complexity implementation of a small blocksize cipher (< 64 bit)

Searching for "small blocksize cipher" finds a number of discussions on the topic, mostly refering to FPE. This one in particular suggests using AES as the round function of a Feistel network. The problem is on some embedded devices, the use of AES…
5
votes
1 answer

Why are there so many versions of the TEA block cipher?

Why are there so many types of TEA, for example TEA, XTEA, and XXTEA? What are the differences?
Wei Wen
  • 315
  • 3
  • 12
4
votes
0 answers

How sensitive is Tiny Encryption Algorithm (TEA) to the magic numbers?

If I needed to implement an encryption algorithm from memory, chances are I would try to implement: TEA https://en.wikipedia.org/wiki/Tiny_Encryption_Algorithm How sensitive is it to the magic number? If I replace it with a random value is security…
Meir Maor
  • 12,053
  • 1
  • 24
  • 55
4
votes
2 answers

Is this algorithm good enough for small radio messages?

This question is related to: How to implement security - authenticity/confidentiality/integrity for 6/14 bits radio messages? I am looking for a message that an attacker listening to the radio trafic will need at least 2 weeks to break it. I came…
4
votes
3 answers

Hash function in PBKDF2

From this excellent answer I learned (correct me if I am wrong) that when writing a block cipher with say key size 128 bit, one has to pad the password given (variable size) so that it becomes exactly the 128 bit that is needed. I had thought that…
Thomas
  • 1,184
  • 5
  • 16
  • 33
3
votes
3 answers

Is TEA suitable for encrypting/authenticating many short messages?

I know that TEA has its weaknesses, but is easy to implement. My question is whether it would be suitable for my use case: The main reason for using encryption is not so much secrecy, but authentication and protection against interference. I have a…
Oliver Mason
  • 133
  • 5
2
votes
1 answer

Differential cryptanalysis to ciphertext-only attacks on xxTEA

In my IoT project, I use the xxTEA encryption algorithm to encrypt my data. I use the same encryption key for all my packets because I don't have the possibility to do a key exchange between Alice and Bob. I want to know how many packets it would…
nonmerci
  • 21
  • 1
2
votes
2 answers

Tiny Encryption Algorithm (TEA) weakness

The Wikipedia states that different multiples of a magic constant are used to prevent simple attacks based on the symmetry of the rounds. The magic constant, 2654435769 or 0x9E3779B9 is chosen to be ⌊$2^{32}$/ϕ⌋, where ϕ is the golden ratio. And…
rj487
  • 123
  • 7
2
votes
2 answers

How do I check if the output of my CFB TEA encryption algorithm is correct?

I have an assignment question regarding the TEA cipher in CFB mode. After much difficulty and research, I managed to produce an 8-bit TEA / CFB encryption algorithm. My input is supposed to be a number in string format; for example; "12345678". This…
2
votes
1 answer

Padding for the TEA

Having finally figured out how to implement the Tiny Encryption Algorithm in C++, I wonder what to do about padding the key and the plaintext. I know that there are various ways of doing this, but is there a "default" way to do this or does one make…
Thomas
  • 1,184
  • 5
  • 16
  • 33
1
vote
0 answers

XTEA-based encryption to handle up to 128bit block size

As learning to be an electronic engineer, my lecturer has requested, based on the original Xtea, to develop the FPGA solution to run 128-bit block size and 128-bit key size cryptography. I have decided to solve it by dividing the 128-bit block into…
DT Nam LE
  • 11
  • 1
0
votes
1 answer

Should I split a 3MByte block into smaller blocks if using XXTEA?

Given that I have a 3MByte block of data, a random key and need to use XXTea, is there any advantage in splitting the block of data into smaller blocks and encoding / decoding each separately? Is there a sensible upper limit to the size of block as…
Ant
  • 101
  • 1
0
votes
1 answer

How many bits shift is a TEA encryption?

void encrypt (unsigned long* v, unsigned long* k) { unsigned long v0=v[0], v1=v[1], sum=0, i; /* set up */ unsigned long delta=0x9e3779b9; /* a key schedule constant */ unsigned long k0=k[0], k1=k[1], k2=k[2], k3=k[3];…
Jeugasce
  • 3
  • 1