תוכן עניינים:
וִידֵאוֹ: תוכנית הצפנת קיסר בפייתון: 4 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:11
צופן הקיסר הוא צופן עתיק ונמצא בשימוש נרחב שקל להצפין ולפענחו. הוא פועל על ידי העברת האותיות של האלף בית ליצירת אלפבית חדש לגמרי (ABCDEF יכול לעבור מעל 4 אותיות ויהפוך ל- EFGHIJ).
צופי קיסר אינם הצפנים המאובטחים ביותר שיש אך טובים למשימות קטנות כמו העברת פתקים סודיים או חיזוק סיסמאות מעט. זה ממש קל לפענח את הקוד, אבל זה יכול להיות מייגע להצפין קוד אחד אם אין לך את האלפבית המיוחד שנשנן.
כדי להקל על התהליך הזה, אנו יכולים להשתמש בכוחם של מחשבים, ליתר דיוק בשפת התכנות Python.
מדריך זה יראה לך כיצד ליצור תוכנית המירה הודעות לצופן לפי פקודתך.
אספקה
כל מה שאתה צריך הוא מתורגמן של פייתון: IDLE, Pycharm ו- Thonny הן כמה אפשרויות טובות בחינם (השתמשתי ב- Pycharm)
ידע בסיסי בפייתון
שלב 1: הצהרת משתנים וקבלת תשומות
כדי בעצם לאחסן את ערכי המחרוזת (טקסט) של האלף בית, הודעה, shift וכו ', עלינו להשתמש במשתנים. נתחיל בהכרזת המשתנים 'אלפבית', 'חלקי אחד', 'חלקי שני' ו'חדשהאלפבית '. כתבתי את שמות המשתנים ב- Camel Case בקוד שלי (המילה הראשונה היא אותיות קטנות ושנייה) אבל אתה יכול לכתוב את זה איך שאתה רוצה, כל עוד אתה זוכר לשנות את זה לאורך שאר הקוד.. למשתנה האלפבית יש את הערך "abcdefghijklmnopqrstuvwxyz". כל המשתנים האחרים מוגדרים ל- "", שהיא מחרוזת ריקה מכיוון שעדיין אין לנו את הערכים שלהם.
מה שזה עושה הוא הקמת המערכת החלקית, שבה אנו משתמשים כדי ליצור את השינוי. זה יוסבר בשלב מאוחר יותר.
לאחר מכן, עלינו לקבל את ההודעה ולשנות את הערך מהמשתמש. אנו משתמשים בפונקציית הקלט לשם כך. חלק זה של הקוד מבקש מהמשתמש הודעה ומספר להעביר את האלף בית לפי.
קוד:
אלפבית = "abcdefghijklmnopqrstuvwxyz"
partialOne = ""
partialTwo = ""
newAlphabet = ""
message = input ("אנא הכנס את ההודעה שברצונך לתרגם:").lower ()
key = int (קלט ("אנא הזן את המספר שברצונך להזיז לפי:"))
שלב 2: יצירת האלפבית החדש
עכשיו כדי ליצור את האלף -בית המוזר. לשם כך נשתמש במערכת החלקית. המערכת החלקית היא המקום שבו המחשב מפצל את האלף בית לשני חלקים (דרך מפוארת לומר חלקים). החלק הראשון הוא ארוך אם כי אמרת לתוכנית לעבור, והשני הוא השאר. המחשב מחליף את החלקים. זה בדיוק מה שהקוד עושה, יחד עם המשפט הראשון, שאומר שאם השינוי הוא 0, האלף בית החדש והאלף בית הישן זהים מכיוון שאתה לא מחליף כלום.
לדוגמה:
רצף - 123456789
חלק חלקי - 123; חלק שני - 456789
רצף חדש - 456789123
קוד:
אם מפתח == 0:
newAlphabet = אלפבית
מפתח elif> 0:
partialOne = alphabet [: key]
partTwo = alphabet [key:]
newAlphabet = partialTwo + partialOne
אַחֵר:
partialOne = אלפבית [:(26 + מקש)]
partTwo = אלפבית [(26 + מקש):]
newAlphabet = partialTwo + partialOne
שלב 3: העברת ההודעה
עכשיו יש לנו את האלף בית והאלף בית החדש. כל שנותר הוא להעביר את ההודעה לקוד.
ראשית, הגדרנו משתנה חדש ונקרא לו 'מוצפן' והגדרנו אותו "". לאחר מכן אנו כותבים לולאה ממש מסובכת אשר בודקת כל אות בהודעה ומעבירה אותה לאות החדשה. זה פלט את התוצאה ושם יש לך את זה, קוד שהומר בהצלחה!
קוד:
encrypted = "" עבור message_index בטווח (0, len (message)):
if message [message_index] == "":
מוצפן+= ""
עבור alphabet_index בטווח (0, len (newAlphabet)):
אם הודעה [message_index] == אלפבית [alphabet_index]:
מוצפן+= newAlphabet [alphabet_index]
הדפסה (מוצפנת)
שלב 4: נוסף
מצורף קובץ הקוד.
מוּמלָץ:
שימוש בפייתון ללימוד פריסות מקלדת שאינן אנגלית: 8 שלבים
שימוש בפייתון כדי ללמוד פריסות מקלדת שאינן אנגלית: היי, אני ג'וליין! אני סטודנט למדעי המחשב והיום אני הולך להראות לך כיצד אתה יכול להשתמש בפייתון כדי ללמד את עצמך את פריסת המקלדת של שפה שאינה אנגלית. הרבה לימוד שפות קורה בימינו באינטרנט, ודבר אחד שאנשים יכולים להגיב
ניסויים ברישום נתונים מתקדם (שימוש בפייתון): 11 שלבים
ניסויים ברישום נתונים מתקדם (שימוש ב- Python): יש הרבה מדריכים לרישום נתונים, כך שכאשר רציתי לבנות פרויקט רישום משלי הסתכלתי סביב על חבורה. חלקם היו טובים, חלקם לא כל כך הרבה, אז החלטתי לקחת כמה מהרעיונות הטובים יותר ולהכין יישום משלי. רזולוציה זו
משקיף לחות וטמפרטורה באמצעות פטל פטל עם SHT25 בפייתון: 6 שלבים
משקיף לחות וטמפרטורה באמצעות פטל פטל עם SHT25 בפייתון: בהיותנו חובב פטל פאי, חשבנו על כמה ניסויים מרהיבים יותר בעזרתו. בקמפיין זה נכין משקיף לחות וטמפרטורה המודד לחות יחסית וטמפרטורה באמצעות פטל פטל. ו- SHT25, Humidi
כיצד להכין תוכנית אינטגרציה מספרית בפייתון: 10 שלבים
כיצד להכין תוכנית אינטגרציה מספרית בפייתון: זוהי הדרכה כיצד ליצור ולהריץ תוכנית שתעריך אינטגרלים מוגדרים באמצעות אלגוריתם אינטגרציה מספרי. חילקתי את השלבים לשלושה חלקים: הבנת האלגוריתם שישמש לביצוע התוכנית, קידוד
הצפנת כונן USB: 7 שלבים
הצפנת כונן USB: אני אלווה אותך בשלבים הדרושים להצפנת כונן USB באמצעות כלי ההצפנה החינמי TrueCrypt. במדריך זה אשתמש במערכת Windows XP כדוגמה, אך TrueCrypt יפעל גם על לינוקס ו- OS X