encryption - AES acceleration for Java -


I want to encrypt / decrypt many small (2-10 KB) data for now, the display is OK: Core On 2 Duo, I get around 90 Mbit / s AES 256 (when using 2 threads). But I may need to improve it in the future - or at least reduce the effect on the CPU.

  • Is it possible to use dedicated AES encryption hardware with Java (using JCE, or maybe a separate API)?
  • Does Java want to take advantage of better CPU features (SSE 5 ?!), if I get a better CPU?
  • Or are there a fast JCE provider? (I tried Suns and Bouncy Castell - there is no big difference.)
  • Other possiblilities?
  • JVM will take advantage of special CPU features while executing code to be AVS encryption: AES Identifying some code as the implementation of JIT is beyond the compiler's capabilities. To use special hardware (such as "locking" on VIA processors, or using the instructions given on the new Intel processor), you should go to some point, through the "basic code". Perhaps, a JCE provider can do this for you, I am not aware of any of the easily available JCE providers, including adapted native code for AES (a project was called, but It seems that it has been stopped and I do not know its status). Although it is predicted that SunJCE will be in the future version (but with the purchase of Oracle, with the hypersensitivity of Sun and OpenJDK 7, it is not clear when the next Java version will be released). Alternatively, cut bullets and use your native code. Local code, and is used for native AES code, is a popular implementation when you get a bigger and new processor with AES-NI instructions, replace that code with some code Know about

    By using AES-256 instead of AES-256, you should meet A + 40% speed boost, breaking AES-12, is currently beyond the technical reach of mankind, and for the next few decades it remains. needed. Do you really need 256 bit keys for AES?


Comments

Popular posts from this blog

windows - Heroku throws SQLITE3 Read only exception -

lex - Building a lexical Analyzer in Java -

python - rename keys in a dictionary -