解密中的模运算符

时间:2018-03-12 00:59:56

标签: math encryption modulo algebra

我正在为ascii字符串创建一个加密器/解密器,其中我取一个char的ascii值,加1,然后用最高的ascii值修改它,这样我得到一个有效的ascii char。 问题是解密。

让我们说(a + b)%c = d 我知道b,c和d的值。 如何从中获取变量值?

3 个答案:

答案 0 :(得分:3)

这正是ROT1替换密码。减去1,如果小于最低值(假定你假设你是如何描述它的话),那么加上最高值。

使用" mod,"等术语虽然准确,但这看起来比现在看起来更复杂。它只是添加到戒指上。当你翻过最后一封信时,你会回到第一个字母,反之亦然。一旦你了解数学运算的方法,就应该弹出方程式。基本上,您只需正常添加或减去(添加到加密,减去在这种情况下解密),最后,mod"标准化"你回到了合法价值观的环节。

答案 1 :(得分:1)

使用反向公式

a = (b - d) mod c

或在实践中

a = (b - d + c) % c.

需要添加术语+ c作为安全措施,因为%运算符未在底片中实现真正的模数。

答案 2 :(得分:0)

我们假设c为2,d为0且b为4。

现在我们知道a 必须为2 ...或者4实际上......或者6 ...或任何其他偶数。

你无法解决这个问题,有无限的解决方案。