I want to create a secure online team based password manager?
The idea is that I want to be able to share passwords with other people on the team, in a secure way, such that if the entire database is compromised, the hacker will still not be able to access the data. Remember this process needs to be reversible, so hashing is obviously not a solution.
In a single-user system, the solution is obviously encryption with a master password, that is memorised by the user (i.e. not stored in the database)
In a team situation we could have a master password that all users in a team know. This is used to encrypt/ decrypt the stored passwords.
The problem is that it requires all teams to remember the same password. This is a problem if a user is a member of 5 different teams, he/she will need to remember 5 master passwords!
Are there any better alternatives?