public class

X509Name

extends ASN1Encodable
java.lang.Object
   ↳ org.bouncycastle.asn1.ASN1Encodable
     ↳ org.bouncycastle.asn1.x509.X509Name
Known Direct Subclasses

This class is deprecated.
use org.bouncycastle.asn1.x500.X500Name.

Class Overview

     RDNSequence ::= SEQUENCE OF RelativeDistinguishedName

     RelativeDistinguishedName ::= SET SIZE (1..MAX) OF AttributeTypeAndValue

     AttributeTypeAndValue ::= SEQUENCE {
                                   type  OBJECT IDENTIFIER,
                                   value ANY }
 

Summary

[Expand]
Inherited Constants
From class org.bouncycastle.asn1.ASN1Encodable
Fields
public static final DERObjectIdentifier BUSINESS_CATEGORY businessCategory - DirectoryString(SIZE(1..128)
public static final DERObjectIdentifier C country code - StringType(SIZE(2))
public static final DERObjectIdentifier CN common name - StringType(SIZE(1..64))
public static final DERObjectIdentifier COUNTRY_OF_CITIZENSHIP RFC 3039 CountryOfCitizenship - PrintableString (SIZE (2)) -- ISO 3166 codes only
public static final DERObjectIdentifier COUNTRY_OF_RESIDENCE RFC 3039 CountryOfResidence - PrintableString (SIZE (2)) -- ISO 3166 codes only
public static final DERObjectIdentifier DATE_OF_BIRTH RFC 3039 DateOfBirth - GeneralizedTime - YYYYMMDD000000Z
public static final DERObjectIdentifier DC
public static final DERObjectIdentifier DMD_NAME RFC 2256 dmdName
public static final DERObjectIdentifier DN_QUALIFIER dnQualifier - DirectoryString(SIZE(1..64)
public static final Hashtable DefaultLookUp look up table translating common symbols into their OIDS.
public static boolean DefaultReverse determines whether or not strings should be processed and printed from back to front.
public static final Hashtable DefaultSymbols default look up table translating OID values into their common symbols following the convention in RFC 2253 with a few extras
public static final DERObjectIdentifier E email address in Verisign certificates
public static final DERObjectIdentifier EmailAddress Email address (RSA PKCS#9 extension) - IA5String.
public static final DERObjectIdentifier GENDER RFC 3039 Gender - PrintableString (SIZE(1)) -- "M", "F", "m" or "f"
public static final DERObjectIdentifier GENERATION
public static final DERObjectIdentifier GIVENNAME
public static final DERObjectIdentifier INITIALS
public static final DERObjectIdentifier L locality name - StringType(SIZE(1..64))
public static final DERObjectIdentifier NAME id-at-name
public static final DERObjectIdentifier NAME_AT_BIRTH ISIS-MTT NameAtBirth - DirectoryString(SIZE(1..64)
public static final DERObjectIdentifier O organization - StringType(SIZE(1..64))
public static final Hashtable OIDLookUp This field is deprecated. use DefaultSymbols
public static final DERObjectIdentifier OU organizational unit name - StringType(SIZE(1..64))
public static final DERObjectIdentifier PLACE_OF_BIRTH RFC 3039 PlaceOfBirth - DirectoryString(SIZE(1..128)
public static final DERObjectIdentifier POSTAL_ADDRESS RFC 3039 PostalAddress - SEQUENCE SIZE (1..6) OF DirectoryString(SIZE(1..30))
public static final DERObjectIdentifier POSTAL_CODE postalCode - DirectoryString(SIZE(1..40)
public static final DERObjectIdentifier PSEUDONYM RFC 3039 Pseudonym - DirectoryString(SIZE(1..64)
public static final Hashtable RFC1779Symbols look up table translating OID values into their common symbols following the convention in RFC 1779
public static final Hashtable RFC2253Symbols look up table translating OID values into their common symbols following the convention in RFC 2253
public static final DERObjectIdentifier SERIALNUMBER device serial number name - StringType(SIZE(1..64))
public static final DERObjectIdentifier SN device serial number name - StringType(SIZE(1..64))
public static final DERObjectIdentifier ST state, or province name - StringType(SIZE(1..64))
public static final DERObjectIdentifier STREET street - StringType(SIZE(1..64))
public static final DERObjectIdentifier SURNAME Naming attributes of type X520name
public static final Hashtable SymbolLookUp This field is deprecated. use DefaultLookUp
public static final DERObjectIdentifier T Title
public static final DERObjectIdentifier TELEPHONE_NUMBER id-at-telephoneNumber
public static final DERObjectIdentifier UID LDAP User id.
public static final DERObjectIdentifier UNIQUE_IDENTIFIER
public static final DERObjectIdentifier UnstructuredAddress
public static final DERObjectIdentifier UnstructuredName more from PKCS#9
Public Constructors
X509Name(ASN1Sequence seq)
Constructor from ASN1Sequence the principal will be a list of constructed sets, each containing an (OID, String) pair.
X509Name(Hashtable attributes)
This constructor is deprecated. use an ordered constructor! The hashtable ordering is rarely correct
X509Name(Vector ordering, Hashtable attributes)
Constructor from a table of attributes with ordering.
X509Name(Vector ordering, Hashtable attributes, X509NameEntryConverter converter)
Constructor from a table of attributes with ordering.
X509Name(Vector oids, Vector values)
Takes two vectors one of the oids and the other of the values.
X509Name(Vector oids, Vector values, X509NameEntryConverter converter)
Takes two vectors one of the oids and the other of the values.
X509Name(String dirName)
Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes.
X509Name(String dirName, X509NameEntryConverter converter)
Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes with each string value being converted to its associated ASN.1 type using the passed in converter.
X509Name(boolean reverse, String dirName)
Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes.
X509Name(boolean reverse, String dirName, X509NameEntryConverter converter)
Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes with each string value being converted to its associated ASN.1 type using the passed in converter.
X509Name(boolean reverse, Hashtable lookUp, String dirName)
Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes.
X509Name(boolean reverse, Hashtable lookUp, String dirName, X509NameEntryConverter converter)
Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes.
Protected Constructors
X509Name()
Public Methods
boolean equals(Object obj, boolean inOrder)
boolean equals(Object obj)
test for equality - note: case is ignored.
static X509Name getInstance(ASN1TaggedObject obj, boolean explicit)
Return a X509Name based on the passed in tagged object.
static X509Name getInstance(Object obj)
Vector getOIDs()
return a vector of the oids in the name, in the order they were found.
Vector getValues(DERObjectIdentifier oid)
return a vector of the values found in the name, in the order they were found, with the DN label corresponding to passed in oid.
Vector getValues()
return a vector of the values found in the name, in the order they were found.
int hashCode()
DERObject toASN1Object()
String toString(boolean reverse, Hashtable oidSymbols)
convert the structure to a string - if reverse is true the oids and values are listed out starting with the last element in the sequence (ala RFC 2253), otherwise the string will begin with the first element of the structure.
String toString()
[Expand]
Inherited Methods
From class org.bouncycastle.asn1.ASN1Encodable
From class java.lang.Object
From interface org.bouncycastle.asn1.DEREncodable

Fields

public static final DERObjectIdentifier BUSINESS_CATEGORY

businessCategory - DirectoryString(SIZE(1..128)

public static final DERObjectIdentifier C

country code - StringType(SIZE(2))

public static final DERObjectIdentifier CN

common name - StringType(SIZE(1..64))

public static final DERObjectIdentifier COUNTRY_OF_CITIZENSHIP

RFC 3039 CountryOfCitizenship - PrintableString (SIZE (2)) -- ISO 3166 codes only

public static final DERObjectIdentifier COUNTRY_OF_RESIDENCE

RFC 3039 CountryOfResidence - PrintableString (SIZE (2)) -- ISO 3166 codes only

public static final DERObjectIdentifier DATE_OF_BIRTH

RFC 3039 DateOfBirth - GeneralizedTime - YYYYMMDD000000Z

public static final DERObjectIdentifier DC

public static final DERObjectIdentifier DMD_NAME

RFC 2256 dmdName

public static final DERObjectIdentifier DN_QUALIFIER

dnQualifier - DirectoryString(SIZE(1..64)

public static final Hashtable DefaultLookUp

look up table translating common symbols into their OIDS.

public static boolean DefaultReverse

determines whether or not strings should be processed and printed from back to front.

public static final Hashtable DefaultSymbols

default look up table translating OID values into their common symbols following the convention in RFC 2253 with a few extras

public static final DERObjectIdentifier E

email address in Verisign certificates

public static final DERObjectIdentifier EmailAddress

Email address (RSA PKCS#9 extension) - IA5String.

Note: if you're trying to be ultra orthodox, don't use this! It shouldn't be in here.

public static final DERObjectIdentifier GENDER

RFC 3039 Gender - PrintableString (SIZE(1)) -- "M", "F", "m" or "f"

public static final DERObjectIdentifier GENERATION

public static final DERObjectIdentifier GIVENNAME

public static final DERObjectIdentifier INITIALS

public static final DERObjectIdentifier L

locality name - StringType(SIZE(1..64))

public static final DERObjectIdentifier NAME

id-at-name

public static final DERObjectIdentifier NAME_AT_BIRTH

ISIS-MTT NameAtBirth - DirectoryString(SIZE(1..64)

public static final DERObjectIdentifier O

organization - StringType(SIZE(1..64))

public static final Hashtable OIDLookUp

This field is deprecated.
use DefaultSymbols

look up table translating OID values into their common symbols

public static final DERObjectIdentifier OU

organizational unit name - StringType(SIZE(1..64))

public static final DERObjectIdentifier PLACE_OF_BIRTH

RFC 3039 PlaceOfBirth - DirectoryString(SIZE(1..128)

public static final DERObjectIdentifier POSTAL_ADDRESS

RFC 3039 PostalAddress - SEQUENCE SIZE (1..6) OF DirectoryString(SIZE(1..30))

public static final DERObjectIdentifier POSTAL_CODE

postalCode - DirectoryString(SIZE(1..40)

public static final DERObjectIdentifier PSEUDONYM

RFC 3039 Pseudonym - DirectoryString(SIZE(1..64)

public static final Hashtable RFC1779Symbols

look up table translating OID values into their common symbols following the convention in RFC 1779

public static final Hashtable RFC2253Symbols

look up table translating OID values into their common symbols following the convention in RFC 2253

public static final DERObjectIdentifier SERIALNUMBER

device serial number name - StringType(SIZE(1..64))

public static final DERObjectIdentifier SN

device serial number name - StringType(SIZE(1..64))

public static final DERObjectIdentifier ST

state, or province name - StringType(SIZE(1..64))

public static final DERObjectIdentifier STREET

street - StringType(SIZE(1..64))

public static final DERObjectIdentifier SURNAME

Naming attributes of type X520name

public static final Hashtable SymbolLookUp

This field is deprecated.
use DefaultLookUp

look up table translating string values into their OIDS -

public static final DERObjectIdentifier T

Title

public static final DERObjectIdentifier TELEPHONE_NUMBER

id-at-telephoneNumber

public static final DERObjectIdentifier UID

LDAP User id.

public static final DERObjectIdentifier UNIQUE_IDENTIFIER

public static final DERObjectIdentifier UnstructuredAddress

public static final DERObjectIdentifier UnstructuredName

more from PKCS#9

Public Constructors

public X509Name (ASN1Sequence seq)

Constructor from ASN1Sequence the principal will be a list of constructed sets, each containing an (OID, String) pair.

public X509Name (Hashtable attributes)

This constructor is deprecated.
use an ordered constructor! The hashtable ordering is rarely correct

constructor from a table of attributes.

it's is assumed the table contains OID/String pairs, and the contents of the table are copied into an internal table as part of the construction process.

Note: if the name you are trying to generate should be following a specific ordering, you should use the constructor with the ordering specified below.

public X509Name (Vector ordering, Hashtable attributes)

Constructor from a table of attributes with ordering.

it's is assumed the table contains OID/String pairs, and the contents of the table are copied into an internal table as part of the construction process. The ordering vector should contain the OIDs in the order they are meant to be encoded or printed in toString.

public X509Name (Vector ordering, Hashtable attributes, X509NameEntryConverter converter)

Constructor from a table of attributes with ordering.

it's is assumed the table contains OID/String pairs, and the contents of the table are copied into an internal table as part of the construction process. The ordering vector should contain the OIDs in the order they are meant to be encoded or printed in toString.

The passed in converter will be used to convert the strings into their ASN.1 counterparts.

public X509Name (Vector oids, Vector values)

Takes two vectors one of the oids and the other of the values.

public X509Name (Vector oids, Vector values, X509NameEntryConverter converter)

Takes two vectors one of the oids and the other of the values.

The passed in converter will be used to convert the strings into their ASN.1 counterparts.

public X509Name (String dirName)

Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes.

public X509Name (String dirName, X509NameEntryConverter converter)

Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes with each string value being converted to its associated ASN.1 type using the passed in converter.

public X509Name (boolean reverse, String dirName)

Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes. If reverse is true, create the encoded version of the sequence starting from the last element in the string.

public X509Name (boolean reverse, String dirName, X509NameEntryConverter converter)

Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes with each string value being converted to its associated ASN.1 type using the passed in converter. If reverse is true the ASN.1 sequence representing the DN will be built by starting at the end of the string, rather than the start.

public X509Name (boolean reverse, Hashtable lookUp, String dirName)

Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes. lookUp should provide a table of lookups, indexed by lowercase only strings and yielding a DERObjectIdentifier, other than that OID. and numeric oids will be processed automatically.
If reverse is true, create the encoded version of the sequence starting from the last element in the string.

Parameters
reverse true if we should start scanning from the end (RFC 2553).
lookUp table of names and their oids.
dirName the X.500 string to be parsed.

public X509Name (boolean reverse, Hashtable lookUp, String dirName, X509NameEntryConverter converter)

Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or some such, converting it into an ordered set of name attributes. lookUp should provide a table of lookups, indexed by lowercase only strings and yielding a DERObjectIdentifier, other than that OID. and numeric oids will be processed automatically. The passed in converter is used to convert the string values to the right of each equals sign to their ASN.1 counterparts.

Parameters
reverse true if we should start scanning from the end, false otherwise.
lookUp table of names and oids.
dirName the string dirName
converter the converter to convert string values into their ASN.1 equivalents

Protected Constructors

protected X509Name ()

Public Methods

public boolean equals (Object obj, boolean inOrder)

Parameters
inOrder if true the order of both X509 names must be the same, as well as the values associated with each element.

public boolean equals (Object obj)

test for equality - note: case is ignored.

public static X509Name getInstance (ASN1TaggedObject obj, boolean explicit)

Return a X509Name based on the passed in tagged object.

Parameters
obj tag object holding name.
explicit true if explicitly tagged false otherwise.
Returns
  • the X509Name

public static X509Name getInstance (Object obj)

public Vector getOIDs ()

return a vector of the oids in the name, in the order they were found.

public Vector getValues (DERObjectIdentifier oid)

return a vector of the values found in the name, in the order they were found, with the DN label corresponding to passed in oid.

public Vector getValues ()

return a vector of the values found in the name, in the order they were found.

public int hashCode ()

public DERObject toASN1Object ()

public String toString (boolean reverse, Hashtable oidSymbols)

convert the structure to a string - if reverse is true the oids and values are listed out starting with the last element in the sequence (ala RFC 2253), otherwise the string will begin with the first element of the structure. If no string definition for the oid is found in oidSymbols the string value of the oid is added. Two standard symbol tables are provided DefaultSymbols, and RFC2253Symbols as part of this class.

Parameters
reverse if true start at the end of the sequence and work back.
oidSymbols look up table strings for oids.

public String toString ()