Skip to main content

bech32-encoding-decoding

Encode and decode bech32 strings using the local bech32 CLI.

Informations de source

Dépôt
input-output-hk/daedalus
Dernière activité de la source
10 février 2026 à 14:22
Langue détectée de SKILL.md
anglais
Étoiles
1 247
Forks
296

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
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`
Voir sur GitHub