10.8 KB
/home/fdroid/fdroiddata/tmp/org.billthefarmer.gurgle_120.apk vs.
/home/fdroid/fdroiddata/tmp/sigcp_org.billthefarmer.gurgle_120.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: <df4ac7c7ff02651abb0b61a67b4c4121183bf2a839bc88a3bd8c6faab2af8bab>, actual: <9bcd6518f08ee10b01db58f0606765c03d79ea32932fafa4bedc8e4dc45dbab0> ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. VERITY_CHUNKED_SHA256 digest mismatch. Expected: <db34893d039f8dabe3713bb00687b101701292442d541bbb779e247885cc10e3f3a0080000000000>, actual: <b57d399da285296bf185ac3f4b83026e1d2bf73a9edbf82bb82ffb1476583eb5f3a0080000000000>
    
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:·ce0376edfab05ab81e028006df9154b7ce3af46dda77140feb7489e1cacd769d 
10 Signer·#1·certificate·SHA-1·digest:·e73e7b16d5381ca1288d100b7c9dc9aa2f859114 
11 Signer·#1·certificate·MD5·digest:·2e95082be0957626aca573da9d8ea330 
12 Signer·#1·key·algorithm:·RSA 
13 Signer·#1·key·size·(bits):·2048 
14 Signer·#1·public·key·SHA-256·digest:·408add9a44e97535a19e01b416a013c8e2ffa5852e94842e7623185509c95132 
15 Signer·#1·public·key·SHA-1·digest:·4e4a8ab8117697a7e46568f8633d19cb36990324 
16 Signer·#1·public·key·MD5·digest:·26ade0f9ae4d3e4e632cd301075308aa 
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/. 
670 B
zipinfo {}
    
Offset 68, 8 lines modifiedOffset 68, 8 lines modified
68 -rw----·····0.0·fat·····3059·b-·stor·81-Jan-01·01:01·res/xM.png68 -rw----·····0.0·fat·····3059·b-·stor·81-Jan-01·01:01·res/xM.png
69 -rw----·····0.0·fat······308·b-·stor·81-Jan-01·01:01·res/xb.png69 -rw----·····0.0·fat······308·b-·stor·81-Jan-01·01:01·res/xb.png
70 -rw----·····0.0·fat······933·b-·stor·81-Jan-01·01:01·res/xi.png70 -rw----·····0.0·fat······933·b-·stor·81-Jan-01·01:01·res/xi.png
71 -rw----·····0.0·fat····15820·b-·stor·81-Jan-01·01:01·resources.arsc71 -rw----·····0.0·fat····15820·b-·stor·81-Jan-01·01:01·resources.arsc
72 -rw----·····2.0·fat·····6090·b-·defN·81-Jan-01·01:01·META-INF/D6DE58C1.SF72 -rw----·····2.0·fat·····6090·b-·defN·81-Jan-01·01:01·META-INF/D6DE58C1.SF
73 -rw----·····2.0·fat·····1334·b-·defN·81-Jan-01·01:01·META-INF/D6DE58C1.RSA73 -rw----·····2.0·fat·····1334·b-·defN·81-Jan-01·01:01·META-INF/D6DE58C1.RSA
74 -rw----·····2.0·fat·····5963·b-·defN·81-Jan-01·01:01·META-INF/MANIFEST.MF74 -rw----·····2.0·fat·····5963·b-·defN·81-Jan-01·01:01·META-INF/MANIFEST.MF
75 73·files,·1189192·bytes·uncompressed,·556168·bytes·compressed:··53.2%75 73·files,·1189192·bytes·uncompressed,·556166·bytes·compressed:··53.2%
6.98 KB
classes.dex
3.07 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············:·c750f2784 checksum············:·4549f3c2
5 signature···········:·5605...ab305 signature···········:·809a...9329
6 file_size···········:·5057366 file_size···········:·505736
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·····:·423210 string_ids_size·····:·4232
11 string_ids_off······:·112·(0x000070)11 string_ids_off······:·112·(0x000070)
12 type_ids_size·······:·56712 type_ids_size·······:·567
Offset 68053, 15 lines modifiedOffset 68053, 15 lines modified
68053 ······type··········:·'Ljava/lang/String;'68053 ······type··········:·'Ljava/lang/String;'
68054 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)68054 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
68055 ······value·········:·"release"68055 ······value·········:·"release"
68056 ····#2··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)68056 ····#2··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)
68057 ······name··········:·'BUILT'68057 ······name··········:·'BUILT'
68058 ······type··········:·'J'68058 ······type··········:·'J'
68059 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)68059 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
68060 ······value·········:·168145270723268060 ······value·········:·1681597456281
68061 ····#3··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)68061 ····#3··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)
68062 ······name··········:·'DEBUG'68062 ······name··········:·'DEBUG'
68063 ······type··········:·'Z'68063 ······type··········:·'Z'
68064 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)68064 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
68065 ······value·········:·false68065 ······value·········:·false
68066 ····#4··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)68066 ····#4··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)
68067 ······name··········:·'VERSION_CODE'68067 ······name··········:·'VERSION_CODE'
Offset 69497, 15 lines modifiedOffset 69497, 15 lines modified
69497 0581d6:·6e10·730a·0300·························|0041:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.find:()Z·//·method@0a7369497 0581d6:·6e10·730a·0300·························|0041:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.find:()Z·//·method@0a73
69498 0581dc:·0a04···································|0044:·move-result·v469498 0581dc:·0a04···································|0044:·move-result·v4
69499 0581de:·3804·1a00······························|0045:·if-eqz·v4,·005f·//·+001a69499 0581de:·3804·1a00······························|0045:·if-eqz·v4,·005f·//·+001a
69500 0581e2:·6e10·790a·0300·························|0047:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.start:()I·//·method@0a7969500 0581e2:·6e10·790a·0300·························|0047:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.start:()I·//·method@0a79
69501 0581e8:·0a04···································|004a:·move-result·v469501 0581e8:·0a04···································|004a:·move-result·v4
69502 0581ea:·6e10·710a·0300·························|004b:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.end:()I·//·method@0a7169502 0581ea:·6e10·710a·0300·························|004b:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.end:()I·//·method@0a71
69503 0581f0:·0a03···································|004e:·move-result·v369503 0581f0:·0a03···································|004e:·move-result·v3
69504 0581f2:·1805·a02d·647e·8701·0000···············|004f:·const-wide·v5,·#double·8.30748e-312·//·#000001877e642da069504 0581f2:·1805·99df·0487·8701·0000···············|004f:·const-wide·v5,·#double·8.3082e-312·//·#000001878704df99
69505 0581fc:·7120·9d09·6500·························|0054:·invoke-static·{v5,·v6},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@099d69505 0581fc:·7120·9d09·6500·························|0054:·invoke-static·{v5,·v6},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@099d
69506 058202:·0c05···································|0057:·move-result-object·v569506 058202:·0c05···································|0057:·move-result-object·v5
69507 058204:·6e20·0b0a·5100·························|0058:·invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@0a0b69507 058204:·6e20·0b0a·5100·························|0058:·invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@0a0b
69508 05820a:·0c01···································|005b:·move-result-object·v169508 05820a:·0c01···································|005b:·move-result-object·v1
69509 05820c:·6e40·7f00·4213·························|005c:·invoke-virtual·{v2,·v4,·v3,·v1},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@007f69509 05820c:·6e40·7f00·4213·························|005c:·invoke-virtual·{v2,·v4,·v3,·v1},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@007f
69510 058212:·6e20·0b00·2000·························|005f:·invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@000b69510 058212:·6e20·0b00·2000·························|005f:·invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@000b
69511 058218:·1401·0a00·0401·························|0062:·const·v1,·#float·2.42446e-38·//·#0104000a69511 058218:·1401·0a00·0401·························|0062:·const·v1,·#float·2.42446e-38·//·#0104000a
3.89 KB
classes.jar
2.0 KB
zipinfo -v {}
    
