Преглед на файлове

Sign overlay apks with a throwaway key

Closes: #10
LuK1337 преди 1 година
родител
ревизия
5ad118847f
променени са 2 файла, в които са добавени 19 реда и са изтрити 1 реда
  1. 1 1
      build/gapps.sh
  2. 18 0
      overlay/build_overlays.sh

+ 1 - 1
build/gapps.sh

@@ -7,7 +7,7 @@
 # var
 #
 DATE=$(date -u +%Y%m%d_%H%M%S)
-TOP=$(realpath .)
+export TOP=$(realpath .)
 ANDROIDV=13.0.0
 SDKV=33
 GARCH=$1

+ 18 - 0
overlay/build_overlays.sh

@@ -26,3 +26,21 @@ FILES=$(echo $LOC | tr " " "\n" | sed "s#.*${RELOUT}##" | sort | uniq)
 for TARGET in $FILES; do
     mkdir -p $(dirname $GOUT/$TARGET) && cp $OUT/$TARGET $GOUT/$TARGET
 done
+
+# Generate temporary signing keys
+PRIVATE_KEY=$(mktemp)
+PRIVATE_KEY_PK8=$(mktemp)
+PUBLIC_KEY_PEM=$(mktemp)
+
+openssl genrsa -f4 2048 > $PRIVATE_KEY
+openssl pkcs8 -in $PRIVATE_KEY -topk8 -outform DER -out $PRIVATE_KEY_PK8 -nocrypt
+openssl req -new -x509 -sha256 -key $PRIVATE_KEY -out $PUBLIC_KEY_PEM -days 10000 -subj '/C=US/ST=California/L=Mountain View/O=Android/OU=Android/CN=Android/[email protected]'
+
+# Resign all overlay apks
+for TARGET in $FILES; do
+    java -Xmx2048m -jar $TOP/build/sign/signapk.jar $PUBLIC_KEY_PEM $PRIVATE_KEY_PK8 $GOUT/$TARGET $GOUT/${TARGET}.signed
+    mv $GOUT/$TARGET.signed $GOUT/$TARGET
+done
+
+# RIP
+rm $PRIVATE_KEY $PRIVATE_KEY_PK8 $PUBLIC_KEY_PEM