Krüptimisalgoritmi loomine: 6 sammu (piltidega)

Sisukord:

Krüptimisalgoritmi loomine: 6 sammu (piltidega)
Krüptimisalgoritmi loomine: 6 sammu (piltidega)

Video: Krüptimisalgoritmi loomine: 6 sammu (piltidega)

Video: Krüptimisalgoritmi loomine: 6 sammu (piltidega)
Video: Understanding Microsoft’s Network Stack with Hyper-V 2024, Aprill
Anonim

Ükskõik, mis põhjusel soovite krüptimisprogrammi luua, võib selle loomine olla lõbus ja väga keeruline. Siiski võib olla raske aru saada, kuidas seda teha, kui see on teie esimene kord. See artikkel hõlmab üldist ideed ja põhitoiminguid, mida peate tegema funktsionaalse ja realistliku krüptimisprogrammi loomiseks.

Sammud

Osa 1 /2: Krüptimismeetodi loomine

Krüptimisalgoritmi loomine 1. samm
Krüptimisalgoritmi loomine 1. samm

Samm 1. Kujundage algoritm

Üldine algoritm on kõigi krüpteerimismeetodite selgroog. RSA kasutab suurte algarvude matemaatilisi omadusi privaatsete andmete kiireks ja ohutuks krüptimiseks. Bitcoin kasutab maksete turvaliseks turvamiseks RSA versiooni ja tagab, et saatja soovib tegelikult bitcoine teisele kasutajale saata. Peaksite uurima erinevat tüüpi krüpteerimisalgoritme, nagu privaat- ja avaliku võtme krüptimine. Tuleb märkida, et ükski krüptimine, kui plaanite andmeid hankida, ei ole purunematu. Krüptimine võib heidutada ainult juhuslikku nuhkimist ja lükata edasi tõsised rünnakud. Soovitatav on õppida, mis on binaarne, see muudab teie algoritmi loomise palju lihtsamaks ja andmete krüpteerimiseks asjakohasemaks.

Looge krüptimisalgoritm 2. samm
Looge krüptimisalgoritm 2. samm

Samm 2. Testige oma algoritmi

Kui arvate, et teil on hea algoritm, peaksite proovima väga lühikese sõnumi käsitsi krüptimist. Heade krüptimisalgoritmide jaoks peaks see võtma rohkem kui paar minutit. Hea rusikareegel on see, et kui saate sõnumi oma peas krüptida, pole see tõsise krüptimise jaoks ohutu. Kui lõppsõnum tundub mingil moel algse sõnumiga sarnane, ei pruugi see olla ohutu.

Looge krüptimisalgoritm 3. samm
Looge krüptimisalgoritm 3. samm

Samm 3. Kaaluge dekrüpteerimist

Volitatud isikutel peab olema võimalus pääseda juurde teie algoritmiga krüptitud andmetele. Peaksite veenduma, et saate võtit tundes andmeid hõlpsasti dekodeerida, ja raskendage ründajate katse -eksituse meetodil võtmele kogemata komistamist.

Kui te ei soovi, et andmed oleksid üldse taastatavad, kaaluge selle asemel räsimisalgoritmi loomist. Räsimisalgoritm võtab sisendi ja loob selle sisendi põhjal ühesuunalise väärtuse. Allikasisendilt on võimalik minna räsitud väärtusele, kuid ideaalis on võimatu naasta räsiväärtusest lähtesisendisse. See on paroolikaitse jaoks eriti elujõuline. Kui loote veebisaidil parooliga konto, eetiline veebisaidid räsivad teie parooli enne selle salvestamist. Sellel on palju eeliseid, näiteks viivitatakse ründajatel teie parooli murdmisega. Kui aga unustate parooli, olete sunnitud looma uue.

Looge krüptimisalgoritm 4. samm
Looge krüptimisalgoritm 4. samm

Samm 4. Joonistage pseudokood

See peaks olema suhteliselt lihtne, kui olete oma algoritmi loonud ja testinud, et tõestada selle toimimist. Pseudokood peaks lugema nagu lihtne ja õpetlik inglise keel, olema piisavalt loetav, et tavainimene sellest aru saaks, ja piisavalt õpetlik, et programmeerija saaks algoritmi hõlpsasti sellisesse keelde rakendada nagu C, Java jne.

2. osa 2: Algoritmi avaldamine

Looge krüptimisalgoritm 5. samm
Looge krüptimisalgoritm 5. samm

Samm 1. Jagage oma algoritmi teiste andmete krüptimise entusiastidega

See võimaldab teil avastada oma krüpteerimisel võimalikud luugid ja saada tagasisidet algoritmi turvalisuse ja elujõulisuse kohta. Kui teie algoritm on nii keeruline, et keegi ei saa sellest aru, siis ei kasuta seda keegi. Kuid sama kehtib ka juhul, kui algoritm on nii lihtne, et igaüks saab sõnumi minimaalse vaevaga dekodeerida.

Looge krüptimisalgoritm 6. samm
Looge krüptimisalgoritm 6. samm

Samm 2. Postitage foorumisse väljakutse

On foorumeid, mis on pühendatud andmete lahendamisele ja dekodeerimisele. Proovige avaldada krüptitud lühisõnum koos vihjetega kasutatud algoritmi kohta. Kui tunnete end enesekindlalt, võite isegi anda neile oma algoritmi ja vaadata, kui kaua võtab aega, kuni teised selle toore jõuga läbi murravad.

Näpunäiteid

  • Alustage teiste populaarsete krüpteerimisalgoritmide toimimisest. RSA on ainulaadne ja seda kasutatakse reaalses maailmas laialdaselt andmete krüpteerimiseks.
  • Hea krüptimisalgoritmi loomine pole kunagi lihtne, eriti kui see on teie esimene kord. Alustage ideest ja tuginege sellele. Kui märkate viga, võib olla lihtsam uuesti alustada, selle asemel, et viga parandada.

Hoiatused

  • Krüpteerimisalgoritm peaks töötama teabe bititasemel. Vältige lihtsalt sellise šifri loomist, mis töötab ainult sõnumi tähtede muutmisel mõnevõrra erinevaks. Need on alati ebakindlad.
  • Kui teil pole infoteooria või turvalisuse kraadi, ei tohiks te tõenäoliselt oma krüptimist paroolide või muu privaatse teabe kaitsmiseks kasutada.
  • Ükski krüptimine pole täiuslik. Kui kavatsete krüpteeritud andmeid hankida, tekitab see ainuüksi teie krüptimises augu. Isegi kui te ei soovi andmeid alla laadida, võib see vähemalt teoreetiliselt siiski praguneda ja avastada.

Soovitan: