Class KeyUsageExtension
- java.lang.Object
-
- com.itextpdf.signatures.validation.extensions.CertificateExtension
-
- com.itextpdf.signatures.validation.extensions.KeyUsageExtension
-
public class KeyUsageExtension extends CertificateExtension
Class representing "Key Usage" extenstion.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
ACTUAL_VALUE
static java.lang.String
EXPECTED_VALUE
private static IBouncyCastleFactory
FACTORY
private int
keyUsage
private java.lang.String
message
private java.lang.String
messagePreAmble
static java.lang.String
MISSING_VALUE
private boolean
resultOnMissingExtension
-
Fields inherited from class com.itextpdf.signatures.validation.extensions.CertificateExtension
EXCEPTION_OCCURRED, EXPECTED_EXTENSION_ID_AND_VALUE, EXTENSION_NOT_FOUND, FOUND_VALUE
-
-
Constructor Summary
Constructors Constructor Description KeyUsageExtension(int keyUsage)
Create newKeyUsageExtension
instance using providedint
flag.KeyUsageExtension(int keyUsage, boolean resultOnMissingExtension)
Create newKeyUsageExtension
instance using providedint
flag.KeyUsageExtension(KeyUsage keyUsageValue)
Create newKeyUsageExtension
instance using provided single key usage enum value.KeyUsageExtension(KeyUsage keyUsageValue, boolean resultOnMissingExtension)
Create newKeyUsageExtension
instance using provided single key usage enum value.KeyUsageExtension(java.util.List<KeyUsage> keyUsages)
Create newKeyUsageExtension
instance using provided key usage enum list.KeyUsageExtension(java.util.List<KeyUsage> keyUsages, boolean resultOnMissingExtension)
Create newKeyUsageExtension
instance using provided key usage enum list.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.lang.String
convertKeyUsageMaskToString(int keyUsageMask)
private static int
convertKeyUsageSetToInt(java.lang.Iterable<KeyUsage> keyUsages)
boolean
existsInCertificate(java.security.cert.X509Certificate certificate)
Check if this extension is present in the provided certificate.java.lang.String
getMessage()
Returns a message with extra information about the check.-
Methods inherited from class com.itextpdf.signatures.validation.extensions.CertificateExtension
equals, getExtensionOid, getExtensionValue, hashCode
-
-
-
-
Field Detail
-
FACTORY
private static final IBouncyCastleFactory FACTORY
-
EXPECTED_VALUE
public static final java.lang.String EXPECTED_VALUE
- See Also:
- Constant Field Values
-
ACTUAL_VALUE
public static final java.lang.String ACTUAL_VALUE
- See Also:
- Constant Field Values
-
MISSING_VALUE
public static final java.lang.String MISSING_VALUE
- See Also:
- Constant Field Values
-
keyUsage
private final int keyUsage
-
resultOnMissingExtension
private final boolean resultOnMissingExtension
-
messagePreAmble
private java.lang.String messagePreAmble
-
message
private java.lang.String message
-
-
Constructor Detail
-
KeyUsageExtension
public KeyUsageExtension(int keyUsage)
Create newKeyUsageExtension
instance using providedint
flag.- Parameters:
keyUsage
-int
flag which represents bit values for key usage value bit strings are stored with the big-endian byte order and padding on the end, the big endian notation causes a shift in actual integer values for bits 1-8 becoming 0-7 and bit 1 the 7 bits padding makes for bit 0 to become bit 7 of the first byte
-
KeyUsageExtension
public KeyUsageExtension(int keyUsage, boolean resultOnMissingExtension)
Create newKeyUsageExtension
instance using providedint
flag.- Parameters:
keyUsage
-int
flag which represents bit values for key usage value bit strings are stored with the big-endian byte order and padding on the end, the big endian notation causes a shift in actual integer values for bits 1-8 becoming 0-7 and bit 1 the 7 bits padding makes for bit 0 to become bit 7 of the first byteresultOnMissingExtension
- parameter which represents return value forexistsInCertificate(X509Certificate)
method in case of the extension not being present in a certificate
-
KeyUsageExtension
public KeyUsageExtension(java.util.List<KeyUsage> keyUsages)
Create newKeyUsageExtension
instance using provided key usage enum list.- Parameters:
keyUsages
- key usagesList
which represents key usage values
-
KeyUsageExtension
public KeyUsageExtension(java.util.List<KeyUsage> keyUsages, boolean resultOnMissingExtension)
Create newKeyUsageExtension
instance using provided key usage enum list.- Parameters:
keyUsages
- key usagesList
which represents key usage valuesresultOnMissingExtension
- parameter which represents return value forexistsInCertificate(X509Certificate)
method in case of the extension not being present in a certificate
-
KeyUsageExtension
public KeyUsageExtension(KeyUsage keyUsageValue)
Create newKeyUsageExtension
instance using provided single key usage enum value.- Parameters:
keyUsageValue
-KeyUsage
which represents single key usage enum value
-
KeyUsageExtension
public KeyUsageExtension(KeyUsage keyUsageValue, boolean resultOnMissingExtension)
Create newKeyUsageExtension
instance using provided single key usage enum value.- Parameters:
keyUsageValue
-KeyUsage
which represents single key usage enum valueresultOnMissingExtension
- parameter which represents return value forexistsInCertificate(X509Certificate)
method in case of the extension not being present in a certificate
-
-
Method Detail
-
existsInCertificate
public boolean existsInCertificate(java.security.cert.X509Certificate certificate)
Check if this extension is present in the provided certificate. In case ofKeyUsageExtension
, check if this key usage bit values are present in certificate. Other values may be present as well.- Overrides:
existsInCertificate
in classCertificateExtension
- Parameters:
certificate
-X509Certificate
in which this extension shall be present- Returns:
true
if this key usage bit values are present in certificate,false
otherwise
-
getMessage
public java.lang.String getMessage()
Description copied from class:CertificateExtension
Returns a message with extra information about the check.- Overrides:
getMessage
in classCertificateExtension
- Returns:
- a message with extra information about the check.
-
convertKeyUsageMaskToString
private static java.lang.String convertKeyUsageMaskToString(int keyUsageMask)
-
convertKeyUsageSetToInt
private static int convertKeyUsageSetToInt(java.lang.Iterable<KeyUsage> keyUsages)
-
-