1*7ca20792SAndroid Build Coastguard WorkerAndroid Key Attestation Library 2*7ca20792SAndroid Build Coastguard Worker=================================== 3*7ca20792SAndroid Build Coastguard Worker 4*7ca20792SAndroid Build Coastguard WorkerThis library uses the [Bouncy Castle ASN.1][1] parser to extract information 5*7ca20792SAndroid Build Coastguard Workerfrom an Android attestation data structure to verify that a key pair has been 6*7ca20792SAndroid Build Coastguard Workergenerated in a hardware-protected environment of an Android device. It is 7*7ca20792SAndroid Build Coastguard Workermaintained in tandem with Android's key attestation capabilities and is meant 8*7ca20792SAndroid Build Coastguard Workerfor production use. 9*7ca20792SAndroid Build Coastguard Worker 10*7ca20792SAndroid Build Coastguard WorkerThis repository contains a [server](server/src/main/java/com/android/example/) 11*7ca20792SAndroid Build Coastguard Workersample code that shows how to validate an Android attestation certificate chain 12*7ca20792SAndroid Build Coastguard Workeroutside the Android framework. This is the recommended best practice, since if 13*7ca20792SAndroid Build Coastguard Workerthe Android device is rooted or otherwise compromised, on-device validation of 14*7ca20792SAndroid Build Coastguard Workerthe attestation may be inaccurate. 15*7ca20792SAndroid Build Coastguard Worker 16*7ca20792SAndroid Build Coastguard WorkerThe entry point into the 17*7ca20792SAndroid Build Coastguard Worker[library itself](server/src/main/java/com/google/android/attestation/) 18*7ca20792SAndroid Build Coastguard Workeris `com.google.android.attestation.ParsedAttestationRecord.createParsedAttestationRecord`. 19*7ca20792SAndroid Build Coastguard Worker 20*7ca20792SAndroid Build Coastguard WorkerFor more details, see the documentation and the guide at 21*7ca20792SAndroid Build Coastguard Workerhttps://developer.android.com/training/articles/security-key-attestation.html . 22*7ca20792SAndroid Build Coastguard Worker 23*7ca20792SAndroid Build Coastguard Worker[1]: https://www.bouncycastle.org/ 24*7ca20792SAndroid Build Coastguard Worker 25*7ca20792SAndroid Build Coastguard Worker 26*7ca20792SAndroid Build Coastguard WorkerGetting Started 27*7ca20792SAndroid Build Coastguard Worker--------------- 28*7ca20792SAndroid Build Coastguard Worker 29*7ca20792SAndroid Build Coastguard WorkerSee the [server](server/) sample for details. 30*7ca20792SAndroid Build Coastguard Worker 31*7ca20792SAndroid Build Coastguard WorkerSupport 32*7ca20792SAndroid Build Coastguard Worker------- 33*7ca20792SAndroid Build Coastguard Worker 34*7ca20792SAndroid Build Coastguard Worker- Stack Overflow: http://stackoverflow.com/questions/tagged/android 35*7ca20792SAndroid Build Coastguard Worker 36*7ca20792SAndroid Build Coastguard WorkerIf you've found an error in this sample, please file an issue: 37*7ca20792SAndroid Build Coastguard Workerhttps://github.com/google/android-key-attestation 38*7ca20792SAndroid Build Coastguard Worker 39*7ca20792SAndroid Build Coastguard WorkerPatches are encouraged, and may be submitted by forking this project and 40*7ca20792SAndroid Build Coastguard Workersubmitting a pull request through GitHub. Please see CONTRIBUTING.md for more details. 41*7ca20792SAndroid Build Coastguard Worker 42*7ca20792SAndroid Build Coastguard WorkerLicense 43*7ca20792SAndroid Build Coastguard Worker------- 44*7ca20792SAndroid Build Coastguard Worker 45*7ca20792SAndroid Build Coastguard WorkerCopyright 2016, The Android Open Source Project, Inc. 46*7ca20792SAndroid Build Coastguard Worker 47*7ca20792SAndroid Build Coastguard WorkerLicensed to the Apache Software Foundation (ASF) under one or more contributor 48*7ca20792SAndroid Build Coastguard Workerlicense agreements. See the NOTICE file distributed with this work for 49*7ca20792SAndroid Build Coastguard Workeradditional information regarding copyright ownership. The ASF licenses this 50*7ca20792SAndroid Build Coastguard Workerfile to you under the Apache License, Version 2.0 (the "License"); you may not 51*7ca20792SAndroid Build Coastguard Workeruse this file except in compliance with the License. You may obtain a copy of 52*7ca20792SAndroid Build Coastguard Workerthe License at 53*7ca20792SAndroid Build Coastguard Worker 54*7ca20792SAndroid Build Coastguard Workerhttp://www.apache.org/licenses/LICENSE-2.0 55*7ca20792SAndroid Build Coastguard Worker 56*7ca20792SAndroid Build Coastguard WorkerUnless required by applicable law or agreed to in writing, software 57*7ca20792SAndroid Build Coastguard Workerdistributed under the License is distributed on an "AS IS" BASIS, WITHOUT 58*7ca20792SAndroid Build Coastguard WorkerWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 59*7ca20792SAndroid Build Coastguard WorkerLicense for the specific language governing permissions and limitations under 60*7ca20792SAndroid Build Coastguard Workerthe License. 61