首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解码从Algorand守护进程获得的公共地址?

如何解码从Algorand守护进程获得的公共地址?
EN

Stack Overflow用户
提问于 2022-08-17 23:29:58
回答 2查看 86关注 0票数 0

嘿,伙计们,所以我在摆弄一个dapp的主意。

当我从智能合同中得到一个具体的地址时,

它给了我一种特定的编码类型

例如,9HUG4x4wVzHmXRedwA6b9ygZbN/KGeDfmRDLgGZtLmI=。

如何将它解码到我想要的公共地址?

EN

回答 2

Stack Overflow用户

发布于 2022-08-18 15:01:21

答案https://stackoverflow.com/a/73395946/2945326是一种在智能契约中将base64地址解码为32字节原始地址/公钥的方法。在大多数情况下,您应该避免在智能契约中解码base64。相反,您应该确保智能契约总是直接处理原始字节。

如果您想解码智能契约之外的地址(例如,在网站上显示地址),那么您需要首先解码base64。这会给你一个32字节的原始地址/公钥.要显示,需要将其转换为https://developer.algorand.org/docs/get-details/encoding/#address之后的地址。

具体来说,在Python中:

代码语言:javascript
复制
import base64
import algosdk

raw_address_bytes = base64.b64decode("ZXUc/psAtm6K6AOMpvytibbSa8H6WFc6O8XTp/rHuEE=")
address = algosdk.encoding.encode_address(raw_address_bytes)

print(address)

显示

代码语言:javascript
复制
MV2RZ7U3AC3G5CXIAOGKN7FNRG3NE26B7JMFOOR3YXJ2P6WHXBA4IGKRJ4

请参阅https://forum.algorand.org/t/how-to-convert-public-key-back-to-address-in-js-sdk/3643/3?u=fabrice

票数 2
EN

Stack Overflow用户

发布于 2022-08-17 23:35:27

您可以简单地将编码的字符串传递给pyteal.Base64Decode()

这个类将返回一个将被解码的公共地址的字符串。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73395922

复制
相关文章

相似问题

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