3

Python中是否有RFC4648(“Base16、Base32 和 Base64 数据编码”)的任何实现?请注意,我专门寻找 RFC 4648,而不是它的前身。只要不需要太长时间,其他脚本语言就可以工作。首选 Python。

4

5 回答 5

3

Python 有一个实现 RFC 3548(RFC 4648 的旧版本)的base64模块。

于 2012-07-25T22:02:49.107 回答
1

Base64#strict_decode64Ruby 在和Base64#strict_encode64方法 中实现了 RFC 4648 。资源。

于 2013-05-08T17:59:06.400 回答
0

Go 标准库有一个非常好的base64 实现(如 RFC 4648 中所定义)。


相关源文件:

于 2013-05-14T12:40:03.067 回答
0

base64 也有一个字符串操作数版本:

a_str = 'This is a string'
a_str.encode('base64', 'strict')
'VGhpcyBpcyBhIHN0cmluZw==\n'

它和 base64.b64encode 一样,但我想我会把它作为一个选项扔在那里。

补丁:

您正在寻找的是常规 base64 模块的“扩展十六进制”,我记得我为 DNSSEC 项目安装了一段时间: http: //bugs.python.org/issue16995

于 2013-05-14T06:15:38.897 回答
0

在使用https://golang.org/src/encoding/base32/base32.go时

我找不到 RFC 4648 所指的“带有扩展十六进制字母的 Base 32 编码”的 python 实现;所以我为python写了一个:

https://gist.github.com/graham/d7845f00fce0690b65ab049d52c1ddcb

据我所知,如果您使用标准字符映射,RFC 3548 并没有什么不同,但我无法找到使用扩展十六进制字母表的标准方法。

随意复制粘贴,如果人们认为这是一个合理的解决方案,我会编写一些测试并创建一个 git repo。

于 2017-01-08T18:38:18.290 回答