栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Spark制作手机号md5彩虹表

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spark制作手机号md5彩虹表

1、什么是彩虹表

彩虹表是一个用于加密散列函数逆运算的预先计算好的表, 为破解密码的散列值(或称哈希值、微缩图、摘要、指纹、哈希密文)而准备。一般主流的彩虹表都在100G以上。

2、我们的目标

假如我们有全网手机号的md5值,这样任意输入一个手机号的md5值,我们就可以得到它的明文。我们的目标仅仅是获得130开头号码的彩虹表。如果是全网的号码需要一定的存储空间。

3、本次实践可以获得哪些知识

hdfs常用命令、spark压缩方式对比、spark生成测试数据的方式、spark的类型转换等。

4、代码讲解 range
# range操作是个好功能,可以用来生成一些你想要的测试数据。
odf = spark.range(start=13000000001, end=1310000001, step=1, numPartitions=100)

spark就是spark会话,看了之前的文章应该能够明白它的来历。range类似python的range操作,生成一定范围内的连续数字。

需要注意的地方,如果是本地或者集群资源紧张:

1、这里不建议去遍历130开头所有号码(大约1亿个),建议跑2000个;

2、numPartitions也不建议用这么大,建议设置为4。

类型转换
from pyspark.sql.functions import md5,col
odf = odf.withColumn("str_id", col("i
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/950490.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号