Testowałem to od kilku dni i moim pierwotnym pomysłem było użycie pliku .bat w celu poproszenia o wprowadzenie danych, problem polega na tym, że hasło nie jest zaszyfrowane i dlatego nie mogę go używać tak, jak jest teraz.
Znaleziono ten skrypt .bat, który robi to, co chcę, ale nie jest szyfrowany:
@Echo off
cls
:Password
Set input=
set /p input= Password (input then press enter) :
if %input%==star goto YES
if not %input%==star goto NO
:YES
Start MSpaint.exe
Exit
:NO
Echo INCORRECT PASSWORD
goto Password
Jeśli istnieje polecenie lub coś, co mogę dodać, aby hasło nie było widoczne podczas pisania, powinno również działać.
windows-7
windows
batch-file
passwords
całkowicie niedziałający
źródło
źródło
Odpowiedzi:
Jednym z rozwiązań byłoby użycie narzędzia takiego jak RunAsSpc, za pomocą którego można wywołać program, wymagający hasła. Hasło i wszystkie inne szczegóły są przechowywane przez RunAsSpc w zaszyfrowanej bazie danych. Może to zrobić
runas
plus hasło i szyfrowanie (chociaż użytkownik może być sobą).RunAsSpc jest bezpłatny do użytku prywatnego. Aby uzyskać więcej informacji na temat korzystania z niego, zobacz artykuł Przekaż hasło do Runas za pomocą RunAsSpc .
Dla łatwiejszej ochrony możesz użyć generatora Md5 do wygenerowania skrótu hasła. Plik wsadowy poprosi następnie o hasło, ale porówna jego skrót MD5, a nie samo hasło.
Dla jeszcze prostszej ochrony przed niewyrafinowanymi użytkownikami możesz rozsypywać odniesienia do niezdefiniowanych zmiennych środowiskowych wokół pliku wsadowego. Takie zmienne pojawiają się jako puste, gdy są oceniane, ale zniechęcają do odczytu pliku wsadowego.
Korzystając z tego pomysłu, następujący skrypt:
może wyglądać tak:
źródło