001 package com.nimbusds.jose;
002
003
004 import java.net.URL;
005
006 import com.nimbusds.jose.util.Base64;
007 import com.nimbusds.jose.util.Base64URL;
008
009
010 /**
011 * Read-only view of {@link CommonSEHeader common JWS/JWE header parameters}.
012 *
013 * @author Vladimir Dzhuvinov
014 * @version $version$ (2012-09-19)
015 */
016 public interface ReadOnlyCommonSEHeader extends ReadOnlyHeader {
017
018
019 /**
020 * Gets the JSON Web Key (JWK) Set URL ({@code jku}) parameter.
021 *
022 * @return The JSON Web Key (JWK) Set URL parameter, {@code null} if not
023 * specified.
024 */
025 public URL getJWKURL();
026
027
028 /**
029 * Gets the JSON Web Key (JWK) ({@code jwk}) parameter.
030 *
031 * @return The JSON Web Key (JWK) parameter, {@code null} if not
032 * specified.
033 */
034 public JWK getJWK();
035
036
037 /**
038 * Gets the X.509 certificate URL ({@code x5u}) parameter.
039 *
040 * @return The X.509 certificate URL parameter, {@code null} if not
041 * specified.
042 */
043 public URL getX509CertURL();
044
045
046 /**
047 * Gets the X.509 certificate thumbprint ({@code x5t}) parameter.
048 *
049 * @return The X.509 certificate thumbprint parameter, {@code null} if
050 * not specified.
051 */
052 public Base64URL getX509CertThumbprint();
053
054
055 /**
056 * Gets the X.509 certificate chain parameter ({@code x5c})
057 * corresponding to the key used to sign or encrypt the JWS/JWE object.
058 *
059 * @return The X.509 certificate chain parameter, {@code null} if not
060 * specified.
061 */
062 public Base64[] getX509CertChain();
063
064
065 /**
066 * Gets the key ID ({@code kid}) parameter.
067 *
068 * @return The key ID parameter, {@code null} if not specified.
069 */
070 public String getKeyID();
071 }