先对密码应用sha256,再用于aes256加密是否安全?
先对密码应用sha256,再用于aes256加密是否安全?
About
你要考虑你的应用场景。
第一个就是为什么要使用 用户密钥对用户数据进行加密?
先不讨论《网络安全法》之类的,这个操作很有可能是没有必要的。
正常情况下,应该是KDC统一分配密钥或者本地生成器生成充分随机的密钥。
我们往往只将用户密钥作为认证因素的一部分,而不会实际参与后续的加密。
第二个就是这么做很可能就是不安全的。
因为加盐或者使用慢哈希都是为了抵御彩虹表攻击,但是无法抵御字典和撞库攻击。
而历史告诉我们,用户设置的密码往往都很简单,可以设置为123456,就不会设置了1145141919810。

可以把两个应用密码设置为同一个,就不会设置为两个。
用户是很懒惰的,对于撞库和字典攻击的可能性你也要考虑清楚。
作为参考,例如腾讯云类似的云服务商,服务器ssh密钥都是平台提供给用户,如果需要使用,请自行复制密钥使用。而用户只有选择刷新的权利,没有自主决定的权利。