Encryption 改进密码&x27;s属性健全性检查

Encryption 改进密码&x27;s属性健全性检查,encryption,cryptography,aes,Encryption,Cryptography,Aes,我正在阅读密码学,我在思考AES(我使用的)的这些属性: 相同的消息=相同的输出 无消息长度保密 如果您知道这些消息,则可能存在不安全(这是否适用于AES?) 我听说AES是安全的,但是如果我想从理论上改进这些属性怎么办 我在想我能做到这一点: 应用加密算法A 带有随机数据的异或D(确保在使用任何密码时输出看起来是随机的) 生成比原始消息长的随机数据 使用哈希函数F在随机数据中分配插槽(这会扰乱字节顺序) 输入:加密算法A,使用D和散列函数F 我的问题是 提出的解决方案在理论上是否有助于解决我

我正在阅读密码学,我在思考AES(我使用的)的这些属性:

  • 相同的消息=相同的输出
  • 无消息长度保密
  • 如果您知道这些消息,则可能存在不安全(这是否适用于AES?)
  • 我听说AES是安全的,但是如果我想从理论上改进这些属性怎么办

    我在想我能做到这一点:

  • 应用加密算法
    A
  • 带有随机数据的异或
    D
    (确保在使用任何密码时输出看起来是随机的)
  • 生成比原始消息长的随机数据
  • 使用哈希函数
    F
    在随机数据中分配插槽(这会扰乱字节顺序)
  • 输入:加密算法
    A
    ,使用
    D
    和散列函数
    F

    我的问题是

    • 提出的解决方案在理论上是否有助于解决我的问题
    • 这种方法在什么地方使用过吗
    此方法的可能增强功能

    我还可以说,哈希函数选择的下一个位置将使用XOR步骤后最后一个解码字节的校验和进行更改(这样,消息必须从头到尾进行解码)

    如果我用它与某人对话,XOR的数据可能是另一个人的最后一条消息,但这可能是一个漏洞

    我期待着你的想法! (这只是理论上的,我不需要更安全的加密,只是想向你们学习。)

    是的

    看。如果你想学习密码学,我建议你阅读。真的,就这么做吧。你会学到一些明确的知识,了解什么是合适的,什么是不合适的。它专门讨论了实现,这正是您所追求的

    一些经验法则:

    • 不要自作主张。这几乎是普遍正确的。可能会有例外,但可以公平地说,只有当您彻底审查了所有现有方案,并且有具体的量化原因说明这些方案不够好时,您才应该发明自己的方案
    • 模拟攻击者。找出您打算防范的场景,并对系统进行结构设计,使其能够减轻潜在的攻击
    • 复杂性是你的敌人。不要让你的系统变得更加复杂
    • 保持最新。你可以找到一些与密码学相关的,并加入其中。从那里,您将了解有趣的实现细节,并了解最新的攻击
    至于具体解决你的问题,好吧,这很令人困惑。我不明白你的目标,也不明白第3步和第4步。您可能想快速浏览一下,以了解使用给定加密算法的不同方式

    希望这有帮助。

    是的

    看。如果你想学习密码学,我建议你阅读。真的,就这么做吧。你会学到一些明确的知识,了解什么是合适的,什么是不合适的。它专门讨论了实现,这正是您所追求的

    一些经验法则:

    • 不要自作主张。这几乎是普遍正确的。可能会有例外,但可以公平地说,只有当您彻底审查了所有现有方案,并且有具体的量化原因说明这些方案不够好时,您才应该发明自己的方案
    • 模拟攻击者。找出您打算防范的场景,并对系统进行结构设计,使其能够减轻潜在的攻击
    • 复杂性是你的敌人。不要让你的系统变得更加复杂
    • 保持最新。你可以找到一些与密码学相关的,并加入其中。从那里,您将了解有趣的实现细节,并了解最新的攻击
    至于具体解决你的问题,好吧,这很令人困惑。我不明白你的目标,也不明白第3步和第4步。您可能想快速浏览一下,以了解使用给定加密算法的不同方式


    希望这有帮助。

    随机数据异或有什么意义?如果它真的是随机的,你将如何解密它?如果你说随机数据是密钥的一部分,那么你最好放弃AES,只使用真正的随机密钥——只要它的长度与数据相同(或比数据长),并且不会被多次用于加密。它被称为一次性pad,这是我所知道的唯一一种理论上牢不可破的加密算法

    如果随机位是伪随机生成的,那么您的努力不太可能产生额外的安全性。想想有多少天才的数学家参与设计AES…


    编辑:我极力推荐应用密码学,它实际上是一本可读性和有趣的书,不像听起来那么枯燥。

    随机数据异或有什么意义?如果它真的是随机的,你将如何解密它?如果你说随机数据是密钥的一部分,那么你最好放弃AES,只使用真正的随机密钥——只要它的长度与数据相同(或比数据长),并且不会被多次用于加密。它被称为一次性pad,这是我所知道的唯一一种理论上牢不可破的加密算法

    如果随机位是伪随机生成的,那么您的努力不太可能产生额外的安全性。想想有多少天才的数学家参与设计AES…


    编辑:我极力推荐应用密码学,它实际上是一本可读性很强、很有趣的书,不像听起来那么枯燥。

    你的假设是错误的

  • 同样的信息!