Saltar al contenido
ecdsa.com

RS256

El algoritmo JWS RSASSA-PKCS1-v1_5 con SHA-256 (RFC 7518 §3.3), el predeterminado histórico de los proveedores de OpenID Connect, cuyas firmas son tan largas como el módulo RSA (256 bytes con claves de 2048 bits).
También se escribeRS256RSASSA-PKCS1-v1_5 SHA-256COSE -257

OpenID Connect Core exige que los proveedores admitan RS256 para los tokens de ID, y por eso Google, Microsoft Entra ID, Okta y Auth0 firman con él por defecto. Las claves deben tener al menos 2048 bits (RFC 7518 §3.3); la JWK tiene kty RSA, n y e. Las firmas son deterministas: la misma clave y la misma entrada dan siempre la misma salida.

La verificación es barata (unas 114.000 por segundo con claves de 2048 bits en un núcleo de un Apple M4 Max con OpenSSL 3.6.5) y la firma es lenta (unas 3000 por segundo), lo que conviene a los emisores que firman con mucha menos frecuencia de la que verifican las relying parties. El precio es el tamaño: una firma de 2048 bits ocupa 342 caracteres base64url, y una de 3072 bits, 512.

La trampa clásica es la confusión de algoritmos: a un verificador que también acepte HS256 con el mismo objeto de clave se le puede engañar para que use la clave pública RSA como secreto HMAC. Fija RS256 por clave. PS256 usa las mismas claves con el relleno PSS, más robusto.

Estándares y referencias

Todos los términos