Ok I need to get a few things straight.
1 The reason there is a password is because it is a encryption program and if it didn't have a password someone could just use it and get my algorithm.
2 The reason it is a .dll file is for the exact reason you said to confuse people so they don't think it is a password file, and I am hoping once I get the password part working to make the password get encrypted.
3 I removed the comment tags already(I am not that stupid).
So what I need to do is:
1 Get the password protection working.
2 Make the password get encrypted, and set up the program so the password file cant just be deleted to make a new password.
3 Add an algirithum like acr4 to the encrypting and decrypting part.
Using a .h header file or some .lib file.
Sorry if I sound rude but I have only been doing c++ 3 years and am only a beginner getting frustrated.
Thank you very much.
There's a difference between confusing people who are trying to debug your code and confusing people who are trying to break your encryption. Get the program correct first, then you can obfuscate the code all you want. The obfuscation comes later. Anyone who had the source code could immediately see that you aren't loading a dll, despite the name. It's not going to trick anyone. Anyone who had the source code will also see that your key is hard-coded into the code. Don't confuse your "key" with the "password" stored in your text file. The password stored in the file has nothing to do with the encryption and decryption. It simply aborts the program if you don't have the right program. You also have the password file hard-coded in the file, so anyone with the source code knows immediately where to look. If you want security, you need to have the key and/or password read in as command line arguments. That way you can have the source code and you still won't know what the key is and where the pssword is stored. Anyone with the source code immediately can bypass the password anyway, so all you're left with is the key.
Regarding comments and names, normally the bad guy trying to revese engineer your program won't have the source code. They have the executable. You keep the source code close to the vest. All comments and names are stripped out of the executable anyway by the compiler. Comment all you want, name everything whatever you want and it's all irrelevant because you only release the executable.
A good encryption/decryption program/algorithm allows you to be completely transparent with the source code. Use an algorithm like Triple DES or AES and I can show you my source code and you still can't break it without the key. I was assuming that since this is a Caesar Cipher, this project was just for fun since no one actually uses that since it's way too easy to break.
Anyway, we have no way of knowing where you're coming from when you post if you don't tell us in the beginning. We're assuming that you're trying to create good, well-organized easy-to-follow code. As mentioned, if you want security, don't hard-code the key, password, or password file. Read them in as command line arguments or ask them to type it in. Or I suppose you could have a hash function and hash a password and hard-code the hash value into the program. A good hash formula won't allow you to go backwards from the hash to the password.