Questions tagged [xtea]

In cryptography, XTEA (eXtended TEA) is a block cipher designed to correct weaknesses in TEA.

The cipher's designers were David Wheeler and Roger Needham of the Cambridge Computer Laboratory, and the algorithm was presented in an unpublished technical report in 1997 (Needham and Wheeler, 1997). It is not subject to any patents.

Like TEA, XTEA is a 64-bit block Feistel network with a 128-bit key and a suggested 64 rounds. Several differences from TEA are apparent, including a somewhat more complex key-schedule and a rearrangement of the shifts, XORs, and additions.

Presented along with XTEA was a variable-width block cipher termed Block TEA, which uses the XTEA round function, but Block TEA applies it cyclically across an entire message for several iterations. Because it operates on the entire message, Block TEA has the property that it does not need a mode of operation. An attack on the full Block TEA was described in (Saarinen, 1998), which also details a weakness in Block TEA's successor, XXTEA.

In 2004, Ko et al. presented a related-key differential attack on 27 out of 64 rounds of XTEA, requiring 220.5 chosen plaintexts and a time complexity of 2115.15 (Ko et al., 2004).

In 2009, Lu presented a related-key rectangle attack on 36 rounds of XTEA, breaking more rounds than any previously published cryptanalytic results for XTEA.

Sources:

14 questions
3
votes
1 answer

Need help using an implementation of XTEA in Java

I need to encrypt some String using XTEA algorithm, and found this code but I'm not sure how to use it and I get a java.lang.ArrayIndexOutOfBoundsException. Here's how I'm using it: XTEA mXTEA = new XTEA(); …
jul
  • 36,404
  • 64
  • 191
  • 318
2
votes
1 answer

Converting customized XTEA algorithm from JavaScript to Golang

I have currently converted the customized XTEA encryption from JavaScript code to Golang, but the Golang output is incorrect and not same as JavaScript output, here's my JavaScript source code: function sample(e, t) { for (var n = 32, r = 0; 0 <…
Colduction
  • 103
  • 7
1
vote
1 answer

Golang decrypt array Byte Xtea ECB algorithm

I have an input byte…
KordDEM
  • 177
  • 10
1
vote
2 answers

php xtea implementation (cfb)

I came accross a weird behaviour that i could not comprehend. I am using mcrypt xtea (cfb mode) to encrypt some data. Since php 7.2 is getting rid of mcrypt and since openssl does nor support Xtea, i had to implement the algorithm myself. The…
1
vote
1 answer

Getting byte[16] to uint32[4]

I'm trying to implement the XTEA algorithm in C#, and I've found a function to do that for me. However, there's a hurdle I have to pass. The function requires the data and the key be put into a UInt32 array. For the sake of time, I'll just post the…
Fuselight
  • 554
  • 6
  • 17
1
vote
2 answers

XTEA-function with std::vector

I'm trying to encrypt a std::vector with XTEA. Because using std::vector brings various benefits dealing with big amounts of data, i want to use it. The XTEA-Alogrithm uses two unsigned longs (v0 and v1) which take 64 bits of data, to encrypt…
1
vote
1 answer

XTEA decryption using Key in hex format

I am trying to decrypt data which was encrypted using XTEA algorithm. I have the 128-bit key. All the implementations I checked so far accept the key as a 16 char string (ASCII). However, my key is in hexadecimal format (32 chars) or 4 DWORDs. Is…
Neon Flash
  • 3,113
  • 12
  • 58
  • 96
0
votes
0 answers

a bytes-like object is required, not 'str' XTEA Algorithm

I have a big problem and I need your help. I have to encrypt my data with the xtea algorithm. I'm a completely beginner in python so I don't know any further. I put my two hashed passwords and some data together. Because the my xtea algorithm…
0
votes
1 answer

Challenge Response Authentication with XTEA

I have two ESP8266 microcontroller boards: Board A is running a HTTP server and is able to switch a relay by GET request from Board B, which is the HTTP client. To ensure that only Board B, and nobody else, will switch the relais on Board A, I want…
cdoub
  • 1
  • 1
0
votes
2 answers

Is there an XTEA encryption key that does not encrypt?

The title just about says it. The idea here is that I could disable encryption by choosing an appropriate key instead of disabling the encryption in the code.
nyholku
  • 456
  • 3
  • 15
0
votes
2 answers

ValueError: Key must be 128 bit long XTEA

I am trying to encrypt data and send it over a TCP socket to my server. However I am getting the error, ValueError: Key must be 128 bit long for the code below: from xtea import * from socket import * import datetime import time import…
bobdxcool
  • 91
  • 1
  • 1
  • 10
0
votes
0 answers

Get Abort Trap: 6 using fread

I'm having weird problems with my code. I'm using a xtea c code and an implementation of AES Random Number Generator available here. I'm generating a random message and trying to encrypt and than decrypt with this xtea code, but most of times I get…
0
votes
1 answer

XTEA testvectors in Python

I am trying to test this implementation of the xtea algorithm in Python. The only testvectors I have found are these. How can I test the output of the algorithm so that I can compare it bytewise? Which password/key should I choose? Which endian…
user937284
  • 2,454
  • 6
  • 25
  • 29
0
votes
1 answer

how to decrypt xxtea?

I am trying to se if I can use XXTEA in my application. The code that I found on Wikipedia code is only for encryption and there is no code for decryption. How can I decrypt with XXTEA? I am developing c++ in windows (visual studio 2012)
mans
  • 17,104
  • 45
  • 172
  • 321