授权的思路,获取电脑的mac地址,简单的处理后,进行简单的授权机制,

原理:

1.获取电脑的所有的mac地址,进入key0

2.key1,随机获取key0 中的一个mac地址,

3.读取key1到系统,后与电脑中的maclist进行对比,如果key1是其中的一个,那么就是可以登录系统

1.授权工具的源代码---授权工具代码

import pickle
import random"读取ht.key1"
fkey0=open("./ht.key0","rb")
fkey1=open("./ht.key1","wb")listkey1=pickle.load(fkey0)digit=random.randint(1,len(listkey1)-3)
key1=listkey1[digit]
# print(key1)pickle.dump(key1,fkey1)fkey1.close()
fkey0.close()print("授权文件已经生成,请自行获取‘ht.key1’")

2.系统初始化后,自动生成key0


from openpyxl import load_workbook
import os
import time
from psutil import net_if_addrs
import pickle
import  sys# mac地址注册信息码:全局变量
maclist=[]for k,v in net_if_addrs().items():for item in v:address=item[1]if '-' in address and len(address)==17:# print(address)maclist.append(address)#授权系统,获取系统的mac地址作为授权的依据# 授权文件生成的函数定义def grandkey0():if (os.path.exists("ht.key0")) != True:maclist = []for k, v in net_if_addrs().items():for item in v:address = item[1]if '-' in address and len(address) == 17:# print(address)maclist.append(address)# 加盐处理,分别在文件前和后都是添加了内容maclist.append("@@世界人***民大团结&&&")maclist.append("@@###四大名著@@###&&&***!!")maclist.insert(0, "和平的象征和平鸽")# 生成key1fkey = open("./ht.key0", "wb")pickle.dump(maclist, fkey)fkey.close()

3.软件启动后对比的逻辑

    #秘钥生成函数key0grandkey0()#获取秘钥key1的文件,进行判断,如果失败,就是退出程序if (os.path.exists("ht.key1")) != True:print("请把生成的key0,发起授权,请进行文件的注册!")sys.exit()# 判断key1是否在系统的mac地址中,如果不在就是退出系统fkey1 = open("./ht.key1", "rb")listkey1 = pickle.load(fkey1)# print("不匹配的ht.key1,退出系统")if listkey1 not in maclist:sys.exit()

密码生成器--python相关推荐

  1. pythongui登录界面密码显示_用python写一个带有gui界面的密码生成器

    需要用到的库: tkinter:构建gui界面 pyperclip:复制功能 random:生成随机数 string:处理字符串 代码: from tkinter import * import ra ...

  2. 用python实现一个密码生成程序_Python实现密码生成器

    Python实现密码生成器 环境准备 python3.6 pip install pyinstaller pip install gooey 代码部分 # encoding:utf8 import r ...

  3. 用python写一个密码生成器函数

    用python写一个密码生成器函数 ## 本文流程 密码要求 我们对密码生成器的要求是: 至少包含一个大写字母(A-Z) 至少包含一个小写字母(a-z) 至少包含一个数字(0-9) 至少包含一个特殊字 ...

  4. Python 小项目 密码生成器

    欢迎来到<Python 小项目>专栏,这个专栏会不定时更新Python的小项目,大家可以订阅关注哦! 这次,我们要编写一个密码生成器,先看效果: 密码长度:10 密码:pEIMX_JUbR ...

  5. python随机数字密码生成器_Python简单生成8位随机密码的方法

    本文实例讲述了python简单生成8位随机密码的方法.分享给大家供大家参考,具体如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import ran ...

  6. 【Python】密码生成器

    import random import string print("欢迎使用密码生成器") def passlength():print("你想要多长的密码:" ...

  7. python -简易密码生成器

    # -*- coding: utf-8 -*- # @Time : 18-9-12 上午8:50 # @Author : xmskf # @Email : 84887867@qq.com # @Fil ...

  8. 【简单的密码生成器】

    简单的密码生成器 用python写了一个简单的密码生成器.生成的密码包含数字.小写字母.大写字母.特殊字符.为了确保这四种类型的密码都存在,最后4次循环分别把四种类型的值插入到了密码的随机位置. 代码 ...

  9. c语言中定义密码为英文字母,请设计 一个密码生成器,要求随机生成4组10位密码(C语言)...

    请设计 一个密码生成器,要求随机生成4组10位密码(密码只能由字母和数字组成),每一组必须包含至少一个大写字母,每组密码不能相同,输出生成的密码. #include #include #include ...

  10. 密码生成器c语言程序,请设计 一个密码生成器,要求随机生成4组10位密码(C语言)...

    请设计 一个密码生成器,要求随机生成4组10位密码(密码只能由字母和数字组成),每一组必须包含至少一个大写字母,每组密码不能相同,输出生成的密码. #include #include #include ...

最新文章

  1. 【每日一算法】独特的电子邮件地址
  2. Logical Volume Manager in Linux ( Create, Displ...
  3. FAQ about AJAX-part II
  4. GetLastError编号含义
  5. CentOS 7 安装Boost 1.61
  6. iOS的推送证书过期的处理
  7. c语言中cot函数图像,cot函数图像
  8. [BZOJ1006]神奇的国度
  9. Neo4j之导入CSV大文件 periodic commit
  10. 如何在SCI检索杂志上发表论文
  11. 华硕ROG|玩家国度 魔霸7Plus G713PV win11原厂系统 带ASUS Recovery
  12. 上手Fragment
  13. python经济学_用python学习中级微观经济学【WARP篇】
  14. 一文深刻解析UWB是什么技术?
  15. 埃瓦里斯特·伽罗瓦Évariste Galois
  16. jmeter教程(十五):远程执行
  17. 转:车规芯片的AEC-Q100测试标准
  18. ABAQUS后处理技巧:内力查看的两种方式
  19. 最快服务器地址,如何可以选择适合自己的最快的DNS服务器?
  20. 如何解决macbook开机的时候自启动很多程序的问题

热门文章

  1. Linux 文件操作
  2. 【BZOJ 3442】 3442: 学习小组 (最大费用流)
  3. HDU Today--hdu2112
  4. Apache整合Tomcat(转)
  5. flex知識:container of spark
  6. java转换ppt,ppt转成图片 乱码问题解决
  7. 【 理想的机器学习书】
  8. AOJ-754 数根
  9. 智能优化算法应用:基于GWO优化的灰度熵图像多阈值分割 - 附代码
  10. matlab的conv2、imfilter、filter2