Elektron pochta maxfiyligi


Download 25.1 Kb.
bet10/10
Sana21.04.2023
Hajmi25.1 Kb.
#1368467
1   2   3   4   5   6   7   8   9   10
Bog'liq
Elektron pochta maxfiyligi

Ma'lumotlarni o'g'irlash
Ma'lumotlarni o'g'irlash-bu tashkilotdan tashqarida (qo'lda yoki zararli dasturlardan foydalangan holda) ruxsatsiz ma'lumotlarni uzatish. Nozik ma'lumotlarning sizib chiqishi kompaniyaga qimmatga tushishi mumkin. Elektron pochta xavfsizligi shlyuzlari avtorizatsiyasiz bunday ma'lumotlarni yubormaslikka yordam beradi.
Zararli dasturlar
Zararli dasturlarning asosiy maqsadi kompyuterlar va kompyuter tizimlarini buzishdir. Ular orasida viruslar, qurtlar, shantaj dasturlari va josuslik dasturlari keng tarqalgan.
Spam
Spam-bu ommaviy ravishda va qabul qiluvchilarning roziligisiz yuboriladigan kiruvchi elektron pochta xabarlari. Kompaniyalar bunday xatlardan tijorat maqsadlarida foydalanadilar. Firibgarlar zararli dasturlarni tarqatish, odamlarni maxfiy ma'lumotlarni oshkor qilish yoki pul undirish uchun aldash uchun spamdan foydalanadilar.
Shaxsiylashtirish
Shaxsiylashtirish kiberjinoyatchilar elektron pochta orqali pul yoki ma'lumotlarni olish uchun o'zlarini boshqa shaxs yoki tashkilot sifatida ko'rsatganda sodir bo'ladi. Korporativ pochtani buzish ana shunday misollardan biridir. Firibgar kompaniya yoki uning mijozlari va sheriklaridan ma'lumotlarni o'g'irlash uchun o'zini xodim sifatida ko'rsatmoqda.
Fishing
Fishingda tajovuzkorlar qurbonlarni qimmatli ma'lumotlarni oshkor qilish uchun aldash uchun o'zlarini boshqa shaxs yoki tashkilot sifatida ko'rsatishadi. Masalan, ular kirish ma'lumotlari va boshqa nozik ma'lumotlarni shu tarzda olishlari mumkin. Bunday hujumlarning bir nechta turlari mavjud: maqsadli fishing, vishing va wayling.
1-dastur. Sezar usuli
Sezar usulida axborotlarni kodlash algoritmi bu harflarni belgilangan soncha oʻngga yoki chapga surish orqali ishlaydi. Masalan, agar 3 ta oʻngga surish boʻlsa, A harfi D ga, B harfi E ga, Z harfi C ga aylanadi. Bu algoritmdan foydalanib python dasturlash tilida dastur shakliga oʻtkazish uchun quyidagi kodni yozish mumkin:

