mirror of
https://git.soft.fish/val/MicroCorruption.git
synced 2024-11-27 22:45:57 +00:00
25 lines
488 B
Python
25 lines
488 B
Python
#!/usr/bin/env python3
|
|
|
|
# TODO: Actually break the hashes?
|
|
# TODONE in chernobreak.py
|
|
|
|
def hash(chars):
|
|
ret = 0;
|
|
for c in chars:
|
|
ret += c
|
|
ret = ((ret << 5) - ret) & 0xffff
|
|
return ret
|
|
|
|
while True:
|
|
try:
|
|
line = input("> ")
|
|
if (len(line) and line[0] == '~'):
|
|
h = hash(bytes.fromhex(line[1:]));
|
|
else:
|
|
h = hash(line.encode())
|
|
print(f"hash: {h:x}, box[3]: {h&7:x}, box[4]: {h&0xf:x}");
|
|
except EOFError:
|
|
break
|
|
|
|
print("")
|