Upotrijebite ovaj jednostavan primjer za kodiranje poruka i naučite o osnovama enkripcije.
Kibernetička sigurnost jedno je od najhitnijih pitanja u softverskoj tehnologiji danas. Što više tehnologija napreduje, javlja se više sigurnosnih prijetnji.
Nije sigurno dijeliti osjetljive podatke u obliku običnog teksta. Svatko sa zlom namjerom može ga lako presresti i oštetiti vaš softver. Tu na scenu dolazi kriptografija.
Kriptografija je praksa šifriranja čitljivog teksta u znakove (šifrirani tekst). Koristi složene algoritamske ključeve za šifriranje poruka, što ih čini teškim za čitanje.
Što je šifriranje?
Enkripcija pretvara tekst čitljiv ljudima (obični tekst) u nerazumljivi tekst (šifrirani tekst). Kodira podatke pomoću kriptografskog ključa; nasumično izgledajući niz znakova.
Ključ šifrira poruku (šifriranje) u obrazac koji je teško pročitati. Morate znati ključ za šifriranje da biste dešifrirali šifrirani tekst.
Enkripcija je učinkovit način zaštite podatkovnih sustava od zlonamjernih pojedinaca. Ako napadači uspiju pristupiti podacima, oni ne mogu vidjeti, pročitati ili pristupiti informacijama. To vam pomaže u zaštiti komunikacije od neovlaštenih osoba.
Možete šifrirati poruke u Pythonu pomoću jednostavnog algoritma.
Što je algoritam šifriranja?
Algoritam šifriranja je kod koji se koristi za pretvaranje poruka u šifrirani tekst. Algoritam koristi ključ za šifriranje za promjenu podataka u određenom uzorku. Šifrirani podaci mogu se pretvoriti u tekst čitljiv samo pomoću ključa za dešifriranje.
Sljedeći Python kod stvara funkciju koja šifrira poruku napisanu engleskom abecedom.
defšifriranje(poruka, ključ):
abeceda = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
šifrirani tekst = ""za ja u raspon (0, len (poruka)):
znak = poruka[i]
šifrirani tekst = šifrirani tekst + znakza j u raspon (0, ključ):
šifrirani tekst = šifrirani tekst + slučajni.izbor (abeceda)
povratak šifrirani tekst
Napišite kod za pokretanje programa na konzoli
Nakon što postavite algoritam šifriranja, možete napisati kod za njegovo pokretanje na konzoli. Pokretanje koda na konzoli pomaže vam da testirate i vidite kako vaš program izgleda.
nasumični uvoz
message = input("Unesite poruku za šifriranje:")
ključ = int (unos("Stavite bilo koji broj između 1 i 10:"))a ne (ključ >= 1 i ključ <= 10):
print("Nevažeći ključ, pokušaj ponovno!")
ključ = int (unos("Stavite bilo koji broj između 1 i 10:"))
šifrirani tekst = enkripcija (poruka, ključ)
print("Vaš šifrirani tekst je:")
ispisati (šifrirani tekst)
Testirajte program šifriranja s nekoliko primjera
Sada možete testirati program s nekoliko primjera. Pokušajmo šifrirati riječ Nairobi u promptu.
Unesite poruku za šifriranje: Nairobi
Stavite bilo koji broj između 1 i 10:3
Vaš šifrirani tekst je: NZItacpUiyqxrspcobzsbiBTiovD
Primijetite da kôd ispisuje šifrirani tekst prema broju ključeva. U gornjem primjeru, algoritam stavlja tri nasumična slova iza svakog početnog slova u riječi.
Zatim morate testirati radi li kôd unutar uvjeta koje ste postavili u programu konzole. While petlja omogućuje korisnicima samo unos tipki između 1 i 10.
Unesite poruku za šifriranje: Nairobi
Stavite bilo koji broj između 1 i 10: 12
Nevažeći ključ, pokušajte ponovno!
Stavite bilo koji broj između 1 i 10:9
Vaš šifrirani tekst je:
NqmXuBDQeraDrntCUbZSivEXMfblItrzUGIlyxPYoQXxcKYXxXbgACDpCycdiWjImofrBH
Gornji primjer prikazuje uvjetne radove. Kôd prikazuje poruku o pogrešci kad god primi broj izvan raspona. Program za šifriranje sada uspješno radi. Možete ga koristiti za šifriranje bilo koje riječi po vašem izboru.
Razvijanje vlastite enkripcije može biti sjajno iskustvo učenja. Međutim, Python biblioteke poput bcrypt može vam pomoći da mnogo brže šifrirate podatke.
Prednosti šifriranja
Tehnike šifriranja podataka napredovale su tijekom godina. Sada možete šifrirati podatke korištenjem asimetričnih, simetričnih i metoda raspršivanja. Ove tehnike mijenjaju način na koji sustavi pohranjuju i prenose informacije.
Možete koristiti bilo koju tehniku šifriranja podataka koja odgovara vašem softveru. Osigurajte da pruža mjere provjere autentičnosti i privatnosti koje štite podatke od sigurnosnih povreda. Zaštita vašeg softvera pomaže vam da komunicirate bez straha od cyber kriminalaca i povećava povjerenje klijenata.