crypt 算法由向量密钥和误差与输入密钥和真实密钥之间的差异成正比

问题描述

我想找到一种提供下述功能的加密算法。

给定一个密钥(一个向量 Vkey)和一个数据(一个图像),用这个密钥加密图像;加密后无法识别加密图像。

解密时,如果:

  1. 使用key = Vkey进行解密,解码后的图片与原图无误。
  2. 使用key = Vkey_1,diff(Vkey,Vkey_1)
  3. 使用 key = Vkey_2,这与 Vkey (diff(Vkey,Vkey_1) > threashold) 非常不同,解码后的图像远不如原始图像清晰。

简而言之,diff(Vkey,Vkey_try) 与 diff(原始、解密图像)成正比。

一些加密算法要求解密密钥应该与密钥完全相同,但在这里,我们需要“如果不完全匹配但只是略有不同,我们仍然可以解码但有一点神器”。强>

是否有任何类似的加密算法可以提供所请求的功能

解决方法

没有满足 2 的加密安全算法。当您使用加密安全算法时,如果没有正确的密钥,数据将与随机数据无法区分。因此,如果使用不同的密钥解密,数据应该是完全随机的。

有些算法的相关密钥可以产生类似的加密,例如 RC4,但这被认为是一个主要的安全问题,因此 TLS 和其他安全协议中禁止使用 RC4。输出也不够相似,无法满足您的目标。

如果您的目标不是安全加密您的数据(如您的标签“去马赛克”所建议的那样),那么如果您提到该目标是什么,那么我们可以提供有用的回复来帮助您实现该目标,这会有所帮助.例如,如果您的目标是生成仅略有不同但您不需要加密安全性的相似图像,那么有一些算法可以满足您的需求。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...