码迷,mamicode.com
首页 > 其他好文 > 详细

Django token 学前小知识

时间:2019-12-16 13:32:49      阅读:100      评论:0      收藏:0      [点我收藏+]

标签:img   验证   散列   转化   http   算法   方法   身份验证   sha   

1,base64 ‘防君子不防小人‘

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

代码演示:

 

import base64
#base64加密
s = bguoxiaonao
b_s = base64.b64encode(s)
#b_s打印结果为 b‘Z3VveGlhb25hbw==‘

#base64解密
ss = base64.b64decode(b_s)
#ss打印结果为 b‘guoxiaonao‘

 

注意:b64encode,b64decode,urlsafe_b64encode,urlsafe_b64decode的参数都是字节串,注意如下转化:

技术图片

 

2,SHA-256 安全散列算法的一种(hash)

hash三大特点:

1)定长输出 2)不可逆 3) 雪崩

代码演示:

import hashlib
s = hashlib.sha256() #创建sha256对象
s.update(bxxxx)  #添加欲hash的内容,类型为 bytes
s.digest()  #获取最终结果

 

3,HMAC-SHA256

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

代码演示:

import hmac
#生成hmac对象
#第一个参数为加密的key,bytes类型,
#第二个参数为欲加密的串,bytes类型
#第三个参数为hmac的算法,指定为SHA256
h = hmac.new(key, str, digestmod=SHA256 ) 
h.digest() #获取最终结果

 

4,RSA256 非对称加密

1,加密: 公钥加密,私钥解密

2,签名: 私钥签名, 公钥验签

Django token 学前小知识

标签:img   验证   散列   转化   http   算法   方法   身份验证   sha   

原文地址:https://www.cnblogs.com/hooo-1102/p/12048421.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!