【问题标题】:Hex string to base58十六进制字符串到 base58
【发布时间】:2021-05-19 00:46:54
【问题描述】:

有没有人知道任何支持以下将base58转换为十六进制字符串或从十六进制字符串转换为base58编码的包。 下面是一个python实现的例子。

https://www.reddit.com/r/Tronix/comments/ja8khn/convert_my_address/

这个十六进制字符串

这是一个用于验证的链接:https://tronscan.org/#/tools/tron-convert-tool

【问题讨论】:

  • 可以查看rbtc包
  • @MohanGovindasamy 已经尝试过了,base58CheckEncode() 和 base58CheckDecode() 函数似乎没有产生上述结果

标签: r hex base58


【解决方案1】:

我一直在寻找它,并且我能够设计产生所需结果的函数。

import base58


def hex_to_base58(hex_string):
    if hex_string[:2] in ["0x", "0X"]:
        hex_string = "41" + hex_string[2:]
    bytes_str = bytes.fromhex(hex_string)
    base58_str = base58.b58encode_check(bytes_str)
    return base58_str.decode("UTF-8")


def base58_to_hex(base58_string):
    asc_string = base58.b58decode_check(base58_string)
    return asc_string.hex().upper()

如果您想将交易的公钥(十六进制)转换为钱包地址(base58),它们会很有用。

public_key_hex = "0x4ab99740bdf786204e57c00677cf5bf8ee766476"
address = hex_to_base58(public_key_hex)
print(address)
# TGnKLLBQyCo6QF911j65ipBz5araDSYQAD

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-04
    • 2014-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-26
    • 1970-01-01
    • 2023-04-08
    相关资源
    最近更新 更多