Sådan opretter du en krypteringsalgoritme: 6 trin (med billeder)

Indholdsfortegnelse:

Sådan opretter du en krypteringsalgoritme: 6 trin (med billeder)
Sådan opretter du en krypteringsalgoritme: 6 trin (med billeder)

Video: Sådan opretter du en krypteringsalgoritme: 6 trin (med billeder)

Video: Sådan opretter du en krypteringsalgoritme: 6 trin (med billeder)
Video: Configuring a Virtual Network in VMware Workstation 2024, April
Anonim

Uanset hvad din grund er for at ville oprette et krypteringsprogram, kan det være sjovt og meget udfordrende at oprette et. Det kan dog være svært at finde ud af, hvordan du gør det, hvis det er første gang. Denne artikel dækker den generelle idé og de grundlæggende trin, du skal tage for at oprette et funktionelt og realistisk krypteringsprogram.

Trin

Del 1 af 2: Oprettelse af krypteringsmetoden

Opret en krypteringsalgoritme Trin 1
Opret en krypteringsalgoritme Trin 1

Trin 1. Design algoritmen

En generel algoritme er rygraden i alle krypteringsmetoder. RSA bruger matematiske egenskaber ved store primtal til hurtigt og sikkert at kryptere private data. Bitcoin bruger en version af RSA til sikkert at sikre betalinger og sikre, at afsenderen faktisk ønsker at sende bitcoins til en anden bruger. Du bør undersøge forskellige typer krypteringsalgoritmer, f.eks. Privat og offentlig nøglekryptering. Det skal bemærkes, at ingen kryptering, hvis du planlægger at hente dataene, er ubrydelig. Kryptering kan kun modvirke tilfældig snooping og forsinke alvorlige angreb. Det anbefales, at du lærer, hvad binært er, det vil gøre oprettelse af din algoritme meget lettere og mere relevant for datakryptering.

Opret en krypteringsalgoritme Trin 2
Opret en krypteringsalgoritme Trin 2

Trin 2. Test din algoritme

Når du tror, at du har en god algoritme, skal du prøve at kryptere en meget kort besked i hånden. Dette bør tage mere end et par minutter for gode krypteringsalgoritmer. En god tommelfingerregel er, at hvis du kan kryptere beskeden i dit hoved, så er det ikke sikkert for alvorlig kryptering. Hvis den endelige meddelelse på nogen måde ligner den originale meddelelse, er det muligvis ikke sikkert.

Opret en krypteringsalgoritme Trin 3
Opret en krypteringsalgoritme Trin 3

Trin 3. Overvej dekryptering

Der skal være en måde for autoriserede parter at få adgang til data, der er krypteret af din algoritme. Du bør sørge for, at du let kan afkode dataene, hvis du kender nøglen, og gøre det svært for angribere ved et uheld at snuble over nøglen gennem forsøg og fejl.

Hvis du slet ikke vil have, at dataene kan hentes, kan du i stedet overveje at oprette en hash -algoritme. En hashalgoritme tager et input og opretter en envejsværdi baseret på dette input. Det er muligt at gå fra kildeindgang til en hash -værdi, men det er ideelt umuligt at gå tilbage til kildeindgangen fra den hashede værdi. Dette er især levedygtigt til adgangskodebeskyttelse. Når du opretter en konto på et websted med et kodeord, etisk websteder hash din adgangskode, før den gemmes. Dette har mange fordele, såsom at forsinke angribere fra at knække din adgangskode. Men hvis du glemmer adgangskoden, bliver du tvunget til at oprette en ny.

Opret en krypteringsalgoritme Trin 4
Opret en krypteringsalgoritme Trin 4

Trin 4. Udkast til pseudokoden

Dette burde være relativt let, når du har oprettet og testet din algoritme for at bevise, at den virker. Pseudokoden skal læse som simpelt og lærerigt engelsk, være læseligt nok til, at en normal person kan forstå, og lærerig nok til, at en programmør let kan implementere algoritmen til et sprog som C, Java osv.

Del 2 af 2: Udgiv algoritmen

Opret en krypteringsalgoritme Trin 5
Opret en krypteringsalgoritme Trin 5

Trin 1. Del din algoritme med andre datakrypteringsentusiaster

Dette giver dig mulighed for at opdage mulige fældedøre i din kryptering og få feedback om algoritmens sikkerhed og levedygtighed. Hvis din algoritme er så kompleks, at ingen kan forstå den, vil ingen bruge den. Men det samme gælder, hvis algoritmen er så let, at alle kan afkode en besked med minimal indsats.

Opret en krypteringsalgoritme Trin 6
Opret en krypteringsalgoritme Trin 6

Trin 2. Send en udfordring på et forum

Der er fora dedikeret til løsning og afkodning af data. Prøv at offentliggøre en kort besked, du krypterede sammen med tip om den anvendte algoritme. Hvis du føler dig selvsikker, kan du endda give dem din algoritme og se, hvor lang tid det tager for andre at knække den gennem brutal kraft.

Tips

  • Start med at lære, hvordan andre populære krypteringsalgoritmer fungerer. RSA er unik og meget udbredt i den virkelige verden til datakryptering.
  • Det er aldrig let at oprette en god krypteringsalgoritme, især hvis det er første gang. Start med en idé, og bygge videre på den. Hvis du opdager en fejl, kan det være lettere at starte helt forfra i stedet for at forsøge at lappe fejlen.

Advarsler

  • En krypteringsalgoritme bør fungere på bitniveauet af information. Undgå blot at oprette en chiffer, der kun fungerer med at ændre bogstaver i en meddelelse til noget lidt anderledes. Disse er altid usikre.
  • Medmindre du har en grad i informationsteori eller sikkerhed, bør du sandsynligvis ikke bruge din kryptering til at sikre dine adgangskoder eller andre private oplysninger.
  • Ingen kryptering er perfekt. Hvis du planlægger at hente de data, du krypterer, skaber dette alene et hul i din kryptering. Selv når du ikke ønsker at hente dataene, kan det stadig, i det mindste teoretisk, blive revnet og opdaget.

Anbefalede: