summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'android-6.0.1_r22' of ↵staging/cm-13.0+r22stable/cm-13.0-ZNH2KBstable/cm-13.0-ZNH2KSteve Kondik2016-03-100-0/+0
|\ | | | | | | | | | | https://android.googlesource.com/platform/system/keymaster into cm-13.0 Android 6.0.1 release 22
| * keep history after reset to mnc-dr-devBaligh Uddin2016-01-250-0/+0
| |\
| | * Fix build failure caused by merge from DR.Shawn Willden2015-11-031-6/+3
| |/ | | | | | | | | | | | | | | | | | | This branch apparently has the new boringssl version from AOSP, but gets merges from DR, but not AOSP. This change updates the code to match AOSP, and to be compatible with the boringssl version, correcting the error introduced by merging https://googleplex-android-review.git.corp.google.com/#/c/804970/ Change-Id: If3a2b089e32be72d670fbaaff1241c8e8cafa261
| * Return correct error from keymaster0engine for large RSA inputShawn Willden2015-11-023-3/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Also, ensure that we always put some error on the OpenSSL error queue whenever a wrapped keymaster0 operation fails. Higher layers will look a the last entry on the queue and use it to determine what error code to return. Not putting any error on the queue means that those higher layers will get whatever error was last enqueued, making the result effectively random. Non-determinism bad. (cherry-picked from commit 22d2355b7edc470949c163e47ba8e837a1a87f47) Bug: 25337630 Change-Id: I701ab735dd089f5258b2252f543906d9f3baa7a2
* | Merge tag 'android-6.0.1_r3' of ↵stable/cm-13.0-ZNH0ESteve Kondik2015-12-083-3/+48
|\ \ | | | | | | | | | | | | | | | https://android.googlesource.com/platform/system/keymaster into HEAD Android 6.0.1 release 3
| * | Return correct error from keymaster0engine for large RSA inputShawn Willden2015-11-033-3/+48
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | Also, ensure that we always put some error on the OpenSSL error queue whenever a wrapped keymaster0 operation fails. Higher layers will look a the last entry on the queue and use it to determine what error code to return. Not putting any error on the queue means that those higher layers will get whatever error was last enqueued, making the result effectively random. Non-determinism bad. (cherry-picked from commit 22d2355b7edc470949c163e47ba8e837a1a87f47) Bug: 25337630 Change-Id: I701ab735dd089f5258b2252f543906d9f3baa7a2
* | Merge tag 'android-6.0.0_r26' into cm-13.0Ricardo Cerqueira2015-11-0549-847/+3083
|\ \ | | | | | | | | | | | | | | | Android 6.0.0 release 26 Change-Id: I03ff70b242510f7cecbbc319b3f4a50138bacd48
| * \ merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-10-080-0/+0
| |\ \ | | |/ | |/|
| | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-09-270-0/+0
| | |\
| | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-08-310-0/+0
| | | |\
| | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-08-290-0/+0
| | | | |\
| | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-08-290-0/+0
| | | | |/| | | | |/|/
| | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-08-150-0/+0
| | | | |\
| | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-08-010-0/+0
| | | | | |\
| | | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-300-0/+0
| | | | | | |\
| | | | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-290-0/+0
| | | | | | | |\
| | | | | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-250-0/+0
| | | | | | | | |\
| | | | | | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-230-0/+0
| | | | | | | | | |\
| | | | | | | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-150-0/+0
| | | | | | | | | | |\
| | | | | | | | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-110-0/+0
| | | | | | | | | | | |\
| | | | | | | | | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-080-0/+0
| | | | | | | | | | | | |\
| | | | | | | | | | | | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-060-0/+0
| | | | | | | | | | | | | |\
| * | | | | | | | | | | | | | Fix Shamu build breakage.Shawn Willden2015-10-081-1/+1
| |/ / / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I54f5bcbee17b5031411e26e47e0b10bc3e4319b3 (cherry picked from commit 44b1ef05d4442f73a0f4ce891e59085a0254c306)
| * / / / / / / / / / / / / Add a faux library libkeymasterfiles to export source.Shawn Willden2015-09-241-1/+13
| |/ / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The library contains nothing, but it exports everything in keymaster as an include file, enabling it to be #included in other projects. This is to make it easy to build keymaster for TLK. Bug: 24372377 Change-Id: I0f9fd30e2feb1d89a8ff199567ce1ec6b037e236
| * / / / / / / / / / / / Revert "Hack to work around broken bullhead keymaster app."Jim Miller2015-08-141-8/+0
| |/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3fceedc788498733952279a97944f4ea22892577. Change-Id: Ie17dd16f8689810af9efe071a0d006e026782af6
| * | | | | | | | | | | Hack to work around broken bullhead keymaster app.Shawn Willden2015-08-131-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 23193626 Change-Id: I71564a7ff6b3050c5fbb7bd0c12caca5a663334a
| * | | | | | | | | | | Do digesting, and sometimes padding, in SW when HW doesnt.Shawn Willden2015-08-1349-846/+3070
| |/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The keymaster1 specification only requires HW modules to implement SHA256 out of the list of keymaster1 digest modes. That would force many keys to be software only, and would break legacy scenarios. This change uses SoftKeymasterDevice to front keymaster modules that don't implement the full suite of digests, quietly inserting KM_DIGEST_NONE and KM_PAD_NONE into key generation/import requests when necessary, then performing the digesting, and sometimes padding, in software, then delegating crypto operations to the hardware. This is only done for RSA and EC keys. Software digesting isn't possible for HMAC or AES-GCM keys. Note that this is not the complete fix for the bug. Some changes in keystore are also required, coming in another CL. Bug: 22529223 Change-Id: I740572eb11341fb0659085309da01d5cbcd3854d
* | | | | | | | | | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-08-010-0/+0
|\ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / |/| | | | | | | | | |
| * | | | | | | | | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-300-0/+0
| |\ \ \ \ \ \ \ \ \ \ | | |/ / / / / / / / / | |/| | | | | | | | |
| | * | | | | | | | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-290-0/+0
| | |\ \ \ \ \ \ \ \ \ | | | |/ / / / / / / / | | |/| | | | | | | |
| | | * | | | | | | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-250-0/+0
| | | |\ \ \ \ \ \ \ \ | | | | |/ / / / / / / | | | |/| | | | | | |
| | | | * | | | | | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-230-0/+0
| | | | |\ \ \ \ \ \ \ | | | | | |/ / / / / / | | | | |/| | | | | |
| | | | | * | | | | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-150-0/+0
| | | | | |\ \ \ \ \ \ | | | | | | |/ / / / / | | | | | |/| | | | |
| | | | | | * | | | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-130-0/+0
| | | | | | |\ \ \ \ \ | | | | | | | |/ / / / | | | | | | |/| | | |
| | | | | | | * | | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-080-0/+0
| | | | | | | |\ \ \ \ | | | | | | | | |/ / / | | | | | | | |/| | |
| | | | | | | | * | | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-020-0/+0
| | | | | | | | |\ \ \ | | | | | | | | | |/ / | | | | | | | | |/| |
| | | | | | | | | * | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-07-010-0/+0
| | | | | | | | | |\ \
| | | | | | | | | | * \ merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-270-0/+0
| | | | | | | | | | |\ \
| | | | | | | | | | | * \ merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-250-0/+0
| | | | | | | | | | | |\ \
| | | | | | | | | | | | * | merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-230-0/+0
| | | | | | | | | | | | |\|
| | | | | | | | | | | | | * merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-180-0/+0
| | | | | | | | | | | | | |\
| | | | | | | | | | | | | | * merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-170-0/+0
| | | | | | | | | | | | | | |\
| | | | | | | | | | | | | | | * merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-160-0/+0
| | | | | | | | | | | | | | | |\
| | | | | | | | | | | | | | | | * merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-150-0/+0
| | | | | | | | | | | | | | | | |\
* | | | | | | | | | | | | | | | | | Left-pad messages when doing "unpadded" RSA operations.Shawn Willden2015-07-303-34/+125
|/ / / / / / / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When RSA messages that are shorter than the key size, and padding is not applied, BoringSSL (sensbibly) refuses, because odds are very high that the caller is doing something dumb. However, this causes some (dumb) things that used to work to no longer work. This CL also fixes the error code returned when a message is signed or encrypted which is the same length as the public modulus but is numerically larger than or equal to the public modulus. Rather than KM_ERROR_UNKNOWN_ERROR, it now returns KM_ERROR_INVALID_ARGUMENT. Bug: 22599805 Change-Id: I99aca5516b092f3676ffdc6c5de39f2777e3d275
* | | | | | | | | | | | | | | | | Merge "Revert "Revert "Report keymaster0 keys as hardware-backed, origin ↵Shawn Willden2015-07-293-9/+21
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | unknown.""" into mnc-dev
| * | | | | | | | | | | | | | | | Revert "Revert "Report keymaster0 keys as hardware-backed, origin unknown.""Shawn Willden2015-07-293-9/+21
| |/ / / / / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 0e0cea3bc8aea903a50c1ee18e9f3309e9f67515. Bug: 22511313 Change-Id: I9c31b8ef604d961e20652c69498324b9dfce5911
* | | | | | | | | | | | | | | | Make NONE mean NONE only (not ANY)Shawn Willden2015-07-285-37/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | KM_DIGEST_NONE and KM_PAD_NONE have implicit meanings of "any digest" and "any padding", respectively, as well as the expected meanings of "no digest" and "no padding". This CL changes that so they mean only "no digest" and "no padding". Bug: 22556114 Change-Id: I7b0b4c079067d85ba1aa39ae7edf0c6b17a9a500
* | | | | | | | | | | | | | | | Merge "Use minimum 20 bytes salt for RSA PSS." into mnc-devShawn Willden2015-07-282-2/+2
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / / / / |/| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | Use minimum 20 bytes salt for RSA PSS.Shawn Willden2015-07-202-2/+2
| |/ / / / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is for compatibility with Bouncy Castle. Bug: 22492259 Change-Id: I753e5fd223404ba960b6a35862bbd20f519f369b