Uncrackable [crypto]

Uncrackable

e3f8e5110e29e6fde31a0861f0a4dd13530db5ffdd17113be6c2dd1c022f

Recon

Converting to bytes gives 30 bytes. Since this challenge is so guessy with 0 information at all, it's probably something like XOR-cipher. If we XOR the first 6 bytes with 'gigem{' we get a 6-byte key. XOR-ing the last byte with the last byte of the key gives '}' and since 30/6 is a nice round number, this is the actual key.

Code

cipher = 0xe3f8e5110e29e6fde31a0861f0a4dd13530db5ffdd17113be6c2dd1c022f
cipher = cipher.to_bytes(30, 'big')
key = [p ^ q for (p, q) in zip(cipher[:6], b'gigem{')]
plain = bytes([p ^ key[i%len(key)] for i, p in enumerate(cipher)]).decode()
print(plain)

Flag

gigem{blank3t5_g0_1n_cribS_ha}