如何利用C#产生随机密码字符串(国外英语资料).docVIP

如何利用C#产生随机密码字符串(国外英语资料).doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何利用C#产生随机密码字符串(国外英语资料)

如何利用C#产生随机密码字符串(国外英语资料) 如何利用c#产生随机密码字符串. txt 使用系统; 使用System.Security.Cryptography; 使用text; 名称空间效用{ 公开课PasswordGenerator { 公共PasswordGenerator(){ 这一点。最小= DefaultMinimum; 这一点。最大= DefaultMaximum; 这一点。ConsecutiveCharacters = false; 这一点。RepeatCharacters = true; 这一点。ExcludeSymbols = false; 这一点。排除=零; rng = new RNGCryptoServiceProvider(); } 受保护的int get密码随机数字(int l绑定,int u绑定) / /假定lBound = 0 lBound uBound / /返回一个int = lBound uBound 使用uint urndnum; 字节rndnum=新字节4; if(l装订==ubound-1) / /只有iBound返回的情况 返回lBound; } 使用uint xcludeRndBase =(单位。MaxValue(uint.MaxValue %(单位)(uBound-lBound))); {做 rng.GetBytes(rndnum); urndnum = System.BitConverter.ToUInt32(rndnum 0); (urndnum=xcludeRndBase); 返回(int)(urndnum%(ubound-l绑定))+l绑定; } 保护char GetRandomCharacter(){ int upperBound = pwdCharArray.GetUpperBound(0); 如果(真==这个。ExcludeSymbols){ upperBound = PasswordGenerator.UBoundDigit; } int随机数字=get密码随机数字(pwdchararray.get小写(0),上界); char randomChar = pwdCharArray[randomCharPosition]; 返回randomChar; } 公共字符串生成(){ / /得到最小和最大之间随机的长度 int pwdLength = GetCryptographicRandomNumber(这一点。至少,this.Maximum); StringBuilder pwdBuffer=new StringBuilder(); pwdBuffer。= this.Maximum能力; / /产生随机字符 char lastCharacter nextCharacter; / /初始化标记 最后一个字符=n; for(int i=0;i小于pwdLength;i++) nextCharacter = GetRandomCharacter(); 如果(假==这个。ConsecutiveCharacters){ (last字符==next字符) nextCharacter = GetRandomCharacter(); } } 如果(假==这个。RepeatCharacters){ 字符串temp = pwdBuffer.ToString(); int duplicateIndex = temp.IndexOf(nextCharacter); 而(1 != duplicateIndex){ nextCharacter = GetRandomCharacter(); duplicateIndex = temp.IndexOf(nextCharacter); } } 如果(空!=。除外)){ 而(1 != this.Exclusions.IndexOf(nextCharacter)){ nextCharacter = GetRandomCharacter(); } } pwdBuffer.Append(nextCharacter); lastCharacter = nextCharacter; } 如果(零!= pwdBuffer){ 返回pwdBuffer.ToString(); } 其他{ 返回String.Empty; } } 公共bool ConsecutiveCharacters { {回报。hasConsecutive;} {这个设置。hasConsecutive =价值;} } 公共bool ExcludeSymbols { {回报。hasSymbols;} {这个设置。hasSymbols =价值;} } 公共字符串排除{ {回报。excl

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档