python -第七节课之加密操作之md5加密和base64类型

摘要:
常用的加密方式就是md5加密实际场景:用户管理数据存到数据库,注册的时候账号和密码不能存成铭文要转成加密的形式python使用的模块hashlib举例子importhashlibs='cdsdsa's=s.encode()#字符串转成bytes类型m=hashlib.md5(s)#md5方法必须传一个bytes类型res=m.hexdigest()#hexdigest()这个需要手动写print(

常用的加密方式就是md5加密

实际场景:用户管理数据存到数据库,注册的时候账号和密码不能存成铭文要转成加密的形式

python使用的模块hashlib

举例子

import hashlib
s='cdsdsa'
s=s.encode()#字符串转成bytes类型
m=hashlib.md5(s)#md5方法必须传一个bytes类型
res=m.hexdigest()#hexdigest()这个需要手动写
print(res) 步骤就是加密前必须转bytes类型
一般来说就是支持正向加密,解密复杂的密码解不出来,所以说是不能逆向解密
也就是简单的字符串abc可以解密但是负责点的比如汉字,abc123就解密不出来了
#同样的字符串,md5出来的结果都一样
#niuhanyang 123456
#niuhanyang 0da0c4db92c8c7b83e93218533fa26f6
#加盐 所以需要加盐操作防止别人拿到你的密文
#撞库 就是网址上的解密操作

def my_md5(s):
s=str(s)
s = s.encode() # 字符串转成bytes类型
m = hashlib.md5(s) # md5方法必须传一个bytes类型
result= m.hexdigest() # hexdigest()这个需要手动写
print(result)
return result
my_md5('cccs')
加盐操作,为了更加的安全
def my_md5(s):
s=str(s)+'dcsasads@#'#加盐这样加解密不出来,这个字符串就是盐,知道了密文不知道后面这串也解密不了
s = s.encode() # 字符串转成bytes类型
m = hashlib.md5(s) # md5方法必须传一个bytes类型
m=hashlib.sha256()   这两种都是常用的类型更长 
m=hashlib.sha384()
    result= m.hexdigest()  # hexdigest()这个需要手动写
print(result)
return result
my_md5('cccs')
另外一种加密的方式叫做 base64 这种加密方式可逆的是可以破解的
import base64
s='cdasdcascdasdcdsacd'
r=base64.b16encode(s.encode())#先把字符串加密成b64方式
print(r.decode())#加密操作
import base64
s='cdasdcascdasdcdsacd'
r=base64.b64encode(s.encode())#先把字符串加密成b64方式
print(r.decode())#加密
#解密操作
r=base64.b64decode('Y2Rhc2RjYXNjZGFzZGNkc2FjZA==')#解密操作
print(r.decode())

免责声明:文章转载自《python -第七节课之加密操作之md5加密和base64类型》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇版本管理工具Git(二)GitLab部署和配置CH5 ResourceManager重启下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Python3 StringIO和BytesIO

StringIO的一些接口和文件操作是一致的。StringIO的行为与file对象非常像,但它不是磁盘上文件,而是一个内存里的“文件”。StringIO操作的只能是str importio #1、生成一个StringIO对象: s =io.StringIO() #2、write()从读写位置将参数s写入到对象s,参数为str或unicode类型,读写位置...

使用thumbnailator 时部分图片抛异常

net.coobird.thumbnailator.tasks.UnsupportedFormatException: No suitable ImageReader found for source data. at net.coobird.thumbnailator.tasks.io.InputStreamImageSource.read(U...

python(一):python语言基础

一、python语言基本的8个要素 Python语言的8个要素:数据类型、对象引用、组合数据类型、逻辑操作符、运算操作符、控制流语句、输入/输出、函数的创建与引用。除此之外还有一个非常重要且无处不在的要素:对象。实际上,在所有的语言当中,这种要素结构几乎一样。   1.要素1--数据和对象类型 python的数据类型是指内置数据类型。python基本的内置...

Base64工具类:将前端vue与后台SpringBoot传输的参数进行加密和解密

一、前端加密 1.引入base64依赖: cnpm install --save js-base64 2.使用base4对参数进行加密: let Base64 = require('js-base64').Base64 //加密方法 let password =Base64.encode(password);//解密方法 //let password =...

[转]Go的50坑:新Golang开发者要注意的陷阱、技巧和常见错误-高级

from : https://levy.at/blog/11 进阶篇 关闭HTTP的响应 level: intermediate 当你使用标准http库发起请求时,你得到一个http的响应变量。如果你不读取响应主体,你依旧需要关闭它。注意对于空的响应你也一定要这么做。对于新的Go开发者而言,这个很容易就会忘掉。 一些新的Go开发者确实尝试关闭响应主体,但...

记一次Hvv中遇到的API接口泄露而引起的一系列漏洞

引言 最近朋友跟我一起把之前废弃的公众号做起来了,更名为鹿鸣安全团队,后面陆续会更新个人笔记,有趣的渗透经历,内网渗透相关话题等,欢迎大家关注 前言 Hvv中的一个很有趣的漏洞挖掘过程,从一个简单的API泄露到一系列漏洞。这次的经历更让我体会到了细心的重要性。 挖掘起始 Hvv中拿到了一大堆的资产,有IP和URL的,我一般会先去手动挖掘已经给了的URL资产...