سورس تمرین رمزگذاری سزار به پایتون python
farhadfery | پنجشنبه, ۱۰ بهمن ۱۳۹۸، ۰۳:۵۹ ب.ظ |
۰ نظر
سلام و درود
رمزنگاری سزار یک نوع رمز جانشینی هست که هر حرف در متن اصلی با یک حرف دیگر با فاصله ثابت جایگزین می شه. برای مثال با انتقال A با D، Dبا G و به همین ترتیب جانشین می شوند. نام این رمزنگاری از ژولیوس سزار گرفته شده است. او از این روش برای ارتباط با فرماندهان خود استفاده می کرد.

خوب، بریم سراغ کد
def casear_cipher(message, shift =7):
cipher_message = ""
for char in message:
new_char = char_shift(char, shift)
cipher_message = cipher_message + new_char
return cipher_message
def char_shift(char, shift):
#ord function convert a character to integer position ascii code
if char >= "a" and char <= "z":
base_ascii_pos = ord("a")
else:
base_ascii_pos = ord("A")
ascii_char_pos = ord(char)
absolute_char_pos = ascii_char_pos - base_ascii_pos
new_absolute_pos = (absolute_char_pos + shift) % 26
new_ascii_char_pos = (new_absolute_pos + base_ascii_pos)
new_char = chr(new_ascii_char_pos)
return new_char
def continue():
print
def main():
message = str(input("Enter your message:"))
cipher_message = casear_cipher(message)
print("new message is: ", cipher_message)
#######################
if __name__ == "__main__":
main()
end = str(input(''))
توضیحات اینکه:
برای انجام رمزنگاری: با تابع casear_cipher کاراکترهای رشته را توسط حلقه for تک تک به تابعی که کاراکتر جایگزین (char_shift) را می ده می فرستیم و به این صورت رشته کد می شه.
- ۹۸/۱۱/۱۰