Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Криптографиялық хэш-функция
Cryptographic hash function
Криптографияда, Tiger – Росс Андерсон мен Эли Бихамның 1995 жылы 64 биттік платформаларда тиімді жұмыс істеуі үшін жасаған криптографиялық хэш-функциясы. Tiger хэш-мәнінің ұзындығы 192 бит. 128 биттік және 160 биттік қысқартылған нұсқалары (Tiger/128 және Tiger/160 деп аталады) белгілі бір хэш ұзындығын талап ететін протоколдармен үйлесімділік үшін қолданылуы мүмкін. SHA-2 отбасынан айырмашылығы, ерекшелендіруге арналған бастапқы мәндер анықталмаған; олар жай ғана толық Tiger/192 хэш-мәнінің префикстері болып табылады. Tiger2 – бұл нұсқасында хабарлама MD4, MD5 және SHA-дағыдай 0x80 гексадецималды мәні бар байтты қосып толтырылады, Tiger-дегідей 0x01 байтымен емес. Басқа жағынан қарағанда, екі нұсқа да бірдей.
In cryptography, Tiger is a cryptographic hash function designed by Ross Anderson and Eli Biham in 1995 for efficiency on 64 bit platforms. The size of a Tiger hash value is 192 bits. Truncated versions (known as Tiger/128 and Tiger/160) can be used for compatibility with protocols assuming a particular hash size. Unlike the SHA 2 family, no distinguishing initialization values are defined; they are simply prefixes of the full Tiger/192 hash value. Tiger2 is a variant where the message is padded by first appending a byte with the hexadecimal value of 0x80 as in MD4, MD5 and SHA, rather than with the hexadecimal value of 0x01 as in the case of Tiger. The two variants are otherwise identical.
Алгоритм
Tiger Мерклей–Дамгард құрылысына негізделген. Бір бағытты сығымдау функциясы 64 биттік сөздермен жұмыс істейді, 3 сөздік күйді сақтайды және 8 сөздік деректерді өңдейді. 24 раундтан тұрады, ол XOR және қосу/азайту, айналымдар мен S-қораптарды қарау операцияларының үйлесімімен, сондай-ақ 8 кіріс сөзден 24 раундтық кілттерді шығаруға арналған күрделі кілттік жоспарлау алгоритмін пайдаланады. Бағдарламалық қамтамасызда жылдам болғанымен, Tiger-дің үлкен S-қораптары (әрқайсысы 256 64 биттік жазбадан тұратын төрт S-қорап, жалпы көлемі 8 КиБ) аппараттық құралдарда немесе микроконтроллерлерде іске асыруды қиындатады.
Tiger is based on Merkle–Damgård construction. The one way compression function operates on 64 bit words, maintaining 3 words of state and processing 8 words of data. There are 24 rounds, using a combination of operation mixing with XOR and addition/subtraction, rotates, and S box lookups, and a fairly intricate key scheduling algorithm for deriving 24 round keys from the 8 input words. Although fast in software, Tiger's large S boxes (four S boxes, each with 256 64 bit entries totaling 8 KiB) make implementations in hardware or microcontrollers difficult.
Қолданылуы
Tiger жиі Merkle hash tree түрінде қолданылады, онда ол TTH (Tiger Tree Hash) деп аталады. TTH Direct Connect және Gnutella файл алмасу желілерінде көптеген клиенттер қолданады және контенттің қолжетімділігін жақсарту үшін BitTorrent метафайлына қосылуы мүмкін. Tiger OpenPGP стандартына енгізуді қарастырды, бірақ RIPEMD 160 артықшылығына ие болды.
Tiger is frequently used in Merkle hash tree form, where it is referred to as TTH (Tiger Tree Hash). TTH is used by many clients on the Direct Connect and Gnutella file sharing networks, and can optionally be included in the BitTorrent metafile for better content availability. Tiger was considered for inclusion in the OpenPGP standard, but was abandoned in favor of RIPEMD 160.
OID
TIGER-дің OID-і жоқ деп көрсетілген, бірақ GNU кодтау стандарттары TIGER-ді OID 1.3.6.1.4.1.11591.12.2 ретінде тізімдейді. IPSEC тармағында HMAC TIGER-ге OID 1.3.6.1.5.5.8.1.3 тағайындалған. TTH үшін әлі ешқандай OID жарияланбады.
refers to TIGER as having no OID, whereas the GNU Coding Standards list TIGER as having OID 1.3.6.1.4.1.11591.12.2. In the IPSEC subtree, HMAC TIGER is assigned OID 1.3.6.1.5.5.8.1.3. No OID for TTH has been announced yet.
Байт реті
Tiger-дің спецификациясы оның нәтижесін қалай басып шығару керектігін анықтамайды, тек нәтижені ретімен келтірілген 64 биттік үш бүтін сан ретінде белгілейді. Автордың веб-сайтындағы "testtiger" бағдарламасы, нақты басып шығару тәртібін анықтаудың орнына, сынақ кодының оңай тестіленуін қамтамасыз ету үшін жасалған. Direct Connect және ADC протоколдары, сондай-ақ tthsum бағдарламасы кішкентай эндиан байт реттілігін қолданады, және авторлардың бірі осы реттілікті ұсынады.
The specification of Tiger does not define the way its output should be printed but only defines the result to be three ordered 64 bit integers. The "testtiger" program at the author's homepage was intended to allow easy testing of the test source code, rather than to define any particular print order. The protocols Direct Connect and ADC as well as the program tthsum use little endian byte order, which is also preferred by one of the authors.
Криптоанализ
MD5 немесе SHA 0/1-ден өзгеше, толық 24 айналымдық Tiger алгоритміне қарсы белгілі тиімді шабуылдар жоқ. MD5 өзінің күйін 512 биттік блок бойынша 64 қарапайым 32 биттік операциямен, ал SHA 1 – 80 операциямен өңдейді. Tiger 512 биттік блок бойынша осындай 144 операциямен күйін жаңартады, сонымен қатар үлкен S-қораптарын қолдану арқылы қосымша нығайтылады. Джон Келси мен Стефан Лакс 16 айналымдық Tiger алгоритміне соқтығысуды табуға бағытталған шабуылды жасады, оның уақыттық күрделілігі шамамен 244 қысылу функциясын шақыруға тең. Тағы бір шабуыл 20 айналымдық Tiger алгоритмінде 248 қысылу функциясын шақырудан кем жұмыс көлемімен жалған жақын соқтығысуларды табады. Флориан Мендель және авторлар тобы бұл шабуылдарды жақсарту арқылы 19 айналымдық Tiger алгоритміне соқтығысу шабуылын және 22 айналымдық жақын соқтығысу шабуылын сипаттады. Бұл шабуылдар тиісінше Tiger алгоритмінің қысылу функциясын 262 және 244 рет бағалауға тең жұмыс күшін қажет етеді.
Unlike MD5 or SHA 0/1, there are no known effective attacks on the full 24 round Tiger While MD5 processes its state with 64 simple 32 bit operations per 512 bit block and SHA 1 with 80, Tiger updates its state with a total of 144 such operations per 512 bit block, additionally strengthened by large S box look ups. John Kelsey and Stefan Lucks have found a collision finding attack on 16 round Tiger with a time complexity equivalent to about 244 compression function invocations and another attack that finds pseudo near collisions in 20 round Tiger with work less than that of 248 compression function invocations. Florian Mendel et al. have improved upon these attacks by describing a collision attack spanning 19 rounds of Tiger, and a 22 round pseudo near collision attack. These attacks require a work effort equivalent to about 262 and 244 evaluations of the Tiger compression function, respectively.