collision weaknesses
2024-10-13 14:08:24
15.1. hashlib — Secure hashes and message digests — Python 3.5.6 documentation https://docs.python.org/3.5/library/hashlib.html
import hashlib def hashlib_str(str, type='sha224'):
if type == 'sha224':
return hashlib.sha224(str).hexdigest()
elif type == 'sha256':
return hashlib.sha224(str).hexdigest()
elif type == 'sha384':
return hashlib.sha384(str).hexdigest()
elif type == 'sha512':
return hashlib.sha512(str).hexdigest()
elif type == 'md5':
return hashlib.md5().hexdigest()
elif type == 'sha1':
return hashlib.sha1().hexdigest() l = ['剑网三 唐门的 武器材料提示我用光了 很多技能不能用 找了很久不知道在什么地方买', '剑网三方买',
'剑网三 唐门的 武器材料提示我用光了 很多技能不能用 找了很久不知道在什么地方买剑网三 唐门的 武器材料提示我用光了 很多技能不能用 找了很久不知道在什么地方买']
'''
SELECT SUM(1) FROM question;
11652677 SELECT SUM(LENGTH(title))/(SELECT SUM(1) FROM question) FROM question;
57.1070
'''
type_l = ['sha224', 'sha256', 'sha384', 'sha512', 'md5', 'sha1']
for str in l:
for t in type_l:
str_ = str.encode(encoding='utf-8')
print(t, len(str), len(hashlib_str(str_, type=t)))
sha224 40 56
sha256 40 56
sha384 40 96
sha512 40 128
md5 40 32
sha1 40 40
sha224 5 56
sha256 5 56
sha384 5 96
sha512 5 128
md5 5 32
sha1 5 40
sha224 80 56
sha256 80 56
sha384 80 96
sha512 80 128
md5 80 32
sha1 80 40
在避免哈希冲突的情况下,尽可能用少的字符串;
最新文章
- Docker - 技术栈
- 我所理解的ECMAScript、DOM、BOM---写给新手们
- cocos2d 保存最近登陆多个账号最多一个月
- Hark的数据结构与算法练习之奇偶排序
- 【linux】rpm常见命令
- HDU5427
- Qt 学习之路:自定义事件
- Building Tomcat7 source step by step---官方文档
- http请求方式和状态管理
- 集合操作出现的ConcurrentModificationException(源码分析)
- echarts图表里label文字过长换行的方法
- Netty的基本使用
- 项目实战 redis 缓存
- HDU 1102
- HDU 4763 Theme Section (2013长春网络赛1005,KMP)
- 【BZOJ1294】[SCOI2009]围豆豆Bean 射线法+状压DP+SPFA
- Java 访问控制关键字
- docker容器,镜像常用操作
- Longest Increasing Subsequence的两种解法
- MinGw 和 cygwin 的区别和联系
热门文章
- 奇葩问题:ListView中Item与Item中的Button不能单击问题
- vsearch 去除重复序列和singleton 序列
- SVN版本冲突,导致出现Files 的值“ <; <; <; <; <; <; <; .mine”无效。路径中具有非法字符。
- 【Java 线程的深入研究2】常用函数说明
- mac Virtualbox Ubuntu 设置共享目录
- eclipse (ADT) svn插件 过滤上传的 文件 文件夹 一劳永逸
- 详解MathType引用公式编号功能
- Mockito单元测试框架学习
- POJ 2923 Relocation(01背包变形, 状态压缩DP)
- YARN的设计