有人知道使用什么密钥和 IV 来加密/解密 ASPXAUTH cookie 吗?我想我已经弄清楚了关键部分。
经过大量阅读和研究(以及此处发布的其他问题),我看到 ASPXAUTH 使用了 FormsAuthentication.Encrypt 和 Decrypt 方法。它们反过来使用您在 web/machine.config 文件的 machineKey 部分中定义的任何算法和密钥。
作为参考,我读过这些文章:http: //msdn.microsoft.com/en-us/library/ff647070.aspx http://www.codeproject.com/Articles/16822/The-Anatomy-of-Forms -验证
如果我使用以下 machineKey(来自在服务器场中部署的 msdn 示例):
<machineKey
validationKey="32E35872597989D14CC1D5D9F5B1E94238D0EE32CF10AA2D2059533DF6035F4F"
decryptionKey="B179091DBB2389B996A526DE8BCD7ACFDBCAB04EF1D085481C61496F693DF5F4"
decryption="AES"
/>
根据后面的链接,ASPXAUTH 将使用具有上述设置的 AES(在托管代码中实现为 RijndaelManaged)。
我想尝试使用标准 RijndaelManaged 函数解密,但输入需要密钥和 IV。
我假设如果我将它从十六进制转换为字节数组,我可以使用密钥作为密钥,这很容易。
但是,我将什么用作 IV 的输入?我在任何地方都找不到此信息或设置。