tMinikey: minimum length 20 - electrum - Electrum Bitcoin wallet
 (HTM) git clone https://git.parazyd.org/electrum
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
       ---
 (DIR) commit b878c010da775b114e0dc06373744b9a2ce56606
 (DIR) parent ec929bfaf6cc74f8fc1e4579bb2218fa2af875ea
 (HTM) Author: Neil Booth <kyuupichan@gmail.com>
       Date:   Thu, 21 Jan 2016 08:11:50 +0900
       
       Minikey: minimum length 20
       
       On second thoughts there seems little reason to accept text
       of length <= 20 for minikeys.
       
       Diffstat:
         M lib/bitcoin.py                      |      11 ++++++-----
       
       1 file changed, 6 insertions(+), 5 deletions(-)
       ---
 (DIR) diff --git a/lib/bitcoin.py b/lib/bitcoin.py
       t@@ -382,11 +382,12 @@ def is_private_key(key):
        
        def is_minikey(text):
            # Minikeys are typically 22 or 30 characters, but this routine
       -    # permits any length provided the minikey is valid.  A valid
       -    # minikey must begin with an 'S', be in base58, and when suffixed
       -    # with '?' have its SHA256 hash begin with a zero byte.  They are
       -    # widely used in Casascius physical bitoins.
       -    return (text and text[0] == 'S' and all(c in __b58chars for c in text)
       +    # permits any length of 20 or more provided the minikey is valid.
       +    # A valid minikey must begin with an 'S', be in base58, and when
       +    # suffixed with '?' have its SHA256 hash begin with a zero byte.
       +    # They are widely used in Casascius physical bitoins.
       +    return (len(text) >= 20 and text[0] == 'S'
       +            and all(c in __b58chars for c in text)
                    and ord(sha256(text + '?')[0]) == 0)
        
        def minikey_to_private_key(text):