M8 (shifr) - M8 (cipher) - Wikipedia

M8
Umumiy
DizaynerlarXitachi
Dan olinganM6
Shifrlash tafsiloti
Asosiy o'lchamlar64 bit
TuzilishiFeistel tarmog'i

Yilda kriptografiya, M8 a blok shifr tomonidan ishlab chiqilgan Xitachi 1999 yilda. 1997 yilda kiritilgan algoritm bo'yicha muzokaralar olib borilmoqda M6, 64 bitga yoki undan kattagacha kattalashtirilgan o'zgartirilgan kalit uzunligi bilan. Ushbu shifr bilan ishlaydi Feistel tarmog'i va kichik dasturlarda yoki 32 bitli qurilmalarda yuqori ko'rsatkichlarga erishish uchun mo'ljallangan. Masalan, = 10 dumaloq raqamlardan foydalangan holda, u C-tili va Pentium-I 266 MGts dan foydalanadigan dastur uchun 6K eshiklari va 25 MGts soat yoki 208 Mbit / s tezlikdagi maxsus apparatlar uchun 32 Mbit / s tezlikda shifrlash tezligini taqdim etadi. Tavsifning ochiqligi sababli, uni ochiq yoki ko'p sotuvchili dasturlarda ishlatmaslik kerak.

Algoritmning tuzilishi

M8 cipher.png tuzilishi

Asosiy tuzilish

Strukturaviy xususiyatlar shundan iboratki, shifr o'rnini bosuvchi-almashtirishga o'xshash blokga asoslangan DES. Hisob-kitoblarning 3 turi mavjud: 32-bitli dumaloq aylanish, 2-modulga qo'shimcha32 va 32 bitli XOR. Haqiqiy funktsiya har turda har xil bo'lishi mumkin. Kalit uning qiymati yordamida hisoblash uchun ishlatiladi va har bir turda aniq funktsiyani belgilaydi.

Dumaloq raqam, qaror va kengaytirish tugmalaridan foydalangan holda qaror qabul qilish jarayonidan so'ng algoritm asosiy funktsiyani oladi (e π) yoki (d π). Keyinchalik u kalit rejalashtiruvchisi (shuningdek, 256 ta kengayish tugmachasini va 64 bitli ma'lumotlar kalitini oladi), 256 bitli ijro kaliti va shifrlash / parolni hal qilish blokini ishlatadi.

Algoritmni hal qilish kaliti 24 bitdan iborat. Dastlabki 9 bit hisob-kitoblarni aniqlaydi: 0 2 ga qo'shishni anglatadi32moduli, 1 bit-XOR degan ma'noni anglatadi. 5 bitli boshqa 3 ta blok chap dumaloq aylanishlarni aniqlaydi. Algoritmni kengaytirish kaliti a, b va g ni aniqlaydigan 32 bit uchun 3 ta blokni yakunlaydi.

Asosiy funktsiya orasidagi farq faqat almashtirish tartibida bo'ladi: (e π) buni oxiriga etkazadi, (d π) - hisoblash blokining boshida.

Asosiy funktsiyalarning tuzilishi

Strukturada 9 ta hisoblash bloklari va 3 ta ixtiyoriy ravishda chap aylanalarni aylantirish bloklari mavjud.
U 64-bitli blok o'lchamiga va shuningdek, 64-bitli kalit uzunligiga ega. Bu katta bajarilish kalitiga bog'liq bo'lgan S-blokli Feistel shifridir.
Boshida (d π) uchun almashtirish mavjud. Keyin algoritm birinchi matnli blokni oladi va K yordamida 1-hisoblashni amalga oshiradiL, keyin u ixtiyoriy ravishda aylanishni amalga oshiradi va hisob-kitobga o'tadi 2. U takrorlanadi, lekin K ning o'rniga a mavjudL. Keyin u cal qilish uchun uses dan foydalanadi. 5. Keyin algoritm ilgari tavsiflangan, ammo K yordamida hisob-kitoblarni va aylanishni amalga oshiradiR. Bundan tashqari, calc.8 ni bajarish uchun γ dan foydalaniladi va olingan natija boshqa matnli blok bilan hisoblab chiqiladi. Xulosa qilib aytganda, algoritm bloklarni almashtiradi.
(E π) uchun bloklar almashtirish va hisoblash tartibini hisobga olmaganda bir xil bo'ladi.

