com.rsa.certj.cert.extensions

Class OCSPServiceLocator

java.lang.Object
  |
  +--com.rsa.certj.cert.extensions.X509V3Extension
        |
        +--com.rsa.certj.cert.extensions.OCSPServiceLocator
All Implemented Interfaces:
Cloneable, OCSPSingleExtension, Serializable

public class OCSPServiceLocator
extends X509V3Extension
implements Cloneable, Serializable, OCSPSingleExtension

This class implements a standard extension, Service Locator, used in an OCSP request message as defined in rfc 2560.

Quated from rfc 2560:

An OCSP server may be operated in a mode whereby the server receives a request and routes it to the OCSP server which is known to be authoritative for the identified certificate. The serviceLocator request extension is defined for this purpose. This extension is included as one of the singleRequestExtensions in requests.


 id-pkix-ocsp-service-locator OBJECT IDENTIFIER ::= { id-pkix-ocsp 7 }

 ServiceLocator ::= SEQUENCE {
     issuer    Name,
     locator   AuthorityInfoAccessSyntax OPTIONAL }

 

Copyright © RSA Security Inc., 2001. All rights reserved.

See Also

Serialized Form

Fields inherited from class com.rsa.certj.cert.extensions.X509V3Extension
ARCHIVE_CUTOFF, ARCHIVE_CUTOFF_OID, AUTHORITY_INFO_ACCESS, AUTHORITY_INFO_OID, AUTHORITY_KEY_ID, BASIC_CONSTRAINTS, BIO_INFO, BIO_INFO_OID, CERT_POLICIES, CERTIFICATE_ISSUER, CRL_DISTRIBUTION_POINTS, CRL_NUMBER, CRL_REFERENCE, CRL_REFERENCE_OID, DELTA_CRL_INDICATOR, EXTENDED_KEY_USAGE, HOLD_INSTRUCTION_CODE, INHIBIT_ANY_POLICY, INVALIDITY_DATE, ISSUER_ALT_NAME, ISSUING_DISTRIBUTION_POINT, KEY_USAGE, NAME_CONSTRAINTS, NETSCAPE_BASE_URL, NETSCAPE_BASE_URL_OID, NETSCAPE_CA_POLICY_URL, NETSCAPE_CA_POLICY_URL_OID, NETSCAPE_CA_REVOCATION_URL, NETSCAPE_CA_REVOCATION_URL_OID, NETSCAPE_CERT_RENEWAL_URL, NETSCAPE_CERT_RENEWAL_URL_OID, NETSCAPE_CERT_TYPE, NETSCAPE_CERT_TYPE_OID, NETSCAPE_COMMENT, NETSCAPE_COMMENT_OID, NETSCAPE_REVOCATION_URL, NETSCAPE_REVOCATION_URL_OID, NETSCAPE_SSL_SERVER_NAME, NETSCAPE_SSL_SERVER_NAME_OID, NON_STANDARD_EXTENSION, OCSP_ACCEPTABLE_RESPONSES, OCSP_ACCEPTABLE_RESPONSES_OID, OCSP_NOCHECK, OCSP_NOCHECK_OID, OCSP_NONCE, OCSP_NONCE_OID, OCSP_SERVICE_LOCATOR, OCSP_SERVICE_LOCATOR_OID, POLICY_CONSTRAINTS, POLICY_MAPPINGS, PRIVATE_KEY_USAGE_PERIOD, QC_STATEMENTS, QC_STATEMENTS_OID, REASON_CODE, SUBJECT_ALT_NAME, SUBJECT_DIRECTORY_ATTRIBUTES, SUBJECT_KEY_ID, VERISIGN_CZAG, VERISIGN_CZAG_OID, VERISIGN_FIDELITY_ID, VERISIGN_FIDELITY_ID_OID, VERISIGN_JURISDICTION_HASH, VERISIGN_JURISDICTION_HASH_OID, VERISIGN_NETSCAPE_INBOX_V1, VERISIGN_NETSCAPE_INBOX_V1_OID, VERISIGN_NETSCAPE_INBOX_V2, VERISIGN_NETSCAPE_INBOX_V2_OID, VERISIGN_NON_VERIFIED, VERISIGN_NON_VERIFIED_OID, VERISIGN_SERIAL_NUMBER, VERISIGN_SERIAL_NUMBER_OID, VERISIGN_TOKEN_TYPE, VERISIGN_TOKEN_TYPE_OID
 

