在Java中执行单个AES-NI循环

在Java中执行单个AES-NI循环,java,encryption,Java,Encryption,我写AES只是为了学术目的 我希望有如下方法: byte[] encrypt(byte[] key, byte[] data) byte[] encryptFinal(byte[] key, byte[] data) 使用AES-NI,将它们与我的进行比较。 换句话说,我不想使用密钥扩展和指定操作方式来执行完全加密-我想用我的数据(包括扩展的密钥)输入算法,只执行一轮 我看到AES-NI允许这种方法 ( ) 但是如何从Java调用它呢 如果我也能分离密钥扩展方法,那就太好了。看看Bouncy

我写AES只是为了学术目的

我希望有如下方法:

byte[] encrypt(byte[] key, byte[] data)
byte[] encryptFinal(byte[] key, byte[] data)
使用AES-NI,将它们与我的进行比较。 换句话说,我不想使用密钥扩展和指定操作方式来执行完全加密-我想用我的数据(包括扩展的密钥)输入算法,只执行一轮

我看到AES-NI允许这种方法 ( ) 但是如何从Java调用它呢


如果我也能分离密钥扩展方法,那就太好了。

看看Bouncy Castle中AESJava实现。你可以找到最新的版本


下载带有提供程序的JCE源版本(例如bcprov-jdk15on-154.zip)并查找AESEngine.java)

我没有看到此实现中使用AES-NI。我所说的AES-NI是指(当然是Java的正确包装器)assember指令