XTEA - XTEA

XTEA
XTEA InfoBox Diagram.svg
XTEA-дің екі Фейстель айналымы (бір цикл)
Жалпы
ДизайнерлерРоджер Нидхем, Дэвид Уилер
Алғаш жарияланған1997
АладыШАЙ
ІзбасарларTEA түзетілген блок
Шифр бөлшектері
Негізгі өлшемдер128 бит
Блок өлшемдері64 бит
ҚұрылымФейстель шифры
Дөңгелекайнымалы; ұсынылған 64 фейстель туры (32 цикл)
Үздік көпшілік криптоанализ
A қатысты кілт XTEA-ның 36 айналымына тіктөртбұрыш шабуыл (Лу, 2009)[бұлыңғыр ]

Жылы криптография, XTEA (Қарастырылған TEA) Бұл блоктық шифр әлсіздіктерін түзетуге арналған ШАЙ. The шифр дизайнерлер болды Дэвид Уилер және Роджер Нидхем туралы Кембридж компьютерлік зертханасы және алгоритм 1997 жылы жарияланбаған техникалық есепте ұсынылды (Needham and Wheeler, 1997). Ешқайсысына бағынбайды патенттер.[1]

TEA сияқты, XTEA - бұл 64 биттік блок Фейстель шифры а 128 биттік кілт және ұсынылған 64 раунд. TEA-дан бірнеше айырмашылықтар айқын, соның ішінде біршама күрделі негізгі кесте және ауысымдарды қайта құру, XOR және толықтырулар.

Іске асыру

Бұл стандарт C -ге шығарылған анықтамалық кодтан бейімделген бастапқы код қоғамдық домен Дэвид Уилер мен Роджер Нидхем, XTEA көмегімен шифрлар мен шифрды ашқан:

# қосу <stdint.h>/ * 64 бит деректерді v [0] және v [1] және 128 бит кілт [0] - кілт [3] * / алыңызжарамсыз шифрлау(қол қойылмаған int сан_қатар, uint32_t v[2], uint32_t const кілт[4]) {    қол қойылмаған int мен;    uint32_t v0=v[0], v1=v[1], сома=0, атырау=0x9E3779B9;    үшін (мен=0; мен < сан_қатар; мен++) {        v0 += (((v1 << 4) ^ (v1 >> 5)) + v1) ^ (сома + кілт[сома & 3]);        сома += атырау;        v1 += (((v0 << 4) ^ (v0 >> 5)) + v0) ^ (сома + кілт[(сома>>11) & 3]);    }    v[0]=v0; v[1]=v1;}жарамсыз дешифр(қол қойылмаған int сан_қатар, uint32_t v[2], uint32_t const кілт[4]) {    қол қойылмаған int мен;    uint32_t v0=v[0], v1=v[1], атырау=0x9E3779B9, сома=атырау*сан_қатар;    үшін (мен=0; мен < сан_қатар; мен++) {        v1 -= (((v0 << 4) ^ (v0 >> 5)) + v0) ^ (сома + кілт[(сома>>11) & 3]);        сома -= атырау;        v0 -= (((v1 << 4) ^ (v1 >> 5)) + v1) ^ (сома + кілт[сома & 3]);    }    v[0]=v0; v[1]=v1;}

Анықтамалық кодтың өзгерістері шамалы:

  • Анықтамалық бастапқы код қол қойылмаған ұзақ түрінен гөрі 64 бит таза uint32_t.
  • Анықтамалық бастапқы код пайдаланылмады const түрлері.
  • Анықтамалық бастапқы кодта дөңгелек функцияны мысалы ретінде жазу үшін артықшылықты жақшалар алынып тасталды, мысалы C дөңгелегі. v1 + = (v0 << 4 ^ v0 >> 5) + v0 ^ қосынды + k [қосынды >> 11 & 3];

«Num_rounds» параметрі үшін ұсынылған мән 64 емес, 32 құрайды, өйткені циклдің әр қайталануы екі Фейстель-шифр дөңгелегін жасайды. Қосымша жылдамдықты жақсарту үшін циклді sum + key [] мәндерін алдын-ала есептеу арқылы шығаруға болады.

Криптоанализ

2004 жылы Ко және басқалар. ұсынды қатысты кілт дифференциалды шабуыл XTEA-ның 64 айналымының 27-сінде, 2 талап етіледі20.5 таңдалған қарапайым мәтіндер және а уақыттың күрделілігі 2-ден115.15 (Ko және басқалар, 2004).

2009 жылы Лу XTEA-ның 36 айналымына қатысты тік бұрышты шабуыл жасады, бұл XTEA үшін бұрын жарияланған криптаналитикалық нәтижелерден гөрі көп раунды бұзды. Қағазда екі шабуыл, біреуі әлсіз кілт болжамымен және 2-ге сәйкес келеді64.98 деректер байттары және 2126.44 операциялар және 263.83 деректер байттары және 2104.33 сәйкесінше операциялар.[2]

TEA блоктаңыз

XTEA-мен бірге ені өзгермелі ені бар блок шифры ұсынылды TEA блоктаңыз, ол XTEA дөңгелек функциясын қолданады, бірақ BEA TEA оны бірнеше рет қайталау үшін бүкіл хабарлама бойынша циклдік түрде қолданады. Ол барлық хабарламада жұмыс істейтіндіктен, TEA Block оған қажет емес қасиетке ие жұмыс режимі. Толық BEA TEA-ға шабуыл туралы (Saarinen, 1998) сипатталған, сонымен бірге BEA TEA мұрагерінің әлсіздігі баяндалған, XXTEA.

Сондай-ақ қараңыз

  • RC4 - A ағын шифры бұл, XTEA сияқты, оны орындау өте қарапайым етіп жасалған.
  • XXTEA - TEA мұрагерін блоктаңыз.
  • ШАЙ - TEA прекурсорларын блоктаңыз.

Пайдаланылған әдебиеттер

  1. ^ Роджер М. Нидхем, Дэвид Дж. Уилер (қазан 1997). Шай кеңейту (PDF). Компьютерлік зертхана, Кембридж университеті (Техникалық есеп).CS1 maint: авторлар параметрін қолданады (сілтеме)
  2. ^ Лу, Цзицян (2 шілде 2008). «XTEA блоктық шифрының 36 айналымына қатысты тік бұрышты шабуыл». Халықаралық ақпараттық қауіпсіздік журналы. 8 (1): 1–11. дои:10.1007 / s10207-008-0059-9. ISSN  1615-5262.

Әрі қарай оқу

Сыртқы сілтемелер