Within the bitcoin developer pockets information, when speaking about Mini Non-public Key Format, after they clarify how the format works, they describe some steps:
The primary character of mini keys is ‘S’.
With the intention to decide if a mini non-public key’s well-formatted, a query mark is added to the non-public key.
The SHA256 hash is calculated. If the primary byte produced is a `00’, it’s well-formatted. This key restriction acts as a
typo-checking mechanism. A person brute forces the method utilizing random
numbers till a well-formatted mini non-public key’s produced.With the intention to derive the total non-public key, the person merely takes a single SHA256 hash of the unique mini non-public key. This course of is
one-way: it’s intractable to compute the mini non-public key format from
the derived key.
What I don’t perceive is step 1 and a couple of mixed with step 3, if a hash operate resembling sha256 is irreversible, that is, given its output we can’t guess its enter, how is it attainable that we are able to know {that a} non-public key that begins with ‘S’ and which we added a query mark will end in a hash that begins with ’00’ byte?
Can individuals extract enter codecs realizing that it’ll output sure characters in sure positions?
Is it not one of many execs of hashes {that a} minimal change within the enter will remodel the entire output?
How can somebody guarantee that with step 1 and a couple of, you’re going to get ’00’ byte, when if a change is remodeled the left hash enter characters, it’s going to fully change?
