001package com.nimbusds.openid.connect.provider.spi.tokens;
002
003
004import java.security.SecureRandom;
005
006import com.nimbusds.openid.connect.provider.spi.InvocationContext;
007import com.nimbusds.openid.connect.provider.spi.crypto.HMACComputer;
008import com.nimbusds.openid.connect.provider.spi.crypto.JWTSigner;
009
010
011/**
012 * Token encoder and decoder context.
013 */
014public interface TokenCodecContext extends InvocationContext {
015        
016        
017        /**
018         * Returns an initialised secure random generator.
019         *
020         * @return The secure random generator.
021         */
022        SecureRandom getSecureRandom();
023        
024        
025        /**
026         * Returns the JSON Web Token (JWT) signer.
027         *
028         * @return The JWT signer.
029         */
030        JWTSigner getJWTSigner();
031        
032        
033        /**
034         * Returns the Hash-based Message Authentication Code (HMAC) computer.
035         *
036         * @return The HMAC computer.
037         */
038        HMACComputer getHMACComputer();
039}