加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

在Python中保存base64数据的大多数内存有效的方法?

发布时间:2020-12-20 12:37:13 所属栏目:Python 来源:网络整理
导读:假设您在base64中编码了MD5哈希值.然后每个 字符只需要6位来存储每个字符 得到的22字节字符串(不包括结尾’==’).因此,每个 base64 md5 hash可以缩小到6 * 22 = 132位,其中 与原始的8 * 22 = 176相比,需要的存储空间减少25% 位串. 是否有任何Python模块或函
假设您在base64中编码了MD5哈希值.然后每个
字符只需要6位来存储每个字符
得到的22字节字符串(不包括结尾’==’).因此,每个
base64 md5 hash可以缩小到6 * 22 = 132位,其中
与原始的8 * 22 = 176相比,需要的存储空间减少25%
位串.

是否有任何Python模块或函数可以存储base64
数据以上述方式?

解决方法

存储base64编码数据的最有效方法是对其进行解码并将其存储为二进制. base64是一种传输编码 – 将数据存储在其中是没有意义的,特别是在内存中,除非你有一个令人信服的理由.

另外,nitpick:哈希函数的输出不是十六进制字符串 – 这只是一个常见的表示.散列函数的输出是二进制数据的一些字节数.例如,如果您正在使用md5,sha或hashlib模块,则首先不需要将其编码为任何内容 – 只需在哈希对象上调用.digest()而不是.hexdigest().

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读