Mündəricat:
- Təchizat
- Addım 1: Dəyişənlərin elan edilməsi və Girişlərin alınması
- Addım 2: Yeni Əlifbanın Yaradılması
- Addım 3: Mesajın dəyişdirilməsi
- Addım 4: Əlavə
Video: Pythonda Sezar Şifreleme Proqramı: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Sezar Şifrəsi, şifrələndirmək və deşifr etmək asan olan qədim və geniş istifadə olunan bir şifrədir. Tamamilə yeni bir əlifba yaratmaq üçün əlifbanın hərflərini dəyişdirərək işləyir (ABCDEF 4 hərfin üzərinə keçə bilər və EFGHIJ olardı).
Sezar Şifrələri oradakı ən etibarlı şifrələr deyil, gizli qeydləri ötürmək və ya parolları bir az da gücləndirmək kimi kiçik işlər üçün əladır. Kodu deşifr etmək çox asandır, ancaq xüsusi əlifbanı yadda saxlamısınızsa, onu şifrələmək yorucu ola bilər.
Bu prosesi asanlaşdırmaq üçün kompüterlərin gücündən, daha konkret olaraq Python proqramlaşdırma dilindən istifadə edə bilərik.
Bu Təlimat, əmrinizlə mesajları şifrəyə çevirən bir proqramın necə yaradılacağını göstərəcək.
Təchizat
Bir Python tərcüməçisinə ehtiyacınız var: IDLE, Pycharm və Thonny yaxşı, pulsuz seçimlərdir (Pycharm istifadə etdim)
Python haqqında əsas biliklər
Addım 1: Dəyişənlərin elan edilməsi və Girişlərin alınması
Əlifba, mesaj, keçid və s. Simli (mətn) dəyərlərini əslində saxlamaq üçün dəyişənlərdən istifadə etməliyik. Dəyişənləri 'əlifba', 'partialOne', 'partialTwo' və 'newAlphabet' elan etməklə başlayırıq. Kodumda Camel Case dəyişənlərinin adlarını yazdım (ilk söz kiçik və ikinci böyük hərfdir), amma kodun qalan hissəsində də dəyişdirməyi unutmayın, istədiyiniz kimi yaza bilərsiniz.. Əlifba dəyişəninin "abcdefghijklmnopqrstuvwxyz" dəyəri var. Digər dəyişənlərin hamısı "" olaraq təyin olunur, bu hələ dəyərlərinə sahib olmadığımız üçün boş bir sətirdir.
Bunun etdiyi şey, əslində dəyişikliyi yaratmaq üçün istifadə etdiyimiz Qismən sistem qurmaqdır. Bu sonrakı mərhələdə izah ediləcək.
Bundan sonra mesajı almalı və istifadəçidən dəyər dəyişdirməliyik. Bunu etmək üçün giriş funksiyasından istifadə edirik. Kodun bu hissəsi istifadəçidən əlifbanı dəyişdirmək üçün bir mesaj və nömrə tələb edir.
KOD:
əlifba = "abcdefghijklmnopqrstuvwxyz"
partialOne = ""
partialTwo = ""
newAlphabet = ""
message = input ("Zəhmət olmasa tərcümə etmək istədiyiniz mesajı daxil edin:").lower ()
key = int (giriş ("Zəhmət olmasa dəyişdirmək istədiyiniz nömrəni daxil edin:"))
Addım 2: Yeni Əlifbanın Yaradılması
İndi köçürülmüş əlifba yaratmaq üçün. Bunun üçün qismən sistemdən istifadə edəcəyik. Qismən sistem, kompüterin əlifbanı iki hissəyə böldüyü yerdir (hissələri söyləmək üçün zövqlü bir yol). Birinci hissə, proqramın keçməsini söylədiyiniz müddətdir, ikincisi isə qalan hissədir. Kompüter hissələri dəyişdirir. Kod dəyişikliyi 0 olarsa, heç bir şeyi dəyişdirmədiyiniz üçün yeni əlifba ilə köhnə əlifbanın eyni olduğunu söyləyən ilk bəyanatla birlikdə tam olaraq budur.
Misal üçün:
Ardıcıllıq - 123456789
Qismən - 123; İkinci hissə - 456789
Yeni Sıra - 456789123
KOD:
açar == 0 olarsa:
newAlphabet = əlifba
elif açarı> 0:
partialOne = əlifba [: açar]
partialTwo = əlifba [açar:]
newAlphabet = partialTwo + partialOne
başqa:
partialOne = əlifba [:(26 + düymə)]
partialTwo = əlifba [(26 + düymə):]
newAlphabet = partialTwo + partialOne
Addım 3: Mesajın dəyişdirilməsi
İndi bizim əlifbamız və yeni əlifbamız var. Yalnız mesajı koda çevirmək qalır.
Birincisi, yeni bir dəyişən təyin edirik və onu 'şifrələnmiş' adlandırırıq və "" olaraq təyin edirik. Sonra mesajdakı hər hərfi yoxlayan və yeni hərfə keçirən həqiqətən mürəkkəb bir döngə yazırıq. Nəticəni çıxarır və orada uğurla çevrilən bir kod var!
KOD:
encrypted = "", message_index aralığında (0, len (mesaj)):
əgər mesaj [message_index] == "" olarsa:
şifrələnmiş+= ""
alfabe_index aralığında (0, len (newAlphabet)):
əgər mesaj [message_index] == əlifba [alfabe_index]:
şifrələnmiş+= yeni Əlifba [əlifba_indeksi]
çap (şifrələnmiş)
Addım 4: Əlavə
Kod faylı əlavə olunur.
Tövsiyə:
Pythonda OpenCV istifadə edən QR Kod Skaneri: 7 addım
PyCon-da OpenCV-dən istifadə edən QR Kod Skaneri: Bugünkü dünyada, məhsul qablaşdırmasından Online Ödənişlərə qədər demək olar ki, hər yerdə QR kodu və Barkodun istifadə edildiyini görürük və indi menyunu görmək üçün restoranda belə QR kodları görürük. böyük bir fikir olduğuna şübhə edirəm. Amma heç varmısan
Pythonda SHT25 ilə Raspberry Pi istifadə edərək Nəmlik və İstilik Müşahidəçisi: 6 addım
Python'da SHT25 ilə Raspberry Pi istifadə edən Rütubət və Temperatur Müşahidəçisi: Raspberry Pi üçün bir həvəskar olaraq, onunla daha möhtəşəm təcrübələr düşündük. və SHT25, Humidi
OpenCV istifadə edərək Pythonda Rəng Algılama: 8 Addım
OpenCV istifadə edərək Pythonda Rəng Algılama: Salam! Bu təlimat, openCV kitabxanasından istifadə edərək pythonda bir şəkildən müəyyən bir rəngin necə çıxarılacağını izah etmək üçün istifadə olunur. Bu texnikada yenisinizsə, narahat olmayın, bu təlimatın sonunda öz rənginizi proqramlaşdıra biləcəksiniz
ISU Tələbəsi olaraq Pulsuz Proqramı Necə Yükləmək olar (Microsoft, Adobe və Təhlükəsizlik Proqramı: 24 addım
ISU Tələbəsi olaraq Pulsuz Proqramı Necə Yükləmək olar (Microsoft, Adobe və Təhlükəsizlik Proqramı: Adobe üçün: 1 -ci addıma keçin. Microsoft üçün: 8 -ci addıma keçin. Təhlükəsizlik üçün: 12 -ci addıma keçin. Azure üçün: 16 -cı addıma keçin
Pythonda Nömrəli İnteqrasiya Proqramı Necə Hazırlanır: 10 Addım
Pythonda Nömrəli İnteqrasiya Proqramı Necə Hazırlanır: Bu, ədədi inteqrasiya alqoritmindən istifadə edərək müəyyən inteqralları qiymətləndirəcək bir proqramın necə yaradılacağı və işlədiləcəyinə dair bir dərsdir. Addımları 3 hissəyə ayırdım: proqramı hazırlamaq üçün istifadə ediləcək alqoritmi başa düşmək, kodlaşdırmaq