Encodes an integer to ber length
    You can set the ber_length manually.
    return: bitearray object

def encode_ber(value, ber_length=0):
    """
    Encodes an integer to ber length
    You can set the ber_length manually.
    return: bitearray object
    """
    if not ber_length:
        if value < 127: # 1 byte case
            return bytearray([value])
        ber_length = 1
        while value >= pow(2, 8*ber_length):
            ber_length += 1
        ber_length += 1


    ber = bytearray(ber_length)
    ber[0] = 127 + ber_length #ber length byte
    for i in range(1, ber_length):
        ber[i] = (value >> (8 * (ber_length - 1 - i))) & 255
    return ber