10.7 KB
/home/fdroid/fdroiddata/tmp/org.billthefarmer.gridle_108.apk vs.
/home/fdroid/fdroiddata/tmp/sigcp_org.billthefarmer.gridle_108.apk
1.94 KB
/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: <c5286ae0227e242348ebc285b0901f5cb10901becbfdaa37db4e4148079d1973>, actual: <cab734a680b6984c14c19bfa5f2324d082fde6f560029fb1e08226b17caa741f> ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. VERITY_CHUNKED_SHA256 digest mismatch. Expected: <61d5318b598c1bafd7f32db21b52aa4766e6837e4e7a4df15af157237a785344edcc0f0000000000>, actual: <38f3a4c2d6de17611491ff2033a6d275aeff5aba1e667e68bd46847699167a60edcc0f0000000000>
    
Offset 1, 17 lines modifiedOffset 0, 0 lines modified
1 Verifies 
2 Verified·using·v1·scheme·(JAR·signing):·true 
3 Verified·using·v2·scheme·(APK·Signature·Scheme·v2):·true 
4 Verified·using·v3·scheme·(APK·Signature·Scheme·v3):·true 
5 Verified·using·v4·scheme·(APK·Signature·Scheme·v4):·false 
6 Verified·for·SourceStamp:·false 
7 Number·of·signers:·1 
8 Signer·#1·certificate·DN:·CN=FDroid,·OU=FDroid,·O=fdroid.org,·L=ORG,·ST=ORG,·C=UK 
9 Signer·#1·certificate·SHA-256·digest:·8e5302fe841d1e8b79ad6d3c447c1f4b0d106ab2cc8ec0131c4b0b2ce1dffd11 
10 Signer·#1·certificate·SHA-1·digest:·eb035a5d90c8ae6ee7da81dfe340625aa307e798 
11 Signer·#1·certificate·MD5·digest:·3e19cc65143b013fdcc16b61f59fe9c6 
12 Signer·#1·key·algorithm:·RSA 
13 Signer·#1·key·size·(bits):·2048 
14 Signer·#1·public·key·SHA-256·digest:·4e1df85533fc04cc3005d5715e5bd861f2ce01d7503d4544e60baf47dcd92b15 
15 Signer·#1·public·key·SHA-1·digest:·16fbda7d3c5311e56186ce81155608751963f8cb 
16 Signer·#1·public·key·MD5·digest:·c5457c5b94ebee9ebe1f6013ba32f610 
17 WARNING:·META-INF/com/android/build/gradle/app-metadata.properties·not·protected·by·signature.·Unauthorized·modifications·to·this·JAR·entry·will·not·be·detected.·Delete·or·move·the·entry·outside·of·META-INF/. 
1.01 KB
zipinfo -v {}
    
Offset 56, 15 lines modifiedOffset 56, 15 lines modified
56 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT56 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT
57 ··minimum·software·version·required·to·extract:···0.057 ··minimum·software·version·required·to·extract:···0.0
58 ··compression·method:·····························deflated58 ··compression·method:·····························deflated
59 ··compression·sub-type·(deflation):···············normal59 ··compression·sub-type·(deflation):···············normal
60 ··file·security·status:···························not·encrypted60 ··file·security·status:···························not·encrypted
61 ··extended·local·header:··························no61 ··extended·local·header:··························no
62 ··file·last·modified·on·(DOS·date/time):··········1981·Jan·1·01:01:0262 ··file·last·modified·on·(DOS·date/time):··········1981·Jan·1·01:01:02
63 ··32-bit·CRC·value·(hex):·························94bedb3863 ··32-bit·CRC·value·(hex):·························843f3068
64 ··compressed·size:································27775·bytes64 ··compressed·size:································27775·bytes
65 ··uncompressed·size:······························62428·bytes65 ··uncompressed·size:······························62428·bytes
66 ··length·of·filename:·····························11·characters66 ··length·of·filename:·····························11·characters
67 ··length·of·extra·field:··························0·bytes67 ··length·of·extra·field:··························0·bytes
68 ··length·of·file·comment:·························0·characters68 ··length·of·file·comment:·························0·characters
69 ··disk·number·on·which·file·begins:···············disk·169 ··disk·number·on·which·file·begins:···············disk·1
70 ··apparent·file·type:·····························binary70 ··apparent·file·type:·····························binary
6.62 KB
classes.dex
3.06 KB
dexdump -a -d -f -h {}
Ignoring differences in offsets to keep diff size reasonable.
    
