时间:2021.09.01

环境:

目的:Go语言实现随机密码(字符串)

说明:

作者:Zhong QQ交流群:121160124 欢迎加入!

package mainimport ("fmt""math/rand""time""regexp""github.com/gookit/color"
)// 指定要生成密码的长度
var code_len int = 20func main()  {color.Secondary.Printf("\n%30s\n", "********************")color.Secondary.Printf("%11s  ", "*")color.Style{color.FgCyan, color.OpBold}.Printf("%s", "随机密码生成器")color.Secondary.Printf("%s\n", "  *")color.Secondary.Printf("%30s\n\n", "********************")//创建随机数种子 以时间参数rand.Seed(time.Now().UnixNano())//输出10以内的正整数之中随机一个数  0-9str_ls := perfect()for i:=0;i<10;i++ {generate_code(str_ls)}color.Info.Println("\n\nTips: 鼠标左键查看内容与锁定程序 右键复制内容与释放程序\n")// 定时退出n := 60tick := time.Tick(1 * time.Second)for exit_program := n; exit_program > 0; exit_program-- {color.Red.Printf("\r%ds 后将自动退出程序 ... ", exit_program)<-tick}
}// 密码元素
func perfect() []byte {//生成包含数字、字母和特殊符号的一个字符串列表 可自定义字符组合 因为字母数量多 可以适当多加入数字和特殊字符 注意不能含有不符合密码规范的特殊字符str_ls := []byte {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5','6','7','8','9','0','1','2','3','4','5','6','7','8','9','@','$','*','!','?','.','@','$','*','!','?','.'}//去除易混淆的几个字符del_ch := []byte {'0', '1', 'i', 'I', 'l', 'L', 'o', 'O'}for j:=0;j<len(del_ch);j++ {for k:=0;k<len(str_ls);k++ {if del_ch[j] == str_ls[k] {str_ls = append(str_ls[:k],str_ls[k+1:]...)}}}return str_ls
}// 密码生成函数
func generate_code(str_ls []byte) string {//字符列表 char_lschar_ls := []byte {}for i:=0;i<code_len;i++ {index := rand.Intn(len(str_ls))char := str_ls[index]char_ls = append(char_ls, char)}str := string(char_ls)//检测生成的密码是否是包含数字、字母、特殊符号的组合  如果不是那么重新生成if !regexp.MustCompile(`[0-9]`).MatchString(str) ||  !regexp.MustCompile(`[A-Z]`).MatchString(str) ||!regexp.MustCompile(`[a-z]`).MatchString(str) ||  !regexp.MustCompile(`[^a-zA-Z0-9]`).MatchString(str) {return generate_code(str_ls)} else {fmt.Printf("系统随机生成的密码为:\t")color.Style{color.OpBold, color.FgBlue}.Printf("%-20v\n", str)return str}
}

关注微信公众号  加入QQ交流群

Zhong__Go随机密码生成器相关推荐

  1. php 复杂密码生成,php随机密码生成器

    搜索热词 下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. function auth_pwgen(){ $pw = ''; $c = 'b ...

  2. 随机字符串,随机密码生成器

    随机字符串,随机密码生成器 随机字符串,随机密码生成器 本工具支持自定义备选字符和多组随机密码字符串生成,提供简单的密码强度检测提示,仅供参考,建议设置12位以上的密码. 客户端实时生成,一键复制,方 ...

  3. bat 自定义位数随机密码生成器

    ~~~~~~~~        因为想要面对一个新的开始,一个人必须有梦想.有希望.有对未来的憧憬.如果没有这些,就不叫新的开始,而叫逃亡. ​​​​ ~~~~~~~~~~~~~~~~~~~~~~~~ ...

  4. python随机密码生成器_python实例--随机密码生成器

    最近在学习python,抽空看了看图形化模块wx,顺手写了个随机密码生成器,程序运行界面如下图:(注:在Ubuntu下运行结果) 源代码如下: import wx import string impo ...

  5. 使用 HTML、CSS 和 JavaScript 制作的随机密码生成器

    今天我将使用 HTML.CSS 和 JavaScript 制作随机密码生成器 直接跳到末尾 获取完整源码 随机密码生成器

  6. 几款好用的随机密码生成器

    几款好用的随机密码生成器 Linux下随机生成密码的命令总结 2017-03-12 10:41 by 潇湘隐者, 5666 阅读, 0 评论, 收藏, 编辑 有时候经常为如何设置一个安全.符合密码复杂 ...

  7. js自定义随机密码生成器

    下载地址 一款js自定义随机密码生成器,支持自定义大写.小写.数字.符号.字符长度等功能设置生成密码器工具代码. dd:

  8. python生成随机密码生成器加特殊字符

    python生成随机密码生成器加特殊字符*

  9. python:实现8位随机密码生成器(附完整源码)

    python:实现8位随机密码生成器 import random low="abcdefghijklmnopqrstuvwxyz" upp="ABCDEFGHIJKLMN ...

最新文章

  1. 计算机二级学号填错了,计算机二级错题(58页)-原创力文档
  2. BlockChain:区块链技术基础概念综合理解——个人总结
  3. 内核对象用于线程同步
  4. MySQL使用二进制日志恢复数据库
  5. php8更新,PHP 8 中新特性以及重大调整
  6. Spring整合JDBC开发
  7. SQL Server里的闩锁介绍
  8. SpringBoot+Element-UI实现加载ActiveX控件
  9. java 计算日期时间差_Java计算日期和时间差
  10. VS 2010错误提醒: 必需属性“VSInstallDir”缺失或为空 以及 error MSB8008
  11. CSDN论坛如何能够获得积分呢?
  12. 计算机输入法在桌面显示不出来的,电脑桌面输入法不见了怎么办?
  13. BCS2022|“体系化防御,数字化运营” 奇安信终端安全能力再升级
  14. 浅析微信小程序生命周期之应用生命周期
  15. C语言笔记 · 输出函数(printf(),putchar(),puts())
  16. cordova for android hybrid 程序专题页面宽度大小显示异常问题
  17. matlab 机器人运动,matlab机器人运动计算
  18. 《工程伦理与学术道德》之《工程中的风险、安全与责任》
  19. qq聊天记录的图片怎么看
  20. 在海军节开幕式上,有A、B、C三艘军舰要同时开始鸣放礼炮各21响。已知A舰每隔5秒放一次,B舰每隔6秒放一次,C舰每隔7秒放一次,假设各炮手对时间的掌握非常准确,请编程计算观众总共可以听到几次礼炮声。

热门文章

  1. 背包问题专栏(01,完全,多重)
  2. 深信服上网行为管理开启snmp_深信服上网行为管理部署方式及功能实现配置说明....
  3. 百度智能云开物凭什么在“双跨”新增名单中排名榜首?
  4. Vue按回车键进行搜索
  5. 2016版excel_有win10系统excel打开慢的问题来看
  6. Ecall测试,ITU-T P.1140 车载紧急呼叫系统语音测试
  7. python爬取百度新闻采集教程
  8. openlayers 绘制tin数据导文
  9. OpenCV-飞龙绣球识别
  10. 西安80坐标转成经纬度坐标