Good security is complicated.
As Bruce Schneier says: “Security is a compromise.” You must decide how securely you want this information, and how much time you want to spend on providing this information. And you definitely don't want to leave passwords just sitting there in plain text, that no, no. If you are in a situation where this is normal, you are in a situation where you should not have user authentication.
Although security is complex, there are a few things you can do.
1) Use some type of compiled program for encryption / decryption. You don’t want anyone to open a Python / perl script and say “yeah, it's just XYZ encryption”, although ideally you don't want simple encryption.
2) Security through obscurity is not true security, but it can help against accidental tracking. For example, naming the file "passwords.txt" is not a very good idea, but encrypting your passwords and then using steganography to better smooth the user / pass in some kind of image file.
3) Find strong encryption / decryption algorithms. Some of them are already implemented in most languages, and you can simply import the library. This can be bad or good, depending on how safe you think you want this material.
But honestly, this system is really bad - reasonable security. Ideally, you have two-way authentication, and then a trusted intermediary does the whole wheel and business. For example, when you log on to your computer, you tell the computer that you are an authorized user. From there, you can run all of your programs, and they don’t ask or care about your combination of users and passes - you are simply an authorized user. They get this information from the OS (average person). Heck, even SO uses openID to decide that you are a trusted user - they don’t care what your credentials are on other sites, only that other sites say "Yes, this is a valid user."
If you have the option, I would seriously consider switching the authentication model. If not, good luck.