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…