Tarkvarakaitse on ilmselt peamine probleem, millega iga arendaja silmitsi seisab. Lihtsaim viis ennast kaitsta on kasutada võtmeid, mis on loodud kindla põhimõtte järgi. Põhivõtmete generaatori kirjutamine on algajatele C-programmeerijatele klassikaline ülesanne, sest võimaldab rõhutada sümbolitega töötamise aspekte.
Juhised
Samm 1
Allolev võtmegeneraator on sisuliselt krüptor. Programm nõuab, et kasutaja sisestaks ees- ja perekonnanime, seejärel tõlgiks iga sisestatud märgi numbrikoodiks ja teisendaks selle vastavalt teatud seadusele. Kasutajale kuvatakse ekraanil võti, mis koosneb perekonnanimega samast tähemärgist. Selle algoritmi puuduseks on see, et võtmes saab standarditud tähemärkide arvu saada ainult standardiseeritud sisendandmetega (ip-aadress, väärtus Windowsi registrist).
2. samm
Taotlege kasutaja perekonnanime, eesnime ja isanime. Sellisel juhul kasutatakse väljundvõtme mugavamaks muutmiseks ainult perekonnanime (sisestatud kood loetakse esimese tühikuni, ülejäänud läheb puhvrisse, mis tuleb vajadusel kustutada). Andmed kirjutatakse massiivi A A [30]. Samal ajal sisestage i jaoks täiendav loendur, et meeles pidada, mitu tähemärki sisestati.
printf ("Sisestage perekonnanimi ja initsiaalid. [Vasiliev A. I.] n");
samas (A [i-1]! = '')
{scanf ("% c" ja A ); i ++;}
3. samm
Teisenda perekonnanimi. Vaatamata sellele, et massiiv on char-vormingus, saate sellega teha mis tahes matemaatilisi toiminguid, kuna igal tähemärgil C on oma arvukood. Seetõttu looge silmus nullist salvestatud märkide arvuni i. Kirjutage silmuse kehasse elemendi A [j] teisendus ja kuvage see.
jaoks (int j = 0; j
Kehtivuskontroll viiakse läbi, võrreldes saadud ja antud võtmeid. Autoriseerimiseks sisestab kasutaja oma perekonnanime ja teie generaatori väljastatud koodi. Programmi sisse on paigaldatud sarnane generaator, mis teisendab perekonnanime sama seaduse järgi ja võrdleb sisestatud väärtusi märkide kaupa sellega, mida oleks pidanud saama.
4. samm
Kehtivuskontroll viiakse läbi, võrreldes saadud ja antud võtmeid. Autoriseerimiseks sisestab kasutaja oma perekonnanime ja teie generaatori väljastatud koodi. Programmi sisse on paigaldatud sarnane generaator, mis teisendab perekonnanime sama seaduse järgi ja võrdleb sisestatud väärtusi märkide kaupa sellega, mida oleks pidanud saama.