github.com/mit-dci/lit@v0.0.0-20221102210550-8c3d3b49f2ce/btcutil/base58/doc.go (about)

     1  // Copyright (c) 2014 The btcsuite developers
     2  // Use of this source code is governed by an ISC
     3  // license that can be found in the LICENSE file.
     4  
     5  /*
     6  Package base58 provides an API for working with modified base58 and Base58Check
     7  encodings.
     8  
     9  Modified Base58 Encoding
    10  
    11  Standard base58 encoding is similar to standard base64 encoding except, as the
    12  name implies, it uses a 58 character alphabet which results in an alphanumeric
    13  string and allows some characters which are problematic for humans to be
    14  excluded.  Due to this, there can be various base58 alphabets.
    15  
    16  The modified base58 alphabet used by Bitcoin, and hence this package, omits the
    17  0, O, I, and l characters that look the same in many fonts and are therefore
    18  hard to humans to distinguish.
    19  
    20  Base58Check Encoding Scheme
    21  
    22  The Base58Check encoding scheme is primarily used for Bitcoin addresses at the
    23  time of this writing, however it can be used to generically encode arbitrary
    24  byte arrays into human-readable strings along with a version byte that can be
    25  used to differentiate the same payload.  For Bitcoin addresses, the extra
    26  version is used to differentiate the network of otherwise identical public keys
    27  which helps prevent using an address intended for one network on another.
    28  */
    29  package base58