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