2

假设我有一个应用程序来读取和写入受哈希保护的文件(以检测篡改和损坏),并且可以选择使用用户密钥进行加密。应用程序必须包含编译后的代码来散列、加密和解密数据。

假设我们使用的是严格的算法,例如加盐和拉伸的 AES-256 和 SHA-256,那么用户拥有已编译形式的应用程序(并且通过一些努力可能会计算出正在使用的算法),这对他们来说更容易破解加密,或生成假哈希?

如果这实际上是一个严重的漏洞,那么有人会建议采取什么措施来减轻漏洞?

4

1 回答 1

4

应用程序源存在漏洞的唯一情况是应用程序本身存在严重缺陷,例如

  • 通过隐蔽技术使用安全性,
  • 在程序主体中嵌入一个秘密,
  • 在实现一个众所周知的算法时犯了一个错误,该算法使该实现容易受到攻击。

从本质上讲,当攻击者知道其来源时,您的产品会变得更容易受到攻击,因为攻击者可以更容易地发现您的编码错误。但是,使您的应用程序可破解的是编码错误,而不是攻击者拥有您的源代码这一事实。

于 2013-02-26T01:36:51.990 回答