base58 – Does a Bitcoin address encode the binary form of a public key hash, or the hexadecimal form?


In the developer guide, within the transaction section, there is the following excerpt:

Pubkey hashes are almost always sent encoded as Bitcoin addresses, which are base58-encoded strings containing an address version number, the hash, and an error-detection checksum to catch typos.

Base58 encoding uses byte values from 0 to 57 to encode alphanumeric characters as binary. My thinking is that it would not be possible to encode the binary form of the Pubkey hash using base58 as that isn’t what the encoding scheme is for; it encodes alphanumeric characters, not binary. So is it the case that the Pubkey hash is sent as one part of a Bitcoin address, which itself is encoded using base58, and it is the hexadecimal representation of the Pubkey hash which is encoded? Not the binary representation.

Source link

Leave a reply