Descifrando la carga útil de user-api-key después del inicio de sesión

He estado intentando obtener la User-Api-Key para un inicio de sesión de terceros descifrando el payload, después de realizar la llamada a user-api-key/new en la plataforma iOS.

El problema es que la decodificación base64 funciona correctamente, pero el descifrado lanza un error (código -50) cuando implemento el descifrado con las clases SecKeyCreateDecryptedData y SecKeyDecrypt. Para información, el código -50 es sign - input buffer bad size, lo que implica que el texto cifrado es más largo que la clave, lo que hace que RSA sea obsoleto.

He intentado comparar las cadenas cifradas en mi instancia local de Discourse y en la plataforma iOS; aunque la mayoría de los caracteres permanecen iguales, al convertir la cadena cifrada a Data, el tamaño se vuelve mayor que el keySize. Sospecho que esto tiene algo que ver con la decodificación de la cadena de payload base64 para obtener el texto cifrado. ¿Estoy equivocado? ¿O me estoy perdiendo algo?