I've implemented complex encryption methods, but _only as coding exercises_, never ever ever as code that I would ever want to use outside of the exercise.
In your headers you should note that the code contained is for educational use only and is probably very flawed.
Please note: I'm not saying you're a terrible programmer and is guaranteed to botch this attempt. Encryption is a tricky beast. Best leave it to the maths geniuses.
Algorithm design is for the math people, implementation requires a form of paranoia combined with detailed knowledge about CPUs. In many, if not all, cases you will have to look at the assembly that your compiler produces to make sure that an implementation is safe against attacks that look at the timing of calls, their cache misses that affect timing of code on other CPUs, etc. .
In your headers you should note that the code contained is for educational use only and is probably very flawed.
Please note: I'm not saying you're a terrible programmer and is guaranteed to botch this attempt. Encryption is a tricky beast. Best leave it to the maths geniuses.