1-savol javobi:
Bu dastur ketma-ket qidiruv usulini ishlatadi va 1 dan n gacha bo'lgan sonlar ichidan ixtiyoriy
elementni topadi.
import random
def ketma_ket_qidiruv(n):
return random.randint(1, n)
# n o'zgartiruvchisiga qidirilayotgan oraliqni o'rnating
n = 10
natija = ketma_ket_qidiruv(n)
print(f"1 dan {n} gacha bo'lgan ixtiyoriy son: {natija}")
Bu dastur
random
modulidan foydalanadi va
randint(a, b)
funktsiyasi
orqali
a
va
b
orasidagi
ixtiyoriy butun sonni generatsiya qiladi. Ushbu dasturda
n
o'zgartiruvchisi 1 dan n gacha bo'lgan
sonlar orasidagi ixtiyoriy sonni olish uchun ishlatilgan.
2 -savol
javobi
MD5 (Message Digest Algorithm 5) Python tilida keng
tarqalgan
hashlib
moduli orqali
ishlatiladi. Bu modul yordamida matnlarni hesh qilish mumkin. Ammo MD5 hesh algoritmi
hozirgi kunda ishonchsiz bo'lgan va xavfsizligi haqida shubhalar mavjud. Biroq, agar siz MD5
heshni faqat o'rganmoqchi bo'lsangiz, quyidagi misolni ko'rishingiz mumkin:
import hashlib
def md5_heshlash(matn):
md5 = hashlib.md5()
md5.update(matn.encode('utf-8'))
return md5.hexdigest()
# F.I.SH. ni MD5 heshini hisoblash
fish = "F.I.SH."
hesh_qiymati = md5_heshlash(fish)
print(f"F.I.SH. MD5 hesh qiymati: {hesh_qiymati}")
Bu dastur
hashlib
modulini ishlatadi va
md5
obyektini yaratadi. Keyin, matnni
update
metodi orqali
utf-8
kodlash usuli bilan MD5 obyektiga yozadi.
hexdigest
metodi
yordamida esa MD5 hesh qiymatini olish mumkin.
Lekin, MD5 heshlarining xavfsizligi haqida ogohlantirish: MD5 hesh algoritmi
tizimlarni
qo'llab-quvvatlamasligi va ishonchsizligi sababli kuchli saldırlarga oziq bo'ladi. Bu
sababli, xavfsizlik maqsadlari uchun ko'p qatlamli hesh algoritmalarini ishlatish tavsiya
etiladi (masalan, SHA-256 yoki SHA-3).
3- savol javobi
Bu dastur
hashlib
modulini ishlatadi va
md5
obyektini yaratadi. Keyin, matnni
update
metodi orqali
utf-8
kodlash usuli bilan MD5 obyektiga yozadi.
hexdigest
metodi
yordamida esa MD5 hesh qiymatini olish mumkin.
import hashlib
def md5_heshlash(matn):
md5 = hashlib.md5()
md5.update(matn.encode('utf-8'))
return md5.hexdigest()
# F.I.SH. ni MD5 heshini hisoblash
fish = "F.I.SH."
hesh_qiymati = md5_heshlash(fish)
print(f"F.I.SH. MD5 hesh qiymati: {hesh_qiymati}")
Lekin, MD5 heshlarining xavfsizligi haqida ogohlantirish: MD5 hesh algoritmi tizimlarni
qo'llab-quvvatlamasligi va ishonchsizligi sababli kuchli saldırlarga oziq bo'ladi. Bu