14 Commits

Author SHA1 Message Date
Bob Badour
de423b7a58 [LSC] Add LOCAL_LICENSE_KINDS to frameworks/base
Added SPDX-license-identifier-Apache-2.0 to:
  drm/java/Android.bp
  graphics/java/Android.bp
  identity/Android.bp
  identity/java/Android.bp
  keystore/java/Android.bp
  location/java/Android.bp
  location/tests/Android.bp
  lowpan/java/Android.bp
  media/mca/effect/java/Android.bp
  media/mca/filterfw/java/Android.bp
  media/mca/filterpacks/java/Android.bp
  mime/java/Android.bp
  mms/java/Android.bp
  opengl/java/Android.bp
  rs/java/Android.bp
  sax/java/Android.bp
  services/tests/servicestests/test-apps/PackageParsingTestManifests/Android.bp
  telecomm/java/Android.bp
  telephony/common/Android.bp
  tests/FlickerTests/test-apps/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to:
  telephony/java/Android.bp

Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m all

Exempt-From-Owner-Approval: janitorial work
Change-Id: I2ee0af9ce8f74de2172b359b41d2c52a8b8f7e6c
2021-03-31 19:55:25 -07:00
Anton Hansson
4199ef90b9 Merge changes I97086e30,Ic55df4cf,I81a08c29
* changes:
  Move framework java filegroups into subdirectories
  Partial cp of "Move Tuner resource updating from Tuner java into Tuner client"
  Partial cp of "Initial boilerplate for an updatable graphics jar"
2021-03-31 16:13:13 +00:00
Anton Hansson
9b2c4a650b Move framework java filegroups into subdirectories
All the java code used to build the framework jar and run metalava
was previously defined in the toplevel Android.bp files. Move these
into the subdirs where the source actually lives.

This simplifies the rules themselves (no path and needless prefix) and
declutters the top level Android.bp.

Test: m
Change-Id: I97086e309eacb879d16facb8497d9940fa5ddaf6
2021-03-30 12:26:55 +01:00
David Zeuthen
9c83ce34ae identity: add TEST_MAPPING file to run identity CTS in presubmit.
Bug: None
Test: N/A
Change-Id: I0b0cfc16a87f94f66f3b96220bb266deef63b2ef
2021-03-23 12:14:31 -04:00
David Zeuthen
0df1312357 Identity Credential: API changes for Android 12
- Add PackageManager system features (with versions) for the normal
  and direct access store
- Deprecate IdentityCredentialStore.deleteCredentialByName() and add
  IdentityCredential.delete() as a replacement.
- Add IdentityCredential.proveOwnership()
- Add IdentityCredential.update()
- Add docs for ProofOfBinding CBOR in X.509 extension of certificate
  for AuthenticationKey
- Add IdentityCredential.setAllowUsingExpiredKeys()
- Add version of IdentityCredential.storeStaticAuthenticationData()
  which takes a an expiration date. Deprecate the old variant of
  this method.

Bug: 170146643
Test: atest android.security.identity.cts
Change-Id: I39a0ed65ed6efaa424ada7a9495e3b1da67cf452
2021-01-21 17:42:14 -05:00
David Zeuthen
4e63378884 Identity: Update for changes to ISO 18013-5.
Key derivation for session encryption and MACing now involves mixing
in SessionTranscriptBytes. Update docs to reflect this.

Also, the standard changed such that instead of DeviceAuthentication
being MACed or signed, it's instead DeviceAuthenticationBytes which is
defined as #6.24(bstr .cbor DeviceAuthentication). The same also for
ReaderAuthentication, now ReaderAuthenticationBytes is the CBOR which
is signed by the reader.

Also make a note that the encryptMessageToReader() and
decryptMessageFromReader() should NOT be used and applications should
instead implement these themselves. This is because we don't have the
SessionTranscript available and it's way too late to start adding
public API now. For the next Android version these methods will be
deprecated. Realistically this shouldn't be a problem because
applications are expected to use the Jetpack anyway.

Bug: 159482543
Test: atest android.security.identity.cts
Change-Id: I380a973a0cc78f1206fd7a33d0bd4896a0b16c6d
2020-06-24 09:30:43 -04:00
David Zeuthen
5641fe4141 Identity: Update requirements about SessionTranscript CBOR and provisioning challenge.
Bug: 156911917
Bug: 158107945
Test: atest VtsHalIdentityTargetTest
Test: atest android.security.identity.cts
Change-Id: Iacdf89744bbd30c5a10d6cba873147e424ddb01b
2020-06-04 16:46:15 -04:00
David Zeuthen
db91f11f3f Identity Credential: Update docs to mention valid range for ACP identifiers.
Bug: 155100967
Test: atest android.security.identity.cts
Change-Id: I850e667676d3488be786447ed3ad33c80444f5e2
2020-04-27 15:19:30 -04:00
David Zeuthen
3c824da236 Update Identity Credential API docs.
This change contains no actual syntactical or semantic changes, just
clarifications on the inputs and outputs.

Test: N/A
Bug: 151082886

Change-Id: Ic7797aa53d292abdeb779cb55b404f8a433bce79
2020-04-14 15:24:31 -04:00
David Zeuthen
7c7d90b8c6 Identity Credential: Apply changes identified in API review.
Bug: 150817385
Test: atest android.security.identity.cts
Change-Id: I4e005fa7a81ef363a80278224bb706441dad2241
2020-03-06 15:49:57 -05:00
David Zeuthen
e8a6bffec0 Update counters for session encryption to start at 1.
The DIS version of 18013-5 now specifically says

  The first encryption with a key shall use a counter value of 1. For each
  following encryption the counter value shall be increased by 1.

in section '9.2.1.4 Mechanism". The previous version said

  The counter value is an unsigned integer, which starts at 0 for both
  the mDL and the mDL Reader. For each encryption the counter value shall
  be increased by 1.

which for some strange reason was interpreted by someone to mean that
counters should start at 1.

Update our implementation to use 1 as now called for by the standard.

Bug: 111446262
Test: atest android.security.identity.cts
Change-Id: I09d1216713d57b54036e4f9aa6677dfa5713133c
2020-02-13 15:24:09 -05:00
David Zeuthen
91aa2dd507 Make IdentityCredentialStore.getInstance() return null if credstore is not installed.
Having this method return null is the expected and documented behavior
when either the IC HAL or credstore isn't available.

Test: atest android.security.identity.cts (with credstore not running)
Bug: 148495024
Change-Id: Ifa17c58a84057499b1aeb8404959d5c0badfe52a
2020-01-31 11:37:51 -05:00
David Zeuthen
c34b085082 Hide WriteableIdentityCredential constructor from public API
Bug: 111446262
Test: CtsIdentityTestCases
Change-Id: Iafe8e76e6491ff92ee751702b8fb44aeda7355a8
2020-01-21 15:54:30 -05:00
David Zeuthen
045b6de975 Add Framework APIs for Identity Credential.
The Identity Credential APIs provides an interface to a secure store
for user identity documents.  These APIs are deliberately fairly
general and abstract.  To the extent possible, specification of the
message formats and semantics of communication with credential
verification devices and Issuing Authorities (IAs) is out of scope for
these APIs.

The Identity Credential APIs rely on user authentication to protect
data elements in credentials which is implemented through
auth-tokens. This CL contains changes to CryptoObject to allow this.

Bug: 111446262
Test: CtsIdentityTestCases
Change-Id: I48f21a561b762d86c9ca8d229962782572412f47
2020-01-20 15:56:57 -05:00