29 lines
679 B
Python
29 lines
679 B
Python
import socket
|
|
import hashlib
|
|
|
|
|
|
def main() -> None:
|
|
host = "127.0.0.1"
|
|
port = 5001
|
|
|
|
message = b"hello integrity"
|
|
tamper = False # change to True to simulate corruption
|
|
|
|
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
|
|
s.connect((host, port))
|
|
send_data = message if not tamper else message[:-1] + b"X"
|
|
s.sendall(send_data)
|
|
|
|
server_digest = s.recv(128).decode()
|
|
local_digest = hashlib.sha256(message).hexdigest()
|
|
|
|
ok = (server_digest == local_digest)
|
|
print("server:", server_digest)
|
|
print("local :", local_digest)
|
|
print("match :", ok)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|
|
|
|
|