Bouncy Castle Cryptography Library 1.77.0

org.bouncycastle.asn1.x509
Class GeneralName

java.lang.Object
  |
  +--org.bouncycastle.asn1.ASN1Object
        |
        +--org.bouncycastle.asn1.x509.GeneralName
All Implemented Interfaces:
ASN1Choice, ASN1Encodable, Encodable

public class GeneralName
extends ASN1Object
implements ASN1Choice

The GeneralName object. GeneralName ::= CHOICE { otherName [0] OtherName, rfc822Name [1] IA5String, dNSName [2] IA5String, x400Address [3] ORAddress, directoryName [4] Name, ediPartyName [5] EDIPartyName, uniformResourceIdentifier [6] IA5String, iPAddress [7] OCTET STRING, registeredID [8] OBJECT IDENTIFIER} OtherName ::= SEQUENCE { type-id OBJECT IDENTIFIER, value [0] EXPLICIT ANY DEFINED BY type-id } EDIPartyName ::= SEQUENCE { nameAssigner [0] DirectoryString OPTIONAL, partyName [1] DirectoryString } Name ::= CHOICE { RDNSequence }


Field Summary
static int directoryName
           
static int dNSName
           
static int ediPartyName
           
static int iPAddress
           
static int otherName
           
static int registeredID
           
static int rfc822Name
           
static int uniformResourceIdentifier
           
static int x400Address
           
 
Constructor Summary
GeneralName(int tag, ASN1Encodable name)
          When the subjectAltName extension contains an Internet mail address, the address MUST be included as an rfc822Name.
GeneralName(int tag, java.lang.String name)
          Create a GeneralName for the given tag from the passed in String.
GeneralName(X500Name dirName)
           
GeneralName(X509Name dirName)
          Deprecated. use X500Name constructor.
 
Method Summary
static GeneralName getInstance(ASN1TaggedObject tagObj, boolean explicit)
           
static GeneralName getInstance(java.lang.Object obj)
           
 ASN1Encodable getName()
           
 int getTagNo()
           
 ASN1Primitive toASN1Primitive()
          Method providing a primitive representation of this object suitable for encoding.
 java.lang.String toString()
           
 
Methods inherited from class org.bouncycastle.asn1.ASN1Object
encodeTo, encodeTo, equals, getEncoded, getEncoded, hasEncodedTagValue, hashCode
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

otherName

public static final int otherName

rfc822Name

public static final int rfc822Name

dNSName

public static final int dNSName

x400Address

public static final int x400Address

directoryName

public static final int directoryName

ediPartyName

public static final int ediPartyName

uniformResourceIdentifier

public static final int uniformResourceIdentifier

iPAddress

public static final int iPAddress

registeredID

public static final int registeredID
Constructor Detail

GeneralName

public GeneralName(X509Name dirName)
Deprecated. use X500Name constructor.

Parameters:
dirName -  

GeneralName

public GeneralName(X500Name dirName)

GeneralName

public GeneralName(int tag,
                   ASN1Encodable name)
When the subjectAltName extension contains an Internet mail address, the address MUST be included as an rfc822Name. The format of an rfc822Name is an "addr-spec" as defined in RFC 822 [RFC 822]. When the subjectAltName extension contains a domain name service label, the domain name MUST be stored in the dNSName (an IA5String). The name MUST be in the "preferred name syntax," as specified by RFC 1034 [RFC 1034]. When the subjectAltName extension contains a URI, the name MUST be stored in the uniformResourceIdentifier (an IA5String). The name MUST be a non-relative URL, and MUST follow the URL syntax and encoding rules specified in [RFC 1738]. The name must include both a scheme (e.g., "http" or "ftp") and a scheme-specific-part. The scheme- specific-part must include a fully qualified domain name or IP address as the host. When the subjectAltName extension contains a iPAddress, the address MUST be stored in the octet string in "network byte order," as specified in RFC 791 [RFC 791]. The least significant bit (LSB) of each octet is the LSB of the corresponding byte in the network address. For IP Version 4, as specified in RFC 791, the octet string MUST contain exactly four octets. For IP Version 6, as specified in RFC 1883, the octet string MUST contain exactly sixteen octets [RFC 1883].

GeneralName

public GeneralName(int tag,
                   java.lang.String name)
Create a GeneralName for the given tag from the passed in String.

This constructor can handle: rfc822Name iPAddress directoryName dNSName uniformResourceIdentifier registeredID For x400Address, otherName and ediPartyName there is no common string format defined.

Note: A directory name can be encoded in different ways into a byte representation. Be aware of this if the byte representation is used for comparing results.

Parameters:
tag - tag number
name - string representation of name
Throws:
java.lang.IllegalArgumentException - if the string encoding is not correct or * not supported.
Method Detail

getInstance

public static GeneralName getInstance(java.lang.Object obj)

getInstance

public static GeneralName getInstance(ASN1TaggedObject tagObj,
                                      boolean explicit)

getTagNo

public int getTagNo()

getName

public ASN1Encodable getName()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

toASN1Primitive

public ASN1Primitive toASN1Primitive()
Description copied from class: ASN1Object
Method providing a primitive representation of this object suitable for encoding.
Overrides:
toASN1Primitive in class ASN1Object
Following copied from class: org.bouncycastle.asn1.ASN1Object
Returns:
a primitive representation of this object.

Bouncy Castle Cryptography Library 1.77.0