zoukankan      html  css  js  c++  java
  • Django token 学前小知识

    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 = b'guoxiaonao'
    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(b'xxxx')  #添加欲hash的内容,类型为 bytes
    s.hexdigest()  #以16进制获取最终结果

    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,签名: 私钥签名, 公钥验签

  • 相关阅读:
    PHP用*号替代姓名除第一个字之外的字符
    苹果笔记本下载的应用打不开或提示损坏怎么办
    codeigniter教程:Codeigniter出现Unable to connect to your databas
    Python3.6.0安装
    某游戏应用的redis 数据库结构设计(转)
    True(False) Positives (Negatives), 召回率和精度定义
    儿童书库
    年轻人必须知道的71个做饭技巧
    20种泡菜做法[3到5天就可以吃了]
    读懂此文——股市就是你的取款机
  • 原文地址:https://www.cnblogs.com/hooo-1102/p/12048421.html
Copyright © 2011-2022 走看看