O OpenID Connect Core exige que os provedores ofereçam suporte a RS256 nos tokens de ID, e é por isso que Google, Microsoft Entra ID, Okta e Auth0 assinam com ele por padrão. As chaves devem ter pelo menos 2048 bits (RFC 7518 §3.3); a JWK tem kty RSA, n e e. As assinaturas são determinísticas: a mesma chave e a mesma entrada sempre geram a mesma saída.
A verificação é barata (cerca de 114.000 por segundo com chaves de 2048 bits em um núcleo do Apple M4 Max com OpenSSL 3.6.5) e a geração de assinaturas é lenta (cerca de 3.000 por segundo), o que convém a emissores que assinam com muito menos frequência do que as partes confiáveis verificam. O custo é o tamanho: uma assinatura de 2048 bits tem 342 caracteres base64url; uma de 3072 bits, 512.
A armadilha clássica é a confusão de algoritmo: um verificador que também aceita HS256 com o mesmo objeto de chave pode ser induzido a usar a chave pública RSA como segredo HMAC. Fixe RS256 por chave. O PS256 usa as mesmas chaves com o padding PSS, mais forte.