Asosiy jadval

Bajarish tugmachasi ikkita 64 bitli K0-K3 bloklari va 64 bit ma'lumotlar tugmachalarining ikkita bir xil to'plamiga bo'linadigan 256 bitli kengaytirish tugmachasini oladi. Har bir tugmachani kengaytirish tugmasi (e Π [0-7]) gacha 32 bitli ma'lumotlar kaliti bilan hisoblash uchun ishlatiladi va chiqishda sakkizta 32-bitli kengaytiruvchi bloklar mavjud.

Shifrlash

Olingan kengayish kaliti 32-bitli 4 juft blokga bo'linadi. Ushbu blok 32 bit chapga va o'ngga bo'linadi, undan keyingi 4 ta qadam yordamida 64 bitli oddiy matnli bloklar bilan hisob-kitob qilish uchun foydalaniladi. So'ngra yana bir xil juft blok bloklari va davra davomida bir xil qadamlar yordamida shifrlangan matn yana shifrlanadi.

Parolni hal qilish

Shifrlangan matnni parolini hal qilish uchun xuddi shu amalni bajarish kifoya, ammo boshqa asosiy funktsiyadan foydalanish.

Ish tartibi

ISO 8372 yoki ISO / IEC 101116 da belgilangan 4 ta rejim mavjud:

  1. Elektron kod kitobi (ECB ) rejimi
    • Eng oddiy shifrlash rejimi. Ushbu oddiy matndan foydalanib, alohida-alohida shifrlanadigan bloklarga bo'linadi. Ushbu usulning nochorligi diffuziyaning etishmasligi. Bu shuni anglatadiki, ma'lumotlar etarli darajada yashirilmaydi va kriptografik protokollar uchun umuman foydalanish tavsiya etilmaydi.
  2. Shifrlarni blokirovkalash (CBC ) rejimi
    • Ushbu rejimda har bir oddiy matnli blok shifrlashdan oldin oldingi bilan XORed qilinadi. Har bir blok barcha oldingi bloklarga bog'liq bo'ladi va har bir xabarni noyob qilish uchun uni birinchi blokda boshlash vektoridan foydalanish kerak.
  3. Shifr bilan aloqa (CFB ) rejimi
    • Ushbu rejim rejimi, CBC ning yaqin qarindoshi, blok-shifrni o'z-o'zini sinxronlashtiruvchi oqim shifriga aylantiradi. Amaliyot juda o'xshash; xususan, CFB parolini echish teskari yo'nalishda amalga oshirilgan CBC shifrlash bilan deyarli bir xil.
  4. Chiqish haqidagi fikr (OFB ) rejimi
    • Ushbu rejim blokli shifrni sinxron oqim shifriga aylantiradi. U kalit oqim bloklarini hosil qiladi, so'ngra shifrlangan matnni olish uchun oddiy matn bloklari bilan XORed qilinadi. Xuddi boshqa oqim shifrlarida bo'lgani kabi, shifrlangan matnda bir oz o'girilib, xuddi shu joyda tekis matnda aylantirilgan bit hosil bo'ladi. Ushbu xususiyat ko'plab xatolarni tuzatuvchi kodlarni shifrlashdan oldin qo'llanilganda ham normal ishlashiga imkon beradi.
      XOR operatsiyasining simmetriyasi tufayli shifrlash va parol hal qilish bir xil.

