在用jmeter测试接口时,有的请求参数会加密,例如,回流接口:http://ip:port/oms-gateway-datareflow-mq/orderReflow/tmsPracticeActionFeedback,它有两个请求参数logistics_interface和data_digest,data_digest是将logistics_interface先用

md5加密后,得到16位的字符串,再将16位字符串进行base64加密。

先在验证java的md5和base64加密结果是否和python加密结果一致

以字符串aaa进行md5和base64加密为例

aaa-java加密的结果:

aaa-python加密:

import hashlib
import base64 md5 = hashlib.md5()
md5.update('aaa'.encode('utf-8'))
print(u"aaa16位md5加密结果:%s"% md5.hexdigest()[8:-8])
print(u"aaa32位md5加密结果:%s"% md5.hexdigest()) print(u"aaa16位md5加密结果再进行base64加密:%s" % base64.b64encode(md5.hexdigest()[8:-8]))
print(u"aaa32位md5加密结果再进行base64加密:%s" % base64.b64encode(md5.hexdigest()))

结果:

D:\Python27\python.exe F:/各种appium开源框架/practice.py
aaa16位md5加密结果:4f589f4867dbd57e
aaa32位md5加密结果:47bce5c74f589f4867dbd57e9ca9f808
aaa16位md5加密结果再进行base64加密:NGY1ODlmNDg2N2RiZDU3ZQ==
aaa32位md5加密结果再进行base64加密:NDdiY2U1Yzc0ZjU4OWY0ODY3ZGJkNTdlOWNhOWY4MDg= Process finished with exit code 0

所以java和python的md5和base64的加密结果都是一致的,以后有接口请求加密,也用python完成加密算法

python的md5和base64加密的更多相关文章

  1. hashlib —— Python 的 md5 和 sha1 加密

    python的md5和sha1加密 0. md5 与 sha1 MD5 的全称是 Message-Digest Algorithm 5(信息-摘要算法).128 位长度.目前 MD5 是一种不可逆算法 ...

  2. Js中 md5 sha1 base64 加密

    js的3中加密方式: .sha1加密,加密性高 调用: var sha = hex_sha1(str); .base64加密 调用: var b = new Base64(); var str = b ...

  3. python 中md5 和 sha1 加密, md5 + os.urandom 生成全局唯一ID

    首先先来介绍一下md5 和 sha1 的概念 MD5 MD5的全称是Message-Digest Algorithm 5(信息-摘要算法).128位长度.目前MD5是一种不可逆算法. 具有很高的安全性 ...

  4. md5和base64加密解密

    import java.io.IOException; import java.security.MessageDigest; import sun.misc.BASE64Encoder; impor ...

  5. ruby md5 sha1 base64加密

    #md5加密 require 'md5' puts MD5.hexdigest('admin') #sha1加密 require 'digest/sha1' puts Digest::SHA1.hex ...

  6. python之MD5、base64\base32解密

    # -*- coding:utf-8 -*- import hashlib import base64 # 求最大公约数gys # def gys(m, n): # c = 1 # while(c ! ...

  7. vue项目用sha256、md5、base64加密密码

    无论你开发什么样的项目,你可能都会要开发登录.注册.修改密码.忘记密码这些功能,少数项目除外!!要实现这些功能,对于保护用户或者管理员账号密码,这是我们程序员肯定要做的事情.要是用户密码不加密,用明文 ...

  8. python中常用的base64 md5 aes des crc32等的加密解密

    1.base64 Python内置的base64模块可以实现base64.base32.base16.base85.urlsafe_base64的编码解码,python 3.x通常输入输出都是二进制形 ...

  9. python接口自动化测试二十七:加密与解密MD5、base64

    # MD5加密 # 由于MD5模块在python3中被移除# 在python3中使用hashlib模块进行md5操作 import hashlib def MD5(str): # 创建md5对象 hl ...

随机推荐

  1. D 题

    题目大意:找朋友,最好把朋友最多的一堆的人数输出 运用并查集,每次更新最大数即可: 代码: #include <iostream> #include <cstdio> #inc ...

  2. fedora安装后,yum命令不能使用,Cannot retrieve metalink for repository: fedora. Please verify its path and try again 解决方法

    fedora安装后,yum命令不能使用,Cannot retrieve metalink for repository: fedora. Please verify its path and try ...

  3. Arduino学习笔记0---开发板的了解

    Arduino的入门文档https://wenku.baidu.com/view/4040861d58fafab069dc02d4.html?from=search,共61页的文档,看完就差不多可以入 ...

  4. ***ps -ef |grep 输出的具体含义是什么?

    Q: 比如:[root@localhost ~]# ps -ef | grep ApacheJetspeedroot 18887 18828 0 08:09 pts/0 00:00:00 grep A ...

  5. [Android] 随时拍图像处理部分总结及源码分享

    http://blog.csdn.net/eastmount/article/details/45492065#comments [Android] 图像各种处理系列文章合集 http://blog. ...

  6. webstorm初始化

    1.皮肤设置,重启后Terminal皮肤生效 2.排除目录 2.1全局排除 2.2局部排除 选中文件夹 右击Make Directroy As 选择 Excluded 3.代码自定义 3.1 cons ...

  7. MongoDB学习day09--Mongoose aggregate 多表关联查询

    Mongodb的aggregate应用之前已经说过了. 可以参考day06 Mongoose的aggregate函数应用 var mongoose=require('./db.js'); var Or ...

  8. Javascript小数取整方法收集

    1.丢弃小数部分,保留整数部分 parseInt(7/2) 2.向上取整,有小数就整数部分加1 Math.ceil(7/2) 3.四舍五入 Math.round(7/2) 4.向下取整 Math.fl ...

  9. 黑黛增发罗林川:如何三年开1000家连锁店?_深度案例_i黑马

    黑黛增发罗林川:如何三年开1000家连锁店?_深度案例_i黑马 黑黛增发

  10. java获取本机机器名

    java获取本机机器名 InetAddress.getLocalHost().getHostName().toString();