条形码和 QR 码对更改存储数据的尝试有多大的抵抗力?

信息安全 身体的 二维码 条码
2021-08-09 15:23:53

假设我们想要保护文档不被操纵和伪造。因此,我们对文档的一些敏感信息进行编码,并将其存储在插入文档中的二维码中。

我们能否确定攻击者无法更改和修改 QR 码中存储的数据?如果可以修改它,攻击者这样做有多难?换句话说,二维码的安全性如何?

4个回答

... QR 码的安全性如何?

QR 码中的数据可以通过一些错误纠正来防止意外损坏,但不能防止故意操纵。此外,攻击者可能会用不同的二维码完全替换文档中的二维码。

QR 码通常不受篡改保护。但:

您可以在数据中包含数字签名,这样任何人都可以检查二维码是否由您制作并且未被修改。那么攻击者唯一能做的就是用你制作的另一个二维码替换二维码。

这种方法通常会像这样工作:

  • 在安全服务器上,会生成一个密钥对(公钥和私钥)。公钥可以安全地发布。私钥永远不会离开服务器。
  • 当需要创建二维码时,服务器根据信息和私钥计算数字签名。信息与数字签名一起放入二维码中。
  • 一个人创建了一个用于扫描二维码的应用程序。公钥包含在应用程序中。以公钥、信息和数字签名为输入的算法可以检查二维码中的数据是否被篡改。

我不知道是否有任何标准或良好的现有软件用于二维码中的数字签名。

QR 码或条形码只是以非字母格式编写的数据。它提供的安全性并不比您在普通文本中写入相同数据所获得的安全性更高。

QR 码不提供防止故意修改的保护。

根据您的意图,可以通过多种方式实现文档保护。可以通过附加数字签名来验证内容,但必须对您的公钥进行外部(带外)验证,以防止简单地用其他人的签名密钥替换签名密钥。这在代码下载中很常见,其中代码(文档)的签名可通过网站或其他带外检查获得。

隐藏的水印或其他隐写技术可以帮助验证文档,但它依赖于不被检测到,而不是严格的加密签名。有许多方法,它们的有效性取决于分布和使用。例如,所选单词或字母的自定义微间距。非标准饼图旋转。数字文档的选定位置中的额外空格。打印文档的白纸上的小黄点。许多其他人,但数字签名是黄金标准。