• MD5 algoritmi chuqur
  • ta operatsiyadan to'rtta tur




    Download 1,82 Mb.
    bet4/18
    Sana12.02.2024
    Hajmi1,82 Mb.
    #155128
    1   2   3   4   5   6   7   8   9   ...   18
    Bog'liq
    MD5

    16 ta operatsiyadan to'rtta tur


    Ushbu jarayon 16 ta operatsiya uchun tsiklda davom etadi. Har safar yuqorida ko'rsatilgan ma'lumotlar ularning tegishli ishlashi uchun ishlatiladi. 17-operatsiya ikkinchi turning boshlanishi bo'lib, jarayon xuddi shunday davom etadi, faqat uning o'rniga G funksiyasidan foydalaniladi.
    Uchinchi raund davomida H funksiyasidan foydalanilganda, 33-operatsiyada vaziyat yana o'zgaradi. To'rtinchi raund 49-operatsiyada boshlanadi va uning o'rniga I funktsiyasi qo'llaniladi.
    To'rtinchi bosqich va uning 64-operatsiyasi yakunlangandan so'ng, natijalar biz yuqorida sanab o'tgan dastlabki ishga tushirish vektorlariga qo'shiladi. Ushbu hisob-kitobning natijasi bizning kiritishimizning yakuniy MD5 xeshidir.

    MD5 algoritmi chuqur


    Keling, F funktsiyasini o'rganishdan boshlaylik.

    F funktsiyasi


    F funksiyasi bitli amaldir (G, H va I funktsiyalari ham shunday). Bular asosan kompyuterlar uchun ikkilik bilan arifmetikani bajarishning tez va oson usullari. Kompyuterlar o'z ishlarini ikkilik tizimda bajarsa-da, biz asosan o'n oltilik tizimga yopishib olamiz, chunki uni o'qish osonroq. Agar sizga bu nima ekanligini chuqurroq tushunish kerak bo'lsa, MD5 haqidagi boshqa maqolamizdagi o'n oltilik bo'limiga qarang .

    F funktsiyasi:


    F(B, C, D) = (B∧C)∨(¬B∧D)
    Agar siz ilgari mantiqiy algebrani o'rganmagan bo'lsangiz , bu belgilar biroz chalkash bo'lishi mumkin. Boolean algebrasining to'liq muhokamasi bizni juda ko'p tangenslardan xalos qiladi, ammo bu asosan hisoblashda ko'p ishlatiladigan algebraning maxsus turi.
    Siz bilishingiz kerak bo'lgan belgilar quyidagilardir:

    • ∧– VA

    • ∨– YOKI

    • ¬ – YO‘Q

    • - XOR, bu asosan ikkalasini ham anglatadi, lekin ikkalasini ham emas.

    Endi biz Initializatsiya vektorlari bo'limida muhokama qilgan ishga tushirish vektorlari uchun raqamlarni kiritishimiz mumkin :
    F (89abcdef, fedcba98, 76543210) = (89abcdef VA fedcba98) YOKI (NOT-89abcdef VA 76543210)
    Ushbu hisobni onlayn mantiqiy kalkulyator bilan yakunlashimiz mumkin . Biroq, biz uni alohida bosqichlarga bo'lishimiz kerak, chunki bu kalkulyator tenglamani to'g'ri tartiblash uchun qavslardan foydalanishga imkon bermaydi.
    Agar siz buni o'zingiz sinab ko'rmoqchi bo'lsangiz:

    Javob Operatsiya natijasi yonida paydo bo'ladi:

    Download 1,82 Mb.
    1   2   3   4   5   6   7   8   9   ...   18




    Download 1,82 Mb.