JSON Web Token (JWT)                    
                    
                        JWT (JSON Web Token) es un estándar abierto (RFC 7519) que define una forma compacta y autocontenida para transmitir de forma segura información entre partes como un objeto JSON. Esta información puede ser verificada y confiable porque está firmada digitalmente. Los JWT pueden firmarse usando un secreto (con el algoritmo HMAC) o un par de claves pública/privada usando RSA o ECDSA.                    
                 
                
                    
                        Estructura JWT                    
                    
                        Un JWT consta de tres partes separadas por puntos (.), que son:                    
                    
                        .yyyyy.zzzzz
                    
                    
                        - 
                            : 
                            
                                Contiene el tipo de token (JWT) y el algoritmo de firma (por ejemplo, HS256, RS256)                            
                        
 
                        - 
                            
                                Carga útil                            : 
                            
                                Contiene las reclamaciones - declaraciones sobre una entidad (típicamente el usuario) y datos adicionales                            
                        
 
                        - 
                            
                                Firma                            : 
                            
                                Se utiliza para verificar que el remitente del JWT es quien dice ser y para asegurar que el mensaje no se modificó en el camino                            
                        
 
                    
                 
                
                    
                        Algoritmos de firma                    
                    
                        JWT soporta varios algoritmos de firma:                    
                    
                        - HS256: HMAC con SHA-256. Algoritmo simétrico usando un secreto compartido
 
                        - HS384: HMAC con SHA-384. Algoritmo simétrico con hash más fuerte
 
                        - HS512: HMAC con SHA-512. Algoritmo simétrico con hash más fuerte
 
                        - RS256: Firma RSA con SHA-256. Algoritmo asimétrico usando par de claves pública/privada
 
                        - RS384: Firma RSA con SHA-384. Algoritmo asimétrico con hash más fuerte
 
                        - RS512: Firma RSA con SHA-512. Algoritmo asimétrico con hash más fuerte
 
                    
                 
                
                    
                        Reclamaciones estándar                    
                    
                        JWT define varias reclamaciones estándar (nombres de reclamaciones registrados) que proporcionan información útil:                    
                    
                        - iss (Issuer): Emisor del token
 
                        - sub (Subject): Sujeto del token (ID de usuario)
 
                        - aud (Audience): Audiencia prevista
 
                        - exp (Expiration Time): Tiempo de expiración (marca de tiempo Unix)
 
                        - nbf (Not Before): No válido antes de este tiempo
 
                        - iat (Issued At): Tiempo de emisión
 
                        - jti (JWT ID): Identificador único del token
 
                    
                 
                
                    
                        Casos de uso comunes                    
                    
                        - Autenticación: Después del inicio de sesión del usuario, cada solicitud subsiguiente incluye el JWT, permitiendo el acceso a rutas, servicios y recursos
 
                        - Intercambio de información: Transmitir de forma segura información entre partes con verificación de firma
 
                        - Inicio de sesión único (SSO): Ampliamente utilizado para funciones de SSO debido a la baja sobrecarga y capacidad entre dominios
 
                        - Autorización API: Autenticación sin estado para APIs RESTful
 
                        - OAuth 2.0 y OpenID Connect: Componente central de los protocolos de autenticación modernos
 
                    
                 
                
                    
                        
                            Nota de seguridad:
                        
                        
                            Los tokens JWT están firmados para verificar la autenticidad pero no están cifrados por defecto. No almacene información sensible en la carga útil a menos que esté cifrada por separado. Use siempre HTTPS para transmitir tokens. Almacene tokens de forma segura (por ejemplo, cookies httpOnly para aplicaciones web). Implemente mecanismos apropiados de expiración y renovación de tokens. Nunca exponga su clave secreta en código del lado del cliente.