Tartalomjegyzék:
- Kellékek
- 1. lépés: Változók deklarálása és bemenetek beszerzése
- 2. lépés: Az új ábécé létrehozása
- 3. lépés: Az üzenet eltolása
- 4. lépés: További
Videó: Caesar Cipher program Pythonban: 4 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:39
A Caesar Cipher egy ősi és széles körben használt rejtjelezés, amelyet könnyű titkosítani és visszafejteni. Ez úgy működik, hogy az ábécé betűit áthelyezi egy teljesen új ábécé létrehozásához (az ABCDEF 4 betű felett eltolódhat, és EFGHIJ lesz).
A Caesar Ciphers nem a legbiztonságosabb rejtjelek, de alkalmasak apró feladatokra, például titkos jegyzetek átadására vagy a jelszavak kissé megerősítésére. Tényleg könnyű megfejteni a kódot, de unalmas lehet titkosítani, ha nincs a speciális ábécéje megjegyezve.
Ennek a folyamatnak a megkönnyítésére használhatjuk a számítógépek erejét, pontosabban a Python programozási nyelvet.
Ez az utasítás megmutatja, hogyan hozhat létre olyan programot, amely parancsára konvertálja az üzeneteket rejtjelekké.
Kellékek
Csak egy Python tolmácsra van szüksége: az IDLE, a Pycharm és a Thonny néhány jó, ingyenes lehetőség (én a Pycharm -ot használtam)
Alapvető ismeretek a Pythonról
1. lépés: Változók deklarálása és bemenetek beszerzése
Az ábécé, üzenet, eltolás stb. Karakterlánc (szöveg) értékeinek tényleges tárolásához változókat kell használnunk. Kezdjük az „ábécé”, „részleges egy”, „részleges kettő” és „új ábécé” változók deklarálásával. A Camel Case változóinak nevét a kódomba írtam (az első szó kisbetűs és második nagybetűs), de tetszés szerint írhat, feltéve, hogy a kód többi részében is megváltoztatja. Az ábécé változó értéke "abcdefghijklmnopqrstuvwxyz". Az összes többi változó értéke "", ami üres karakterlánc, mivel még nincsenek értékeink.
Ez a Partial rendszer felállítása, amellyel ténylegesen létrehozzuk a váltást. Ezt egy későbbi lépésben ismertetjük.
Ezt követően meg kell kapnunk az üzenetet és az értéket a felhasználótól. Ehhez a beviteli funkciót használjuk. A kód ezen része üzenetet és számot kér a felhasználótól az ábécé eltolásához.
KÓD:
ábécé = "abcdefghijklmnopqrstuvwxyz"
partialOne = ""
partTwo = ""
newAlphabet = ""
message = input ("Kérjük, írja be a lefordítani kívánt üzenetet:").lower ()
key = int (input ("Kérjük, írja be az áthelyezni kívánt számot:"))
2. lépés: Az új ábécé létrehozása
Most hozza létre az eltolt ábécét. Ehhez a részrendszert fogjuk használni. A parciális rendszer az, ahol a számítógép két részre osztja az ábécét (a részek kimondott módja). Az első rész azonban hosszú, amikor azt mondtad a programnak, hogy haladjon, a második pedig a többi. A számítógép kapcsolja a részeket. A kód pontosan ezt teszi, az első állítással együtt, amely azt mondja, hogy ha az eltolás 0, akkor az új ábécé és a régi ábécé ugyanaz, mivel semmit nem vált.
Például:
Sorozat - 123456789
Első rész - 123; Második rész - 456789
Új sorozat - 456789123
KÓD:
ha kulcs == 0:
newAlphabet = ábécé
elif kulcs> 0:
partialOne = ábécé [: kulcs]
partTwo = ábécé [kulcs:]
newAlphabet = részlegesKét + részleges egy
más:
partialOne = ábécé [:(26 + billentyű]
partTwo = ábécé [(26 + billentyű):]
newAlphabet = részlegesKét + részleges egy
3. lépés: Az üzenet eltolása
Most megvan az ábécénk és az új ábécé. Nincs más hátra, mint az üzenetet kódba váltani.
Először egy új változót állítunk be, és titkosítottnak nevezzük, és "" értékre állítjuk. Ezután írunk egy nagyon bonyolult for-ciklust, amely ellenőrzi az üzenet minden egyes betűjét, és átváltja az új betűre. Kimeneti az eredményt, és ott van, egy sikeresen konvertált kód!
KÓD:
encrypted = "" üzenet_index tartományban (0, len (üzenet)):
if message [message_index] == "":
titkosított+= ""
a alphabet_index tartományban (0, len (newAlphabet)):
ha üzenet [üzenet_index] == ábécé [ábécé_index]:
titkosított+= newAlphabet [ábécé_index]
nyomtatás (titkosítva)
4. lépés: További
Mellékelve a kódfájl.
Ajánlott:
QR -kód -szkenner az OpenCV használatával Pythonban: 7 lépés
QR-kód-szkenner az OpenCV használatával Pythonban: A mai világban azt látjuk, hogy a QR-kódot és a vonalkódot szinte mindenhol használják, a termékcsomagolástól az online fizetésig, és manapság már az étteremben is látjuk a QR-kódokat a menü megtekintéséhez. kétlem, hogy ez most a nagy gondolat. De szenvedtél már valaha
Páratartalom és hőmérséklet megfigyelő Raspberry Pi használatával SHT25 -tel Pythonban: 6 lépés
Páratartalom és hőmérséklet megfigyelő a Raspberry Pi használatával az SHT25 -tel Pythonban: A Raspberry Pi rajongójaként néhány látványosabb kísérletet gondoltunk vele. Ebben a kampányban olyan páratartalom- és hőmérséklet -megfigyelőt készítünk, amely a relatív páratartalmat és hőmérsékletet méri a Raspberry Pi segítségével és SHT25, Humidi
Készíts egy igazán jó mátrixot a Pythonban !: 6 lépés
Készíts egy igazán jó mátrixot a Pythonban !: Sziasztok srácok! Ez az utasítás megtanítja, hogyan kell mátrixot készíteni a Pythonban! Általában az emberek mátrixot készítenek a Batch -ben, mert ez egyszerű. De ezúttal megmutatom, hogyan lehet mátrixot készíteni az egyik hatékony számítógépes nyelven
Színészlelés Pythonban OpenCV használatával: 8 lépés
Színészlelés Pythonban az OpenCV használatával: Üdv! Ez az utasítás arra szolgál, hogy útmutatást nyújtson, hogyan lehet kinyerni egy adott színt a képből a pythonban az openCV könyvtár használatával. Ha még nem ismeri ezt a technikát, ne aggódjon, az útmutató végén saját színét programozhatja
How to hurok létrehozása Pythonban: 9 lépés
How to Loop létrehozása a Python -ban: Vannak olyan pillanatok a programozás során, amikor meg kell ismételni egy lépést egy probléma megoldásához. A while ciklus lehetővé teszi, hogy ciklikus szakaszon keresztül ciklusozzon anélkül, hogy ismételt kódot kellene írnia. Programozáskor ugyanazt a kódot írja felül és ov