Sadržaj:
- Pribor
- Korak 1: Deklariranje varijabli i dobivanje unosa
- Korak 2: Stvaranje nove abecede
- Korak 3: Promjena poruke
- Korak 4: Dodatni
Video: Cezarov program za šifriranje u Pythonu: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:32
Cezarova šifra je drevna i široko korištena šifra koja se lako šifrira i dešifrira. Djeluje tako da premjesti slova abecede kako bi stvorio potpuno novu abecedu (ABCDEF bi mogao pomaknuti preko 4 slova i postati EFGHIJ).
Caesar Ciphers nisu najsigurnije šifre, ali su dobre za male zadatke poput prenošenja tajnih bilješki ili jačanja lozinki. Dešifriranje koda je zaista jednostavno, ali može biti dosadno šifrirati ga ako nemate zapamćenu posebnu abecedu.
Kako bismo olakšali ovaj proces, možemo koristiti snagu računala, točnije programski jezik Python.
Ovaj Instructable će vam pokazati kako stvoriti program koji pretvara poruke u šifru na vašu naredbu.
Pribor
Sve što trebate je Python tumač: IDLE, Pycharm i Thonny su neke dobre, besplatne opcije (koristio sam Pycharm)
Osnovno poznavanje Pythona
Korak 1: Deklariranje varijabli i dobivanje unosa
Da bismo zapravo spremili nizove (tekstualne) vrijednosti abecede, poruke, pomaka itd., Moramo koristiti varijable. Započinjemo proglašavanjem varijabli 'abeceda', 'djelomično jedna', 'djelomično dvije' i 'novaAbeceda'. Napisao sam nazive varijabli u Camel Case u svom kodu (prva riječ je mala, a druga velika slova), ali možete je napisati kako god želite, sve dok se sjetite promijeniti je i u ostatku koda. Varijabla abecede ima vrijednost "abcdefghijklmnopqrstuvwxyz". Sve ostale varijable postavljene su na "", što je prazan niz jer još nemamo njihove vrijednosti.
Ovdje se radi o postavljanju djelomičnog sustava, što koristimo za stvaranje pomaka. To će biti objašnjeno u kasnijem koraku.
Nakon toga moramo dobiti poruku i vrijednost pomaka od korisnika. Za to koristimo funkciju unosa. Ovaj dio koda traži od korisnika poruku i broj za promjenu abecede.
KODIRATI:
abeceda = "abcdefghijklmnopqrstuvwxyz"
djelomičnoOne = ""
djelomičnoDva = ""
novaAbeceda = ""
message = input ("Molimo unesite poruku koju želite prevesti:").lower ()
key = int (input ("Molimo unesite broj koji želite pomaknuti za:"))
Korak 2: Stvaranje nove abecede
Sada za stvaranje pomaknute abecede. Da bismo to učinili, koristit ćemo djelomični sustav. Djelomični sustav je mjesto gdje računalo dijeli abecedu na dvije parcijalne (lijep način izgovaranja dijelova). Prvi djelomični dio je međutim dug koliko ste rekli programu da se pomakne za, a drugi je ostatak. Računalo mijenja dijelove. To je upravo ono što kôd radi, zajedno s prvom izjavom, koja kaže da ako je pomak 0, nova abeceda i stara abeceda su iste jer ne mijenjate ništa.
Na primjer:
Slijed - 123456789
Djelomičan jedan - 123; Drugi dio - 456789
Nova sekvenca - 456789123
KODIRATI:
ako je ključ == 0:
novaAbeceda = abeceda
elif ključ> 0:
djelomično Jedan = abeceda [: ključ]
djelomičnoDva = abeceda [ključ:]
novaAbeceda = djelomičnoDva + djelomičnoJedno
drugo:
djelomično Jedan = abeceda [:(26 + ključ)]
djelomičnoDva = abeceda [(26 + tipka):]
novaAbeceda = djelomičnoDva + djelomičnoJedno
Korak 3: Promjena poruke
Sada imamo svoju abecedu i novu abecedu. Ostaje samo prebaciti poruku u kôd.
Prvo smo postavili novu varijablu i nazvali je 'šifrirano' te postavili na "". Zatim napišemo zaista kompliciranu for petlju koja provjerava svako slovo u poruci i prebacuje ga na novo slovo. On ispisuje rezultat i evo ga, uspješno konvertirani kod!
KODIRATI:
encrypted = "" za message_index u rasponu (0, len (poruka)):
ako je poruka [message_index] == "":
šifrirano+= ""
za alfabet_indeks u rasponu (0, len (novaAbeceda)):
ako je poruka [message_index] == abeceda [alphabet_index]:
šifrirano+= novoAbeceda [abeceda_indeks]
ispis (šifrirano)
Korak 4: Dodatni
U privitku je datoteka koda.
Preporučeni:
Skener QR koda pomoću OpenCV -a u Pythonu: 7 koraka
Skener QR koda pomoću OpenCV-a u Pythonu: U današnjem svijetu vidimo da se QR kôd i crtični kôd koriste gotovo svugdje, od pakiranja proizvoda do mrežnog plaćanja, a sada se svakodnevno vide QR kodovi čak i u restoranu da biste vidjeli izbornik. Dakle, ne sumnja da je to sada velika misao. Ali jeste li se ikada zapitali
Izradite jednostavno šifriranje/dešifriranje poruka pomoću bilježnice: 5 koraka
Izradite jednostavno šifriranje/dešifriranje poruka pomoću bilježnice: Pozdrav, s ovom jednostavnom HTML aplikacijom možete šifrirati i dešifrirati svoju poruku lozinkom. Prije svega ću vam pokazati kako ga stvoriti, a zatim ću vam pokazati kako ga koristiti. Počnimo
Python sigurnosni softver za šifriranje/dešifriranje: 3 koraka
Python Security Encryption/Decryption Software: U ovom uputstvu pokazat ću vam kako pomoću jednostavnog Pythona možete zaštititi svoje datoteke pomoću industrijskog standarda AES.Zahtjevi:- Python 3.7- knjižnica PyAesCrypt- biblioteka hashlibAko nemate ove knjižnice, imate lako se instalira do
Kako napraviti program numeričke integracije u Pythonu: 10 koraka
Kako napraviti program za numeričku integraciju u Pythonu: Ovo je vodič za stvaranje i pokretanje programa koji će procjenjivati određene integrale pomoću algoritma numeričke integracije. Podijelio sam korake u 3 odjeljka: razumijevanje algoritma koji će se koristiti za izradu programa, kodiranje
Šifriranje USB pogona: 7 koraka
Šifriranje USB pogona: Provest ću vas kroz korake potrebne za šifriranje USB pogona pomoću besplatnog alata za šifriranje TrueCrypt. U ovom uputstvu za primjer ću koristiti sustav Windows XP, ali TrueCrypt će se također izvoditi na Linuxu i OS X