Offset 1, 12 lines modifiedOffset 1, 12 lines modified
1 DEX·version·'035'1 DEX·version·'035'
2 DEX·file·header:2 DEX·file·header:
3 magic···············:·'dex\n035\0'3 magic···············:·'dex\n035\0'
4 checksum············:·e8f46b1c4 checksum············:·7bde690b
5 signature···········:·98e7...1d7e5 signature···········:·3787...55c7
6 file_size···········:·624286 file_size···········:·62428
7 header_size·········:·1127 header_size·········:·112
8 link_size···········:·08 link_size···········:·0
9 link_off············:·0·(0x000000)9 link_off············:·0·(0x000000)
10 string_ids_size·····:·91410 string_ids_size·····:·914
11 string_ids_off······:·112·(0x000070)11 string_ids_off······:·112·(0x000070)
12 type_ids_size·······:·17112 type_ids_size·······:·171
Offset 857, 15 lines modifiedOffset 857, 15 lines modified
857 ······type··········:·'Ljava/lang/String;'857 ······type··········:·'Ljava/lang/String;'
858 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)858 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
859 ······value·········:·"release"859 ······value·········:·"release"
860 ····#2··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;)860 ····#2··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;)
861 ······name··········:·'BUILT'861 ······name··········:·'BUILT'
862 ······type··········:·'J'862 ······type··········:·'J'
863 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)863 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
864 ······value·········:·1665156654040864 ······value·········:·1667728890936
865 ····#3··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;)865 ····#3··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;)
866 ······name··········:·'DEBUG'866 ······name··········:·'DEBUG'
867 ······type··········:·'Z'867 ······type··········:·'Z'
868 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)868 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
869 ······value·········:·false869 ······value·········:·false
870 ····#4··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;)870 ····#4··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;)
871 ······name··········:·'VERSION_CODE'871 ······name··········:·'VERSION_CODE'
Offset 2077, 15 lines modifiedOffset 2077, 15 lines modified
2077 00521a:·6e10·0401·0300·························|0041:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.find:()Z·//·method@01042077 00521a:·6e10·0401·0300·························|0041:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.find:()Z·//·method@0104
2078 005220:·0a04···································|0044:·move-result·v42078 005220:·0a04···································|0044:·move-result·v4
2079 005222:·3804·1a00······························|0045:·if-eqz·v4,·005f·//·+001a2079 005222:·3804·1a00······························|0045:·if-eqz·v4,·005f·//·+001a
2080 005226:·6e10·0601·0300·························|0047:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.start:()I·//·method@01062080 005226:·6e10·0601·0300·························|0047:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.start:()I·//·method@0106
2081 00522c:·0a04···································|004a:·move-result·v42081 00522c:·0a04···································|004a:·move-result·v4
2082 00522e:·6e10·0301·0300·························|004b:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.end:()I·//·method@01032082 00522e:·6e10·0301·0300·························|004b:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.end:()I·//·method@0103
2083 005234:·0a03···································|004e:·move-result·v32083 005234:·0a03···································|004e:·move-result·v3
2084 005236:·1805·d823·12b3·8301·0000···············|004f:·const-wide·v5,·#double·8.22697e-312·//·#00000183b31223d82084 005236:·1805·385c·634c·8401·0000···············|004f:·const-wide·v5,·#double·8.23968e-312·//·#000001844c635c38
2085 005240:·7120·c300·6500·························|0054:·invoke-static·{v5,·v6},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@00c32085 005240:·7120·c300·6500·························|0054:·invoke-static·{v5,·v6},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@00c3
2086 005246:·0c05···································|0057:·move-result-object·v52086 005246:·0c05···································|0057:·move-result-object·v5
2087 005248:·6e20·e400·5100·························|0058:·invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@00e42087 005248:·6e20·e400·5100·························|0058:·invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@00e4
2088 00524e:·0c01···································|005b:·move-result-object·v12088 00524e:·0c01···································|005b:·move-result-object·v1
2089 005250:·6e40·6a00·4213·························|005c:·invoke-virtual·{v2,·v4,·v3,·v1},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@006a2089 005250:·6e40·6a00·4213·························|005c:·invoke-virtual·{v2,·v4,·v3,·v1},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@006a
2090 005256:·6e20·0d00·2000·························|005f:·invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@000d2090 005256:·6e20·0d00·2000·························|005f:·invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@000d
2091 00525c:·1401·0a00·0401·························|0062:·const·v1,·#float·2.42446e-38·//·#0104000a2091 00525c:·1401·0a00·0401·························|0062:·const·v1,·#float·2.42446e-38·//·#0104000a
3.53 KB
classes.jar
1.71 KB
zipinfo {}
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
1 Zip·file·size:·74180·bytes,·number·of·entries:·381 Zip·file·size:·74182·bytes,·number·of·entries:·38
2 ?rwxrwxr-x··2.0·unx······224·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$PathStrategy.class2 ?rwxrwxr-x··2.0·unx······224·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$PathStrategy.class
3 ?rwxrwxr-x··2.0·unx·····6727·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider.class3 ?rwxrwxr-x··2.0·unx·····6727·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider.class
4 ?rwxrwxr-x··2.0·unx······444·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/BuildConfig.class4 ?rwxrwxr-x··2.0·unx······444·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/BuildConfig.class
5 ?rwxrwxr-x··2.0·unx······601·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticBackport0.class5 ?rwxrwxr-x··2.0·unx······601·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticBackport0.class
6 ?rwxrwxr-x··2.0·unx······513·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda1.class6 ?rwxrwxr-x··2.0·unx······513·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda1.class
7 ?rwxrwxr-x··2.0·unx······486·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda2.class7 ?rwxrwxr-x··2.0·unx······486·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda2.class
8 ?rwxrwxr-x··2.0·unx······486·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda3.class8 ?rwxrwxr-x··2.0·unx······486·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda3.class
Offset 33, 8 lines modifiedOffset 33, 8 lines modified
33 ?rwxrwxr-x··2.0·unx······518·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R$styleable.class33 ?rwxrwxr-x··2.0·unx······518·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R$styleable.class
34 ?rwxrwxr-x··2.0·unx······198·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R$xml.class34 ?rwxrwxr-x··2.0·unx······198·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R$xml.class
35 ?rwxrwxr-x··2.0·unx······141·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R.class35 ?rwxrwxr-x··2.0·unx······141·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R.class
36 ?rwxrwxr-x··2.0·unx······543·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Search$1.class36 ?rwxrwxr-x··2.0·unx······543·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Search$1.class
37 ?rwxrwxr-x··2.0·unx·····2874·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Search.class37 ?rwxrwxr-x··2.0·unx·····2874·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Search.class
38 ?rwxrwxr-x··2.0·unx·····7152·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Words.class38 ?rwxrwxr-x··2.0·unx·····7152·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Words.class
39 ?rwxrwxr-x··2.0·unx·····3192·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$SimplePathStrategy.class39 ?rwxrwxr-x··2.0·unx·····3192·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$SimplePathStrategy.class
40 38·files,·86708·bytes·uncompressed,·67666·bytes·compressed:··22.0%40 38·files,·86708·bytes·uncompressed,·67668·bytes·compressed:··22.0%
600 B
org/billthefarmer/gridle/BuildConfig.class
516 B
procyon -ec {}
    
Offset 1, 12 lines modifiedOffset 1, 12 lines modified
  
1 package·org.billthefarmer.gridle;1 package·org.billthefarmer.gridle;
  
2 public·final·class·BuildConfig2 public·final·class·BuildConfig
3 {3 {
4 ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.gridle";4 ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.gridle";
5 ····public·static·final·String·BUILD_TYPE·=·"release";5 ····public·static·final·String·BUILD_TYPE·=·"release";
6 ····public·static·final·long·BUILT·=·1665156654040L;6 ····public·static·final·long·BUILT·=·1667728890936L;
7 ····public·static·final·boolean·DEBUG·=·false;7 ····public·static·final·boolean·DEBUG·=·false;
8 ····public·static·final·int·VERSION_CODE·=·108;8 ····public·static·final·int·VERSION_CODE·=·108;
9 ····public·static·final·String·VERSION_NAME·=·"1.08";9 ····public·static·final·String·VERSION_NAME·=·"1.08";
10 }10 }
1.22 KB
org/billthefarmer/gridle/Gridle.class
1.15 KB
procyon -ec {}
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131230751));181 ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131230751));
182 ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message);182 ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message);
183 ········if·(matcher.find())·{183 ········if·(matcher.find())·{
184 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.08");184 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.08");
185 ········}185 ········}
186 ········matcher.reset((CharSequence)message);186 ········matcher.reset((CharSequence)message);
187 ········if·(matcher.find())·{187 ········if·(matcher.find())·{
188 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(1665156654040L)));188 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(1667728890936L)));
189 ········}189 ········}
190 ········alertDialog$Builder.setMessage((CharSequence)message);190 ········alertDialog$Builder.setMessage((CharSequence)message);
191 ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null);191 ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null);
192 ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299);192 ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299);
193 ········if·(textView·!=·null)·{193 ········if·(textView·!=·null)·{
194 ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894);194 ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894);
195 ············textView.setMovementMethod(LinkMovementMethod.getInstance());195 ············textView.setMovementMethod(LinkMovementMethod.getInstance());
508 B
smali/org/billthefarmer/gridle/Gridle.smali
    
