Criptografia

Boa Tarde

Alguém sabe quais são os métodos de criptografia em JAVA e qual a diferença de performace deles.
Bom se tiver alguma.

desde já, agredeço

Não é mais fácil você falar o que você precisa?

Com certeza vai ser muito mais fácil de conseguir uma resposta que te ajude.

Digao

na verdade é isto que eu preciso, pois estou fazendo uma pesquisa sobre as formas de criptografia em java e a performace deles.

Por exemplo md5 é uma forma mas não é possivel descriptografar.

E qual seria o motivo da sua pesquisa? Em quais fontes já tentou pesquisar?

O motivo é para estudo msm, e posteriormente utilizar em um artigo da pós.
Estou procurando no google.
Ate o presente não achei muita coisa, apenas os codigos de criptografia. Mas queria algo que mostra-se a performace entre eles.

Procure por “java cryptography benchmark” :).

obrigado Luizao

Se você for fazer seu próprio benchmark (que seria bem interessante), considere o Bouncy Castle.

Uma dica é: se atente também ao nível de segurança da criptografia e não apenas no desempenho do algoritmo.

Obrigado Ataxexe.
Estou levando em consideração isto tambem

[quote=saulosb]O motivo é para estudo msm, e posteriormente utilizar em um artigo da pós.
Estou procurando no google.
Ate o presente não achei muita coisa, apenas os codigos de criptografia. Mas queria algo que mostra-se a performace entre eles.[/quote]

“Que mostra-se” não se escreve no artigo da pós (seria, nesse caso, “que mostrasse”).

De qualquer forma, não é bem diretamente no Google que você procura essas coisas, que você vai achar muita coisa mas uma contradizendo a outra. É melhor procurar primeiramente na documentação da Oracle.

Primeiramente, você precisa ver como é o framework de criptografia do Java (JCE e JCA):

http://www.oracle.com/technetwork/java/javase/tech/index-jsp-136007.html

em especial,

http://docs.oracle.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html

Quanto a “performance” (a palavra em português é “desempenho”), isso depende, na verdade, do “provider” criptográfico, portanto acho que isso não é tão relevante aqui.
Você pode efetuar as operações de criptografia por hardware, por exemplo, usando o provider PKCS#11 - e aí a parte de desempenho depende do hardware e não da linguagem (se é Java, C++ ou C# ou Assembly isso não vem mais ao caso).
Por exemplo, se você estiver rodando o Java no Solaris em uma máquina Sparc que tem várias operações criptográficas já prontas no processador, se você escolher o provider PKCS#11 pode executar as operações criptográficas usando as instruções criptográficas do próprio processador, o que acelera muito o processamento.

obrigado Entanglement