>SSDs that encrypt the drive with a key that doesn't depend on the password
AFAIK, this is the standard practice in software harddrive/filesystem encryption - LUKS, TrueCrypt, etc., for practical reasons, and with no negative impact on security if properly implemented. AFAIK again, this is also how Firefox handles encryption of stored website login/password credentials - they are always encrypted using locally generated & held key; in case user supplies her own password, this key is encrypted with that password, with no change to the actual login/password store.
Contrast the following two scenarios:
- derive encryption key from user-supplied password [potentially weak key]
- encrypt the whole device / filesystem with the key [very long process, prone to interruption]
- user wishes to change the password
- re-encrypt the whole device / filesystem with the new key [very long process, prone to interruption]
vs.
- generate a cryptographically secure random or pseudorandom key
- store the password in device
- encrypt device with the key from the first write onward
- when user sets password, encrypt the stored key [no change to content of device necessary]
- from that point the user password is necessary to use the decryption/encryption key
- when the user changes password, re-encrypt the stored key only [no change to content of device necessary]
The second scenario is also more amenable to implementing various multi-password schemes, password-recovery techniques, and encryption secured with both passwords and hardware tokens.