Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python3
- import sys
- mod = 0x00cf21ba30a11440580c86f2f6a7b58f2b319bfa7ba1fc035291e981b683f4c09a5aeb824020641817834525b60e51204ea436a6f5c40b1787043181958dc2616d # n
- exp = 0x008793cafc63a30eced33c4db2376a36d10e02cbbcbaf56af35400a4dfe39583af1699f38c430d01a54d270cff2004c28943d253563c11309002abf3a61c7f923d # d
- def main():
- if len(sys.argv) != 2:
- print("Usage: {} file-to-decrypt".format(sys.argv[0]))
- sys.exit(1)
- fname = sys.argv[1]
- with open(fname, "rb") as inf:
- dec = decrypt(inf.read())
- with open(fname + ".out", "wb") as outf:
- outf.write(dec)
- print("written to {}.out".format(fname))
- def decrypt(inp):
- out = b""
- for i in range(0, len(inp), 64):
- enc = int.from_bytes(inp[i:i+64], "big")
- dec = pow(enc, exp, mod)
- db = dec.to_bytes(64, byteorder="big").lstrip(b"\x00")
- out += db
- return out
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement