gpt4 book ai didi

ASP.NET MembershipProvider 加密/解密

转载 作者:行者123 更新时间:2023-12-04 20:22:25 24 4
gpt4 key购买 nike

我对 .Net 中的 MembershipProvider 有一些问题,我一直无法找到明确的答案。

  • 使用什么类型的加密,AES?
  • 方法 EncryptPassword,它可以处理任何盐,还是我在传递它之前简单地添加它?
  • DecryptPassword 方法——你真的能解密密码吗?能够做到这一点难道不是一种糟糕的做法吗?

  • 谢谢你的反馈!

    最佳答案

    add Element for providers for membership (ASP.NET Settings Schema)

  • enablePasswordRetrieval 属性 :“指定成员资格提供程序实例是否支持密码检索。如果为 true,则成员资格提供程序实例支持密码检索。对于 SQL 和 Active Directory 提供程序,默认值为 false。”
  • passwordFormat 属性 :“MembershipPasswordFormat 值之一,指示在成员(member)数据存储中存储密码的格式。默认值为散列。”
  • 散列:“密码使用 SHA1 散列算法进行单向加密。
    您可以使用 hashAlgorithmType 属性指定与 SHA1 算法不同的散列算法。”
  • 加密:“加密密码使用由 machineKey 元素(ASP.NET 设置架构)元素配置确定的加密设置进行加密。”

  • 因此,默认情况下 SqlMembershipProvider 使用散列(单向)密码,该密码通过 SHA1 散列。对密码进行散列不使用 EncryptPassword/DecryptPasswords 方法,但不,您不能手动将盐传递给密码的加密/编码(它为您加盐)。

    关于ASP.NET MembershipProvider 加密/解密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5006478/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com