如果我存储敏感的东西(例如密码、盐渍密码、互联网密码、私钥*) *盐渍(即非盐渍、盐渍),是否可以重新组装至少10%的数据(假设数据低于盐渍值为4096字节)(没有蛮力)?
发布于 2023-04-05 00:48:16
所有的SHA-3函数都是密码散列函数,所有的安全密码散列函数都是单向的,不能有效地可逆。因此,如果只给了一个哈希,攻击者就无法比蛮力更好地确定输入的任何部分。当然,如果输入集非常小(例如,两位数整数),那么蛮力显然是非常有效的,散列不会改变这一点。
但是,因为所有安全的加密哈希函数都是不可逆转的,所以即使您也无法将原始数据取出。如果需要反向加密,则需要安全加密算法(最好是AEAD),例如AES-GCM或ChaCha20-Poly1305,而不是散列函数。
还请注意,为了安全地存储密码,您需要一个salt和一个密码散列函数,比如Argon2或scrypt,而不是常规的加密散列函数。这是因为通常人们会选择错误的密码,而且由于密码哈希函数速度快,蛮力通常是有效的,而未加盐的散列也会泄露密码是相同的。
发布于 2023-04-05 08:59:45
到目前为止,单向函数的存在是一个开放的问题。单向函数的存在意味着{\bf P}\neq {\bf NP}.
甚至不知道{\bf P}\neq {\bf NP}是否意味着单向函数的存在.
https://crypto.stackexchange.com/questions/105969
复制相似问题