C 批量生成随机密码,必须包含数字和字母,并用加密算法加密

C 批量生成随机密码,必须包含数字和字母,并用加密算法加密要求 密码必须包含数字和字母思路 1 列出数字和字符 组成字符串 chars2 利用 randrom Next int i 返回一个小于所指定最大值的非负随机数 3 随机取不小于 chars 长度的随机数 a 取字符串 chars 的第 a 位字符

大家好,欢迎来到IT知识分享网。

要求:密码必须包含数字和字母

思路:1.列出数字和字符。 组成字符串 :chars

2.利用randrom.Next(int i)返回一个小于所指定最大值的非负随机数。

3. 随机取不小于chars长度的随机数a,取字符串chars的第a位字符。

4.循环 8次,得到8位密码

5.循环N次,批量得到密码。

代码实现如下 Main函数:

C 批量生成随机密码,必须包含数字和字母,并用加密算法加密

 static void Main(string[] args) { string chars = "0ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; Random randrom = new Random((int)DateTime.Now.Ticks); string path1 = @"C:\Users\lenovo\Desktop\pws.txt"; for (int j = 0; j < 10000;j++ ) { string str = ""; for (int i = 0; i < 8; i++) { str += chars[randrom.Next(chars.Length)];//randrom.Next(int i)返回一个小于所指定最大值的非负随机数 } if (IsNumber(str))//判断是否全是数字 continue; if (IsLetter(str))//判断是否全是字母 continue; File.AppendAllText(path1, str); string pws = Md5(str,32);//MD5加密 File.AppendAllText(path1, "," + pws + "\r\n"); } Console.WriteLine("ok"); Console.Read(); }
C 批量生成随机密码,必须包含数字和字母,并用加密算法加密

巧用String.trim 函数,判断是否全是数字,全是字母。

说明:string.trim 从 String 对象移除前导空白字符和尾随空白字符。

返回:一个字符串副本,其中从该字符串的开头和末尾移除了所有空白字符。

有一个重载:string.Trim(params char[] trimChars)

//从当前System.string对象移除数组中指定的一组字符的所有前导匹配项和尾部匹配项

trimChars:要删除的字符数组

方法实现如下代码:

C 批量生成随机密码,必须包含数字和字母,并用加密算法加密

 //判断是否全是数字 static bool IsNumber(string str) { if (str.Trim("0".ToCharArray()) == "") return true; return false; } //判断是否全是字母 static bool IsLetter(string str) { if (str.Trim("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".ToCharArray()) == "") return true; return false; }
C 批量生成随机密码,必须包含数字和字母,并用加密算法加密

用MD5加密,算法代码实现如下:

C 批量生成随机密码,必须包含数字和字母,并用加密算法加密

 /// <summary> /// MD5加密 /// </summary> /// <param name="str">加密字元</param> /// <param name="code">加密位数16/32</param> /// <returns></returns> public static string Md5(string str, int code) { string strEncrypt = string.Empty; MD5 md5 = new MD5CryptoServiceProvider(); byte[] fromData = Encoding.GetEncoding("GB2312").GetBytes(str); byte[] targetData = md5.ComputeHash(fromData); for (int i = 0; i < targetData.Length; i++) { strEncrypt += targetData[i].ToString("X2"); } if (code == 16) { strEncrypt = strEncrypt.Substring(8, 16); } return strEncrypt; }
C 批量生成随机密码,必须包含数字和字母,并用加密算法加密


生成批量密码,加密后的密码如下图:

C 批量生成随机密码,必须包含数字和字母,并用加密算法加密

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/92773.html

(0)
上一篇 2024-09-27 07:00
下一篇 2024-10-25 15:15

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信