History log of /system/keymaster/km_openssl/aes_operation.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a2f1a9b28468f900a33d3d5711d259b168f9cd1e 09-Jan-2018 Shawn Willden <swillden@google.com> Move abstracted block cipher operations into separate files.

There are no logic changes in this CL.

Test: make (local unit tests)
Change-Id: Id6635a20ffa52f71f3dad3281d8dd831fff7aeb7
/system/keymaster/km_openssl/aes_operation.h
0797016108191fcf54bec412702d13f1646da041 08-Jan-2018 Shawn Willden <swillden@google.com> Refactor AES operations to generalize block cipher operations.

In preparation for adding 3DES support, this CL moves the code that
does all the block cipher work from AesOperation to
EvpBlockCipherOperation (and associated classes). To make it easier
to see what was changed, the block cipher code was left in
aes_operation.{cpp|h}. The next CL will move it to separate files.

Test: make (local unit tests), CTS & VTS
Change-Id: Ibbf870c351425ea8d990218aa0ae089d0b2ada4b
/system/keymaster/km_openssl/aes_operation.h
deffcb7efaac94b2c674247cb9888a0af3d7e256 08-Jan-2018 Shawn Willden <swillden@google.com> Move Key into Operation

The Keymaster implementation creates a Key object and then passes it
to an Operation object, which copies parts of it. The Key object is
not needed after the Operation has been created, so much of that
copying is unnecessary. This CL begins changes that by passing an
rvalue reference to the Key to the Operation, and modifying operations
so they move the pieces of the Key that they need out, wherever
possible.

Test: make (local unit tests), VTS and CTS
Change-Id: I6c9a27d9ee85ccaeed1efb0fcc3ed0f8694c5771
/system/keymaster/km_openssl/aes_operation.h
dc877aea40979bb5a18206cd9cec7bb4f31442e2 15-May-2017 Janis Danisevskis <jdanis@google.com> UniquePtrize Operations

Have Operations handled by UniquePtrs. Also add
keymaster::remove_reference and keymaster::move to express
proper move semantics without requiring stl.

Test: VtsHalKeymasterV3_0TargetTest
Bug: 67358942
Change-Id: I2b1802835316daa93e424c1ce1f49a03d00d93ff
/system/keymaster/km_openssl/aes_operation.h
f54cc93ccf57a94f9a2c660dbf3e06494adf178d 11-May-2017 Janis Danisevskis <jdanis@google.com> Reorganize keymaster directories

Keymaster files have been reorganized into the following directories
- android_keymaster
The core android keymaster logic including some utilities that have
no special libray dependencies
- km_openssl
Openssl based implementation primitives of android keymaster. These
primitives can be used to implemented an openssl based software
implementation of AndroidKeymaster.
- legacy_support
Primitives implemented in terms of older keymaster hal version.
These primitives can be used to implement AndroidKeymaster in terms
of keymaster 0 or 1 hals. They are used to provide wrappers around
old keymaster hals, filling in missing features with software
implementations.
- contexts
Implementations of various contexts from pure software to legacy
hal hybrids.
- key_blob_utils
Support code for formatting keymaster key blobs including support
for legacy android keymaster blob formats.

Test: VtsHalKeymasterV3_0TargetTest
Bug: 67358942
Change-Id: Ia8eacd301a5c5fa5f5f625caafcec5d07e168249
/system/keymaster/km_openssl/aes_operation.h