通过WebRTC发送和验证图像

Send and verify images via WebRTC

本文关键字:验证 图像 WebRTC 通过      更新时间:2023-09-26

我需要通过WebRTC将图像数据发送到另一个对等端。我的第一个想法是使用图像中的base64表示。我在Canvas的帮助下得到了这个数据URI。工作起来很有魅力。但现在我想检查数据在发送之前是否没有更改。

问题是,Canvas对图像进行了重新编码,而Firefox和Chrome对imageData的编码有所不同。所以我无法获得匹配的SHA哈希。

关于如何解决这个问题的任何想法。也许是解决整个问题的新方法?(不过WebRTC是强制性的)。谢谢

以下是我所做的。。。基本上,我现在使用的是ArrayBufferBlob。我有一个问题图像的Blob。然后我使用FileReader.readAsArrayBuffer(blob)UInt8Array作为该数据的视图。然后,我将字节连接起来,并使用https://github.com/satazor/SparkMD5.拼接需要相当长的时间,所以我只考虑每十个字节。这被认为是一个相当大的安全问题。因此,我们非常感谢任何关于改进这一过程的提示。只要我或其他人想出一个更好的主意,我就会坚持这个答案。