I'm making a chrome app that does client side encryption of user messages. There is no server in my architecture. The encrypted text messages are saved as files in the user's Google Drive. I'm using forge javascript library to encrypt the messages. I want the user's password to be used for encryption and decryption, without saving it anywhere.
Currently I have the salt and IV hardcoded into the javascript code. But that means it's available to anyone who installs the chrome app. Is it better to generate a random IV and salt for every message, and save it in the user's Google Drive along with the encrypted messages? Or is it good enough to have it hardcoded as a js global? Is there a more secure way of doing this?