2026-07-12 20:22:15 +01:00

22 lines
700 B
Python

import base64, binascii, codecs, argparse, pathlib
def encode_layers(s: str) -> str:
l1 = base64.b64encode(s.encode()).decode() # base64
l2 = codecs.encode(l1, 'rot_13') # rot13
l3 = binascii.hexlify(l2.encode()).decode() # hex
lf = base64.b64encode(l3.encode()).decode() # base64
return lf
def main():
ap = argparse.ArgumentParser()
ap.add_argument("--flag", required=True,
help="Flag string to wrap.")
ap.add_argument("--out", default="message.txt")
args = ap.parse_args()
out = encode_layers(args.flag)
pathlib.Path(args.out).write_text(out + "\n")
print(out)
if __name__ == "__main__":
main()