--- /home/fdroid/fdroiddata/tmp/org.freenetproject.mobile_301.apk +++ /home/fdroid/fdroiddata/tmp/sigcp_org.freenetproject.mobile_301.apk ├── /usr/lib/android-sdk/build-tools/debian/apksigner verify --verbose --print-certs {} │┄ error from `/usr/lib/android-sdk/build-tools/debian/apksigner verify --verbose --print-certs {}` (b): │┄ DOES NOT VERIFY │┄ ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. CHUNKED_SHA256 digest mismatch. Expected: , actual: <04df38517b9e8023415d5ac514f32072bbf487ac8e994ac6ec40e5a8e759d133> │┄ ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. VERITY_CHUNKED_SHA256 digest mismatch. Expected: <3b0e08e4fceea357c6c0ebe58f46bbeee448c4b32931a408e2abd951583dc3b454ed970000000000>, actual: <78b41a708a7b133304b763c7fdd39a2303da1e239da97384a995ed7625de4ea854ed970000000000> │ @@ -1,55 +0,0 @@ │ -Verifies │ -Verified using v1 scheme (JAR signing): true │ -Verified using v2 scheme (APK Signature Scheme v2): true │ -Verified using v3 scheme (APK Signature Scheme v3): true │ -Verified using v4 scheme (APK Signature Scheme v4): false │ -Verified for SourceStamp: false │ -Number of signers: 1 │ -Signer #1 certificate DN: CN=FDroid, OU=FDroid, O=fdroid.org, L=ORG, ST=ORG, C=UK │ -Signer #1 certificate SHA-256 digest: 0407fbd4e9db2937e02a27c21e9258e2cb2ce3f89e297249e593e007379f192e │ -Signer #1 certificate SHA-1 digest: 94e2ad8f009366fe17dbdba11b016b3c98613f90 │ -Signer #1 certificate MD5 digest: fb82fc79f06badd59e3731ae01919fbb │ -Signer #1 key algorithm: RSA │ -Signer #1 key size (bits): 2048 │ -Signer #1 public key SHA-256 digest: ecbaf0144c3e7f99445349059d9ae1699b46ea89d3c214788ff8fed6cc976962 │ -Signer #1 public key SHA-1 digest: a8e9f0f920544da93b1882a74377e35cfe4eebdb │ -Signer #1 public key MD5 digest: 42301099bae0c0da6c11a50f3a2ab360 │ -WARNING: META-INF/androidx.navigation_navigation-fragment.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.customview_customview.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/com.google.android.material_material.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.dynamicanimation_dynamicanimation.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.versionedparcelable_versionedparcelable.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.preference_preference.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.navigation_navigation-ui.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.lifecycle_lifecycle-runtime.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.appcompat_appcompat-resources.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.appcompat_appcompat.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.lifecycle_lifecycle-livedata.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.navigation_navigation-runtime.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.cursoradapter_cursoradapter.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.savedstate_savedstate.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.fragment_fragment.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.vectordrawable_vectordrawable.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.core_core.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.vectordrawable_vectordrawable-animated.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.localbroadcastmanager_localbroadcastmanager.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.lifecycle_lifecycle-viewmodel-savedstate.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.lifecycle_lifecycle-livedata-core.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.navigation_navigation-common.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.legacy_legacy-support-core-utils.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.viewpager2_viewpager2.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.transition_transition.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.print_print.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.documentfile_documentfile.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.recyclerview_recyclerview.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.arch.core_core-runtime.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/INDEX.LIST not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.activity_activity.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.drawerlayout_drawerlayout.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.interpolator_interpolator.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.lifecycle_lifecycle-viewmodel.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.loader_loader.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.viewpager_viewpager.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.cardview_cardview.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.coordinatorlayout_coordinatorlayout.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. │ -WARNING: META-INF/androidx.annotation_annotation-experimental.version not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. ├── zipinfo {} │ @@ -1347,8 +1347,8 @@ │ -rw---- 0.0 fat 360 b- defN 81-Jan-01 01:01 res/xml/standalone_badge_offset.xml │ -rw---- 0.0 fat 516 b- defN 81-Jan-01 01:01 res/drawable/abc_seekbar_tick_mark_material.xml │ -rw---- 0.0 fat 1789 b- stor 81-Jan-01 01:01 freenet/clients/http/staticfiles/themes/sky/warning-16.png │ -rw---- 0.0 fat 212 b- stor 81-Jan-01 01:01 res/drawable-hdpi-v4/notification_bg_normal.9.png │ -rw---- 2.0 fat 165840 b- defN 81-Jan-01 01:01 META-INF/58C29F86.SF │ -rw---- 2.0 fat 1344 b- defN 81-Jan-01 01:01 META-INF/58C29F86.RSA │ -rw---- 2.0 fat 165713 b- defN 81-Jan-01 01:01 META-INF/MANIFEST.MF │ -1352 files, 24528748 bytes uncompressed, 9715493 bytes compressed: 60.4% │ +1352 files, 24528748 bytes uncompressed, 9715495 bytes compressed: 60.4% ├── classes.dex │ ├── dexdump -a -d -f -h {} │ │┄ Ignoring differences in offsets to keep diff size reasonable. │ │ @@ -1,12 +1,12 @@ │ │ DEX version '035' │ │ DEX file header: │ │ magic : 'dex\n035\0' │ │ -checksum : 36d819d8 │ │ -signature : 64a9...fcf2 │ │ +checksum : a42e15a5 │ │ +signature : 3a08...6327 │ │ file_size : 9042320 │ │ header_size : 112 │ │ link_size : 0 │ │ link_off : 0 (0x000000) │ │ string_ids_size : 68831 │ │ string_ids_off : 112 (0x000070) │ │ type_ids_size : 8612 │ │ @@ -1669761,18 +1669761,18 @@ │ │ 4a1238: 6e20 aadc 3200 |037e: invoke-virtual {v2, v3}, Lfreenet/l10n/BaseL10n;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@dcaa │ │ 4a123e: 0c02 |0381: move-result-object v2 │ │ 4a1240: 1223 |0382: const/4 v3, #int 2 // #2 │ │ 4a1242: 4d02 0103 |0383: aput-object v2, v1, v3 │ │ 4a1246: 6e40 fdf1 d610 |0385: invoke-virtual {v6, v13, v0, v1}, Lfreenet/support/HTMLNode;.addChild:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;)Lfreenet/support/HTMLNode; // method@f1fd │ │ 4a124c: 7401 02f2 1500 |0388: invoke-virtual/range {v21}, Lfreenet/support/HTMLNode;.generate:()Ljava/lang/String; // method@f202 │ │ 4a1252: 0c00 |038b: move-result-object v0 │ │ -4a1254: 1301 c800 |038c: const/16 v1, #int 200 // #c8 │ │ -4a1258: 0803 2000 |038e: move-object/from16 v3, v32 │ │ -4a125c: 0804 2300 |0390: move-object/from16 v4, v35 │ │ -4a1260: 0806 1300 |0392: move-object/from16 v6, v19 │ │ +4a1254: 0803 2000 |038c: move-object/from16 v3, v32 │ │ +4a1258: 0804 2300 |038e: move-object/from16 v4, v35 │ │ +4a125c: 0806 1300 |0390: move-object/from16 v6, v19 │ │ +4a1260: 1301 c800 |0392: const/16 v1, #int 200 // #c8 │ │ 4a1264: 6e50 8fd1 4361 |0394: invoke-virtual {v3, v4, v1, v6, v0}, Lfreenet/clients/http/WelcomeToadlet;.writeHTMLReply:(Lfreenet/clients/http/ToadletContext;ILjava/lang/String;Ljava/lang/String;)V // method@d18f │ │ 4a126a: 0e00 |0397: return-void │ │ 4a126c: 0703 |0398: move-object v3, v0 │ │ 4a126e: 07a0 |0399: move-object v0, v10 │ │ 4a1270: 07e1 |039a: move-object v1, v14 │ │ 4a1272: 081f 0400 |039b: move-object/from16 v31, v4 │ │ 4a1276: 0724 |039d: move-object v4, v2 ├── smali/freenet/clients/http/WelcomeToadlet.smali │┄ Ordering differences only │ @@ -2250,22 +2250,22 @@ │ invoke-virtual {v6, v13, v0, v1}, Lfreenet/support/HTMLNode;->addChild(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;)Lfreenet/support/HTMLNode; │ │ .line 498 │ invoke-virtual/range {v21 .. v21}, Lfreenet/support/HTMLNode;->generate()Ljava/lang/String; │ │ move-result-object v0 │ │ - const/16 v1, 0xc8 │ - │ move-object/from16 v3, p0 │ │ move-object/from16 v4, p3 │ │ move-object/from16 v6, v19 │ │ + const/16 v1, 0xc8 │ + │ invoke-virtual {v3, v4, v1, v6, v0}, Lfreenet/clients/http/WelcomeToadlet;->writeHTMLReply(Lfreenet/clients/http/ToadletContext;ILjava/lang/String;Ljava/lang/String;)V │ │ return-void │ │ :cond_d │ move-object v3, v0