Encryption 改进密码&x27;s属性健全性检查
我正在阅读密码学,我在思考AES(我使用的)的这些属性:Encryption 改进密码&x27;s属性健全性检查,encryption,cryptography,aes,Encryption,Cryptography,Aes,我正在阅读密码学,我在思考AES(我使用的)的这些属性: 相同的消息=相同的输出 无消息长度保密 如果您知道这些消息,则可能存在不安全(这是否适用于AES?) 我听说AES是安全的,但是如果我想从理论上改进这些属性怎么办 我在想我能做到这一点: 应用加密算法A 带有随机数据的异或D(确保在使用任何密码时输出看起来是随机的) 生成比原始消息长的随机数据 使用哈希函数F在随机数据中分配插槽(这会扰乱字节顺序) 输入:加密算法A,使用D和散列函数F 我的问题是 提出的解决方案在理论上是否有助于解决我
A
D
(确保在使用任何密码时输出看起来是随机的)F
在随机数据中分配插槽(这会扰乱字节顺序)A
,使用D
和散列函数F
我的问题是
- 提出的解决方案在理论上是否有助于解决我的问题
- 这种方法在什么地方使用过吗
- 不要自作主张。这几乎是普遍正确的。可能会有例外,但可以公平地说,只有当您彻底审查了所有现有方案,并且有具体的量化原因说明这些方案不够好时,您才应该发明自己的方案
- 模拟攻击者。找出您打算防范的场景,并对系统进行结构设计,使其能够减轻潜在的攻击
- 复杂性是你的敌人。不要让你的系统变得更加复杂
- 保持最新。你可以找到一些与密码学相关的,并加入其中。从那里,您将了解有趣的实现细节,并了解最新的攻击
- 不要自作主张。这几乎是普遍正确的。可能会有例外,但可以公平地说,只有当您彻底审查了所有现有方案,并且有具体的量化原因说明这些方案不够好时,您才应该发明自己的方案
- 模拟攻击者。找出您打算防范的场景,并对系统进行结构设计,使其能够减轻潜在的攻击
- 复杂性是你的敌人。不要让你的系统变得更加复杂
- 保持最新。你可以找到一些与密码学相关的,并加入其中。从那里,您将了解有趣的实现细节,并了解最新的攻击
希望这有帮助。随机数据异或有什么意义?如果它真的是随机的,你将如何解密它?如果你说随机数据是密钥的一部分,那么你最好放弃AES,只使用真正的随机密钥——只要它的长度与数据相同(或比数据长),并且不会被多次用于加密。它被称为一次性pad,这是我所知道的唯一一种理论上牢不可破的加密算法 如果随机位是伪随机生成的,那么您的努力不太可能产生额外的安全性。想想有多少天才的数学家参与设计AES…
编辑:我极力推荐应用密码学,它实际上是一本可读性和有趣的书,不像听起来那么枯燥。随机数据异或有什么意义?如果它真的是随机的,你将如何解密它?如果你说随机数据是密钥的一部分,那么你最好放弃AES,只使用真正的随机密钥——只要它的长度与数据相同(或比数据长),并且不会被多次用于加密。它被称为一次性pad,这是我所知道的唯一一种理论上牢不可破的加密算法 如果随机位是伪随机生成的,那么您的努力不太可能产生额外的安全性。想想有多少天才的数学家参与设计AES…
编辑:我极力推荐应用密码学,它实际上是一本可读性很强、很有趣的书,不像听起来那么枯燥。你的假设是错误的