Kriptoanaliz

  • M8 tugmachasida ham hisoblash moslamalari, ham raqamlar aniqlanadi. Agar dushman har bir turning tuzilishini bilsa, an'anaviy usullar yordamida M8 ni baholash mumkin bo'ladi. Hitachi taxminiga ko'ra, agar u 10 turdan kam bo'lsa, M8-ni shifrlash osonroq bo'ladi DES. Shuning uchun> 10 turdan foydalanish tavsiya etiladi. Dumaloqlashuvlar soni ortib borishi bilan kriptografik kuch kuchayadi, ammo esda tutish kerakki, dumaloq raqamlar kabi shifrlash tezligi teskari ravishda kamayadi. Agar dumaloqlarning tuzilishi noma'lum bo'lsa, unda faqat to'liq qidirishni amalga oshirish mumkin, bu juda ko'p dumaloq funktsiyalarning o'zgarishi tufayli samarasiz bo'ladi. Xulosa, algoritmning tezligi va xavfsizligi o'rtasida kelishuvga erishish kerak.
  • Kabi M6, u sezgir mod n kriptanaliz 1999 yilda Jon Kelsi, Bryus Shnayer va Devid Vagner tomonidan taklif qilingan. Bu shifrning ekvivalentlik sinflari (muvofiqlik sinflari) n moduli bo'yicha ishlashida tengsizlikni ishlatadigan kriptoanalizni ajratish shaklidir. Ushbu hujumlarda ikkilik qo'shish va bitni aylantirish moduli a Fermat Prime ishlatilgan. Ma'lum bo'lgan oddiy matn kalitni taxminan 2 ga tiklashga imkon beradi35 sinov shifrlash; "bir necha o'nlab" ma'lum matnlar buni taxminan 2 ga kamaytiradi31.
  • U zaif jadval jadvaliga ega bo'lganligi sababli, M8 a-ga parolini echishi kerak slayd hujumi, nisbatan kamroq ma'lum bo'lgan oddiy matnni talab qiladi mod n kriptanaliz, ammo kamroq hisob-kitoblar. Shifrda n bit bor va K dan tashkil topgan asosiy rejalashtiruvchidan foydalaniladi deb taxmin qilaylik1-KM har qanday uzunlikdagi kalitlar sifatida. Ushbu shifrlash usuli shifrlashning bir xil F funktsiyalariga bo'linadi. Ushbu funktsiyalar 1 turdan ko'proq shifrdan iborat bo'lishi mumkin, bu kalit-jadval bilan belgilanadi. Masalan, agar shifrda o'zgaruvchan tugmachalar jadvali ishlatilsa, u K o'rtasida o'zgarib turadi1 va K2, F.ga 2 ta tur bor. Har bir Kmen kamida bir marta paydo bo'ladi.
    Shifrning xususiyatlariga qarab, keyingi bosqichda 2 to'planadin / 2 oddiy va shifrlangan matn juftliklari. Tug'ilgan kun paradoksiga ko'ra, bu raqamdan ko'proq pul yig'ishni talab qilish kerak emas. Keyin ko'rsatilgan bu juftliklar (P, C), "slid" juftlarini topish uchun ishlatiladi, ular sifatida belgilanadi (P0, C0) (P1, C1). Har bir "toymasin" juftlikning xususiyati bor P0= F (P.)1) va C0= F (C)1). "Slid" juftligi o'z nomini oldi, chunki u bitta shifrlash orqali "siljidi". Buni bir martalik F funktsiyasini qo'llash natijasida tasavvur qilish mumkin.
    Ushbu juftlik aniqlangandan so'ng, ushbu juftlikdan kalitni osongina olish mumkin va oddiy matnli hujumlarga nisbatan zaifligi sababli shifr buziladi.
    Slayd juftligini topish jarayoni har xil bo'lishi mumkin, lekin bir xil asosiy sxemaga amal qiladi. Bittasi bitta takrorlashdan kalitni chiqarib olish nisbatan oson ekanligidan foydalanadi F. Oddiy matnli-shifrlangan juftlik juftligini tanlang, va tugmachalarning nima bilan mos kelishini tekshiring va bor. Agar ushbu tugmalar mos keladigan bo'lsa, bu toymasin juftlik; aks holda keyingi juftlikka o'ting.
    Bilan ochiq matnli shifrli bitta slayd juftligi kutilmoqda. Noto'g'ri pozitivlar soni algoritmning tuzilishiga bog'liq. Noto'g'ri pozitivlarni turli xil xabar-shifrlash juftligiga kalitlarni qo'llash orqali kamaytirish mumkin, chunki yaxshi shifr uchun juda past imkoniyat, noto'g'ri kalit> 2 xabarni to'g'ri shifrlashi mumkin.
    Ba'zan shifrning tuzilishi kerakli matnli-shifrli juftliklar sonini va shu bilan birga ishning katta hajmini sezilarli darajada kamaytiradi.
    Ushbu misollarning eng ravshanligi Feystel shifri tsiklik kalit jadvalidan foydalanish. Buning sababi berilgan qidirish a . Bu mumkin bo'lgan juft xabarlarni kamaytiradi pastga (xabarning yarmi aniqlanganligi sababli) va ko'pi bilan slid juftligini topish uchun oddiy matnli-shifrli matn juftliklari kerak.

