当前位置:网站首页>UUID与secrets模块
UUID与secrets模块
2022-07-27 06:17:00 【某x?】
1.uuid是什么?
UUID是Universally Unique IDentifier(普遍唯一的标识)
UUID代表通用唯一标识符,是一个128位的值,用于软件开发的唯一标识
UUID的生成基于当前时间戳和生成UUID的工作站的唯一属性
2.UUID的分类
uuid1
uuid.uuid1([node[,clock_seq]]):基于时间戳 """ 使用主机ID,序列号和当前时间来生成UUID,可保证全球范围的唯一性,但由于该方法生成的UUID中包含有主机的网络地址,可能危及隐私 如果node参数缺省,系统则自动调用getnode()函数获取主机的硬件地址 如果clock_seq缺省,则随机产生14位序列号代替 """uuid4
uuid.uuid4():基于随机数 ''' 通过随机数来生成uuid,但使用的是伪随机数有一定的重复概率 '''uuid3
uuid.uuid3(namespace,name):基于名字的MD5散列值 ''' 通过计算命名空间和名字的MD5散列值来生成uuid,可以保证同一命名空间中不同名字的唯一性和不同命名空间的唯一性 ''' uuid.uuid3(uuid.NAMESPACE_DNS,'456')uuid5
uuid.uuid3(namespace,name):基于名字的SHA-1散列值 ''' 通过计算命名空间和名字的SHA-1散列值生成uuid,算法与uuid3相同 ''' uuid.uuid5(uuid.NAMESPACE_DNS,'456')
3.什么是Secrets
secrets是python3.6加入到标准库的,使用secrets模块,可以生成适用于处理机密信息(如密码,帐户身份验证,安全令牌)的
加密强随机数。
| 常用函数 | 说明 | 实例 |
|---|---|---|
| choice(sequence) | 从非空序列中选择一个元素 | secrets.choice([23,3,5,6]) |
| randbelow(n) | 随机一个取[0,n)的整数 | secrets.randbelow(10) |
| randbits(n) | 在n位长度二进制数范围内随机取一位 | secrets.randbits(10) |
| token_bytes(n) | 随机生成n个字节以内的bytes类型字符串 | secrets.token_bytes(2) |
| token_hex(n) | 返回n位长16进制随机文本字符串 | secrets.token_hex(2) |
| taken_urlsafa(n) | 返回字节为nbytes的URL安全文本字符串。 文本以Base64编码,每个字节平均约为1.3个字符。 | secrets.token_urlsafe() |
| compare_digest(str,str) | 字符串比较,相等返回True | secrets.compare_digest(‘a’,‘a’) |
边栏推荐
- Jmeter: interface automation test - BeanShell compares database data and return data
- "Weilai Cup" 2022 Niuke summer multi school training camp 1
- ? Experiment 7 implementation of PHP management system based on MySQL
- ?实验 7 基于 Mysql 的 PHP 管理系统实现
- A Competitive Swarm Optimizer for Large Scale Optimization
- 使用sqlplus显示中文为乱码的解决办法
- MySQL optimization SQL related (continuous supplement)
- 【QT】无法在QT创建者中打开包含文件pcap.h(C1083)
- 在kettle中快速更新一个字段中的信息
- C# Winfrom 常用功能整合-2
猜你喜欢
随机推荐
MySQL2
Generics -- learn it, and there are many benefits
Pg_relation_size 问题
py2exe qt界面风格变成了win98解决方案
Federal Reserve SR 11-7: Guidance on model risk management - Wanzi collection
Jmeter: interface automation test - BeanShell compares database data and return data
C语言程序设计 | 程序编译与预处理
零号培训平台课程-1、SQL注入基础
Binary tree -- natural search semantics (1) Basics
Quartus: an error is reported when adding a.V file to someone else's project
使用sqlplus显示中文为乱码的解决办法
Bash: 创建返回布尔类型值的函数
js中的数组方法与循环
Use reflection to dynamically modify annotation attributes of @excel
在kettle中快速更新一个字段中的信息
Esp8266 (esp-12f) third party library use -- sparkfun_ Apds9960 (gesture recognition)
想sink 到 redis-hash 里面 把 对象的属性和值都写进去 ,大佬们有Demo 吗?
Advanced IO outline
请教大佬们一个问题,pgsqlcdc任务运行一段时间就不能监测变化了,重启就可以了,这个该从哪方面入
如何借助自动化工具落地DevOps|含低代码与DevOps应用实践









