Dar*_*rov 1 .net cryptography sha1 brute-force
我使用以下代码生成加密令牌:
var ticket = new System.Web.Security.FormsAuthenticationTicket(
2,
"",
DateTime.Now,
DateTime.Now.AddMinutes(10),
false,
"user id here");
var cipherText = System.Web.Security.FormsAuthentication.Encrypt(ticket);
Run Code Online (Sandbox Code Playgroud)
此代码使用app/web.config中指定的密钥和算法:
<system.web>
<machineKey validationKey="SOME KEY"
decryptionKey="SOME OTHER KEY"
validation="SHA1" />
</system.web>
Run Code Online (Sandbox Code Playgroud)
现在假设我将生成的密文发送给合作伙伴.他是否有能力强暴:
我想这两个问题的答案都是肯定的,但是他的机会有多现实,你认为给他密码会对我的系统构成安全威胁吗?在此先感谢您的回复.
你在这里描述的是一种已知的明文攻击.攻击者学习明文和相应的密文,他的目标是找到密钥.现代密码旨在抵御这种攻击.
实际上,任何现代密码都可以抵御甚至更强大的攻击,例如选择的明文攻击和选择的密文攻击.即使允许攻击者选择明文和相应的密文或选择任意数量的密文并学习解密,他/她仍应该无法学习密钥.
这使得设计新密码变得非常困难.但幸运的是,我们已经有了很好的密码,比如AES.
我还应该补充一点,上面的所有攻击都假设攻击者知道所使用的密码的所有细节.他唯一不知道的是使用的钥匙.这被称为Kerkhoff的原则.