Constructor Summary

OCSPServiceLocator()

Constructs an empty ServiceLocator object.

OCSPServiceLocator(X500Name name, AuthorityInfoAccess locator)

Constructs a OCSPServiceLocator object for specified contents.

 

Method Summary

 Object

clone()

Overrrides the default clone method to get a deeper clone.

 void

decodeValue(byte[] valueBER, int offset)

Decode the value.

 int

derEncodeValue(byte[] encoding, int offset)

Place the encoding of the value into encoding, beginning at offset.

 int

derEncodeValueInit()

Initialize for encoding the value.

 X500Name

getIssuer()

Returns the issuer name of this object.

 AuthorityInfoAccess

getLocator()

Returns the locator extension of this object.

 void

setIssuer(X500Name issuer)

Sets the issuer value of this object.

 void

setLocator(AuthorityInfoAccess locator)

Sets the locator value of this object.

 
Methods inherited from class com.rsa.certj.cert.extensions.X509V3Extension
extend, getCriticality, getDEREncoding, getDERLen, getExtensionType, getExtensionTypeString, getInstance, getNextBEROffset, isExtensionType, setCriticality, setEncoding, setSpecialOID, setStandardOID
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OCSPServiceLocator

public OCSPServiceLocator()
Constructs an empty ServiceLocator object.

OCSPServiceLocator

public OCSPServiceLocator(X500Name name,
                          AuthorityInfoAccess locator)
                   throws CertificateException
Constructs a OCSPServiceLocator object for specified contents.

Parameters

         name  

A X500Name object holding the value of the issuer.

         locator  

A AuthorityInfoAccess extension object holding the value of the locator.

Throws

CertificateException - If any value is invalid.
Method Detail

derEncodeValueInit

public int derEncodeValueInit()
Initialize for encoding the value.

Overrides

derEncodeValueInit in class X509V3Extension

Returns

How many bytes the encoding will be.

derEncodeValue

public int derEncodeValue(byte[] encoding,
                          int offset)
Place the encoding of the value into encoding, beginning at offset. This is the actual contents that are wrapped in the OCTET STRING (not the surrounding OCTET STRING tag and length).

Overrides

derEncodeValue in class X509V3Extension

Parameters

         encoding  

The byte array into which the result will be placed.

         offset  

The offest into encoding where the writing is to begin.

Returns

The number of bytes actually placed into encoding.

decodeValue

public void decodeValue(byte[] valueBER,
                        int offset)
                 throws CertificateException
Decode the value. The input is the BER encoding that was wrapped in the OCTET STRING.

Overrides

decodeValue in class X509V3Extension

Parameters

         valueBER  

The BER encoding of the extension's value.

         offset  

The offset into valueBER where the encoding begins.

Throws

CertificateException - If the encoding is invalid for this extension.

getIssuer

public X500Name getIssuer()
Returns the issuer name of this object.

Returns

A X500Name object holding the issuer of this object. If this component is missing, it returns null. This is a read only value. Caller should not change the value of the return object.

getLocator

public AuthorityInfoAccess getLocator()
Returns the locator extension of this object.

Returns

A AuthorityInfoAccess object holding the locator of this object. If this component is missing, it returns null. This is a read only value. Caller should not change the value of the return object.

setIssuer

public void setIssuer(X500Name issuer)
               throws CloneNotSupportedException
Sets the issuer value of this object. If this object already has an issuer value, this method will replace it with the given value.

Parameters

         issuer  

The issuer name.

Throws

CloneNotSupportedException - If there is some difficulty in creating the copy or the input value is invalid.

setLocator

public void setLocator(AuthorityInfoAccess locator)
                throws CloneNotSupportedException
Sets the locator value of this object. If this object already has an locator value, this method will replace it with the given value.

Parameters

         AuthorityInfoAccess  

The locator.

Throws

CloneNotSupportedException - If there is some difficulty in creating the copy or the input value is invalid.

clone

public Object clone()
             throws CloneNotSupportedException
Overrrides the default clone method to get a deeper clone.

Overrides

clone in class X509V3Extension

Returns

An OCSPServiceLocator object, a copy of this object.

Throws

CloneNotSupportedException - If there is some difficulty in creating the copy.


RSA BSAFE ® Cert-J 2.1.1 001-047007-211-001-000