使用压缩算法进行GPU攻击是否安全?

时间:2016-12-16 11:30:48

标签: android algorithm security hash gpu

我想从用户密码制作256位消息摘要。

我知道建议使用Argon2以确保安全性,但到目前为止Android设备不支持它。

所以,我想出了下面的另一种方法。

  1. 加密大的随机数据,这个数据太大,以至于GPU无法保留SRAM上的数据,而是通过用户密码使用某种算法(例如AES)。

  2. 使用Zip算法对加密数据进行编码。

  3. 使用SHA256

  4. 获取zip数据的消息摘要

    我认为Zip编码是GPU最差的算法之一, 因为它每个只处理1位并且有许多If分支。 不可并行化。

    Zip是无损压缩,因此步骤2中生成的数据对用户密码是唯一的。

    考虑GPU架构,执行If分支时需要很多时钟周期, 我认为使用GPU编码Zip比使用CPU慢。

    这个怎么样? 安全

    我只是一个安全的初学者。

    任何人都可以评估这种方法吗?

1 个答案:

答案 0 :(得分:1)

仅仅使用哈希函数是不够的,只添加一个盐对提高安全性几乎没有作用。相反,使用随机盐在HMAC上进行大约100毫秒的持续时间并使用哈希值保存盐。使用PBKDF2(又名Rfc2898DeriveBytes),password_hash / password_verifyBcrypt等功能以及类似功能。关键是要让攻击者花费大量时间通过暴力查找密码。保护您的用户非常重要,请使用安全密码方法。