org.bouncycastle.asn1.test.RFC4519Test Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of org.apache.servicemix.bundles.bcprov-jdk15on
Show all versions of org.apache.servicemix.bundles.bcprov-jdk15on
This OSGi bundle wraps ${pkgArtifactId} ${pkgVersion} jar file.
package org.bouncycastle.asn1.test;
import org.bouncycastle.asn1.ASN1ObjectIdentifier;
import org.bouncycastle.asn1.x500.X500Name;
import org.bouncycastle.asn1.x500.X500NameStyle;
import org.bouncycastle.asn1.x500.style.RFC4519Style;
import org.bouncycastle.util.Arrays;
import org.bouncycastle.util.encoders.Hex;
import org.bouncycastle.util.test.SimpleTest;
public class RFC4519Test
extends SimpleTest
{
static String[] attributeTypes =
{
"businessCategory",
"c",
"cn",
"dc",
"description",
"destinationIndicator",
"distinguishedName",
"dnQualifier",
"enhancedSearchGuide",
"facsimileTelephoneNumber",
"generationQualifier",
"givenName",
"houseIdentifier",
"initials",
"internationalISDNNumber",
"l",
"member",
"name",
"o",
"ou",
"owner",
"physicalDeliveryOfficeName",
"postalAddress",
"postalCode",
"postOfficeBox",
"preferredDeliveryMethod",
"registeredAddress",
"roleOccupant",
"searchGuide",
"seeAlso",
"serialNumber",
"sn",
"st",
"street",
"telephoneNumber",
"teletexTerminalIdentifier",
"telexNumber",
"title",
"uid",
"uniqueMember",
"userPassword",
"x121Address",
"x500UniqueIdentifier"
};
static ASN1ObjectIdentifier[] attributeTypeOIDs =
{
new ASN1ObjectIdentifier("2.5.4.15"),
new ASN1ObjectIdentifier("2.5.4.6"),
new ASN1ObjectIdentifier("2.5.4.3"),
new ASN1ObjectIdentifier("0.9.2342.19200300.100.1.25"),
new ASN1ObjectIdentifier("2.5.4.13"),
new ASN1ObjectIdentifier("2.5.4.27"),
new ASN1ObjectIdentifier("2.5.4.49"),
new ASN1ObjectIdentifier("2.5.4.46"),
new ASN1ObjectIdentifier("2.5.4.47"),
new ASN1ObjectIdentifier("2.5.4.23"),
new ASN1ObjectIdentifier("2.5.4.44"),
new ASN1ObjectIdentifier("2.5.4.42"),
new ASN1ObjectIdentifier("2.5.4.51"),
new ASN1ObjectIdentifier("2.5.4.43"),
new ASN1ObjectIdentifier("2.5.4.25"),
new ASN1ObjectIdentifier("2.5.4.7"),
new ASN1ObjectIdentifier("2.5.4.31"),
new ASN1ObjectIdentifier("2.5.4.41"),
new ASN1ObjectIdentifier("2.5.4.10"),
new ASN1ObjectIdentifier("2.5.4.11"),
new ASN1ObjectIdentifier("2.5.4.32"),
new ASN1ObjectIdentifier("2.5.4.19"),
new ASN1ObjectIdentifier("2.5.4.16"),
new ASN1ObjectIdentifier("2.5.4.17"),
new ASN1ObjectIdentifier("2.5.4.18"),
new ASN1ObjectIdentifier("2.5.4.28"),
new ASN1ObjectIdentifier("2.5.4.26"),
new ASN1ObjectIdentifier("2.5.4.33"),
new ASN1ObjectIdentifier("2.5.4.14"),
new ASN1ObjectIdentifier("2.5.4.34"),
new ASN1ObjectIdentifier("2.5.4.5"),
new ASN1ObjectIdentifier("2.5.4.4"),
new ASN1ObjectIdentifier("2.5.4.8"),
new ASN1ObjectIdentifier("2.5.4.9"),
new ASN1ObjectIdentifier("2.5.4.20"),
new ASN1ObjectIdentifier("2.5.4.22"),
new ASN1ObjectIdentifier("2.5.4.21"),
new ASN1ObjectIdentifier("2.5.4.12"),
new ASN1ObjectIdentifier("0.9.2342.19200300.100.1.1"),
new ASN1ObjectIdentifier("2.5.4.50"),
new ASN1ObjectIdentifier("2.5.4.35"),
new ASN1ObjectIdentifier("2.5.4.24"),
new ASN1ObjectIdentifier("2.5.4.45")
};
public String getName()
{
return "RFC4519Test";
}
public void performTest()
throws Exception
{
X500NameStyle style = RFC4519Style.INSTANCE;
for (int i = 0; i != attributeTypes.length; i++)
{
if (!attributeTypeOIDs[i].equals(style.attrNameToOID(attributeTypes[i])))
{
fail("mismatch for " + attributeTypes[i]);
}
}
byte[] enc = Hex.decode("305e310b300906035504061302415531283026060355040a0c1f546865204c6567696f6e206f662074686520426f756e637920436173746c653125301006035504070c094d656c626f75726e653011060355040b0c0a4173636f742056616c65");
X500Name n = X500Name.getInstance(style, X500Name.getInstance(enc));
if (!n.toString().equals("l=Melbourne+ou=Ascot Vale,o=The Legion of the Bouncy Castle,c=AU"))
{
fail("Failed composite to string test got: " + n.toString());
}
n = new X500Name(style, "l=Melbourne+ou=Ascot Vale,o=The Legion of the Bouncy Castle,c=AU");
if (!Arrays.areEqual(n.getEncoded(), enc))
{
fail("re-encoding test after parse failed");
}
}
public static void main(
String[] args)
{
runTest(new RFC4519Test());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy