- C++ 100%
| .gitignore | ||
| LICENSE | ||
| main.cpp | ||
| README.md | ||
🔐 huco705-archive
Archive repo for my my first computer program ever.
huco705 is a custom encryption algorithm based on the Vigenère cipher. The difference is that it makes use of a random number generator to modify the final cipher text. This makes the algorithm non-idempotent as one unique set of (message, key) will yield a different cipher every time because of the randomness aspect.
The only way decoding is made possible is due to the random number information being embedded in the final cipher text. It's part of the result, the information is never lost.
Warning
This algorithm is intended for learning purpose only and should not be used in a real environment. It relies heavily on the principle of Security through obscurity which violates one of the pillars of cryptography; the Kerckhoffs's principle:
« A cryptosystem should be secure, even if everything about the system, except the key, is public knowledge. »
I wrote this code back in 2016/2017 when I was still in high school. I was really interested by cryptography back then and genuinely believed huco705 to be a strong cipher that I could use securely. It's fun to try making your own custom encryption algorithms, you learn a lot by doing that. Just don't use it in a real setting as it will be easily broken by cryptography experts.
Tip
For fun, I recently rewrote this in rust: rtfw-rs/rtfw-huco705-rs.
Usage
Compile first:
g++ main.cpp -o main
Then run:
./main
Note
huco705only works with the base ASCII set of 95 characters.