Offset 4735, 15 lines modifiedOffset 4735, 15 lines modified
4735 ··version·of·encoding·software:···················2.04735 ··version·of·encoding·software:···················2.0
4736 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT4736 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT
4737 ··minimum·software·version·required·to·extract:···2.04737 ··minimum·software·version·required·to·extract:···2.0
4738 ··compression·method:·····························none·(stored)4738 ··compression·method:·····························none·(stored)
4739 ··file·security·status:···························not·encrypted4739 ··file·security·status:···························not·encrypted
4740 ··extended·local·header:··························no4740 ··extended·local·header:··························no
4741 ··file·last·modified·on·(DOS·date/time):··········1980·Jan·1·00:00:004741 ··file·last·modified·on·(DOS·date/time):··········1980·Jan·1·00:00:00
4742 ··32-bit·CRC·value·(hex):·························6d6097da4742 ··32-bit·CRC·value·(hex):·························29093137
4743 ··compressed·size:································444·bytes4743 ··compressed·size:································444·bytes
4744 ··uncompressed·size:······························444·bytes4744 ··uncompressed·size:······························444·bytes
4745 ··length·of·filename:·····························42·characters4745 ··length·of·filename:·····························42·characters
4746 ··length·of·extra·field:··························0·bytes4746 ··length·of·extra·field:··························0·bytes
4747 ··length·of·file·comment:·························0·characters4747 ··length·of·file·comment:·························0·characters
4748 ··disk·number·on·which·file·begins:···············disk·14748 ··disk·number·on·which·file·begins:···············disk·1
4749 ··apparent·file·type:·····························binary4749 ··apparent·file·type:·····························binary
Offset 5128, 15 lines modifiedOffset 5128, 15 lines modified
5128 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT5128 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT
5129 ··minimum·software·version·required·to·extract:···2.05129 ··minimum·software·version·required·to·extract:···2.0
5130 ··compression·method:·····························deflated5130 ··compression·method:·····························deflated
5131 ··compression·sub-type·(deflation):···············normal5131 ··compression·sub-type·(deflation):···············normal
5132 ··file·security·status:···························not·encrypted5132 ··file·security·status:···························not·encrypted
5133 ··extended·local·header:··························no5133 ··extended·local·header:··························no
5134 ··file·last·modified·on·(DOS·date/time):··········1980·Jan·1·00:00:005134 ··file·last·modified·on·(DOS·date/time):··········1980·Jan·1·00:00:00
5135 ··32-bit·CRC·value·(hex):·························d1ccce1f5135 ··32-bit·CRC·value·(hex):·························16d138e5
5136 ··compressed·size:································13637·bytes5136 ··compressed·size:································13637·bytes
5137 ··uncompressed·size:······························29401·bytes5137 ··uncompressed·size:······························29401·bytes
5138 ··length·of·filename:·····························37·characters5138 ··length·of·filename:·····························37·characters
5139 ··length·of·extra·field:··························0·bytes5139 ··length·of·extra·field:··························0·bytes
5140 ··length·of·file·comment:·························0·characters5140 ··length·of·file·comment:·························0·characters
5141 ··disk·number·on·which·file·begins:···············disk·15141 ··disk·number·on·which·file·begins:···············disk·1
5142 ··apparent·file·type:·····························binary5142 ··apparent·file·type:·····························binary
600 B
org/billthefarmer/gurgle/BuildConfig.class
516 B
procyon -ec {}
    
