Skip to main content

bech32-encoding-decoding

Encode and decode bech32 strings using the local bech32 CLI.

来源信息

仓库
input-output-hk/daedalus
最近来源活动
2026年2月10日 14:22
检测到的 SKILL.md 语言
英语
星标
1,247
分支
299

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
bech32-encoding-decoding
description
Encode and decode bech32 strings using the local bech32 CLI.
allowed-tools
["Bash(bech32:*)","Read"]
disable-model-invocation
false
user-invocable
true
# Bech32 Encoding/Decoding Skill Use this skill to convert between hex/base58 inputs and bech32 strings, or to decode bech32 back to base16. The local `bech32` binary reads data from standard input and writes to standard output. ## When to use - When you need to inspect or transform bech32 strings for debugging or tests - When you need to encode raw bytes (hex/base58) to a bech32 prefix - When you need to decode a bech32 string to base16 ## Tooling - `bech32 [PREFIX]` converts to/from bech32 strings - Input is read from `stdin` - Output is printed to `stdout` - Supported input formats: Base16, Bech32, Base58 ## Operating rules (must follow) - Confirm the target human-readable prefix (HRP) before encoding - Prefer piping input via `<<<` or `printf` so the payload is explicit - For decoding, omit the prefix argument to ensure base16 output - Never alter user data; report exact output from the tool ## Execution workflow ### Step 1: Identify the input type - Base16 hex string (preferred for raw bytes) - Base58 string - Bech32 string ### Step 2: Encode to bech32 ```bash bech32 <prefix> <<< <hex-or-base58-input> ``` ### Step 3: Decode from bech32 to base16 ```bash bech32 <<< <bech32-input> ``` ## Examples Encode hex to bech32: ```bash bech32 addr <<< 71ab222c7f223c4c0e297d11fbf6e6a082eb41db5e8539fcfb822c76c3 ``` Expected output: ```text addr1wx4jytrlyg7ycr3f05glhahx5zpwkswmt6znnl8msgk8dsccv8766 ``` Decode bech32 to hex: ```bash bech32 <<< addr1wx4jytrlyg7ycr3f05glhahx5zpwkswmt6znnl8msgk8dsccv8766 ``` Expected output: ```text 71ab222c7f223c4c0e297d11fbf6e6a082eb41db5e8539fcfb822c76c3 ``` Convert from base58 to bech32: ```bash bech32 base58_ <<< Ae2tdPwUPEYy ``` Expected output: ```text base58_1p58rejhd9592uusa8pzj2 ``` ## Common pitfalls - Using the wrong HRP when encoding; bech32 is prefix-sensitive - Passing bech32 input with a prefix argument (this re-encodes instead of decoding) - Including whitespace or newlines inside the input payload - Prefixing hex input with `0x`; the tool expects raw hex only ## Error signals - `Unable to detect input encoding` usually means the input contains a prefix (`0x`) or non-hex characters ## Diagnosis workflow (quick) 1. Confirm input type and remove any `0x` prefix for hex. 2. If encoding: verify the HRP you intend to use. 3. If decoding: ensure you omit the prefix argument. 4. Re-run with a minimal test case to validate the tool: - `bech32 base16_ <<< 706174617465` - `bech32 <<< base16_1wpshgct5v5r5mxh0` ## References - `bech32 --help`
在 GitHub 查看