Apache Commons Crypto
Apache Commons Crypto 是一个加密库,使用 AES-NI (Advanced Encryption Standard New Instructions) 进行优化。提供了加密级别和流级别的 API。开发者可以使用最少代码来实现高性能的 AES 加解密应用。
Maven:
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-crypto</artifactId> <version>1.0.0</version> </dependency>
示例代码:
Properties properties = new Properties(); //Creates a CryptoCipher instance with the transformation and properties. CryptoCipher cipher = Utils.getCipherInstance(CipherTransformation.AES_CTR_NOPADDING, properties); String input = "hello world!"; int inputOffset = 0; int inputLen = input.length(); byte[] output = new byte[1024]; int outputOffset = 0; //Initializes the cipher with ENCRYPT_MODE, key and iv. cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(key,"AES"), new IvParameterSpec(iv)); //Continues a multiple-part encryption/decryption operation for byte array. cipher.update(input.getBytes("UTF-8"), inputOffset, inputLen, output, outputOffset); //We should call do final at the end of encryption/decryption. cipher.doFinal(inBuffer, outBuffer); //Closes the cipher. cipher.close();
评论