使用 ``aes`` 加密数据, 并由 ``base64编码`` 加密后的数据

        - ``sec_key`` 加密 ``msg``, 最后选择 ``是否由base64编码数据``
        - msg长度为16位数, 不足则补 'ascii \\0'

        .. warning::
             msg长度为16位数, 不足则补 'ascii \\0'

        :param plain:
        :type plain: str
        :param sec_key:
        :type sec_key:  str
        :param enable_b64:
        :type enable_b64: bool
        :return:
        :rtype:

def aes_encrypt(self, plain, sec_key, enable_b64=True):
        """
            使用 ``aes`` 加密数据, 并由 ``base64编码`` 加密后的数据

        - ``sec_key`` 加密 ``msg``, 最后选择 ``是否由base64编码数据``
        - msg长度为16位数, 不足则补 'ascii \\0'

        .. warning::
             msg长度为16位数, 不足则补 'ascii \\0'

        :param plain:
        :type plain: str
        :param sec_key:
        :type sec_key:  str
        :param enable_b64:
        :type enable_b64: bool
        :return:
        :rtype:
        """
        plain = helper.to_str(plain)
        sec_key = helper.to_str(sec_key)
        # 如果msg长度不为16倍数, 需要补位 '\0'
        plain += '\0' * (self.bs - len(plain) % self.bs)
        # 使用生成的 key, iv 加密
        plain = helper.to_bytes(plain)
        cipher = self.aes_obj(sec_key).encrypt(plain)
        # 是否返回 base64 编码数据
        cip = base64.b64encode(cipher) if enable_b64 else cipher
        return helper.to_str(cip)