Python ile Sezar Şifreleme Algoritması (1 Viewer)

Bu algoritmada; mesajdaki her karakter, 'anahtar' değeri kadar ötelenmiş başka karakterle yer değiştirerek şifreli mesaj elde edilmektedir. Eğer anahtar değeri 2 ise orjinal...

Bu algoritmada; mesajdaki her karakter, 'anahtar' değeri kadar ötelenmiş başka karakterle yer değiştirerek şifreli mesaj elde edilmektedir.

Eğer anahtar değeri 2 ise orjinal mesajdaki her harf, alfadeki kendisinden sonraki harfle yer değiştirir. Yani orjinal mesajtadaki her harf, alfabedeki kendisinden iki sonraki harfle yer değiştirir.

Yani orjinal mesajdaki "A" -> "C", "B" -> "D" olur. O zaman şifreleme işleminde, orjinal mesajın her bir harfi çağırılarak ASCII kod değerine anahtar değeri eklenerek şifreleme gerçekleştirilmiş olur.

Burada dikkat edilmesi gereken nokta, örneğin sıradaki harf "Z" ise bunun ASCII konuda 2 eklendiğinde "B" harfinin ASCII kodunun elde edilemeyeceğidir. Bu sorun da 26'ya göre mod alma işlemiyle aşılır. Dolayısıyla Sezar şifreleme fonksiyonun matematiksel ifadesi e(m) = (m+a) mod 26 şeklindedir.

Örnek: Büyük harflerle girilen kelimeyi, belirtilen anahtara göre "Sezar şifreleme algoritması"yla şifreleyen programı yazın.

Çözüm:
Kod:
#Sezar Şifreleme
m=input("Kelime: "); sm=""; a=int(input("Anahtar: "))
for i in range(len(m)):
    sm+=chr((ord(m[i])-65+a)%26+65)
print("\nŞifreli Kelime: %s"%sm)

Sonuç

93lp7f1
 
💬 SpyHackerz Telegram — Anlık tartışmalar ve duyurular için katıl

Users who are viewing this thread

133,161Konular
3,282,520Mesajlar
319,376Kullanıcılar
zonsigma3169Son Üye
Üst Alt