gpt4 book ai didi

algorithm - 使用逻辑门(XOR、NEG/NOT、NAND)的加密器/解密器

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:24:44 24 4
gpt4 key购买 nike

我正在使用 Verilog 开发一个项目,该项目将加密一个 20 位数字并使用 XOR、NOT 和 NAND 门将其解密。

用于加密,

  1. 输入XOR xorEncDec(异或的预定义操作数)
  2. NOT 输入(也是 1 的补偿)
  3. 输入 NAND nandEncDec(NAND 的预定义操作数)

我的解密器有问题。数字是十六进制的。这是我的程序的示例输出: enter image description here

我现在(这是错误的)解密的当前逻辑是

  1. 输入 NAND 2 的 nandEncDec
  2. NOT 2's comp of input
  3. 输入 XOR 2 的 xorEncDec

我觉得我已经接近答案了,因为每个解密阶段的输出似乎都是负的表示。你能帮我修正我的解密算法吗?我并不是真的在 Verilog 代码中寻找答案,即使是算法或正确的门也可以。

最佳答案

NAND 是不可逆操作:

a b (a NAND b)
0 0 1
0 1 1
1 0 1
1 1 0

如果b为0而你知道(a NAND b)的结果为1,你无法知道a是否为0或 1. 因此,您的加密算法存在缺陷,无法解密其输出。

(您可能知道以下内容,但我还是不得不说:制作您自己的加密算法是一项有趣的练习,但是永远不要将您自己的加密用于任何严肃的事情;它被破解。这适用于除专业密码学家之外的所有人,甚至他们也必须提交他们的算法以供彻底的公众审查,然后任何人才会梦想使用它们。)

关于algorithm - 使用逻辑门(XOR、NEG/NOT、NAND)的加密器/解密器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27429465/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com