Переезд на md5

This commit is contained in:
2026-04-04 11:25:35 +03:00
parent 7c83fe5e1a
commit d3a40d4ef7
11 changed files with 44 additions and 40 deletions

View File

@@ -6,7 +6,7 @@
```
$PRACTICE2_DIR/ # по умолчанию /usr/local/practice2
├── etc/passwd # логин:sha256:id:права:ФИО
├── etc/passwd # логин:md5:id:права:ФИО
├── confdata/ # конфиденциальные файлы
├── bin/ # утилиты (usermgr, confaccess, bruteforce)
└── log/ # usermgr.log, access.log
@@ -96,6 +96,6 @@ bruteforce alice --max-length 4
```
Перебор выполняется через утилиту access (confaccess): bruteforce не имеет доступа к passwd-файлу и проверяет пароли только через `confaccess --check`.
Алгоритм хэширования в access: **SHA-256**.
Алгоритм хэширования пароля в access: **MD5** (по индивидуальному заданию).
Фиксируется время перебора и количество итераций до нахождения пароля.
Перебор останавливается автоматически при достижении лимита 8 часов.

View File

@@ -24,7 +24,7 @@ Commands:
def hash_password(password: str) -> str:
return hashlib.sha256(password.encode("ascii")).hexdigest()
return hashlib.md5(password.encode("ascii"), usedforsecurity=False).hexdigest()
def log_action(login: str, action: str) -> None:

View File

@@ -18,7 +18,7 @@ VALID_PERM_CHARS = set("rwd")
def hash_password(password: str) -> str:
return hashlib.sha256(password.encode("ascii")).hexdigest()
return hashlib.md5(password.encode("ascii"), usedforsecurity=False).hexdigest()
def validate_password(password: str) -> str | None: