Ushbu usul xotirasiz yondashuvga asoslanadi va u hech qanday juftlikni saqlamasdan, mos xususiyatni qondiradigan to'g'ri juftlarni yaratish uchun fitnes funksiyasidan foydalanish mumkin degan fikrdan foydalanadi. Tegishli sonli juftlarni yaratgandan so'ng, biz bir qator pastki kalitlarni olamiz. Quyidagi teoremaga ko'ra, eng tez-tez uchraydigan pastki kalit maqsadli pastki kalit bo'ladi.
Teorema 2. ΩP va ΩT mos ravishda asosiy xarakteristikaning kirish va chiqish juftligi bo'lsin. U holda har qanday juft P, P ∗ shundayki, ΩP =P⊕P ∗, a bilan shifrlangan.
DES-8, to T`=T⊕T ∗ to'g'ri juftlik. Shunga ko'ra, bunday to'g'ri juftlik tomonidan berilgan muvofiqlik funksiyasini maksimal darajada oshiradi:
Muvofiqlik
Rasm 1. 5-raund xarakteristikasi ehtimollik bilan
T=405C0000 04000000x
Bu yerda Hd(ΩT , T) orasidagi Hamming masofasi
va T ` esa blok uzunligi. Ushbu funktsiya DESga o'xshash tizimlarni buzish uchun genetik algoritmlar uchun fitnes funktsiyasi sifatida muvaffaqiyatli ishlatilishi mumkin.
Isbot. Agar P, P∗ to'g'ri juft bo'lsa, ΩT=T � bo'ladi. Shuning uchun Hd(ΩT , T �) = 0. Shuningdek, H d(ΩT , T �)
kamayganda to‘g‘ri juftlikning kutilishi ortadi.
Har bir o'ng juftlik uchun ΩP =P⊕P ∗ mos keladigan T va T∗ shifrlangan matn juftligi mavjud bo'lib, T`= T⊕T ∗ farqi mavjud. 2-rasmdagi T’ ning o‘ng yarmi R’, chap tomoni esa L’. Har bir S-quti uchun K8 da sabab shartni qondiruvchi mos keladigan 6 bitli SK mavjud
Shunday qilib, T→QMuvofiqlik(ΩT, T) va moslik masofalar kamayishi bilan monoton ravishda ortadi. Keyin, 1-teoremada bo'lgani kabi, bu sxemalar soni moslik ortishi bilan ortib borayotganini anglatadi va bu teoremani isbotlaydi.
Quyidagi algoritm genetik jihatdan kerakli to'g'ri juftlarni yaratish uchun ishlatilishi mumkin.
Rasm 3. 2-raund xarakteristikasi ehtimollik bilan.
4.1 YJKT algoritmi (yaratilgan juftlik kriptotahlili)
Kirish: ikkita ochiq matnning tegishli xarakteristikaga nisbatan farqi.
Chiqish: bu kalitning ba'zi bitlari. Jarayon:
Har bir individual (xromosoma) birinchi ochiq matn P sifatida joylashgan boshlang'ich populyatsiyani yarating.
2) Har bir xromosoma uchun bajaring
Ikkinchi ochiq matnni baholang P∗= ΩP
⊕P, bu erda ΩP - xarakterli farq.
T`=T⊕T ∗ shifrlangan matn juftligini oling.
Xemming masofasini baholang H d(ΩT , T �).
Ikki oʻlchovli jadval hosil qiling τ=<εS,ςS >,
bu yerda ε S kutilayotgan pastki kalit va ς S unga mos keladigan hisoblagichdir. Barcha hisoblagichlarni nolga qo'ying.
n
Muvofiqlik funksiyasini hisoblang Muvofiqlik(ΩT , T �) = 1− Hd (ΩT ,T ) ,
bu yerda joriy populyatsiyadagi har bir shaxs uchun tizim blokining uzunligi.
Agar muvofiqlik qiymati 0,5 dan katta bo'lsa, barcha S-qutilarga nisbatan sabab holatini sinab ko'ring.
Agar sababchi shart qondirilsa
Jadvaldan har bir S-quti uchun τ pastki kalitlarini ishlab chiqing.
Oxirgi davra pastki kalitida (barcha S-qutilari bilan bog'langan) paydo bo'lishi mumkin bo'lgan barcha mumkin bo'lgan bitlarni yarating, bitta pastki kalitni tanlab, τ jadvalidagi asosiy S-quti uchun εS Bunday bitlarni σ bilan belgilang.
Har bir σ uchun mos keladigan hisoblagich ςS ni oshiring.
Krossover operatsiyasini qo'llang.
Agar kerak bo'lsa, mutatsiya operatsiyasini qo'llang.
Keyingi populyatsiyani yarating.
ς opt maksimal qiymatining hisoblagichini olish uchun ii-bosqichni takrorlang. Bunday hisoblagich σ opt bilan bog'langan, bu oxirgi tur pastki kalit uchun to'g'ri kutishdir.
YJKT ning DES-8 ga qo'llanilishi
Bu yerda DES-8 kriptoanaliz ko'rib chiqiladi. Sakkizta S-qutining har biri uchun 64-bitli xromosomani aniqlash uchun genetik algoritm, YJKT ishlatiladi. Ikki raundli xarakteristikani qo'llash orqali ΩP = 1960000000000000x ehtimollik≈1/234 (3-rasmga qarang). Shunday qilib, S1, S2 va S3 qutilari uchun K8 da to'g'ri 18 bitni hisoblash mumkin. Hd(ΩT,T�) ΩP va FP−1(T�) ni o‘lchaydi. Birinchi uchta S-quti uchun sabab sharti qondiriladi.
Do'stlaringiz bilan baham: |