Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Deklarere variabler og få innspill
- Trinn 2: Opprette det nye alfabetet
- Trinn 3: Skifte melding
- Trinn 4: Tillegg
Video: Caesar Cipher -program i Python: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:20
Cæsar -krypteringen er en gammel og mye brukt kryptering som er lett å kryptere og dekryptere. Det fungerer ved å flytte bokstavene i alfabetet over for å lage et helt nytt alfabet (ABCDEF kan skifte over 4 bokstaver og ville bli EFGHIJ).
Caesar Ciphers er ikke de sikreste chifferene der ute, men er gode for små oppgaver som å sende hemmelige notater eller gjøre passord litt sterkere. Det er veldig enkelt å dechiffrere koden, men det kan være kjedelig å kryptere en hvis du ikke har det spesielle alfabetet lagret.
For å gjøre denne prosessen enklere kan vi bruke kraften til datamaskiner, nærmere bestemt programmeringsspråket Python.
Denne instruksen viser deg hvordan du lager et program som konverterer meldinger til en kryptering på kommando.
Rekvisita
Alt du trenger er en Python -tolk: IDLE, Pycharm og Thonny er noen gode, gratis alternativer (jeg brukte Pycharm)
Grunnleggende kunnskap om Python
Trinn 1: Deklarere variabler og få innspill
For å faktisk lagre streng (tekst) verdiene til alfabetet, meldingen, skift, etc. må vi bruke variabler. Vi starter med å deklarere variablene 'alfabet', 'delvisOne', 'delvisTo' og 'nyttAlfabet'. Jeg har skrevet navnene på variablene i Camel Case i koden min (det første ordet er små og store bokstaver), men du kan skrive det som du vil, så lenge du husker å endre det gjennom resten av koden også. Alfabetvariabelen har verdien "abcdefghijklmnopqrstuvwxyz". Alle de andre variablene er satt til "", som er en tom streng da vi ikke har verdiene deres ennå.
Det dette gjør er å sette opp det delvise systemet, som er det vi bruker for å faktisk skape skiftet. Dette vil bli forklart i et senere trinn.
Etter dette må vi få meldingen og flytte verdien fra brukeren. Vi bruker inngangsfunksjonen for å gjøre dette. Denne delen av koden ber brukeren om en melding og et tall for å flytte alfabetet etter.
KODE:
alphabet = "abcdefghijklmnopqrstuvwxyz"
partialOne = ""
partialTwo = ""
newAlphabet = ""
melding = input ("Skriv inn meldingen du vil oversette:").lower ()
key = int (input ("Vennligst skriv inn tallet du vil flytte med:"))
Trinn 2: Opprette det nye alfabetet
Nå for å lage det skiftede alfabetet. For å gjøre dette, vil vi bruke delsystemet. Delsystemet er hvor datamaskinen deler alfabetet i to deler (en fancy måte å si deler på). Den første delen er imidlertid lang du ba programmet om å skifte forbi, og den andre er resten. Datamaskinen bytter partialene. Det er akkurat det koden gjør, sammen med den første setningen, som sier at hvis skiftet er 0, er det nye alfabetet og det gamle alfabetet det samme siden du ikke bytter noe.
For eksempel:
Sekvens - 123456789
Delvis en - 123; Del to - 456789
Ny sekvens - 456789123
KODE:
hvis nøkkel == 0:
newAlphabet = alfabet
elif -nøkkel> 0:
partialOne = alfabet [: nøkkel]
partialTwo = alfabet [nøkkel:]
newAlphabet = partialTwo + partialOne
ellers:
partialOne = alfabet [:(26 + nøkkel)]
partialTwo = alfabet [(26 + tast):]
newAlphabet = partialTwo + partialOne
Trinn 3: Skifte melding
Nå har vi vårt alfabet og det nye alfabetet. Det eneste som gjenstår er å bytte meldingen til koden.
Først setter vi en ny variabel og kaller den 'kryptert' og setter den til "". Deretter skriver vi en veldig komplisert for-loop som sjekker hver bokstav i meldingen og bytter den til den nye bokstaven. Den sender ut resultatet, og der har du det, en vellykket konvertert kode!
KODE:
encrypted = "" for message_index i området (0, len (melding)):
hvis melding [message_index] == "":
kryptert+= ""
for alphabet_index i området (0, len (newAlphabet)):
hvis melding [melding_indeks] == alfabet [alfabet_indeks]:
kryptert+= newAlphabet [alphabet_index]
skrive ut (kryptert)
Trinn 4: Tillegg
Vedlagt er kodefilen.
Anbefalt:
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Trinn for trinn PC -bygging: 9 trinn
Steg for trinn PC -bygging: Rekvisita: Maskinvare: HovedkortCPU & CPU -kjøler PSU (strømforsyningsenhet) Lagring (HDD/SSD) RAMGPU (ikke nødvendig) CaseTools: Skrutrekker ESD -armbånd/mathermal pasta m/applikator
Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn
Tre høyttalerkretser || Trinn-for-trinn opplæring: Høyttalerkretsen styrker lydsignalene som mottas fra miljøet til MIC og sender den til høyttaleren der forsterket lyd produseres. Her vil jeg vise deg tre forskjellige måter å lage denne høyttalerkretsen på:
Bill Cipher Pyramid Speaker: 9 trinn (med bilder)
Bill Cipher Pyramid Speaker: Dette prosjektet er inspirert av pyramidedesignet for Bill Cipher fra showet Gravity Falls og ble laget for Design Technology Class. For øyeblikket er produktet uferdig, og dette fungerer som en produksjonsplan. Siden vil bli oppdatert når produsenten
Vigenere Cipher With Arduino: 3 trinn
Vigenere Cipher With Arduino: For få år siden fanget Digital Fortress av Dan Brown oppmerksomheten min, og en spesiell ting festet meg. Kryptos, skulpturen av Jim Sanborn, som består av kryptert tekst, hvorav de to første delene er kryptert av Vigen's chiffer. JEG