Umumiy kriptograf algoritmlar


AES uchun genetik algoritmni amalga oshirishni sinovdan o‘tkazish



Yüklə 0,65 Mb.
səhifə14/20
tarix12.12.2022
ölçüsü0,65 Mb.
#120898
1   ...   10   11   12   13   14   15   16   17   ...   20
1 (2)

AES uchun genetik algoritmni amalga oshirishni sinovdan o‘tkazish

  1. Dastlabki populyatsiyalarning shakllanishi.

Dastlab shakllangan populyatsiya tasodifiy usulda kalitlar bilan to‘ldiriladi.
Population: 0
01111101001101001100000010011000001101001010001001100011110101001111001101011011011100110111110010011110010011110001101000100011
Population: 1
11101101011111111011111000110010101100111101110101111110011001011001101010001011011001101100010001001000111010100101111000001011
Population: 2
11000001101111100101011100001101010000110000110111011011100010010101000101010101000010110010000000111001000101000001001111001010
Population: 3
01100100101000100000010111001111000000000111100010011001010110101111011100000000101111101000000011101010111011110100101101011011
Dastlabki populyatsiyaning fitnes funktsiyasining qiymatlarini (1) formula bo‘yicha aniqlash mumkin (2-jadvalda ko‘rsatilgan)
Fitness = SumEqual / BlockLength (1)
Dastlabki aholi uchun fitness qiymati
2-jadval

Populyatsiya

Sinovdagi mos bitlar soni va asl shifrlangan matnlar (umumiy bitlardan)

Fitness funktsiyasi

Population: 0

56(128)

0.437500

Population: 1

64(128)

0.500000

Population: 2

60(128)

0.468750

Population: 3

65(128)

0.507812

Dastlabki aholi uchun eng yaxshi kalitni aniqlash
Dastlabki populyatsiyalarni shakllantirish natijalariga ko‘ra Population: 3 eng yaxshi fitness funktsiyasining 0,507812 qiymatiga ega. Population: 3 da yaratilgan kalit eng yaxshi kalit (Best key) sifatida qayd etiladi.
Keyin populyatsiya fitness funktsiyasi qiymati bo‘yicha saralanadi
3-jadval

Aholini saralashdan keyin

Aholisi

Fitness-funktsiyasi qiymati

Population: 0

Population: 3

0.507812

Population: 1

Population: 1

0.500000

Population: 2

Population: 2

0.468750

Population: 3

Population: 0

0.437500


Population: 0
01100100101000100000010111001111000000000111100010011001010110101111011100000000101111101000000011101010111011110100101101011011
Population: 1
11101101011111111011111000110010101100111101110101111110011001011001101010001011011001101100010001001000111010100101111000001011
Population: 2
11000001101111100101011100001101010000110000110111011011100010010101000101010101000010110010000000111001000101000001001111001010
Population: 3
01111101001101001100000010011000001101001010001001100011110101001111001101011011011100110111110010011110010011110001101000100011

  1. Avlodni shakllantirish uchun "ota-onalar" ni tanlash.

Ikki kishi tasodifiy tanlanadi. Ularning fitness funktsiyalari qiymatlari taqqoslanadi va tanlangan ikkitadan birinchi ota-ona sifatida eng yaxshi fitness funktsiyasi qiymatiga ega bo‘lgan shaxs tanlanadi.
Keyin ikkinchi ota-ona xuddi shu tarzda tanlanadi.
0.507812 fitness funktsiyasi qiymati bo‘lgan shaxs 1 ota-ona sifatida tanlandi. Xuddi shu tarzda keyingi ota-ona tanlandi. Fitness qiymati 0.468750.
Parents: 0, 2
Population: 0
01100100101000100000010111001111000000000111100010011001010110101111011100000000101111101000000011101010111011110100101101011011
Population: 2
11000001101111100101011100001101010000110000110111011011100010010101000101010101000010110010000000111001000101000001001111001010

  1. "Avlod" ning shakllanishi.

