Criação de objeto PublicKey[Resolvido]

Pessoal,

Tenho um método para retornar um objeto PublicKey, o código do método está logo abaixo:

public PublicKey getChavePublica(String pathArquivo) throws IOException,
			NoSuchAlgorithmException, InvalidKeySpecException {
		Security.addProvider(new BouncyCastleProvider());

		InputStream stream = this.getClass().getResourceAsStream(
				"/" + pathArquivo);
		
		byte[] encodedKey = new byte[stream.available()];
		stream.read(encodedKey);
		stream.close();
		
		ByteArrayInputStream byteArray = new ByteArrayInputStream(encodedKey);
		ASN1InputStream ais = new ASN1InputStream(byteArray);
		ASN1Sequence sequence = (ASN1Sequence) ais.readObject();
		RSAPublicKeyStructure rsaPubStructure = new RSAPublicKeyStructure(
				sequence);

		RSAPublicKeySpec rsaSpec = new RSAPublicKeySpec(
				rsaPubStructure.getModulus(),
				rsaPubStructure.getPublicExponent());

		KeyFactory keyFactory = KeyFactory.getInstance("RSA");

		PublicKey chavePublica = keyFactory.generatePublic(rsaSpec);

		return chavePublica;
	}

Porém quando eu estou usando esse método está lançando a seguinte exception:

[color=red]Exception in thread “main” java.lang.IllegalArgumentException: illegal object in getInstance: org.bouncycastle.asn1.DLSequence[/color]

Alguém já passou por esse problema?

Posta o código de como você está fazendo para chamar este método.

Problema resolvido.

Poste a solução, pode ser util para alguem.

Obs. Coloque resolvido no assunto do topico