我有一个C#应用程序需要连接到SQL数据库以不时发送一些数据。如何安全地存储用于此作业的用户名和密码? 最佳答案 ThereisaniceMSDNarticle关于如何保护.Net中的连接字符串。您可能想使用protectedconfiguration. 关于c#-如何在C#应用程序中安全地存储数据库登录名和密码?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/11685206/
在net3.5csharp应用程序中,我需要提前知道AD密码是否满足配置的复杂性要求。你怎么做到的? 最佳答案 如果您想从AD获取需求,@LenielMacaferi的回答中的链接应该会有所帮助。如果您已经知道预期要求并且您的应用接受建议的字符串形式的密码,您可以自己进行测试。一些常见的要求和计算方法包括:最小长度:方便查看字符串的长度复杂性:常见要求是“此列表中的至少三个:小写字母、大写字母、数字、字符”,因此您想创建一个计数器,然后使用正则表达式测试每个条件是否匹配并为每个增加计数器。因此,例如,您的正则表达式类似于[a-z],
好的,我是C#的新手,但已经学了一点。但我有一个问题,如何用“*”替换输入控制台的字符或完全隐藏它们?varpw="eric123";Console.WriteLine("Password:");varvalue=Console.ReadLine();if(value==pw){Console.WriteLine("Permitted,Playonline?(Y/N)?");vargetGameOnlineStatus=Console.ReadLine();//RestOftheCodeisjustforme:)如有任何帮助,我们将不胜感激! 最佳答案
如果您查看过asp.net成员(member)系统的表模式,它们会存储原始密码的哈希值以及用于生成它的盐。请参阅下面的架构,dbo.aspnet_MembershipApplicationIdUserIdPasswordPasswordFormatPasswordSaltMobilePINEmail...如果攻击者掌握了数据库,他是否更容易从加盐和散列密码中破解原始密码?查看一些记录后,似乎为每个密码生成了一个新的盐。这有什么意义?您会推荐这种方法,还是在代码中硬编码常量salt相关Aresaltsuselessforsecurityiftheattackerknowsthem?
我正在编写一个开源的C#应用程序,我需要能够为每个用户存储已保存的登录信息。通常我只会加密密码,然后将其存储在用户设置文件中,但我担心由于代码是开源的,它有点破坏了加密它的意义。因为任何人都需要做的就是查看代码并获取加密key。诚然,这至少比以纯文本形式存储密码要难得多。但是有没有什么好的加密密码的方法,但即使你有源代码,它至少仍然非常难以解密?也许能做到,这样至少就差不多了不可能在加密它的计算机以外的任何计算机上解密?编辑:澄清...我存储的是客户端密码,而不是用于验证服务登录的密码。它是我无法控制的预先存在的Web服务的客户端。我只想在本地存储密码以进行自动登录……就像任何聊天客户
我正在制作一个应显示带密码的PDF的应用程序。这是我的代码:protectedvoidPage_Load(objectsender,EventArgse){if(!Page.IsPostBack){try{stringfilePath=Request.QueryString["filePath"];if(filePath.ToUpper().EndsWith("PDF")){copyPDF(filePath);}}catch{stringmessage="alert('FileNotFound!CallRecordsDepartmentforverification.')";Scrip
有几种方法(即使在SO中也是如此),他们都提到在数据库中保存密码的最佳方法是保存,而不是密码,不是hased密码,而是存储加盐的哈希值密码。我的问题很简单,把一些代码放在上面,这是正确的方法吗?stringusername="myUsr";stringpassword="myPwd";DateTimecreateDate=DateTime.UtcNow;//SaltitstringsaltedPwd=String.Concat(password,createDate.Ticks.ToString());//HashitHMACSHA1hash=newHMACSHA1(Encoding.
我使用的是C#,并且有一个包含属性网格控件的Windows窗体。我已将propertygrid的SelectedObject分配给一个设置文件,该文件显示并允许我编辑设置。但是其中一个设置是密码-我希望它在字段中显示星号而不是密码设置的纯文本值。该字段在保存时将被加密,但我希望它表现得像一个普通的密码输入框,在用户输入密码时显示星号。我想知道是否有一个属性可以应用于设置属性以将其标记为密码?谢谢。 最佳答案 从.Net2开始,您可以使用PasswordPropertyTextAttribute附加到您的密码属性。希望这对您有所帮助。
大家好,我从PreferredMethodofStoringPasswordsInDatabase了解到存储密码的哈希值是安全的...如何使用C#对密码值进行加盐和哈希处理?如何比较数据库中存储的值和用户给定的值? 最佳答案 最流行的方法是使用散列算法。有一个很棒的blogposthere关于如何使用MD5算法对字符串进行哈希处理,但是System.Cryptography命名空间中还有许多其他示例。至于#2,有关其工作原理的一般分步指南如下:注册时:使用您指定的算法散列用户密码并将其存储在数据库中Salt这个散列(可选,但首选)登
我有一个使用Identity的ASP.NET项目。对于与密码有关的身份配置,正在使用PasswordValidator。如何将密码的强制执行扩展到PasswordValidator当前(RequiredLength、RequiredDigit等)之外以满足要求输入密码的要求N天后到期? 最佳答案 没有内置ASP.NETIdentity2的此类功能。最简单的方法是在用户上添加一个字段,如LastPasswordChangedDate。然后在每次授权时检查这个字段。publicclassApplicationOAuthProvider: