python加密算法_Python 加密算法 md5

最近工作中需要用到加密算法,主要是将一些敏感的数据进行加密,之前对加密算法基本没有了解过,这次就主要学习一下加密算法。

通常情况下,一般都是采用md5加密算法。关于md5加密算法有几个值得关注的地方:

1、md5加密算法是不可逆的,什么是不可逆的呢?就是说不能通过加密后的内容得到加密前的内容;

2、一些简单的md5加密可以通过撞库的方法得到解密的内容,比如有人经常将密码设置为123456,那么则可以通过比较加密后的内容是否为‘E10ADC3949BA59ABBE56E057F20F883E’(这个 是123456通过md5加密后的结果)即可,为了防止别人通过撞库推测出加密前的内容,通常是将加密字符与一个复杂的字符串拼接在一起在进行md5加密,这样能够进一步的防止别人通过撞库的方法得到你加密前的内容;

3、md5加密结果一般为长度为32个字符或16个字符,16个字符结果是取的32个字符结果的第9位到第24位的字符;

4、md5加密输出结果中的字母有的平台是大写的有的平台上面是小写的,注意在比较之前先看看结果是大写还是小写的;

5、原则上来说不用平台上的对同一个字符串进行md5加密的结果是一样,但也会有不一样的时候,这个就涉及到编码问题。

我用过hive中Python中的md5加密算法,hive在版本1.3后就自带一个md5加密函数,Python中的md5加密算法是在自带的hashlib模块中,下面分别展示hive和Python中对同一个字符串 123456 进行加密。

hive版本:

Python版本:

import hashlib

hash = hashlib.md5()

hash.update(bytes('123456',encoding='utf-8'))

print(hash.hexdigest())

如果喜欢我的文章,请关注公众号:洞察数据挖掘价值。不定期的会更新精彩内容哟。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值