Offset 1, 12 lines modifiedOffset 1, 12 lines modified
  
1 package·org.billthefarmer.gurgle;1 package·org.billthefarmer.gurgle;
  
2 public·final·class·BuildConfig2 public·final·class·BuildConfig
3 {3 {
4 ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.gurgle";4 ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.gurgle";
5 ····public·static·final·String·BUILD_TYPE·=·"release";5 ····public·static·final·String·BUILD_TYPE·=·"release";
6 ····public·static·final·long·BUILT·=·1681452707232L;6 ····public·static·final·long·BUILT·=·1681597456281L;
7 ····public·static·final·boolean·DEBUG·=·false;7 ····public·static·final·boolean·DEBUG·=·false;
8 ····public·static·final·int·VERSION_CODE·=·120;8 ····public·static·final·int·VERSION_CODE·=·120;
9 ····public·static·final·String·VERSION_NAME·=·"1.20";9 ····public·static·final·String·VERSION_NAME·=·"1.20";
10 }10 }
1.28 KB
org/billthefarmer/gurgle/Gurgle.class
1.21 KB
procyon -ec {}
    
Offset 176, 15 lines modifiedOffset 176, 15 lines modified
176 ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131230760));176 ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131230760));
177 ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message);177 ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message);
178 ········if·(matcher.find())·{178 ········if·(matcher.find())·{
179 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.20");179 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.20");
180 ········}180 ········}
181 ········matcher.reset((CharSequence)message);181 ········matcher.reset((CharSequence)message);
182 ········if·(matcher.find())·{182 ········if·(matcher.find())·{
183 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(1681452707232L)));183 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(1681597456281L)));
184 ········}184 ········}
185 ········alertDialog$Builder.setMessage((CharSequence)message);185 ········alertDialog$Builder.setMessage((CharSequence)message);
186 ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null);186 ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null);
187 ········alertDialog$Builder.setNeutralButton(2131230743,·(DialogInterface$OnClickListener)new·Gurgle$$ExternalSyntheticLambda9(this));187 ········alertDialog$Builder.setNeutralButton(2131230743,·(DialogInterface$OnClickListener)new·Gurgle$$ExternalSyntheticLambda9(this));
188 ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299);188 ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299);
189 ········if·(textView·!=·null)·{189 ········if·(textView·!=·null)·{
190 ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894);190 ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894);
508 B
smali/org/billthefarmer/gurgle/Gurgle.smali
    
Offset 386, 15 lines modifiedOffset 386, 15 lines modified
  
386 ····move-result·v4386 ····move-result·v4
  
387 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->end()I387 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->end()I
  
388 ····move-result·v3388 ····move-result·v3
  
389 ····const-wide·v5,·0x1877e642da0L389 ····const-wide·v5,·0x1878704df99L
  
390 ····.line·1502390 ····.line·1502
391 ····invoke-static·{v5,·v6},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;391 ····invoke-static·{v5,·v6},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
  
392 ····move-result-object·v5392 ····move-result-object·v5
  
393 ····invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;393 ····invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
577 B
smali/org/billthefarmer/gurgle/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.gurgle"5 .field·public·static·final·APPLICATION_ID:Ljava/lang/String;·=·"org.billthefarmer.gurgle"
  
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·=·0x1877e642da0L7 .field·public·static·final·BUILT:J·=·0x1878704df99L
  
8 .field·public·static·final·DEBUG:Z·=·false8 .field·public·static·final·DEBUG:Z·=·false
  
9 .field·public·static·final·VERSION_CODE:I·=·0x789 .field·public·static·final·VERSION_CODE:I·=·0x78
  
10 .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.20"10 .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.20"