Add unauthenticated AES ciphers backed by AndroidKeyStore.
This adds the following AES transformations: * AES/ECB/NoPadding * AES/ECB/PKCS7Padding * AES/CBC/NoPadding * AES/CBC/PKCS7Padding * AES/CTR/NoPadding Bug: 18088752 Change-Id: I3e4702e59868f8f2225c31b1c159d20008b9999d
This commit is contained in:
@@ -93,7 +93,8 @@ public abstract class KeyStoreHmacSpi extends MacSpi {
|
||||
throw new CryptoOperationException("Keystore returned null operation token");
|
||||
}
|
||||
mChunkedStreamer = new KeyStoreCryptoOperationChunkedStreamer(
|
||||
new KeyStoreStreamingConsumer(mKeyStore, mOperationToken));
|
||||
new KeyStoreCryptoOperationChunkedStreamer.MainDataStream(
|
||||
mKeyStore, mOperationToken));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -147,28 +148,4 @@ public abstract class KeyStoreHmacSpi extends MacSpi {
|
||||
super.finalize();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* KeyStore-backed consumer of {@code MacSpi}'s chunked stream.
|
||||
*/
|
||||
private static class KeyStoreStreamingConsumer
|
||||
implements KeyStoreCryptoOperationChunkedStreamer.KeyStoreOperation {
|
||||
private final KeyStore mKeyStore;
|
||||
private final IBinder mOperationToken;
|
||||
|
||||
private KeyStoreStreamingConsumer(KeyStore keyStore, IBinder operationToken) {
|
||||
mKeyStore = keyStore;
|
||||
mOperationToken = operationToken;
|
||||
}
|
||||
|
||||
@Override
|
||||
public OperationResult update(byte[] input) {
|
||||
return mKeyStore.update(mOperationToken, null, input);
|
||||
}
|
||||
|
||||
@Override
|
||||
public OperationResult finish(byte[] input) {
|
||||
return mKeyStore.finish(mOperationToken, null, input);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user