加密解密之Token令牌

一、base64
(1). base64加密解密方法图示

方法 作用 参数 返回值
b64encode 将输入的参数转化为base64规则的串 预加密的明文,类型为bytes;例:b‘steve Jobs’ base64对应编码的密文,类型为bytes;例:b’c3RldmUgSm9icw==’
b64decode 将base64串解密回明文 base64密文,类型为bytes;例:b’c3RldmUgSm9icw==’ 参数对应的明文,类型为bytes;例:b’steve Jobs’
urlsafe_b64encode 作用同b64encode,但是会将 ‘+‘替换成 ‘-’,将’/‘替换成’_’ 同b64encode 同b64encode
urlsafe_b64decode 作用同b64decode 同b64decode 同b64decode

(2). base64加密解密代码演示

import base64
#无论是encode还是decode都需要字节串
s = b"steve_Jobs"
base64_bs = base64.b64encode(s) #base64加密字节串
print(base64_bs) #b'c3RldmVfSm9icw=='

decrypt_s = base64.b64decode(base64_bs)  #base64解密字节串
print(decrypt_s) #b'steve_Jobs'

二、SHA-256
1.简述
SHA256 是安全散列(hash)算法的一种,hash加密解密算法有三大特点如下:
(1). 定长,即无论输入多长,加密后的输出长度恒定;
(2). 不可逆,加密后的信息不可逆推;
(3). 雪崩,只有原信息有稍微修改,加密输出都会发生巨大改变;

2.SHA256加密代码演示

import hashlib
sha_obj = hashlib.sha256() #创建sha256对象
s = b'steve Jobs' #欲加密的字节串
sha_obj.update(s) #添加欲加密(hash)的内容

#获取加密(hash)结果 (二进制显示)
# b'*\xb7\x93\xe1!\xe0\xc4c\x80\xcd\xba\x19\x87\xa0\xa5\xad
# \x9f\xc0GQ\xa0\xe8d\xc0s\xd3\xa9\x86p0q\x9f'
print(sha_obj.digest())

#获取加密(hash)结果 (十六进制显示)
# 2ab793e121e0c46380cdba1987a0a5ad9fc04751a0e864c073d3a9867030719f
print(sha_obj.hexdigest())

三、HMAC-SHA256
(1). 简述
HMAC-SHA256 是一种通过特别计算方式产生消息认证码的加密算法,使用了散列算法的同时结合了一个加密密钥;它可以用来保证数据的完整性,同时可以用来作为某个消息的身份验证。

(2). HMAC-SHA256加密代码演示

import hmac
#生成hmac对象
#第一个参数为加密的key,bytes类型,
#第二个参数为欲加密的串,bytes类型
#第三个参数为hmac的算法,指定为SHA256
hm = hmac.new(b'steve Jobs', b'123456', digestmod='SHA256') #获取hmac对象hm
#获取最终结果
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值