docs: def appendBitPadding(str, blocksize=AES_blocksize):
    '''Bit padding a.k.a. One and Zeroes Padding
    A single set ('1') bit is added to the message and then as many reset ('0') bits as required (possibly none) are added.
    Input: (str) str - String to be padded
           (int) blocksize - block size of the algorithm
    Return: Padded string according to ANSI X.923 standart
  
    Used in when padding bit strings.
    0x80 in binary is 10000000
    0x00 in binary is 00000000
  
    Defined in ANSI X.923 (based on NIST Special Publication 800-38A) and ISO/IEC 9797-1 as Padding Method 2.
    Used in hash functions MD5 and SHA, described in RFC 1321 step 3.1.
    '''
    pad_len = paddingLength(len(str), blocksize) - 1
     
    padding = chr(0x80)+'\0'*pad_len
    
    return str + padding