Yo‘nalish: Axborot xavfsizligini boshqarish, kompyuter injinirengi
Download 1.35 Mb.
|
5-laboratoriya. Seazar shifrlash algoritmi. Vigenere shifrlash algoritmi (4)
- Bu sahifa navigatsiya:
- Bajarish jarayoni
- Online caesar cipher calculator
- Katta harfli matnlarni shifrlash
- TOPSHIRIQ
O‘zbekiston xalqaro islom akademiyasi 5-laboratoriya. Seazar shifrlash algoritmi. Vigenere shifrlash algoritmi. Fan: Algoritmlarni loyihalash Yo‘nalish: Axborot xavfsizligini boshqarish, kompyuter injinirengi Sezar shifrlash algoritmiBerilgan matnni shifrlash uchun bizga alfavitning nechta harf o`nga yoki chapga siljiganligini ifodalovchi butun son kerak bo'ladi. Shifrlash modulli arifmetika yordamida, avval harflarni raqamlarga aylantirish orqali ifodalanishi mumkin, sxema bo'yicha, A = 0, B = 1,…, Z = 25. Harfni n siljish bilan shifrlashni matematik tarzda tasvirlash mumkin. Bajarish jarayoniSezar shifrlash algoritmi: 1) Kiritish: - kichik harflar oraqali berilgan matn qatori;
2) Jarayon: - Berilgan matnni bir vaqtning o'zida bir belgidan o'tkazing. Har bir belgi uchun matnni shifrlash yoki parolini ochishimizga qarab, berilgan belgini qoidaga muvofiq o'zgartiring.Yaratilgan yangi qatorni qaytaring.Matn (string) va Shift qiymatini (integer) qabul qiladigan va shifrlangan matnni qaytaradigan dastur. Online caesar cipher calculatorhttps://www.mymathtables.com/calculator/digital/caesar-cipher-encript-decript-converter.html ASCII kodlash jadvaliKichik harfli matnlarni shifrlash#include #include using namespace std; string seazar(string matn, int n) { string natija = ""; for (int i = 0; i < matn.length(); i++) { natija += char(int((matn[i]) + n - 97) % 26 + 97); } return natija; } int main() { string text; cout<<"Matn kiriting (Kichik harflarda): "; getline(cin, text); int s; cout<<"Surishlar soni: "; cin>>s; cout << "Encryption= : " << seazar(text, s); return 0; } Katta harfli matnlarni shifrlash#include #include using namespace std; string seazar(string matn, int n) { string natija = ""; for (int i = 0; i < matn.length(); i++) { natija += char(int((matn[i]) + n - 65) % 26 + 65); } return natija; } int main() { string text; cout<<"Matn kiriting(Katta xarflarda): "; getline(cin, text); int s; cout<<"Surishlar soni: "; cin>>s; cout << "Encryption= : " << seazar(text, s); return 0; } Katta harfli matnlarni shifrlash#include #include using namespace std; string seazar(string matn, int n) { string alfKAT="ABCDEFGHIJKLMNOPQRSTUVWXYZ", alfkich="abcdefghijklmnopqrstuvwxyz"; string natija = ""; for (int i = 0; i < matn.length(); i++) { int found=alfKAT.find(matn[i]); if (found==-1){ int found=alfkich.find(matn[i]); natija += alfkich[(found+n)%26]; continue; } natija += alfKAT[(found+n)%26]; } return natija; } int main() { string text; cout<<"Matn kiriting (katta harflarda): "; getline(cin, text); int s; cout<<"Surishlar soni: "; cin>>s; cout << "Encryption= : " << seazar(text, s); return 0; } TOPSHIRIQ
Download 1.35 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling