code: def _aespad(data):
      
      currlen = len(data) + 1  # need to count the pad length field as well
      neededpad = currlen % 16
      if neededpad:  # if it happens to be zero, hurray, but otherwise invert the
          # sense of the padding
          neededpad = 16 - neededpad
      padval = 1
      pad = bytearray(neededpad)
      while padval <= neededpad:
          pad[padval - 1] = padval
          padval += 1
      pad.append(neededpad)
      return pad
docs: ipmi demands a certain pad scheme,
      per table 13-20 AES-CBC encrypted payload fields.