We have a J2EE application that talks to multiple external systems. Each external system want our application to be authenticated by username/password. So whenever we talk to the external system, we need to send a username/password. Problem is storing these passwords. We want to store these passwords in a secure form. Obviously we cant use MD5 to hash the password because we need to send the password to external system. So we need to encrypt the password.
- Where to store the encrypted password. Database?
- Where to store the encryption key?
What is the best practice for this particular problem?