diff --git a/gateway/platforms/wecom.py b/gateway/platforms/wecom.py index 873284de79..c93a8fe3d6 100644 --- a/gateway/platforms/wecom.py +++ b/gateway/platforms/wecom.py @@ -1015,6 +1015,8 @@ class WeComAdapter(BasePlatformAdapter): if not aes_key: raise ValueError("aes_key is required") + # WeCom doesn't pad base64 keys; add padding if needed + aes_key = aes_key + '=' * ((4 - len(aes_key) % 4) % 4) key = base64.b64decode(aes_key) if len(key) != 32: raise ValueError(f"Invalid WeCom AES key length: expected 32 bytes, got {len(key)}")