Shuningdek qarang

Adabiyotlar

  • "ISO / IEC9979-0020 Ro'yxatdan o'tish yozuvlari" (PDF). Professor Kris Mitchell, Axborot xavfsizligi guruhi, Royal Holloway, London universiteti. ISO / IEC 9979 Kriptografik algoritmlar registri.
  • "Mod n Cryptanalysis, RC5P va M6 ga qarshi dasturlar bilan" (PDF). J. Kelsi, B. Shnayer va D. Vagner. Tez dasturiy ta'minotni shifrlash, Oltinchi Xalqaro seminar ishi (1999 yil mart), Springer-Verlag, 1999, 139-155 betlar.
  • E.K. Grossman va B. Takerman (1977). "Feystelga o'xshash shifrni tahlil qilish aylanuvchi kaliti bo'lmaganligi sababli zaiflashdi". IBM Thomas J. Watson tadqiqot hisoboti RC 6375. Iqtibos jurnali talab qiladi | jurnal = (Yordam bering)
  • Genri Beker va Fred Piper (1982). Shifrlash tizimlari: aloqa vositalarini himoya qilish. John Wiley & Sons. 263-267 betlar. ISBN  0-471-89192-4. (Grossman va Takerman tomonidan chop etilgan maqolaning qisqacha mazmuni mavjud)
  • Aleks Biryukov va Devid Vagner (1999 yil mart). Slayd hujumlari (PDF /PostScript ). 6-Xalqaro seminar Dasturiy ta'minotni tezkor shifrlash (FSE '99). Rim: Springer-Verlag. 245–259 betlar. Olingan 2007-09-03.
  • Aleks Biryukov va Devid Vagner (2000 yil may). Kengaytirilgan slayd hujumlari (PDF / PostScript). Kriptologiya sohasidagi yutuqlar, Ish yuritish EUROCRYPT 2000. Brugge: Springer-Verlag. 589–606 betlar. Olingan 2007-09-03.
  • S. Furuya (2001 yil dekabr). Oddiy matnli kriptanaliz bilan slayd hujumlari (PDF). Axborot xavfsizligi va kriptologiya bo'yicha 4-xalqaro konferentsiya (ICISC 2001). Seul: Springer-Verlag. 214-225 betlar. Arxivlandi asl nusxasi (PDF) 2007-09-26. Olingan 2007-09-03.
  • Eli Biham (1994). "Tegishli kalitlardan foydalangan holda kriptanalitik hujumlarning yangi turlari" (PDF / PostScript). Kriptologiya jurnali. 7 (4): 229–246. doi:10.1007 / bf00203965. ISSN  0933-2790. Olingan 2007-09-03.
  • M. Siet, G. Piret, J. Quisquater (2002). "Tegishli kalit va slayd hujumlari: tahlil, ulanish va takomillashtirish" (PDF / PostScript). Olingan 2007-09-04. Iqtibos jurnali talab qiladi | jurnal = (Yordam bering)CS1 maint: bir nechta ism: mualliflar ro'yxati (havola)