[尝试对一些配置凭证(不敏感)进行一些客户端加密。但是,如果我使用错误的凭据导入模块,一切都会崩溃。
因此,我在考虑加载模块之前先考虑是否可以使用小字符串测试加密密钥的正确性或错误性。
这将要求我在我的客户端代码中具有相同字符串的解密和加密版本,导致我试图找出是否有人可以使用它。
任何现代专业级算法?没有。这是一个安全漏洞(已知明文或“ crib”攻击),自从Enigma时代以来就一直受到关注,并且当然是随之而来的非对称加密的主要设计目标。
例如,AES将密钥遍历明文多次,直到无法计算反向函数为止。攻击者剩下的方法是以蛮力方式运行密钥。如果纯文本字符串比键短,那么由于没有足够的信息,我们现在可以将其排除在外。如果字符串与密钥一样长,并且密钥具有专业长度,那么这种蛮力将是“到宇宙末日的所有计算能力”的问题。