bee-san / Ares

Automated decoding of encrypted text without knowing the key or ciphers used
MIT License
567 stars 27 forks source link

[Technical debt] Ares uses strings instead of bytes for everything #121

Open SkeletalDemise opened 1 year ago

SkeletalDemise commented 1 year ago

Ares currently uses strings in decoders, checkers, and the searcher. This causes a problem when attempting to add support for modern encryption like XOR as results will not be in UTF-8 strings but bytes.

Furthermore Ares should not assume that results from decoders will be in UTF-8. They could be in other encodings like UTF-16, UTF-32, etc.

The solution is to refactor Ares to use bytes for everything. This will allow us to implement modern encryption like XOR, AES, DES, etc. and support for other text encodings.

SkeletalDemise commented 1 year ago

This also prevents us from implementing decompressors for Deflate, Gzip, LZMA, etc.