```python

# Sezar usulida kodlash funksiyasi
def sezar_kodla(matn, surish):
# Kodlangan matnni saqlash uchun bo'sh satr
kodlangan = ""
# Matndagi har bir belgini tekshirish
for belgi in matn:
# Agar belgi katta harf bo'lsa
if belgi.isupper():
# Harfning ASCII kodi bilan ishlash
kod = ord(belgi)
# Surish sonini qo'shish
kod += surish
# Agar kod 90 dan katta bo'lsa (Z dan oshib ketgan bo'lsa)
if kod > 90:
# Kodni 26 ga bo'lish qoldig'iga tenglashtirish (A dan boshlash)
kod = kod % 90 + 64
# Kodni harfga aylantirib kodlangan satrga qo'shish
kodlangan += chr(kod)
# Agar belgi kichik harf bo'lsa
elif belgi.islower():
# Harfning ASCII kodi bilan ishlash
kod = ord(belgi)
# Surish sonini qo'shish
kod += surish
# Agar kod 122 dan katta bo'lsa (z dan oshib ketgan bo'lsa)
if kod > 122:
# Kodni 26 ga bo'lish qoldig'iga tenglashtirish (a dan boshlash)
kod = kod % 122 + 96
# Kodni harfga aylantirib kodlangan satrga qo'shish
kodlangan += chr(kod)
# Agar belgi harf emas bo'lsa (raqam yoki punktuatsiya belgisi bo'lsa)
else:
# Belgini o'zgaritirmasdan kodlangan satrga qo'shish
kodlangan += belgi
# Kodlangan matnni qaytarish
return kodlangan

# Sezar usulida dekodlash funksiyasi


def sezar_dekodla(matn, surish):
# Dekodlangan matnni saqlash uchun bo'sh satr
dekodlangan = ""
# Matndagi har bir belgini tekshirish
for belgi in matn:
# Agar belgi katta harf bo'lsa
if belgi.isupper():
# Harfning ASCII kodi bilan ishlash
kod = ord(belgi)
# Surish sonini ayirish
kod -= surish
# Agar kod 65 dan kichik bo'lsa (A dan pastroq bo'lsa)
if kod < 65:
# Kodni 26 ga bo'lish qoldig'iga tenglashtirish (Z dan boshlash)
kod = 90 - (65 - kod) + 1
# Kodni harfga aylantirib dekodlangan satrga qo'shish
dekodlangan += chr(kod)
# Agar belgi kichik harf bo'lsa
elif belgi.islower():
# Harfning ASCII kodi bilan ishlash
kod = ord(belgi)
# Surish sonini ayirish
kod -= surish
# Agar kod 97 dan kichik bo'lsa (a dan pastroq

Dasturning ishlashini ko'rsatish uchun quyidagi misolni keltirish mumkin:

```python
# Matn va surish sonini berish
matn = "Salom, dunyo!"
surish = 5
# Matnni kodlash
kodlangan = sezar_kodla(matn, surish)
# Kodlangan matnni chiqarish
print("Kodlangan matn:", kodlangan)
# Kodlangan matnni dekodlash
dekodlangan = sezar_dekodla(kodlangan, surish)
# Dekodlangan matnni chiqarish
print("Dekodlangan matn:", dekodlangan)
```
Bu dastur quyidagi natijani beradi:
```
Kodlangan matn: Vfqtj, iasbt!
Dekodlangan matn: Salom, dunyo!
```

2. Vijiner usuli

def vigenere_cipher(text, key, encrypt=True):
result = ""
key_index = 0

# Bu for loop matnni har bir belgisini o'qib chiqadi


for i in range(len(text)):
char = text[i]

# Matn belgisini shifrlash uchun kalit so'zning tartib raqamini hisoblash


key_char = key[key_index]
key_code = ord(key_char.lower()) - 97

# Shifrlash kerak bo'lgan alifbodagi harflarni aniqlash uchun


if char.isalpha():
# Harfning tartib raqamini aniqlash
char_code = ord(char.lower()) - 97

# Kalit so'zning tartib raqamiga mos keluvchi shifrlash ko'rsatkichini topish


if encrypt:
shift = (char_code + key_code) % 26
else:
shift = (char_code - key_code) % 26

# Yangi tartib raqamiga mos keluvchi harfni topish


new_char = chr(shift + 97)

# Asl harfning katta yoki kichikligini saqlash


if char.isupper():
new_char = new_char.upper()

# Kalit so'zning tartib raqamini o'chirish va key_index ni oshirish


key_index = (key_index + 1) % len(key)

# Yangi shifrlangan matnga qo'shish


result += new_char
else:
# Harf emasligini aniqlash va tekshirish
result += char
if not encrypt:
key_index = (key_index + 1) % len(key)

return result

Ushbu funksiya matn, kalit so'z va shifrlash ko'rsatkichlarini qabul qiladi, shifrlangan matnni qaytaradi. Matnda faqat alifbodagi harflar o'zgartiriladi, va boshqa belgilar oldingi ko'rinishi saqlanadi. Matndagi belgilarning tartib raqamlari 0 dan 25 gacha bo'lishi kerak. Misol uchun, "Hello, World!" matnini "key" so'zi bilan shifrlash, va o'zgartirishni bajarish uchun "encrypt" ko'rsatma qiymatini "True" ga o'zgartirish mumkin:
>>> vigenere_cipher("Hello, World!", "key", True)
'Dahoi, Jpvet!'

3. Trisemus shifrlash usuli


Trisemus shifrlash usuli bu Sezar usulining rivojlangan shakli boʻlib, bu yerda harflar uchun alohida shifrlash jadvali tuziladi. Jadvalni tuzish uchun quyidagi qoidalar amalga oshiriladi:

- Jadvalning birinchi qatoriga shifrlash kaliti yoziladi. Kalit boʻlishi mumkin boʻlgan istalgan soʻz yoki jumla boʻlishi mumkin.


- Kalitda takrorlanayotgan harflar faqat bir marta yoziladi.
- Keyin jadvalning qolgan qatorlariga alfavitdagi boshqa harflar yoziladi. Alfavitdagi harflar ham faqat bir marta yoziladi.
- Jadvalning oʻlchami 5x5 ga teng boʻlishi kerak. Agar alfavitdagi harflar jadvalga sig'masa, ba'zi harflarni birlashtirish mumkin. Masalan, I va J harflari bir katakchaga joylashtirilishi mumkin.

Misol uchun, agar shifrlash kaliti "PYTHON" boʻlsa, quyidagi jadval hosil boʻladi:

| P | Y | T | H | O |
| N | A | B | C | D |
| E | F | G | I/J | K |
| L | M | Q | R | S |
| U | V | W | X | Z |

Bu jadvaldan foydalanib, matnni shifrlash uchun quyidagi qoidalar amalga oshiriladi:

- Matndagi har bir harf jadvalda topiladi va uning oʻrniga jadvalning keyingi qatoridagi harf yoziladi. Agar harf jadvalning oxirgi qatorida boʻlsa, uning oʻrniga jadvalning birinchi qatoridagi harf yoziladi.
- Matndagi bo'shliqlar va punktuatsiya belgilari o'zgaritirilmaydi.

Misol uchun, agar matn "SALOM DUNYO" boʻlsa, quyidagi shifrlangan matn hosil boʻladi:

```text
YFQUT HCNZD
```

Shifrlangan matnni ochish uchun esa quyidagi qoidalar amalga oshiriladi:

- Shifrlangan matndagi har bir harf jadvalda topiladi va uning oʻrniga jadvalning oldingi qatoridagi harf yoziladi. Agar harf jadvalning birinchi qatorida boʻlsa, uning oʻrniga jadvalning oxirgi qatoridagi harf yoziladi.
- Shifrlangan matndagi bo'shliqlar va punktuatsiya belgilari o'zgaritirilmaydi.

Misol uchun, agar shifrlangan matn "YFQUT HCNZD" boʻlsa, quyidagi ochiq matn hosil boʻladi:



```text
SALOM DUNYO
```
Download 25.1 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling