Criptografia RSA

Não estou entendendo como criptografar um determinado array de bytes em RSA
Presciso de uma chave pública ou privada para isso?

Estava tentando usar o Cipher para criptografar

Cipher ch = Cipher.getInstance(“RSA”);

mas não estou conseguindo…alguém já fez isso?

Acho que esse código geraria o que eu quero


 Signature sig = Signature.getInstance("RSA"); 
 sig.initSign(chavePrivada); 
//Inclui a mensagem passada com parâmetro para ser assinada 
sig.update(mensagem); 
//Gera uma assinatura para a mensagem usado a chave privada 
return sig.sign(); 

Só tenho um problema…
como faço para pegar a chave privada…eu tenho ela aqui., gerei via openssl, mas não sei como carregar na interface
Privatekey chavePrivada

Antes de tentar implementar/utilizar um algoritmo de chave assimétrica tente entender o seu funcionamento teórico:

http://www.gta.ufrj.br/grad/07_2/delio/Criptografiaassimtrica.html

Tenha isso bem sedimentado antes de tentar aplicar.

Não seria uma questão de qual tipo de criptografia utilizar… estou fazendo as rotinas para assinar arquivos PAF-ECF… e “TEM” que ser esta… he he he… não tenho opção… só estou meio confuso com este lance de criptografar RSA

É exatamente por isso que falei pra estudar o conceito de criptografia de chave assimétrica.
RSA é um algoritmo de criptografia de chave assimétrica, entendendo o conceito dessa natureza de criptografia você sabe quando usar as chaves pública e privada do RSA.

Na verdade quero saber “como” usar…em código… e não “quando”… o “quando” eu já sei… quanto a definições, eu já sei…só não sei como implementar isso em java… mas achei uns exemplos já… vou estudar… “OS EXEMPLOS” … para ver seu funcionamento em java…para poder implementar minha classe… no momento não estou atras de definições e sim de exemplos em Java para entender como se implementa na linguagem… para poder fazer …como se diz…“transformar meu pensamento em código”.

Valeu…

Eu li seu link… é um conteúdo bem interessante… aconselho a todos que mecher com criptografia ler… para saber um pouco mais sobre certificados, chaves,criptografia, cadeias de certificação, etc…