XXTEA | это... Что такое XXTEA? (original) (raw)
XXTEA | |
---|---|
Создатель: | Дэвид Вилер |
Создан: | 1998 г. |
Опубликован: | 1998 г. |
Размер ключа: | 128 бит |
Размер блока: | 64 бит и более |
Число раундов: | зависит от размера блока 52 + 6 * кол-во 32-разрядных чисел в блоке6-32 полных циклов |
Тип: | Сеть Фейстеля |
XXTEA — расширение шифроалгоритма XTEA, опубликованное в 1998 году. Исправлена уязвимость в алгоритме, найденная Markuu-Juhani Saarinen. Отличительной особенностью алгоритма является также возможность зашифровки блоков любого кратного 32 битам размера (минимальный размер 64 бита), в то время как другие алгоритмы данного семейства TEA, XTEA, XTEA-3, Raiden и RTEA используют блоки фиксированного размера, равного двум или четырем 32-х битным числам.
Т.к. это блочный шифроалгоритм, где длина блока 64-бит, а длина данных может быть не кратна 64-битам, значения всех байтов дополняющих блок до кратности в 64-бит устанавливается в 0x01 .
Пример реализации
#define MX ( (((z>>5)^(y<<2))+((y>>3)^(z<<4)))^((sum^y)+(k[(p&3)^e]^z)) )
long btea(long* v, long n, long* k) { unsigned long z /* = v[n-1] /, y=v[0], sum=0, e, DELTA=0x9e3779b9; long p, q ; if (n > 1) { / Coding Part / z=v[n-1]; / Moved z=v[n-1] to here, else segmentation fault in decode when n < 0 */ q = 6+52/n ; while (q-- > 0) { sum += DELTA; e = sum >> 2&3 ; for (p=0; p<n-1; p++) y = v[p+1], z = v[p] += MX; y = v[0]; z = v[n-1] += MX; } return 0 ; } else if (n < -1) { /* Decoding Part */ n = -n ; q = 6+52/n ; sum = q*DELTA ; while (sum != 0) { e = sum>>2 & 3; for (p=n-1; p>0; p--) z = v[p-1], y = v[p] -= MX; z = v[n-1]; y = v[0] -= MX; sum -= DELTA; } return 0; } return 1; }
Безопасность
Существует эффективная дифференциальная атака на XXTEA и все шифры с аналогичной, опубликованная Elias Yarrkov. Впрочем, практическая эффективность атаки пока не доказана однозначно. [1]
Примечания
Ссылки
- David J. Wheeler and Roger M. Needham. «Correction to xtea.» Technical report, Computer Laboratory, University of Cambridge, October 1998 (PDF).
- Roger M. Needham and David J. Wheeler. «Tea extensions.» Technical report, Computer Laboratory, University of Cambridge, October 1997 (PDF).
Симметричные криптосистемы | |
---|---|
Поточный шифр | A3 • A5 • A8 • Decim • MICKEY • RC4 • Rabbit • SEAL • SOSEMANUK • Trivium • VMPC |
Сеть Фейстеля | ГОСТ 28147-89 • Blowfish • Camellia • CAST-128 • CAST-256 • CIPHERUNICORN-A • CIPHERUNICORN-E • CLEFIA • Cobra • DFC • DEAL • DES • DESX • EnRUPT • FEAL • FNAm2 • HPC • IDEA • KASUMI • Khufu • LOKI97 • MARS • NewDES • Raiden • RC5 • RC6 • RTEA • SEED • Sinople • TEA • Triple DES • Twofish • XTEA • XXTEA |
SP-сеть | 3-WAY • ABC • AES (Rijndael) • Akelarre • Anubis • ARIA • BaseKing • BassOmatic • CRYPTON • Diamond2 • Grand Cru • Hierocrypt-L1 • Hierocrypt-3 • KHAZAD • Lucifer • Present • Rainbow • SAFER • Serpent • SHARK • SQUARE • Threefish |
Другие | FROG • NUSH • REDOC • SHACAL • SC2000 |