zoukankan      html  css  js  c++  java
  • AES解密

    AES加密解密方法:ECB,CBC,CTR,CFB,OFB.

    进行加密解密前先安装包

    pip install pycryptodome
    pip install pyaes

    解密示例:注此为CFB解密方式

    #_*_coding:utf-8_*_
    import requests
    from lxml.html import etree
    import json
    import base64
    import pyaes
    import zlib
    # pip install pycryptodome
    from Crypto.Cipher import AES
    from binascii import b2a_hex, a2b_hex
    # from lxml import html#此处直接引入etree报错是因为版本问题,换个方式引入
    # etree = html.etree#引入etree方法
    headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4385.0 Safari/537.36'
    }
    # source = requests.get('https://www.zk120.com/ji/content/529?uid=None&_=1614130155981',headers=headers).json()
    # print(source)
    source = requests.get('https://www.zk120.com/ji/content/529?uid=None&_=1614156803258').json()
    # print(source1)
    base=source['data']#获取出密文的内容
    # print(base)
    content = base64.b64decode(base.encode('utf-8'))#将密文转为base64
    decryptor = AES.new(b"61581af471b166682a37efe6",AES.MODE_CFB, b"c8f203fca312aaab", segment_size=128)#传入密钥key值,解密方式,偏移量,密钥长度
    decrypt_text = decryptor.decrypt(content)#解密
    text_zip = json.loads(zlib.decompress(decrypt_text))#解压缩
    # 输出结果
    text_code = text_zip.get("text").encode("utf-8", "ignore")
    print(str(text_code, encoding='utf-8'))
  • 相关阅读:
    模型定义
    聚合、原生和子查询
    PHP curl扩展
    时间查询
    查询表达式
    HTTP协议的Keep-Alive 模式
    抽象类可以没有抽象方法
    Nginx解决前端跨域问题,Nginx反向代理跨域原理
    Nginx配置文件不生效,Nginx配置文件重启也不生效
    php openssl加密解密函数
  • 原文地址:https://www.cnblogs.com/wbf980728/p/14442650.html
Copyright © 2011-2022 走看看