Answers:
No, there is no need for a unique key for each password - and this will not be useful, since your key must be stored somewhere. You can also save a password in this secure system.
You do not have to store the key on the same system with the same access conditions as the password. This would make encrypted storage useless. You must put the key in a different place, protected from abuse, and perform encryption inside this system.
You are much better off picking a feature like PBKDF2 and save the result of this. Key management is a complex task and should not be chosen without a good idea of how to proceed (hire a professional if you go like that).
Finally, the whole idea of IV is that it protects plain text when the same key is used. You can set the value of IV to all zero if you have a key for one text / encryption text pair. However, the idea is that you use one key, which is stored somewhere with preservation, and a random IV, stored using encrypted text.
As already mentioned, if you did not already know this, your circuit is unsafe because there are many other things that you can consider, and you probably did not.
PS Microsoft has several ways to securely store keys in the system, for this you may need to search for stackoverflow. However, I am not an expert on the MS API.
source share