4 ms·
Why base-58 instead of standard base-64 encoding? - Don't want 0OIl characters that look the same in some fonts and could be used to create visually identical
by decentralised 8y ago
Why base-58 instead of standard base-64 encoding?
- Don't want 0OIl characters that look the same in some fonts and could be used to create visually identical looking data.
- A string with non-alphanumeric characters is not as easily accepted as input.
- E-mail usually won't line-break if there's no punctuation to break at.
- Double-clicking selects the whole string as one word if it's all alphanumeric.
https://github.com/bitcoin/bitcoin/blob/master/src/base58.h https://github.com/bitcoin/bitcoin/blob/master/src/base58.h
- athenot 8y agoThis is a similar encoding as airline reservation numbers, except it also has lowercase characters. But the requirements are very similar. It's amazing how much confusion is removed by suppressing ambiguities between number 0 vs. letter O and number 1 vs. letter I. For reservation numbers, doing away with case makes it easier to speak the number over the phone.
- jimktrains2 8y agoCrockford base32?
- decentralised 8y agoIt's amazing how user experience can be affected from this deep in the stack.
- kulahan 8y agoIt might be interesting to see a form of encoding that removes similar-sounding letters/numbers as well. No more "A" or "J", "B" or "D", "3" or "T" confusion. Just stuff with a distinct sound!
- strainer 8y agoKnocking out similar characters is a good idea but could be done to base32 to make it a little handier. I don't feel adding case sensitivity is worth a 15% reduction in string length.