From ed1710eb7b0b3e368406741f25eb7b7dde37a868 Mon Sep 17 00:00:00 2001 From: Kevin Cernekee Date: Fri, 15 May 2015 14:11:48 -0700 Subject: [PATCH] README: Update docs Add a pointer to the online signing document and delete some redundant information. Update the "embedding" section and add more background info on what it is used for. Eliminate references to $BUILD_SECURE which no longer exists. Change-Id: I6d971849cc21697de9cf4fd891423f331f083830 Signed-off-by: Kevin Cernekee --- target/product/security/README | 36 +++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/target/product/security/README b/target/product/security/README index 24f984c59..15f2e93e0 100644 --- a/target/product/security/README +++ b/target/product/security/README @@ -1,3 +1,14 @@ +For detailed information on key types and image signing, please see: + +https://source.android.com/devices/tech/ota/sign_builds.html + +The test keys in this directory are used in development only and should +NEVER be used to sign packages in publicly released images (as that would +open a major security hole). + +key generation +-------------- + The following commands were used to generate the test key pairs: development/tools/make_key testkey '/C=US/ST=California/L=Mountain View/O=Android/OU=Android/CN=Android/emailAddress=android@android.com' @@ -5,18 +16,6 @@ The following commands were used to generate the test key pairs: development/tools/make_key shared '/C=US/ST=California/L=Mountain View/O=Android/OU=Android/CN=Android/emailAddress=android@android.com' development/tools/make_key media '/C=US/ST=California/L=Mountain View/O=Android/OU=Android/CN=Android/emailAddress=android@android.com' -The following standard test keys are currently included: - -testkey -- a generic key for packages that do not otherwise specify a key. -platform -- a test key for packages that are part of the core platform. -shared -- a test key for things that are shared in the home/contacts process. -media -- a test key for packages that are part of the media/download system. - -These test keys are used strictly in development, and should never be assumed -to convey any sort of validity. When $BUILD_SECURE=true, the code should not -honor these keys in any context. - - signing using the openssl commandline (for boot/system images) -------------------------------------------------------------- @@ -28,7 +27,12 @@ signing using the openssl commandline (for boot/system images) extracting public keys for embedding ------------------------------------ -it's a Java tool -but it generates C code -take a look at commands/recovery/Android.mk -you'll see it running $(HOST_OUT_JAVA_LIBRARIES)/dumpkey.jar + +dumpkey.jar is a Java tool that takes an x.509 certificate in PEM format as +input and prints a C structure to standard output: + + $ java -jar out/host/linux-x86/framework/dumpkey.jar build/target/product/security/testkey.x509.pem + {64,0xc926ad21,{1795090719,2141396315,950055447,2581568430,4268923165,1920809988,546586521,3498997798,1776797858,3740060814,1805317999,1429410244,129622599,1422441418,1783893377,1222374759,2563319927,323993566,28517732,609753416,1826472888,215237850,4261642700,4049082591,3228462402,774857746,154822455,2497198897,2758199418,3019015328,2794777644,87251430,2534927978,120774784,571297800,3695899472,2479925187,3811625450,3401832990,2394869647,3267246207,950095497,555058928,414729973,1136544882,3044590084,465547824,4058146728,2731796054,1689838846,3890756939,1048029507,895090649,247140249,178744550,3547885223,3165179243,109881576,3944604415,1044303212,3772373029,2985150306,3737520932,3599964420},{3437017481,3784475129,2800224972,3086222688,251333580,2131931323,512774938,325948880,2657486437,2102694287,3820568226,792812816,1026422502,2053275343,2800889200,3113586810,165549746,4273519969,4065247892,1902789247,772932719,3941848426,3652744109,216871947,3164400649,1942378755,3996765851,1055777370,964047799,629391717,2232744317,3910558992,191868569,2758883837,3682816752,2997714732,2702529250,3570700455,3776873832,3924067546,3555689545,2758825434,1323144535,61311905,1997411085,376844204,213777604,4077323584,9135381,1625809335,2804742137,2952293945,1117190829,4237312782,1825108855,3013147971,1111251351,2568837572,1684324211,2520978805,367251975,810756730,2353784344,1175080310}} + +This is called by build/core/Makefile to incorporate the OTA signing keys +into the recovery image.