Переезд на md5
This commit is contained in:
16
lab5/main.py
16
lab5/main.py
@@ -71,7 +71,7 @@ def decrypt_message(salt: bytes, iv: bytes, ct: bytes, file_key: str) -> str:
|
||||
|
||||
|
||||
def compute_hash(text: str) -> str:
|
||||
return hashlib.sha256(text.encode()).hexdigest()
|
||||
return hashlib.md5(text.encode(), usedforsecurity=False).hexdigest()
|
||||
|
||||
|
||||
def compute_hmac(file_key: str, text: str, salt: bytes) -> str:
|
||||
@@ -136,10 +136,10 @@ def do_send(
|
||||
if use_integrity:
|
||||
h = compute_hash(text)
|
||||
if test_integrity:
|
||||
h = hashlib.sha256(b"CORRUPTED_" + os.urandom(4)).hexdigest()
|
||||
print(f" [TX] SHA-256: {h} (CORRUPTED!)")
|
||||
h = hashlib.md5(b"CORRUPTED_" + os.urandom(4), usedforsecurity=False).hexdigest()
|
||||
print(f" [TX] MD5: {h} (CORRUPTED!)")
|
||||
else:
|
||||
print(f" [TX] SHA-256: {h}")
|
||||
print(f" [TX] MD5: {h}")
|
||||
msg["hash"] = h
|
||||
|
||||
if use_hmac:
|
||||
@@ -278,7 +278,7 @@ def run_session(
|
||||
if use_encrypt:
|
||||
flags.append("3DES")
|
||||
if use_integrity:
|
||||
flags.append("SHA-256")
|
||||
flags.append("MD5")
|
||||
if use_hmac:
|
||||
flags.append("HMAC-SHA256")
|
||||
if test_integrity:
|
||||
@@ -328,7 +328,9 @@ def run_client(args: argparse.Namespace) -> None:
|
||||
|
||||
|
||||
def build_parser() -> argparse.ArgumentParser:
|
||||
parser = argparse.ArgumentParser(description="Encrypted messaging (3DES-CBC + SHA-256)")
|
||||
parser = argparse.ArgumentParser(
|
||||
description="Encrypted messaging (3DES-CBC; integrity MD5 per assignment; optional HMAC-SHA256)"
|
||||
)
|
||||
sub = parser.add_subparsers(dest="role", required=True)
|
||||
|
||||
for name, sp in [("server", sub.add_parser("server", help="Start server")),
|
||||
@@ -339,7 +341,7 @@ def build_parser() -> argparse.ArgumentParser:
|
||||
sp.add_argument("host")
|
||||
sp.add_argument("port", type=int)
|
||||
sp.add_argument("--encrypt", action="store_true", help="Enable 3DES-CBC encryption")
|
||||
sp.add_argument("--integrity", action="store_true", help="SHA-256 integrity check")
|
||||
sp.add_argument("--integrity", action="store_true", help="MD5 integrity hash (variant / lab 2)")
|
||||
sp.add_argument("--hmac", action="store_true", help="HMAC-SHA256 integrity + authentication")
|
||||
sp.add_argument("--test-integrity", action="store_true", help="Send corrupted hash/HMAC")
|
||||
sp.add_argument("--key", default=DEFAULT_KEY_FILE, help="Path to key file (default: key.txt)")
|
||||
|
||||
Reference in New Issue
Block a user