python2.7下面字节数组(ByteArray)和16进制字符串(HexString)转化
来源:互联网 发布:网络技术培训机构 编辑:程序博客网 时间:2024/06/06 06:57
由于是python2.7
严谨起见,文中不使用字符串的说法,下面只使用str或者unicode的说法
之所以有这个需要,是因为:
Hmac-sha1加密在网上计算的结果是HexString,也就是16进制字符串
而在python中的计算结果是ByteArray,两者结果不同,于是就萌生了两者如何转化的疑问.
由于python2.7中没有Bytes
py2没有bytes的概念 所以把字节数组当成str输出了
下面是互相转化的方法:
# coding: utf-8#在线计算链接http://tool.oschina.net/encrypt?type=2#用来加密的字符串:csdmniojfw98nvdico#需要输入的秘钥:214fdsf23dcimport hmacimport hashlibimport base64import hashlibdef hmac_sha1(app_secret,base_result): result=hmac.new(app_secret,base_result, hashlib.sha1).digest() l=['{:02X}'.format(ord(i)) for i in result] s=''.join(l) print"以上是从python结果转化为在线计算结果,也就是从字节数组转化为16进制数组" news=bytearray.fromhex(s) print"以上是从在线计算结果转化为python结果,也就是从16进制数组转化为字节数组" print "s=",s print "news=",news return resultif __name__ == '__main__': app_secret='214fdsf23dc' base_result='csdmniojfw98nvdico' result=hmac_sha1(app_secret,base_result) print "result=",result
阅读全文
0 0
- python2.7下面字节数组(ByteArray)和16进制字符串(HexString)转化
- 字节数组转化为16进制字符串
- 字节数组转化为16进制字符串输出
- java下16进制字符串和字节数组的相互转化
- 字节数组和16进制表示的字符串互相转化
- java中字节数组抓转化为16进制字符串
- 字节数组byte[]与16进制字符串的相互转化
- Java将字节数组转化为16进制字符串的多种方案
- as3加密DES过程中,1、字符串转成ByteArray(byte数组)形式 ,2、ByteArray编码成base64 3、把ByteArray转换为16进制的形式的字符串
- python字符串str和字节数组相互转化
- python字符串str和字节数组相互转化
- 16进制字符串和byte数组的转化类
- 16进制字符串和字节数组互相转换
- 16进制字符串转字节数组
- 16进制字符串转字节数组
- java读取文件以字节流的形式读取 然后转化为字节流数组,最后经过SHA1加密生成返回16进制字符串存入数据库
- C# string字符串转换为字节数组和转换为16进制的字符串形式
- Python 中的字符串 & 字节和字节数组 (7)
- 内核支持线程和用户级线程
- iOS 多个线程对数组操作(遍历,插入,删除),实现一个线程安全的NSMutabeArray
- 将一个Maven的Java项目重命名(改造)为一个新项目,用Tortoise上传到SVN服务器
- java微信生成带参数的二维码
- 购物车+MVP+二级列表
- python2.7下面字节数组(ByteArray)和16进制字符串(HexString)转化
- 购物车之跳转到详情页面
- java之后台传递json中带有单引号时的处理
- 《亲爱的客栈》中的”清尘“CP
- 17未央,我备一曲离殇
- OS的安全模型与安全策略
- viewpage+radiogroup
- 【736c677c4】在SpringMVC中获取URL和Controller映射关系的两种办法 (亲测可用)
- 自序-----《Python大战机器学习:数据科学家的第一个小目标》