[Pascal]Program na hasło

Witam, postanowiłem zainteresować się językiem Pascal i zastanawiam się, czy byłaby taka możliwość, żeby napisać program chroniony hasłem, który przy pierwszym uruchomieniu prosiłby użytkownika o podanie hasła, zapamiętał je (najlepiej w formie zaszyfrowanej, bo wiadomo, że dla kogoś kto “siedzi” w temacie nie będzie problemem wyciągnąć hasła z kodu programu) i przy drugim, trzecim,n-tym uruchomieniu prosił już o wpisanie hasła, które zostało podane przy pierwszym uruchomieniu, a następnie weryfikował jego poprawność. W związku z tym moje pytanie brzmi: czy coś takiego jest wykonalne w tym języku programowania? Jeżeli tak, to w jaki sposób to zrobić?

W sposób bezpośredni nie da się w żadnym języku. Problem w tym że to hasło trzeba gdzieś zapisać (niekoniecznie wprost). Do zapamiętania tego trzeba zmusić system. W windows’ach można to zapisać np. do rejestru. A to do zrobienia prawie w każdym języku.

W takim razie jak wyglądałby kod, który odczytywałby hasło, szyfrował je i zapisywał w pliku?

W pliku? Plik można skasować i co wtedy?

To tak samo jak rejestr, sformatujesz dysk, wgrasz na nowo WIndowsa i co wtedy? Zresztą tu nie chodzi o program, który będzie użytkowany przeze mnie, czy ktogoś innego. Chcę taki program po prostu napisać, żeby sprawdzić siebie pod kątem tego co juz się nauczyłem, oraz nauczyć się czegoś nowego…

Ja bym to zrobił tak. Podczas pierwszego uruchomienia sprawdzasz czy w folderze z plikiem .exe jest plik data.bin jeżeli nie ma prosi o podanie hasła. Użytkownik je wpisuje do zmiennej i szyfrujesz je jakimś algorytmem. Zapisujesz to do pliku.bin [zrób jak z tekstowym tylko na innym rozszerzeniu dla ściemy]. Do rejestru dodajesz gdzieś klucz typu RegDone 1. Następnym razem program sprawdza jeżeli RegDone jest równe jeden wtedy sprawdza czy istnieje plik.bin. Jeżeli istniej prosi o hasło, a jeżeli nie to wymyśl dalej czy informuje użytkownika o uszkodzeniu czy jakoś tak. W C++ może bym i to napisał, ale nie chce mi się przypominać ifstream.

Wolałbym w Pascalu, ponieważ o c++ nie mam jeszcze zielonego pojęcia…

Algorytmy do każdego języka są takie same. Ja bym wpisał do rejestru a nie do pliku. Bowiem plik każdy może usunąć, a rejestr jest już bardziej rozbudowany.

No dobrze, jak będzie w takim razie wyglądał kod takiego programu??

Jeżeli nie potrafisz zrobić tak prostej rzeczy to masz dwa wyjścia:

  1. Darować sobie ten program.

  2. Zamówić taki program u fachowca.