OK look... my C is BAD... but as far as I can tell this only converts the input to HEX. What sort of encryption is that?
Or did I miss something?
It is possible that it uses a sort of ENIGMA like twist here... it runs the first value to 16 and then counts on the next value from the first... hmmm...
Note that with the lib in that open source project, there is a note on the web page that says that no block chaining is done and you need to add this little bit of codeyourself. It's not hard but if you don't do it and just throw blocks at the encrypter then you are using "ECB" which for some uses can expose weaknesses if you are encrypting repeating text etc.
Good example here with a picture to show the weakness caused by not chaining the blocks
(I'm not saying theres a bug in the link or the source, just that there's a bit left over for you to do which is often forgotten)
Paul Dwyer
“In nature, it’s not the strongest nor the most intelligent who survives. It’s the most adaptable to change” - Charles Darwin
“If you can't explain it to a six-year old you really don't understand it yourself.” - Albert Einstein
The code already has an extra encryption round in the loop done with xor-ing (some sort of Integer Counter Mode). Although this is not powerful as CBC (and also not fully implemented in the wrapper).
I did try to implement some better cypher modes but at the time it was too hard for me. Maybe it will be implemented in one of the future versions. Thanks for reminding me this .
None are more hopelessly enslaved than those who falsely believe they are free. (Goethe)