用于加密消息的对称密码是什么?

发布于 2021-01-29 18:59:25

我一点也不了解加密。但是我需要。怎么样?

假设您有一个节点系统,这些节点通过异步消息在网络上相互通信。节点不维护有关其他节点的会话信息(这是设计限制)。

假设您要确保只有您的节点可以读取正在发送的消息。我相信加密是解决方案。

由于节点不维护会话,并且通信必须以无状态,无连接的方式进行,因此我猜想排除了非对称加密。

所以这是我想做的:

消息作为UDP数据报发送
每封邮件都包含一个使邮件有所不同的时间戳(计数器重播攻击)
每条消息都使用共享的对称对称密钥加密并通过网络发送
另一端可以使用共享的对称密钥解密
显然,可以通过破坏任何单个节点来破坏密钥。同时,在这种情况下,无论如何访问任何单个受损节点都会泄露所有有趣的信息,因此关键不是最弱的链接。

我应该使用哪种密码进行加密?什么密钥长度?

我更喜欢使用ezPyCrypto支持的东西。

就像大多数人指出的那样,假设我使用AES。我应该使用什么模式?

我无法弄清楚如何使用ezPyCrypto进行操作,PyCrypto似乎挂在主持人调换上,而Google的keyczar没有解释如何设置它-我担心如果我不只是得到它,那我就要冒风险引入不安全感。所以准系统会更好。这个人声称在python中有一个用于AES的不错的模块,但是他还断言这是他的第一个python项目-尽管他的负载可能比我聪明,但也许他被绊倒了?

编辑:我将对python实现的搜索移到了另一个问题,以停止破坏…

关注者
0
被浏览
216
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我一点也不了解加密。但是我需要。怎么样?

    危险!如果您不太了解加密技术,请不要尝试自己实现。密码术很难做到正确。除了实际破解密钥(通常非常困难)之外,还有很多许多不同的方法可以破解密码系统的安全性。

    如果您只是在流数据上加一个密码,而没有仔细的密钥管理和对加密系统细微之处的其他了解,则您可能会面临各种漏洞。例如,您描述的方案将很容易受到中间人攻击,而没有在节点之间进行密钥分配的特定计划,并且可能会受到选择明文和/或已知明文攻击的影响,具体取决于您的分布式方式系统与外界通信,并精确选择密码和操作模式。

    所以…在安全使用加密货币之前,您通常必须先阅读加密货币。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看