来源信息
- 仓库
- 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 查看