Offset 399, 15 lines modifiedOffset 399, 15 lines modified
  
399 ····move-result·v4399 ····move-result·v4
  
400 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->end()I400 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->end()I
  
401 ····move-result·v3401 ····move-result·v3
  
402 ····const-wide·v5,·0x183b31223d8L402 ····const-wide·v5,·0x1844c635c38L
  
403 ····.line·1256403 ····.line·1256
404 ····invoke-static·{v5,·v6},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;404 ····invoke-static·{v5,·v6},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
  
405 ····move-result-object·v5405 ····move-result-object·v5
  
406 ····invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;406 ····invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
577 B
smali/org/billthefarmer/gridle/BuildConfig.smali
    
Offset 4, 15 lines modifiedOffset 4, 15 lines modified
  
  
4 #·static·fields4 #·static·fields
5 .field·public·static·final·APPLICATION_ID:Ljava/lang/String;·=·"org.billthefarmer.gridle"5 .field·public·static·final·APPLICATION_ID:Ljava/lang/String;·=·"org.billthefarmer.gridle"
  
6 .field·public·static·final·BUILD_TYPE:Ljava/lang/String;·=·"release"6 .field·public·static·final·BUILD_TYPE:Ljava/lang/String;·=·"release"
  
7 .field·public·static·final·BUILT:J·=·0x183b31223d8L7 .field·public·static·final·BUILT:J·=·0x1844c635c38L
  
8 .field·public·static·final·DEBUG:Z·=·false8 .field·public·static·final·DEBUG:Z·=·false
  
9 .field·public·static·final·VERSION_CODE:I·=·0x6c9 .field·public·static·final·VERSION_CODE:I·=·0x6c
  
10 .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.08"10 .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.08"