首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >混淆设置52个字符的i2p base32

混淆设置52个字符的i2p base32
EN

Stack Overflow用户
提问于 2013-11-27 08:57:21
回答 1查看 1K关注 0票数 1

我试图配置和安装站点,而他们的base32太长了,i2p是使用b32还是sha256?或者把b32转换成256个,作为一个网站?给出的例子是52个字符http://www.i2p2.de/naming.html#base32,base32不是52个字符,而是32个字符http://online-calculators.appspot.com/base32/。我遗漏了什么?是否有专门针对i2p的工具?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-17 00:45:18

Base32是一种编码任意字节数据的符号。对byte 32编码数据的最大长度没有限制--“32个字符”是指用于用Base32符号编写任意字节数据的一组字符。得到的字符串将只包含来自该集合的字符。唯一的限制是be 32编码字符串的长度必须是40位的倍数。

Base32地址在I2P中是I2P目标的SHA256哈希的Base32编码。

下面是一个Python脚本,用于将Base64 64编码的I2P目的地转换为I2P B32地址(来自I2P单调存储库中的i2p.scripts分支):

代码语言:javascript
复制
#!/usr/bin/env python
#
# Written by duck
# http://forum.i2p/viewtopic.php?t=4367
#
import base64, hashlib, sys

if len(sys.argv) != 2:
    print 'Usage: 64to32.py <base64key>'
    sys.exit(1)

key = sys.argv[1]
raw_key = base64.b64decode(key, '-~')
hash = hashlib.sha256(raw_key)
base32_hash = base64.b32encode(hash.digest())
print base32_hash.lower().replace('=', '')+'.b32.i2p
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20237769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档