Keyin u kalitni tasodifiy bir nuqtaga bo‘lish orqali hosil bo‘ladi.
Bunday holda, yuqorida aytib o‘tilganidek, avlodlardan qaysi biri olinishini tanlash uchun qaysi ota-ona asosiy bo‘lishini tanlashingiz kerak. Qaysidir biri tasodifiy ravishda aniqlanadi.
Sinov holatida bo‘linish nuqtasi 18 bit bilan ko‘rsatilgan. 0 dan 18 bitgacha bo‘lgan ma'lumotlar Populyatsiyaning ota-onasidan olingan:
Ota-onalarning avlodlari: 0, 2:
01100100101000100001011100001101010000110000110111011011100010010101000101010101000010110010000000111001000101000001001111001010

  1. Tasodifiy genlarning mutatsiyasi.

Mutatsiya jarayonida bitlarning tasodifiy tanlovi ham amalga oshiriladi, bu algoritm parametri sifatida ko‘rsatilgan mutatsiya_rat ehtimolini hisobga olgan holda teskari bo‘ladi va tasodifiy son hosil qiladi:
Tasodifiylik yoki ma'lum bir yo‘lni bosib o‘tish uchun chumolini tanlash huquqi 0 dan RAND MAX (2147483647) gacha bo‘lgan tasodifiy sonni hosil qilish va (int) (mutation_rate RAND_MAX) bilan taqqoslash orqali ta'minlanadi. Agar tasodifiy son bu qiymatdan kamroq olinsa, u holda bit teskari bo‘ladi. Mutatsiya _rati 0,02 bo‘lsa, o‘rtacha ikki bit o‘zgarishini bildiradi.
Ota-onalarning avlodlari: 0, 2:
Mutatsiyadan oldin
01100100101000100001011100001101010000110000110111011011100010010101000101010101000010110010000000111001000101000001001111001010
Mutatsiyadan so‘ng
01100100100000100001011100001101010000110000110111011011100010010101000101011101000010110010000000111001000101000001001111001010

  1. Olingan avlodlarning fitnes funktsiyasi qiymatlarini aniqlash.

Birinchi avlod natijalariga ko‘ra, 0,539062 kishining boshlang‘ich populyatsiyasining fitness funktsiyasi qiymati eng yaxshi bo‘lib qoldi (4-jadval). Eng yaxshi kalit - bu ota-onalarning avlodlari: 0, 1
11101101011111111010010111001111010000000111100010011001010110101111011100000100111111101100001011101010111011110100101101011011

Keyingi avlod uchun fitnes funktsiyasi


4-jadval

Aholi

Sinov va asl nusxada mos keladigan bitlar soni
Shifrlanganmatnlar (barcha bitlardan)

Fitness-funktsiyasi

parents: 0, 2

67(128)

0.523438

parents: 0, 1

69(128)

0.539062



  1. Keyingi avlod populyatsiyasining shakllanishi.

Berilgan parametrlar bilan avlodlar, shuningdek, eng yaxshi fitness funktsiyasi ko‘rsatkichlariga ega bo‘lgan hozirgi avlodning ikki vakili keyingi avlodga o‘tishlari kerak.
Kutilgan natijalar sinov paytida olingan natijalar bilan mos keladi.
7. Delta parametriga erishish sharti bilan bitlarni tuzish.
Sinov maqsadi: delta parametriga erishilganda kalitdagi bitlar topilganidek aniqlanganligiga ishonch hosil qilish.
Bit belgilanadigan, kirish sifatida berilgan va sinov uchun yopilganligini aniqlash uchun delta parametri 0,6 ga teng. Bitlar oxirgi populyatsiyadagi barcha shaxslarning natijalariga qarab belgilanadi.
Algoritmning ishlashi natijasida 4 ta kalit qo‘lga kiritildi:

Yüklə 0,65 Mb.

Dostları ilə paylaş:
1   ...   10   11   12   13   14   15   16   17   ...   20




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin