Class Extension
java.lang.Object
org.mozilla.jss.netscape.security.x509.Extension
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
AuthInfoAccessExtension
,AuthorityKeyIdentifierExtension
,BasicConstraintsExtension
,CertificateIssuerExtension
,CertificatePoliciesExtension
,CertificateRenewalWindowExtension
,CertificateScopeOfUseExtension
,CRLDistributionPointsExtension
,CRLNumberExtension
,CRLReasonExtension
,DeltaCRLIndicatorExtension
,ExtendedKeyUsageExtension
,FreshestCRLExtension
,GenericASN1Extension
,HoldInstructionExtension
,InhibitAnyPolicyExtension
,InvalidityDateExtension
,IssuerAlternativeNameExtension
,IssuingDistributionPointExtension
,KeyUsageExtension
,NameConstraintsExtension
,NSCCommentExtension
,NSCertTypeExtension
,OCSPNoCheckExtension
,PolicyConstraintsExtension
,PolicyMappingsExtension
,PresenceServerExtension
,PrivateKeyUsageExtension
,SubjectAlternativeNameExtension
,SubjectDirAttributesExtension
,SubjectInfoAccessExtension
,SubjectKeyIdentifierExtension
Represent a X509 Extension Attribute.
Extensions are addiitonal attributes which can be inserted in a X509 v3 certificate. For example a "Driving License Certificate" could have the driving license number as a extension.
Extensions are represented as a sequence of the extension identifier (Object Identifier), a boolean flag stating whether the extension is to be treated as being critical and the extension value itself (this is again a DER encoding of the extension value).
ASN.1 definition of Extension: Extension ::= SEQUENCE { ExtensionId OBJECT IDENTIFIER, critical BOOLEAN DEFAULT FALSE, extensionValue OCTET STRING }
- Version:
- 1.9
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected boolean
protected ObjectIdentifier
protected byte[]
private static final long
-
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.Constructs an extension from a DER encoded array of bytes.Extension
(ObjectIdentifier extensionId, boolean critical, byte[] extensionValue) Constructs an Extension from individual components of ObjectIdentifier, criticality and the DER encoded OctetString.Constructs an Extension from another extension. -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
encode
(DerOutputStream out) Write the extension to the DerOutputStream.Returns the ObjectIdentifier of the extension.byte[]
Returns the extension value as an byte array for further processing.boolean
Returns true if extension is critical.void
setCritical
(boolean c) void
void
setExtensionValue
(byte[] value) toString()
Returns the Extension in user readable form.
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
extensionId
-
critical
protected boolean critical -
extensionValue
protected byte[] extensionValue
-
-
Constructor Details
-
Extension
public Extension()Default constructor. Used only by sub-classes. -
Extension
Constructs an extension from a DER encoded array of bytes.- Throws:
IOException
-
Extension
public Extension(ObjectIdentifier extensionId, boolean critical, byte[] extensionValue) throws IOException Constructs an Extension from individual components of ObjectIdentifier, criticality and the DER encoded OctetString.- Parameters:
extensionId
- the ObjectIdentifier of the extensioncritical
- the boolean indicating if the extension is criticalextensionValue
- the DER encoded octet string of the value.- Throws:
IOException
-
Extension
Constructs an Extension from another extension. To be used for creating decoded subclasses.- Parameters:
ext
- the extension to create from.
-
-
Method Details
-
encode
Write the extension to the DerOutputStream.- Parameters:
out
- the DerOutputStream to write the extension to.- Throws:
IOException
- on encoding errors
-
isCritical
public boolean isCritical()Returns true if extension is critical. -
setCritical
public void setCritical(boolean c) -
clearValue
public void clearValue() -
getExtensionId
Returns the ObjectIdentifier of the extension. -
setExtensionId
-
getExtensionValue
public byte[] getExtensionValue()Returns the extension value as an byte array for further processing. Note, this is the raw DER value of the extension, not the DER encoded octet string which is in the certificate. -
setExtensionValue
public void setExtensionValue(byte[] value) -
toString
Returns the Extension in user readable form.
-