python加密 AES加密解密等同于java AES加密 解密

#!/usr/bin/python
# coding:utf-8
from Crypto.Cipher import AES
from decimal import Decimal
import time
import md5
import base64
import requests
import BiDataCalc
import json
import datetime
import arrow
import sys
import pymysql
reload(sys)
sys.setdefaultencoding('utf-8')

# MD5加密
PADDING = '\0'
pad_it = lambda s: s + (16 - len(s) % 16) * PADDING
key = 'test'
iv = 'test'

# 创建md5对象
AES_KEY = "test"
MD5_KEY = "test"
# 使用aes算法,进行加密解密操作
# 为跟java实现同样的编码,注意PADDING符号自定义
def encrypt_aes(sourceStr):
    generator = AES.new(key, AES.MODE_CBC, iv)
    crypt = generator.encrypt(pad_it(sourceStr))
    crypted = base64.b64encode(crypt)
    return crypted


def decrypt_aes(cryptedStr):
    generator = AES.new(key, AES.MODE_CBC, iv)
    cryptedStr = base64.b64decode(cryptedStr)
    recovery = generator.decrypt(cryptedStr)
    decryptedStr = recovery.rstrip(PADDING)
    return decryptedStr
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值