Now the new requirement arrives: to allow the user run in offline/cache mode. Which means when the user needs to encrypt sensitive data on data entry,or when he accesses sensitive data to view it, the key is required. However the server cant be reached. We need that key and only have only a password.
Just how bad is that to use AES to encrypt a 16 byte secret using the users password to derive a key and a salt that is unique but presumably PREDICTABLE?
Assuming one would set the PBDK2 iterations to as large as tolerable by users perhaps 500 msec to derive key from password.
I still cant see how they used AES without a predictable salt when a device must work when offline.
Is there an Java script accessible algorithm that copes well with a short value to encrypt and only a password derived key and device unique but known Id as salt.