Ochrona oprogramowania to prawdopodobnie główny problem, z którym boryka się każdy programista. Najłatwiejszym sposobem zabezpieczenia się jest użycie kluczy, które są generowane zgodnie z określoną zasadą. Napisanie podstawowego generatora kluczy to klasyczne zadanie dla początkujących programistów C, ponieważ pozwala podkreślić aspekty pracy z symbolami.
Instrukcje
Krok 1
Poniższy generator kluczy jest zasadniczo szyfratorem. Program będzie wymagał od użytkownika wpisania imienia i nazwiska, a następnie przetłumaczenia każdego wprowadzonego znaku na kod numeryczny i przekształcenia go zgodnie z określonym prawem. Użytkownikowi zostanie wyświetlony na ekranie klawisz składający się z takiej samej liczby znaków jak nazwisko. Wadą tego algorytmu jest to, że ustandaryzowaną liczbę znaków w kluczu można uzyskać tylko za pomocą ustandaryzowanych danych wejściowych (adres ip, wartość z rejestru Windows).
Krok 2
Poproś o nazwisko, imię i nazwisko użytkownika. W tym przypadku, aby klucz wyjściowy był wygodniejszy, zostanie użyte tylko nazwisko (wpisany kod zostanie odczytany do pierwszej spacji, reszta trafi do bufora, który w razie potrzeby będzie musiał zostać wyczyszczony). Dane zostaną zapisane do tablicy char A [30]. Jednocześnie wprowadź dodatkowy licznik, aby zapamiętać, ile znaków zostało wprowadzonych.
printf („Wprowadź nazwisko i inicjały. [Vasiliev A. I.] n”);
podczas gdy (A [i-1]! = '')
{scanf ("% c" & A ); ++;}
Krok 3
Konwertuj nazwisko. Pomimo tego, że tablica jest w formacie char, można na niej wykonywać dowolne operacje matematyczne, ponieważ każdy znak w C ma swój własny kod numeryczny. Dlatego utwórz pętlę od zera do zapisanej liczby znaków i. W treści pętli napisz transformację elementu A [j], a następnie wyświetl ją.
dla (int j = 0; j
Kontrola ważności zostanie przeprowadzona poprzez porównanie otrzymanych i podanych kluczy. W celu autoryzacji użytkownik wpisuje swoje nazwisko oraz kod nadany przez Twój generator. Podobny generator jest zainstalowany wewnątrz programu, który konwertuje nazwisko zgodnie z tym samym prawem, a następnie porównuje wpisane wartości znak po znaku z tym, co powinno zostać uzyskane.
Krok 4
Kontrola ważności zostanie przeprowadzona poprzez porównanie otrzymanych i podanych kluczy. W celu autoryzacji użytkownik wpisuje swoje nazwisko oraz kod nadany przez Twój generator. Podobny generator jest zainstalowany wewnątrz programu, który konwertuje nazwisko zgodnie z tym samym prawem, a następnie porównuje wpisane wartości znak po znaku z tym, co powinno zostać uzyskane.