【发布时间】:2011-04-29 13:56:11
【问题描述】:
是否有一种(简单的)方法来加密数据,以便解密它需要一定数量的 cpu 小时?可能是一系列具有短密钥长度的加密、一个可变的单向函数或任何东西?
它可能用处不大,但是如何调用这个加密方案,有没有工具呢?
编辑:
为了在蛮力中断时间上没有变化的结果,我不应该使用带有异或反馈的多轮吗?
我刚刚想出了这个算法(对于具有相等值和密钥长度的对称分组密码)......也许这是无意义的
第1轮 创建一个零块 创建一个随机块 1 加密值:带密钥的零块:random-block1 => 给出 lock-output-1 第二轮 创建一个零块 创建一个随机块 2 加密值:带密钥的零块:随机块 2 => 给出温度 xor temp with random-block-1 => 给出 lock-output-2 等等存在与 random-block-1 的异或操作,因此解锁例程必须先找到 random-block-1,然后才能开始暴力破解 lock-output-2。
lock-output-1 + lock-output-2 .. lock-output-N 将是完整的锁定输出。当解锁例程在所有锁输出块上找到 N 个每个都为零的密钥块时,它可以将这 N 个密钥块作为一个整体来解密实际数据。
然后我还需要一个公式来计算多少轮可以给出最大变化,例如所需的 CPU 小时数为 10%。
我想肯定存在类似的算法。
【问题讨论】:
-
既然有云计算,我应该说锁定数据,所以要暴力破解它需要一定的金钱。
标签: algorithm encryption brute-force